Skip to content

Self-host pinned WASM demo from dasher-web releases - #42

Open
willwade wants to merge 7 commits into
astro-buildfrom
feat/selfhost-wasm-demo
Open

Self-host pinned WASM demo from dasher-web releases#42
willwade wants to merge 7 commits into
astro-buildfrom
feat/selfhost-wasm-demo

Conversation

@willwade

Copy link
Copy Markdown
Collaborator

Summary

  • The homepage iframe now serves /demo/ — populated at build time from the dasher-wasm-demo-<tag>.zip release artifact (dasher-web's new wasm-release workflow)
  • Pins v0.2.1: DasherCore v0.2.16 (was 58 commits stale on the Pages build), 10 trained languages (en, de, es, fr, it, pt, nl, pl, ru, ar — 4 before)
  • scripts/fetch-demo.mjs downloads + unpacks the pinned artifact into public/demo/ (gitignored, cached in .cache/); version bumped via DASHER_DEMO_VERSION
  • Site builds are reproducible — the demo no longer tracks the always-moving GitHub Pages deployment

Verified locally

  • npm run build fetches and embeds the artifact (11MB)
  • Iframe loads the demo at ~50 FPS; 19 alphabets offered
  • Switching to Russian loads the trained Cyrillic model and types я

Follow-ups

…abets

New /alphabets page driven by the generated alphabet_index.json (from
DasherCore's Scripts/generate-alphabet-index.py): all 474 alphabets
with search + filters (writing system, direction, corpus tier), RTL and
script badges, lang codes, and data-issue flags. The index is a single
generated artifact shared with the engine's data QA.

Downloads page: v6 ships every alphabet built in — the hand-maintained
per-language download list (many stale filenames) is gone. Replaced
with a browse link to /alphabets, kept training texts and the Dasher 5
archive, and rewrote the install instructions for CUSTOM alphabets
only (correct v6 user dirs).

Signed-off-by: will wade <willwade@gmail.com>
116 alphabets carry duplicate symbol definitions (autoconversion-era
case groups on caseless scripts, shared Mandarin tone outputs); the
index now flags them and the card warning tooltip lists all flags.

Signed-off-by: will wade <willwade@gmail.com>
…plain JS)

The type alias broke the lint job; normalizing the JSON union shape with
plain JS instead. astro check + eslint both clean.

Signed-off-by: will wade <willwade@gmail.com>
Signed-off-by: will wade <willwade@gmail.com>
The homepage iframe now points at /demo/, populated at build time by
scripts/fetch-demo.mjs from the dasher-wasm-demo-<tag>.zip artifact
that dasher-web's wasm-release workflow attaches to v* tags. This pins
the site to a known-good demo build instead of tracking the always-
moving GitHub Pages deployment, and serves the wasm + data bundle
from the site's own origin.

Pins v0.2.1 (DasherCore v0.2.16, 10 trained languages: en, de, es,
fr, it, pt, nl, pl, ru, ar). Bump via DASHER_DEMO_VERSION.

public/demo/ and .cache/ are gitignored; the prebuild hook fetches
(and caches) the artifact. Verified locally: iframe loads the demo,
19 alphabets offered, Russian switches and types Cyrillic at ~50 FPS.

Signed-off-by: will wade <willwade@gmail.com>
v0.2.2 fixes the demo canvas: letter boxes now render as complete
boxes (Web Demo palette — greens/blues cycling by sibling index and
depth; legacy group-container white-out and the giant yellow
uppercase-group block are gone). Verified against the built site:
0 white boxes in a frame, alternating #add8e6/#87ceeb letter pairs.

Signed-off-by: will wade <willwade@gmail.com>
@willwade

Copy link
Copy Markdown
Collaborator Author

Pinned to v0.2.2 — the WASM demo now renders letter boxes as complete boxes (Web Demo palette). Verified against the built site: 0 white group boxes, alternating blue/green letter pairs. Also on dasher-web main: server.js deleted (use npx serve), JS demo now served at /js-demo/ on the same Pages deployment, 11 legacy dependabot PRs closed.

- Pin the self-hosted demo to v0.2.8 (same lean demo behaviour; picks
  up the release-CI fix release)
- 'Try It Now' now links the enhanced playground on GitHub Pages
  (settings from the engine manifest, 33 locales, game mode, WPM,
  470+ alphabets, themes and layouts)

Signed-off-by: will wade <willwade@gmail.com>
@willwade

Copy link
Copy Markdown
Collaborator Author

Bumped the pin to v0.2.8 (carries the release-CI fix; demo behaviour unchanged from v0.2.2) and the homepage 'Try It Now' section now links the enhanced playground — settings from the engine manifest, 33 locales, game mode, WPM readout, 470+ alphabets, themes, layouts. Verified in the local build: v0.2.8 embedded + link present.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant