Local-first dictation

Hold a key. Speak. The words land where you were typing.

Hold Ctrl + Win, speak, release. The text is pasted into whatever application had focus — editor, browser field, terminal. Your history, recordings and statistics stay on your machine.

v1.0.0 · Windows x64 · ~108.6 MB · unsigned installer

  • MIT licensed
  • No account required
  • No telemetry
  • Bring your own Groq key
The window that had focus

A demonstration: holding Ctrl and Win, speaking, then releasing pastes the sentence “Ship the release notes before standup.” into the window that had focus.

How it works

Three steps, and one of them is speaking.

The gesture is the whole interface. There is no window to open, no box to paste out of, and nothing to click.

  1. 01

    Hold the shortcut

    A floating widget appears on the monitor your cursor is on, and never takes focus. Esc cancels at any point.

  2. 02

    Speak

    16kHz mono audio is captured and sent to Groq’s Whisper large-v3-turbo with your own key.

  3. 03

    Release

    Your personal dictionary is applied, the text is pasted into the window that had focus, and your clipboard is restored.

The actual pipeline
Ctrl+Win held keyboard hook widget shown (never focused)
16kHz mono WAV captured
Key released silence gate Groq Whisper large-v3-turbo
personal dictionary replacement
clipboard save paste restore
row + WAV written to local SQLite
Ship the release notes before standup.
The text arrives in the window that already had focus. Nothing is typed character by character — insertion is a clipboard paste, and your clipboard is restored afterwards.
Privacy

One thing leaves your computer: the audio clip.

That is the entire network surface. No account, no cloud database, no telemetry, no analytics, no crash reporting.

Leaves

  • The audio clip, sent to Groq to be transcribed.

Nothing else. There is no second item on this list.

Stays on your machine

  • Transcripts and history — SQLite, at %APPDATA%\typeflow-ai
  • Recordings — WAV files, in the same folder
  • Settings and your personal dictionary
  • Your Groq API key — encrypted with Windows DPAPI, keyed to your Windows account
Inside the app

Four sections, and one of them is empty.

This is the app's real navigation. Nothing here is a mock-up of something planned.

Dictation

Every session in your history, grouped by day. Play back the original recording, copy it, favorite it, delete it, or search the lot.

Insights

Words per minute over recording time, total words, sessions, and a day streak with your best. All of it derived from local history.

Dictionary

Find-and-replace rules applied after transcription, so grog becomes Groq once and stays fixed. Entries also seed Whisper's vocabulary hint, which prevents some errors rather than correcting them.

Settings and data

Shortcut capture, microphone, theme, language, and your API key. Export transcripts, dictionary and settings to JSON; import skips duplicates, so re-importing is safe.

Transform

Coming later

A scaffolded destination for future post-transcription rules. It is in the app and it is empty. Nothing runs there yet.

The Insights heatmap

Daily activity, in the same contribution-style grid the app draws from your local history.

Example — your data stays on your machine.
Before you install

Windows will warn you, and it is right to.

The installer is not code signed — a certificate costs a few hundred dollars a year, which is not justified for a personal project given away for free. Windows SmartScreen will say “Windows protected your PC”. Click More info Run anyway.

That warning means “nobody has paid to vouch for this file”, not “this file is known to be malicious”. Every release lists a SHA256 checksum, and you can build it yourself from source in about five minutes.

Your next sentence goes wherever you were already working.

v1.0.0 · Windows x64 · ~108.6 MB · unsigned installer

Known limits

What it does not do.

Six things, stated plainly. This list is a feature of the page, not a disclaimer at the bottom of it.

  1. It cannot type into elevated windows. Windows blocks a non-elevated process from sending input to one running as administrator — this is UIPI, not a bug. Dictating into an admin terminal shows “Can't type into this window”.

  2. It needs a network connection. Expect 1–2 seconds between releasing the key and text appearing. Roughly 95% of that is network round-trip and free-tier queueing, not transcription.

  3. Grammar cleanup is off by default. An LLM pass over Whisper's output measurably deletes words — it has to cut something to make ungrammatical input read cleanly. The raw transcript is always stored and always shown.

  4. Very short or very quiet clips are dropped. Anything under 400ms or below the amplitude floor returns “Didn't catch that”, because Whisper invents confident text out of silence.

  5. Windows only. The keyboard hook, the insertion path, and the packaging are all Windows-specific. There is no macOS or Linux build and none is planned.

  6. The installer is not code signed. SmartScreen warns the first time you run it. Every release lists a SHA256 checksum instead.

Setup

Three steps, and one of them is getting a key.

There is no bundled key and no server in front of the API. You hold your own credentials.

  1. 01

    Run the installer

    It installs per-user and does not ask for administrator rights.

  2. 02

    Get a free Groq API key

    At console.groq.com — free tier, no card required. It starts with gsk_.

  3. 03

    Paste it into Settings → Transcription

    It is encrypted immediately. Copying that file to another machine gets you nothing: DPAPI ties it to your Windows user account.

Or build it from source

Requires Node 20+ and Visual Studio Build Tools with the C++ workload, for the native modules. It takes about five minutes.

powershell
git clone https://github.com/mohsinjameelqureshi/typeflow-ai
cd typeflow-ai
npm install     # postinstall runs electron-rebuild — do not skip it
npm run dev     # development, with hot reload
npm run dist    # produces the installer in release/
FAQ

Questions with verified answers.

Nothing here is aspirational. If the answer is no, it says no.

Is it free?

Yes, MIT licensed. You pay nothing for the app. Transcription runs on Groq's free tier with your own key — also free, no card required.

Do I need an account?

No. There is no login, no account, and no server run by this project.

Where is my data?

In a SQLite file and a recordings folder under %APPDATA%\typeflow-ai. Export everything to plain JSON whenever you like.

Is there a Mac or Linux version?

No, and none is planned. The keyboard hook, the text insertion, and the packaging are all Windows-specific.

Does it work offline?

No. Transcription is a network call to Groq. The provider is behind an interface so a local model could be added later, but nothing is built today.

How fast is it?

1–2 seconds from releasing the key to text appearing. About 95% of that is network round-trip and free-tier queueing.

Can it type into my admin terminal?

No. Windows blocks a non-elevated process from sending input to an elevated one. The app tells you rather than silently failing.

What happens to my clipboard?

It is saved before the paste and restored after.

Can I fix words it always gets wrong?

Yes — the Dictionary is find-and-replace applied after transcription, and its entries also prime Whisper so some errors never happen.

Is my API key safe?

It is encrypted with Windows DPAPI via Electron's safeStorage, tied to your Windows account, and stored outside the database. It is never written to a backup export.