Model or dataset
OpenWhispr/openwhispr avatar
OpenWhispr/openwhispr

OpenWhispr: local Whisper and Parakeet dictation for macOS, Windows and Linux

Voice-to-text dictation app with local (Nvidia Parakeet/Whisper) and cloud models (BYOK). Privacy-first and available cross-platform.

8,221 stars1,010 forksJavaScriptMIT

At a glance

What is it?
OpenWhispr is an MIT-licensed Electron desktop app that turns a hotkey press into text at your cursor, using either on-device speech models or your own cloud API keys. The core trade-off is that the private path costs you a model download and local compute, while the fast path costs you an API bill.
Who is it for?
Adopt OpenWhispr if you want dictation and meeting transcripts where the audio path is yours to choose, and you are willing to run a Node 24 toolchain or install a signed desktop build. Skip it if you need a mobile client, since the download table lists only macOS, Windows and Linux, and the related searches for Android and iOS have nothing in the README behind them.
Can I use it commercially?
Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository received new commits within the last day.
What is it written in?
Mainly JavaScript, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 15, 2026, and from our analysis. They are not legal advice.

DEEP OPEN-SOURCE ANALYSIS

The problem OpenWhispr targets, and who feels it

Dictation tools have historically forced a choice. Cloud services transcribe quickly and accurately but ship your microphone audio to someone else's servers. Fully local tools keep the audio on disk but often stop at raw text, with no meeting capture, no note store, no assistant. OpenWhispr's README frames the project as "the open-source and free alternative to WisprFlow and Granola," which tells you the intended audience: people already paying for a hosted dictation or meeting-notes product and who want the same workflow without the hosted dependency.

The feature list splits along that same line. Every core capability, transcription, AI reasoning, speaker diarization and semantic search, is documented as working with local models or with cloud providers. Local speech-to-text is listed as Orukeet, Whisper, NVIDIA Parakeet and Cohere Transcribe. Cloud is bring-your-own-key: the .env.example carries slots for OPENAI_API_KEY, ANTHROPIC_API_KEY, GEMINI_API_KEY, GROQ_API_KEY, TINFOIL_API_KEY and MISTRAL_API_KEY, and the README names GPT-5, Claude, Gemini, Groq, Tinfoil, OpenRouter and local models as agent backends.

The people this fits are engineers and writers who dictate into an editor all day, and small teams that want meeting transcripts without routing audio through a vendor they did not choose. It does not fit anyone who wants a mobile client, because the download table lists only desktop formats.

How the dictation pipeline is put together

The repository is an Electron application. main.js and preload.js sit at the top level, src/ holds the renderer and application code, and native/ plus a long list of compile scripts in package.json point at platform-specific binaries rather than pure JavaScript. The compile:native script chains thirteen separate builds: globe, fast-paste, winkeys, linuxkeys, winpaste, linux-paste, linux-system-audio, text-monitor, media-remote, mediaremote-adapter, mic-listener, calendar-listener and audio-tap. That is the architecture in one line. Global hotkeys, clipboard or cursor injection, system audio capture and calendar detection are native per-platform pieces, not shared code.

On the model side, prestart also runs download steps for sherpa-onnx, yt-dlp, Qdrant, an embedding model and a meeting AEC helper. Qdrant plus an embedding model is the semantic search path for notes. yt-dlp is the audio import path that lets you paste a YouTube or audio URL. sherpa-onnx is the local inference runtime. GPU acceleration for local Whisper is documented for Metal, CUDA and Vulkan, which is how AMD and Intel GPUs are covered.

The data flow for a dictation is therefore: a native key listener fires on the global hotkey, audio is captured and passed to the selected engine, the transcript comes back, and a native paste helper writes it at the focused cursor. The README describes automatic pasting as part of the dictation feature, and a separate Voice Assistant hotkey that sends speech straight to the assistant with no cleanup pass, pasting at a cursor or streaming into a floating panel and copying to the clipboard when no writable cursor exists.

Installing OpenWhispr and dictating your first sentence

There are two paths. For an end user, the README's download table points at a .dmg for macOS (Apple Silicon and Intel), an .exe for Windows, and .AppImage, .deb, .rpm or .tar.gz for Linux, all linked from the latest GitHub release. Nothing else is required for that route.

For a developer, the quick start is four commands. package.json declares "node": ">=24" under engines, so the Node requirement is enforced by the manifest, not just prose.

bash
git clone https://github.com/OpenWhispr/openwhispr.git
cd openwhispr
npm install
npm run dev

npm run dev triggers prestart first, which compiles the native listeners and downloads sherpa-onnx, yt-dlp, Qdrant and the embedding model. Expect that step to be slow and to need a working C toolchain for the platform listeners. If you only want the app and not the build, use the release artifacts instead.

Cloud keys go in a .env file copied from .env.example. The template ships placeholders for each provider, and the Whisper model and language are configurable:

bash
cp .env.example .env
# then edit .env, for example:
WHISPER_MODEL=whisper-1
LANGUAGE=en
UI_LANGUAGE=en
OPENWHISPR_LOG_LEVEL=debug

OPENWHISPR_LOG_LEVEL=debug is the switch to flip when audio capture or pasting misbehaves, and TROUBLESHOOTING.md at the repository root is the companion document. After launch, the first real use is the one the README describes: press the dictation hotkey, speak, and the text appears at your cursor. If you want the local path, select a local model in the app before you dictate, otherwise the request goes to whichever cloud key you configured.

Where OpenWhispr breaks down or is the wrong tool

The Intel Mac footnote is the clearest limitation in the README. Live speaker identification and voice fingerprinting are unavailable on Intel Macs because they depend on ONNX Runtime, which stopped shipping macOS x86_64 binaries in 1.24. Meetings still record and transcribe, and notes search falls back to keyword matching instead of semantic search. So on that hardware you get a working transcriber with a degraded notes feature, not the full product.

The second constraint is the build itself. A native compile chain of thirteen targets plus five download steps means a fresh clone on an unusual Linux distribution or an older toolchain can fail before the app ever opens. That is the cost of doing hotkeys, cursor injection and system audio capture properly per platform. If you want a single portable binary with no native dependencies, this is the wrong shape of project.

The third is scope. There is no mobile target in the download table. Anyone searching for an Android or iOS build will not find one documented here. And the privacy claim has a boundary worth stating plainly: local models keep audio on the device, but choosing a cloud provider for transcription or assistant calls moves that audio or text to that provider under that provider's terms. The README's "no data collection, no telemetry" statement describes the application, not your third-party API calls.

OpenWhispr vs superwhisper and the hosted dictation apps

Superwhisper is the comparison people search for, and the difference is structural rather than a feature checklist. Superwhisper is a closed-source macOS and iOS product built around local models. OpenWhispr is MIT-licensed, ships on macOS, Windows and Linux, and exposes the provider layer: you can point transcription and assistant calls at OpenAI, Anthropic, Gemini, Groq, Tinfoil, Mistral or a local runtime, and the enterprise controls mention centrally managed Amazon Bedrock or Azure OpenAI access without distributing cloud keys.

Against WisprFlow and Granola, which the README names as the alternatives, the split is the same. Those are hosted services where the vendor owns the model and the account. OpenWhispr puts the model choice and the key in .env, and adds a public API and an MCP server so notes and transcriptions can be driven programmatically. The trade is operational: a hosted service is one login, while OpenWhispr is a desktop app you configure, and on the local path you supply the hardware. If your team has no one who wants to manage model files and API keys, a hosted product will cost less in attention even if it costs more in subscription.

Maintenance, releases and what the MIT licence leaves you

The repository is not archived, and the last push was on 2026-09-14. The most recent release in the list is v1.10.0 from 2026-09-11, with v1.9.2 on 2026-08-29 and a separate windows-system-audio-helper-v1.1.0 tag the same day. That pattern, frequent point releases plus independently versioned native helpers, is consistent with the compile-script layout: the Windows system audio helper is shipped as its own artifact because it evolves on its own schedule.

Upgrade cost is mostly the model and helper downloads. Because prestart re-runs download:sherpa-onnx, download:yt-dlp, download:qdrant and download:embedding-model, a pulled update can re-fetch large assets. The CHANGELOG.md at the repository root is where release notes live, and it is the file to read before upgrading a working install.

The MIT licence covers the application code. It does not cover the models you download or the API terms of the providers you configure. Whisper, Parakeet and the other local models carry their own licences, and each cloud key you place in .env is governed by that vendor's agreement. That is a factual boundary, not legal advice; check the model card and provider terms yourself if redistribution matters to you.

Editorial conclusion

Adopt OpenWhispr if you want dictation and meeting transcripts where the audio path is yours to choose, and you are willing to run a Node 24 toolchain or install a signed desktop build. Skip it if you need a mobile client, since the download table lists only macOS, Windows and Linux, and the related searches for Android and iOS have nothing in the README behind them. Before committing, verify two things on your own machine: that your preferred local model runs acceptably on your hardware, and that your chosen cloud provider key works through the app rather than only in a terminal. On Intel Macs, confirm you can live without voice fingerprinting and semantic search before you install.

Frequently asked questions

Is OpenWhispr safe to use?

The README states that the app performs no data collection and no telemetry, and that local speech-to-text models keep your audio on your device. The caveat is that if you configure a cloud provider key, that audio or text goes to that provider under their terms. The source is MIT-licensed, so the privacy claims can be checked in the code.

Is OpenWhispr legit or is it a scam?

It is a public MIT-licensed repository at github.com/OpenWhispr/openwhispr with a documented release history, including v1.10.0 on 2026-09-11. There is a homepage at openwhispr.com and documentation at docs.openwhispr.com. Nothing in the repository suggests a paid upsell gate on the core app.

Is OpenWhispr good enough to replace a paid dictation app?

It covers dictation, meeting transcription with speaker diarization, notes with semantic search, audio import and an AI agent, all documented as working with local or cloud models. Whether it is good enough depends on your hardware for the local path and your willingness to manage API keys for the cloud path. On Intel Macs, voice fingerprinting and semantic search are unavailable, so those features cannot replace a hosted equivalent there.

How does OpenWhispr compare to superwhisper?

Superwhisper is a closed-source macOS and iOS product. OpenWhispr is MIT-licensed and cross-platform for macOS, Windows and Linux, and it lets you choose the transcription and assistant provider through .env keys or local models. The practical difference is that OpenWhispr exposes the provider layer while superwhisper does not.

Does OpenWhispr run on Windows?

Yes. The download table lists a Windows .exe, and the repository includes Windows-specific native build scripts such as compile:winkeys and compile:winpaste, plus a separately versioned Windows System Audio Helper release. Meeting auto-detection is documented for Zoom, Teams and FaceTime.

Is there an OpenWhispr Android or iOS app?

The README's download table lists only macOS, Windows and Linux packages. No mobile build is documented by the project, so treat mobile support as absent until the project states otherwise.

Official sources

  1. License: MIT
  2. OpenWhispr/openwhispr on GitHub
  3. Project website
  4. README
  5. Releases
Community notes

Community notes