Hold the globe key. Yap. Done.
Private, on-device dictation for macOS.
Hold the Globe (fn) key anywhere on your Mac, speak, release. Your words appear at the cursor: filler words gone, punctuation fixed, meaning untouched. Nothing leaves your machine. No cloud, no account, no subscription, no word limits.
| Hold to talk | Press and hold fn; the logo dances above your Dock while you speak |
| Hands-free | Double-tap fn to talk without holding; tap, Esc, or silence finishes |
| "Send it" | End a dictation with the phrase and Return is pressed for you |
| Zero-setup cleanup | Apple's on-device model polishes transcripts out of the box; Ollama or any OpenAI-compatible endpoint if you prefer |
| Styles per app | Casual in Slack, formal in Mail, verbatim in terminals, terse prompt mode for AI assistants; every prompt editable |
| Voice editing | Select text, hold fn, say "make this more formal" |
| Personal dictionary | Your names, jargon, and acronyms bias recognition itself |
| Transparent history | Raw and cleaned text side by side; cleanup is never a black box |
| On-screen context | Reads the focused field locally so tone matches what you are writing |
| Honest updates | A real Updates window with release notes; checks only when you ask |
| Transcribe files | Audio and video files, many times faster than real time; menu or drag onto the icon |
| Listen mode | Transcribes what your Mac is playing: lectures, podcasts, the other side of calls |
- Spoken punctuation and layout. Say "new paragraph", "comma", "question mark", or "scratch that" and get the character or the edit rather than the word.
- Passwords are left alone. A field that reports itself as a password field never starts the mic, and nothing is stored. See SECURITY.md for what that does and does not cover.
- Speak one language, paste another. Per style or globally, using the same local provider as cleanup.
- Diagnostics. A live input meter, your device and its format, provider health, and a self test that runs the whole path end to end. The bug report writes itself.
- A Dock icon while a window is open, so cmd-Tab and the menu bar work, and none while yapping is just listening for the key.
- Deeper stats: pace over time, when you yap most, which style wrote it, and how long you have been at it.
- History that does more: re-run cleanup with any style, delete single entries, export to Markdown or JSON.
Build from source (no Gatekeeper friction):
git clone https://github.com/angad-kandhari/yapping.git
cd yapping
make installOr download the zip from Releases, move Yapping.app to /Applications, and allow it once under System Settings, Privacy and Security (releases are not notarized; the code is right here).
First launch opens a Setup Assistant that walks through the permissions (Microphone, Input Monitoring, Accessibility) and the one system setting: System Settings > Keyboard > "Press globe key to" > Do Nothing.
- Speech recognition: Apple SpeechAnalyzer, on-device
- Cleanup: Apple's on-device Foundation Model, or your own local Ollama
- Network connections: localhost, plus the GitHub API only when you click Check for Updates
- Dictations live only in a local history file you can clear any time; audio is never written to disk
- Website: get-yapping.com
- Contributing: CONTRIBUTING.md
- License: Apache 2.0
Built with SwiftPM and a Makefile. No Xcode project, no dependencies, one small binary.