Model or dataset
OpenWhispr/openwhispr avatar
OpenWhispr/openwhispr

openwhispr loses two features on Intel Macs, and its start hook compiles fourteen native pieces

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

11,562 stars1,523 forksJavaScriptMIT

At a glance

What is it?
openwhispr is a desktop dictation application that transcribes locally or in the cloud, with meeting capture, notes and an assistant hotkey, on macOS, Windows and Linux. Its own documentation is more informative than its feature list in two respects: it states plainly that two features are unavailable on Intel Macs because a third-party runtime stopped shipping binaries for that architecture, with a different search technology as the fallback, and its build scripts reveal that starting the app in development compiles fourteen native components.
Who is it for?
openwhispr fits a user who wants dictation into whatever application has focus, meeting capture with speaker separation, and a hard requirement that audio never leaves the machine, on hardware it actually supports. It does not fit an Intel Mac user who depends on voice fingerprinting or on semantic notes search, because the fallback is keyword matching rather than a weaker version of the same thing.
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 last received commits 1 day ago.
What is it written in?
Mainly JavaScript, according to GitHub's language statistics.

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

From daily snapshots

Star history

  • OpenWhispr/openwhispr11,562 ★ · +3,341
Star history
Repository2026-09-152026-11-14
OpenWhispr/openwhispr8.2k11.6k

3,341 Stars in the last 60 days, measured from the daily GitHub snapshot. Compare with other projects

Editorial analysis

Two features are gone on Intel Macs because a runtime stopped shipping binaries

The download table has a footnote attached to the Intel row, and it is more informative than the table. It says that on Intel Macs live speaker identification and voice fingerprinting are unavailable, because they depend on a runtime that stopped shipping macOS binaries for that architecture in a particular version. It then says meetings still record and transcribe normally, and that notes search falls back to keyword matching instead of semantic search. Consequence: this is a dependency gap the application cannot close, and the fallback is a different technology rather than a degraded version of the same one, so search results change in kind. For anyone running a mixed-hardware team, that is a capability difference between two identical installs rather than something a setting can address.

A helper component has its own release tag ahead of the application's

The recent releases mix application tags (v1.11.0, v1.10.4) with a tag for a Linux text monitor helper (linux-text-monitor-v1.1.0). Consequence: the tag list is not a list of application versions, so answering what version is installed means consulting the changelog rather than the releases page, and any automation that parses tags to discover the app version will eventually pick up a component version instead. Versioning the helper separately is the right thing to do for something that only exists on one platform. It just makes the feed read as two projects sharing a page.

Starting the app in development compiles sixteen native pieces and fetches helpers

The manifest defines fourteen separate compile scripts, and one aggregate script that runs all of them in sequence. Each is named after a platform and a function: a macOS fast-paste helper, a Windows key listener, a Linux key listener, a Windows paste helper, a Linux paste helper, a Linux system audio helper, a text monitor, a media remote helper and its adapter, a macOS microphone listener, a macOS calendar listener, a macOS audio tap, and a macOS window bounds helper. The pre-start hook runs the aggregate script and then downloads helpers over the network. Consequence: a first development run is long and needs the network twice, once to install packages and once for the downloads.

The desktop and mobile applications are two build graphs in one repository

The quick start is four commands and a version requirement, then a paragraph that matters:

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

That paragraph says the commands run the desktop application, which stays at the repository root, and that the mobile application lives in a nested directory with its own dependencies, lockfile, build configuration and release process. Consequence: one clone carries two independent dependency graphs and two release pipelines, and the conventional assumption that the root manifest describes the repository is wrong for half of it. The package manifest is named differently again from both the repository and the product, which is a small thing that reliably costs someone a search. The nesting at least means the split is visible in the tree, which is more than most monorepos manage.

The auth server defaults to a hosted one in a self-hosted app

The environment template carries about a dozen variables, most of them optional and most of them an API key for a different model provider: an OpenAI key, keys for Anthropic, for Google, for a fast-inference provider, for a private-inference provider and for a transcription provider, plus a log level and a user-interface language. At the top sits the authentication server URL, described as self-hosted-capable, with the comment that it defaults to a hosted address. Consequence: configuring the application means picking a provider from several and pasting keys for them, and the authentication server URL, labelled optional and for account features, defaults to a hosted address unless you set your own.

The default model is the smallest of the three the template names

The template names three available speech models and marks the first as the default, with two other values (whisper-1-large, whisper-1-large-v2) available by changing one variable. It also offers a language setting that, left empty, auto-detects. Consequence: out of the box you get whisper-1, and the other two values are something you opt into by editing a line.

Troubleshooting is documented twice, in the repository and on the website

The top level of the repository carries three operational documents alongside the readme and the changelog: a debugging document, a troubleshooting document, and one specific to setting up the local speech model. The readme separately links a getting-started page, per-platform guides, an API reference, an MCP server setup page and a troubleshooting page on the documentation site. Consequence: the same subjects are covered in two places and the README is truncated so it cannot be said none is stated; the intended audience of each is not in source. A search for an error message has two candidate answers and nothing tells you which has been updated.

There are two Windows build configurations and one is unsigned

The top level holds two desktop-builder configuration files side by side, one of which is named to say that the Windows artefact it produces is unsigned. Consequence: a Windows build exists in a signed shape and an unsigned one. The cost is that an artefact's provenance depends on which configuration was used. The application is distributed as a plain installer, which means the distinction only surfaces when something about the file's origin is in doubt.

Editorial conclusion

openwhispr fits a user who wants dictation into whatever application has focus, meeting capture with speaker separation, and a hard requirement that audio never leaves the machine, on hardware it actually supports. It does not fit an Intel Mac user who depends on voice fingerprinting or on semantic notes search, because the fallback is keyword matching rather than a weaker version of the same thing. It also does not fit a contributor expecting one build graph per repository, because the mobile application has its own lockfile and release process nested inside. Before adopting it, check the processor you are deploying to, decide which model provider you will use, and expect a first development run to compile fourteen native components and download helpers before it shows a window.

Frequently asked questions

Is Open Whisper free?

The project describes itself as an open-source and free alternative to two commercial dictation products, states that there is no data collection and no telemetry, and is published under a permissive licence. It also lists team spaces with roles and server-enforced membership, free for signed-in users, and enterprise controls for organisation policy and single sign-on.

is openwhispr safe

The readme's claim is that audio can be transcribed entirely on the device with local models, that there is no data collection and no telemetry, and that it is fully open source so you can check. What it also shows is that the application is configured by default to point at a hosted authentication server, and offers optional keys for six cloud model providers, so what leaves your machine depends on which of those you fill in.

is openwhispr legit

The repository is public, permissively licensed, and carries a security policy and a changelog. It ships three platform builds plus four Linux package formats, a public API, a server integration protocol, and an examples directory with a custom-asr-shim example. It also states plainly which two features do not work on older Intel hardware and why.

What does OpenAI Whisper do?

The repository does not answer that as a question about another project. It uses an implementation of that model for local transcription, and also supports other local speech-to-text options such as NVIDIA Parakeet and Cohere Transcribe plus a cloud transcription service, with all core features working either way. Its .env.example sets WHISPER_MODEL=whisper-1 as the default.

What is the best free speech recognition software?

The repository makes no comparison, and nothing in it would settle one. It does describe its own scope clearly: dictation into any application through a global hotkey, dictation in one language pasted in another, meeting capture with live speaker separation, on-device speaker labelling, notes with search, and an assistant hotkey that needs no wake word.

Official sources

  1. License: MIT
  2. OpenWhispr/openwhispr on GitHub
  3. Project website
  4. README
  5. Releases
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/openwhispr-openwhispr.svg)](https://hysenlabs.com/projects/openwhispr-openwhispr)

Star history chart for your README

markdown
[![Star history](https://hysenlabs.com/chart/openwhispr-openwhispr.svg)](https://hysenlabs.com/projects/openwhispr-openwhispr)

Was this useful?