Wave - Native macOS Dictation, Done Right
I kept running into the same problem: I wanted to dictate a quick note, a message, or a code comment, but every solution I tried was either cloud-dependent, required switching apps, or felt like it was built for someone else. So I built Wave.
What is Wave?
Wave is a lightweight, native macOS dictation app. Hit a global shortcut, speak, and your words are transcribed locally and pasted directly into whatever app you’re using — no switching, no uploading, no waiting.
Transcription runs entirely on-device using Whisper, so your audio never leaves your machine.
Why Wave Stands Out
1. Fully local — no cloud, no privacy tradeoffs
Everything happens on your Mac. Wave uses a bundled Whisper model to transcribe audio offline. There’s no account to create, no API key to manage, and nothing sent to a server.
2. Zero friction workflow
The entire flow is: trigger shortcut → speak → done. A minimal overlay shows recording and transcription status, and the text lands wherever your cursor is. It works in any app.
3. Native macOS feel
Wave is built with SwiftUI and AppKit. It behaves like a first-party macOS utility — not an Electron wrapper. It’s fast to launch, light on resources, and doesn’t fight the OS.
4. Open source, free to build
The full source is on GitHub. You can build and run Wave for free. If you’d rather skip the setup, a ready-to-use build is available on Gumroad for a one-time $5.99 with lifetime updates.
How it Works
- Press your configured global shortcut (set during onboarding, fully customizable)
- The overlay appears — start speaking
- Whisper transcribes your audio locally
- The transcribed text is pasted into your active app
That’s the whole flow. No menus to open, no windows to switch to.
Getting Started
Build from source:
git clone https://github.com/monawwar/Wave
make build
open build/Build/Products/Release/Wave.app
Or grab the pre-built app:
Download from Gumroad — $5.99, one-time, lifetime updates included.
What’s Next
Wave is actively being developed. Here’s what’s coming:
- Text cleanup modes — optional punctuation and capitalization fixes after transcription
- App-specific profiles — format output differently depending on where you’re typing (IDE vs. chat vs. docs)
- Dictation history — review and reinsert recent transcriptions with one click
- AI agent mode — speak natural-language instructions to write or edit selected text
Resources
- GitHub: github.com/monawwar/Wave
- Download: monawwar.gumroad.com/l/wave
- Discord: Join the community
- Bugs / Feature requests: Open a GitHub issue