Press a hotkey, speak, and your words land as text wherever your cursor is — your editor, your browser, your terminal. Local-first with whisper.cpp, or bring your own API key. No subscription, no cloud lock-in.
Free forever · Local & private · No account required
Your transcript shows up here, then lands in whatever app has focus.
in the app: hold CtrlShiftSpace anywhere · drag the pill — every press is a drag · see the error state
// What's inside
One shortcut, works in every app. Push-to-talk or toggle. Your cursor never has to leave what you're doing.
Run whisper.cpp entirely on-device. Your audio never leaves your machine — no cloud, no account, no telemetry.
Prefer the cloud? Plug in Groq, OpenAI, Deepgram, AssemblyAI, or OpenRouter. Keys live in your OS keychain — never in plaintext.
A tiny always-on-top pill with a live waveform. Three styles — expanded, compact, micro. Drag it anywhere or snap it to an edge.
Finished transcripts drop straight into the focused field, land on your clipboard, or both. Stop speaking and keep moving.
Teach it your vocabulary — "dot net" becomes ".NET". Map a spoken trigger to a saved block of text. Your words, your rules.
// How it works
No window to open, no button to find. Hold your hotkey, say what you mean, and let it go. The text is already where you wanted it.
Hold the hotkey
The logo tile flips to your accent color and the 24-bar waveform tracks your voice live. Works from any app, fullscreen included.
Speak naturally
whisper.cpp transcribes on-device, or your chosen provider streams it back in a blink. A white wave sweeps the bars while it works.
Let go — it's typed
Cleaned up through your dictionary and pasted into the focused field. Keep working.
these are the app's actual CSS animations — not a re-creation
// Your engine, your call
whisper.cpp on your own hardware. Fully offline, fully private. Pick the model size that fits your machine — tiny to large.
Bring your own API key for the fastest, most accurate models. Groq, OpenAI, Deepgram, AssemblyAI & OpenRouter supported.
Flip between local and cloud in a click — no reinstall, no reconfigure. Offline on a plane, cloud at your desk.
// Agent-native config
Your dictionary, snippets, and provider list are plain JSON files with a bundled AGENTS.md — so any coding agent can read and edit them. Just ask in plain English; Lemonade ships matching Claude skills that wrap the exact same files.
lemonade-dictionary
Find→replace rules applied to every transcript — "dot net" → ".NET".
lemonade-snippets
Voice macros — say "my email" and it expands to the saved text.
lemonade-providers
Manage cloud STT providers & model lists. Keys stay in your keychain.
▸ add "k eight s" → "k8s" and "dot net" → ".NET" to my dictionary
⏺ lemonade-dictionary (add)
Editing dictionary.json …
+ "k eight s" → "k8s"
+ "dot net" → ".NET"
✓ 2 rules added — live on your next transcript.
▸ ▍
no menus, no JSON by hand — just say what you want changed
// Familiar by design
Voice ships in the exact visual language as the Lemonade terminal — the 3px-radius signature, restrained typography, and all four themes. The pill's logo tile even re-colors itself per theme so it always reads cleanly.
theme
Lemonade
the tile swaps to a theme-matched mark on Nord & Mono Light