{"id":46102148,"url":"https://github.com/human37/open-wispr","last_synced_at":"2026-03-13T05:08:03.217Z","repository":{"id":338651213,"uuid":"1158583231","full_name":"human37/open-wispr","owner":"human37","description":"Push-to-talk voice dictation for macOS using Whisper","archived":false,"fork":false,"pushed_at":"2026-03-01T18:56:40.000Z","size":195,"stargazers_count":16,"open_issues_count":1,"forks_count":2,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-01T20:25:06.038Z","etag":null,"topics":["apple-silicon","dictation","macos","metal","on-device","open-source","privacy","speech-to-text","voice-dictation","voice-typing","whisper","whisper-cpp"],"latest_commit_sha":null,"homepage":"https://open-wispr.com","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/human37.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-15T16:02:50.000Z","updated_at":"2026-03-01T18:57:12.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/human37/open-wispr","commit_stats":null,"previous_names":["human37/open-wispr"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/human37/open-wispr","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/human37%2Fopen-wispr","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/human37%2Fopen-wispr/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/human37%2Fopen-wispr/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/human37%2Fopen-wispr/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/human37","download_url":"https://codeload.github.com/human37/open-wispr/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/human37%2Fopen-wispr/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30208891,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-07T05:23:27.321Z","status":"ssl_error","status_checked_at":"2026-03-07T05:00:17.256Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apple-silicon","dictation","macos","metal","on-device","open-source","privacy","speech-to-text","voice-dictation","voice-typing","whisper","whisper-cpp"],"created_at":"2026-03-01T20:00:56.876Z","updated_at":"2026-03-07T06:15:21.797Z","avatar_url":"https://github.com/human37.png","language":"HTML","readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"logo.svg\" width=\"80\" alt=\"open-wispr logo\"\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003eopen-wispr\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003e\u003ca href=\"https://open-wispr.com\"\u003eopen-wispr.com\u003c/a\u003e\u003c/strong\u003e\u003cbr\u003e\n  Local, private voice dictation for macOS. Hold a key, speak, release — your words appear at the cursor.\u003cbr\u003e\n  Everything runs on-device. No audio or text ever leaves your machine.\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003ePowered by \u003ca href=\"https://github.com/ggml-org/whisper.cpp\"\u003ewhisper.cpp\u003c/a\u003e with Metal acceleration on Apple Silicon.\u003c/p\u003e\n\n## Install\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/human37/open-wispr/main/scripts/install.sh | bash\n```\n\nThe script handles everything: installs via Homebrew, walks you through granting permissions, downloads the Whisper model, and starts the service. You'll see live feedback as each step completes.\n\nA waveform icon appears in your menu bar when it's running.\n\nThe default hotkey is the **Globe key** (🌐, bottom-left). Hold it, speak, release.\n\n\u003e **[Full installation guide](docs/install-guide.md)** — permissions walkthrough with screenshots, non-English macOS instructions, and troubleshooting.\n\n## Uninstall\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/human37/open-wispr/main/scripts/uninstall.sh | bash\n```\n\nThis stops the service, removes the formula, tap, config, models, app bundle, logs, and permissions.\n\n## Configuration\n\nEdit `~/.config/open-wispr/config.json`:\n\n```json\n{\n  \"hotkey\": { \"keyCode\": 63, \"modifiers\": [] },\n  \"modelSize\": \"base.en\",\n  \"language\": \"en\",\n  \"spokenPunctuation\": false\n}\n```\n\nThen restart: `brew services restart open-wispr`\n\n| Option | Default | Values |\n|---|---|---|\n| **hotkey** | `63` | Globe (`63`), Right Option (`61`), F5 (`96`), or any key code |\n| **modifiers** | `[]` | `\"cmd\"`, `\"ctrl\"`, `\"shift\"`, `\"opt\"` — combine for chords |\n| **modelSize** | `\"base.en\"` | `tiny.en` · `base.en` · `small.en` · `medium.en` (English-only) or `tiny` · `base` · `small` · `medium` (multilingual) |\n| **language** | `\"en\"` | Any [ISO 639-1 code](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) — e.g. `it`, `fr`, `de`, `es` |\n| **spokenPunctuation** | `false` | Say \"comma\", \"period\", etc. to insert punctuation instead of auto-punctuation |\n\n\u003e **Non-English languages:** Models ending in `.en` are English-only. To use another language, switch to the equivalent model without the `.en` suffix (e.g. `base.en` → `base`) and set the `language` field to your language code.\n\nIf the Globe key opens the emoji picker: **System Settings → Keyboard → \"Press 🌐 key to\" → \"Do Nothing\"**\n\n## Menu bar\n\n| State | Icon |\n|---|---|\n| Idle | Waveform outline |\n| Recording | Bouncing waveform |\n| Transcribing | Wave dots |\n| Downloading model | Animated download arrow |\n| Waiting for permission | Lock |\n\n## Compare\n\n| | open-wispr | VoiceInk | Wispr Flow | Superwhisper | Apple Dictation |\n|---|---|---|---|---|---|\n| **Price** | **Free** | $39.99 | $10/mo | $249 | Free |\n| **Open source** | MIT | GPLv3 | No | No | No |\n| **100% on-device** | Yes | Yes | No | Yes | Partial |\n| **Push-to-talk** | Yes | Yes | Yes | Yes | No |\n| **AI features** | No | AI assistant | AI rewriting | AI formatting | No |\n| **Account required** | No | No | Yes | Yes | Apple ID |\n\n## Privacy\n\nopen-wispr is completely local. Audio is recorded to a temp file, transcribed by whisper.cpp on your CPU/GPU, and the temp file is deleted. No network requests are made except to download the Whisper model on first run.\n\n## Build from source\n\n```bash\ngit clone https://github.com/human37/open-wispr.git\ncd open-wispr\nbrew install whisper-cpp\nswift build -c release\n.build/release/open-wispr start\n```\n\n## Support\n\nopen-wispr is free and always will be. If you find it useful, you can [leave a tip](https://buy.stripe.com/4gM5kC2AU0Ssd4l6Hqd7q00).\n\n## License\n\nMIT\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhuman37%2Fopen-wispr","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhuman37%2Fopen-wispr","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhuman37%2Fopen-wispr/lists"}