v150 · local-first · speech workflow
Local Triage Workflow
A concrete app pattern for local speech: dictate sensitive notes, classify the transcript in-page, and generate follow-up fields while the privacy state stays visible.
Dictation has not started. This page requests local processing before listening.
SpeechRecognition checking
Local processing control checking
Language pack not checked
Network checking
Privacy processLocally requires audio and transcript processing on this device
triage output
speech event log
No speech events yet.
recognition setup
const Recognition = window.SpeechRecognition || window.webkitSpeechRecognition;
const recognition = new Recognition();
recognition.lang = "en-US";
recognition.continuous = true;
recognition.interimResults = true;
recognition.processLocally = true;
const packStatus = await Recognition.available({
langs: ["en-US"],
processLocally: true,
});
if (packStatus === "available") {
recognition.start();
} else if (packStatus === "downloadable") {
await Recognition.install({ langs: ["en-US"], processLocally: true });
}