The problem
I write a lot: emails, code comments, posts, this site. Typing is the bottleneck.
Off-the-shelf dictation tools all required me to break flow: open a separate app, dictate, copy, paste. By the time I'd done that I could have typed it.
I wanted one hotkey that does what I say. Speak, release, and the text appears in whatever app is focused. And once that worked, the reverse followed: select any text, press a chord, and hear it read back in a clone of my own voice, still without touching the internet.
What I built
A background Windows app:
1. Listen. A tray app holds a global hotkey. Press-and-hold to record, release to transcribe.
2. Transcribe. whisper.cpp runs large-v3-turbo (quantised) as a resident server, GPU-accelerated via Vulkan, sub-0.5s from release to preview. All on-device. No API cost, no internet required.
3. Paste. Win32 SendInput with KEYEVENTF_UNICODE injects the text at a low level into whatever window has focus. Works in RDP sessions, VS Code, Slack, Chrome, and other Electron apps that ignore simulated clipboard pastes.
4. Learn. A speech profile (SQLite) tracks corrections. After I fix the same word three times, it starts applying the correction automatically.
5. Show feedback. The tray icon pulses while recording; a silence-countdown badge shows when it'll cut off; a confidence-bordered preview lets me review low-confidence transcriptions before pasting.
6. Read back. Select any text, press a chord, and it plays in a clone of my own voice: qwentts.cpp on the same Vulkan GPU stack, 0.87× real-time, about 145 ms to first audio. A study mode slows the delivery and breathes at sentences, lists and headings, for learning by ear.
7. Keep the record honest. A searchable history with export to Markdown, SRT and VTT, an incognito mode that keeps nothing, redaction patterns that mask sensitive strings before they are stored, and a diagnostics page whose network check is a real socket listing, not a promise.
The result
Faster than typing for anything past about 30 words, with sub-half-second release-to-preview latency from a quantised large-v3-turbo running on the GPU. Free to run: no API bill, fully offline, nothing I say ever leaves the machine. If your industry cannot send audio to the cloud at all (legal, medical, financial), this is the constraint I have already designed around.
Tech used
Quiett, the product it became
The daily driver grew into a product called Quiett. Same engine, with an interface built for handing to someone who is not me: dictation, read-aloud, a dictionary that learns you, searchable history, and a diagnostics page that proves nothing leaves the machine. It is in development and not for sale yet. The video above is the whole flow in 38 seconds; the demo below is the thing itself.
This is the real interface running on simulated data. Every control responds, and nothing you click sends anything anywhere.
