Skip to content

v0.1.0 — first web release

Choose a tag to compare

@ashmere ashmere released this 27 Apr 18:49
· 4 commits to main since this release
v0.1.0
daacb2a

NuinTalker v0.1.0

First public release of the web rewrite. Replaces the Flutter/Dart implementation (preserved at the v0-dart-archive tag).

Live site: https://ashmere.github.io/NuinTalker/

What's in this release

Tracking

  • MediaPipe Tasks for Web FaceLandmarker (478 landmarks + iris) on-device
  • Eye-corner-referenced iris position with One-Euro filter smoothing
  • Head pitch + yaw from the facial transformation matrix as the dominant signal
  • 9-point per-user affine calibration
  • Dwell selector with configurable jitter tolerance, cool-down, and exit-grace

UI

  • Flank-3x3 default layout: hardcoded "More" / "All Done" flank slots, paginated 9-cell centre
  • Mulberry SVG symbols (CC BY-SA 4.0)
  • Single ARASAAC pictogram for "stop" (CC BY-NC-SA 4.0 — see ADR 0005)
  • Diagnostic HUD (Cmd+D / Ctrl+D)
  • Carer-lock (Cmd+S / Ctrl+S, or four-corner long-press)
  • Vocabulary tailored for tube-fed users (single "hunger" cell)
  • Sentence bar with horizontal scroll keeps a stable height

Architecture

  • Vite 7 + React 19 + TypeScript 6 strict
  • Zustand stores, Tailwind v4, Web Speech API, idb-keyval, vite-plugin-pwa
  • 106 Vitest units, Playwright e2e dwell-to-speak

Browser support

  • Chrome / Edge: first-class
  • Firefox: best-effort
  • Safari: not supported (Web Speech voice quality, getUserMedia constraints)

Privacy

All face landmarking, gaze inference, dwell timing, TTS, and persistence happen in the browser on your device. No video, audio, transcript, gaze trace, or usage event leaves the device.

What this release does not do yet

  • Open Board Format (OBF) import — drafted in specs/002-obf-import, implementation comes next
  • Multi-profile UI (one profile per browser today)
  • Word prediction
  • Non-English voices beyond what Web Speech ships

Licence note

Shipping the ARASAAC stop.png symbol restricts the project to non-commercial use under CC BY-NC-SA 4.0. To enable a commercial path, replace that one file (the rest of the symbol set is Mulberry CC BY-SA 4.0). See NOTICE.