Grown-ups: run python3 serve.py in this folder and open http://localhost:8000/index-local.html.
serve.py adds the COOP/COEP headers the on-device SQLite database needs; opened any other way (file://, plain
python3 -m http.server) the app still works but history is not saved. Offline voice downloads a ~41 MB model once, then recognises speech on this device.
Keep the app open in only one tab at a time.