Commit Graph
2 Commits
Author SHA1 Message Date
oliver ea1aeed1da Prioritize external transcription endpoint over browser Web Speech API
Previously the on-device Web Speech API (Chrome/Edge/Safari) was always
preferred, and the configured external transcription endpoint was only
used as a fallback when the browser had no speech API at all (Firefox).

Flip the priority in Composer.tsx: if a transcription endpoint is
configured in Settings, use it for dictation regardless of browser
support, since it's generally far more accurate. Fall back to the
browser's on-device SpeechRecognition only when no endpoint is set.

Update the Settings hint text and README to describe the new behavior.
Rebuilt and redeployed to the repo root.
2026-11-04 14:30:51 -03:00
oliver c7b653ff6a Restructure: move Vite project into app/, deploy build output to repo root
The webserver serves the repo checkout directly as static files, so
index.html at the repo root must be the production build (pointing at
hashed /assets/*.js) rather than the dev template (/src/main.tsx),
which was being served with an unrecognized application/octet-stream
MIME type and blocked by the browser.

- Move src/, public/, scripts/, server/, package.json, vite.config.ts,
  tsconfig.json, .env(.example), and the dev index.html into app/.
- Add app/scripts/deploy.mjs: copies app/dist/* into the repo root
  after every `vite build`, cleaning up stale hashed filenames.
- Wire it into `npm run build` (app/package.json).
- Update run.sh to operate from app/, and .gitignore for the new layout.
- Commit the current build output (index.html, assets/, manifest,
  sw.js, workbox-*.js, favicon.svg, icons/, LICENSE) to the repo root.
- Update README with the new project layout and deployment model.
2026-11-04 14:05:46 -03:00