Voice dictation for macOS

Talk.
It types.
Anywhere.

Hold fn, say what you mean, let go. FlowLite transcribes on your Mac, cleans up the ums and grammar, and types it where your cursor is.

Free & open source · GPL-3.0 · macOS 15+ · Apple Silicon

Scroll to watch your voice become text ↓
  1. 0 ms/Speak
  2. ≈ 0.5 s/Transcribe
  3. ≈ 1 s/Type
What cleanup does

You talk like a person. It writes like you meant to.

Heard

umsomeandhimwasuhgoingtoshipitfridaynowaitthursday

Typed

  • Fillers removed
  • Self-correction applied
  • Grammar fixed
  • Punctuation added

Choose Standard editing to fix grammar like this, or Light to keep your grammar exactly as spoken. If cleanup can't run, you still get the raw transcript.

Works everywhere

If you can type there, you can talk there.

No plugins, no per-app setup. FlowLite types into the field you're in, and in apps that need it, pastes and puts your clipboard back.

Slack · #launch

The build is green now. We can ship it tomorrow morning.

inserted via⌘V paste
Mail · Re: Q3 deck

Hi Priya, thanks for the notes. I'll send the revised deck by Thursday.

inserted viaAccessibility
Notes · Standup

Blockers: he and I were going to fix the login bug, but he doesn't have access to prod.

inserted viaAccessibility
VS Code · README.md

Run the tests with swift test before opening a pull request.

inserted via⌘V paste
Chrome · Contact form

Thanks for reaching out. I'm free on Tuesday after two.

inserted via⌘V paste
Messages · Sam

Yeah, sounds good. See you at seven.

inserted viaAccessibility
Features

A small app that replaces a lot of typing.

Push to talk

Hold fn, speak, release. Text lands at your cursor in about a second and a half.

Hands-free

Double-tap fn to keep listening while you pace around. Tap again to finish.

Rewrite by voice

Select text, hold Control and fn, and say “make this friendlier” or “translate to Spanish”.

Reads the room

Casual in chat, polished in email, careful with code. It continues the sentence you were writing.

Your dictionary

Teach it names and jargon, and set replacements like “my email” for your address.

Never loses words

Offline, no key, or a slow reply: the raw transcript goes in instead. Every dictation is in History.

Shortcuts

One key does almost everything.

fnholdDictateSpeak while holding, release to insert.
fnfndouble-tapHands-freeRecording stays on; tap fn once to stop.
⌃fnholdRewrite selectionSay an instruction; the selected text is replaced.
escpressCancelThrow the recording away. Nothing is inserted.
Privacy

Your voice never leaves your Mac.

No account, no telemetry, no FlowLite server. The only network call is cleanup, made with your own API key.

Stays on your Mac

Your voice

Whisper runs locally on the Neural Engine. Audio is never uploaded, and History is a local database you can clear any time.

Sent with your key

Text for cleanup

The transcript, the app's name and about 2,000 characters around your cursor go to Claude Haiku. Switch cleanup off and nothing is sent.

Never read

Password fields

FlowLite doesn't read them, doesn't send them for cleanup, and doesn't keep them in History.

Install

Build it in a few minutes.

FlowLite is built from source with Xcode. On first launch it downloads the 1.5 GB speech model.

Terminal
$ git clone https://github.com/Jenish109/flowlite.git
$ cd flowlite
$ brew install xcodegen
# once: a local signing certificate so permissions survive rebuilds
$ Scripts/make-signing-identity.sh
# build, sign, install to ~/Applications and launch
$ Scripts/build.sh --run
  • Apple Silicon MacM1 or later, for the Neural Engine
  • macOS 15 or laterSequoia and newer
  • Xcode 16 or laterplus Homebrew for XcodeGen
  • Anthropic API keyOptional. Without one you get the raw transcript.