Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 16 additions & 26 deletions .github/workflows/playground.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,15 @@ on:
workflow_dispatch:

concurrency:
group: pages
group: playground-release
cancel-in-progress: false

jobs:
build:
name: Build
release:
name: Publish
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- name: Checkout
uses: actions/checkout@v6
Expand All @@ -29,27 +31,15 @@ jobs:
- name: Build playground
run: npm run playground:build

- name: Stage site
- name: Publish playground.html to rolling release
env:
GH_TOKEN: ${{ github.token }}
run: |
mkdir -p _site
cp dist/playground.html _site/index.html

- name: Upload Pages artifact
uses: actions/upload-pages-artifact@v3
with:
path: _site

deploy:
name: Deploy
needs: build
runs-on: ubuntu-latest
permissions:
pages: write
id-token: write
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
if gh release view playground-latest >/dev/null 2>&1; then
gh release upload playground-latest dist/playground.html --clobber
else
gh release create playground-latest dist/playground.html \
--title "Migration Preflight Playground (latest)" \
--notes "Auto-published from main on every push. Download playground.html and double-click — no install, no server, works offline." \
--latest=false
fi
5 changes: 5 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,11 @@ open dist/playground.html # (macOS) or just double-click it

No server, no network, works offline. It runs the **real** translation engine in the browser, so the verdict matches what the Real-Time Translator does in production. See [`web/README.md`](web/README.md).

Don't want to build it? Every push to `main` republishes the file to a rolling release:
[`playground.html`](https://github.com/Bandwidth/migration-toolkit/releases/download/playground-latest/playground.html)

> **This release asset is public-facing.** That `playground-latest` download link is used as a marketing asset on Bandwidth's website, so treat the tag and the `playground.html` filename as a stable contract — renaming or deleting either one breaks a live link. And remember that anything merged to `main` is what a prospect downloads next.

---

## Quickstart
Expand Down