{"data":{"slug":"pluja-whishper","name":"whishper","tagline":"Open-source local audio transcription and subtitling suite with web UI","github_url":"https://github.com/pluja/whishper","owner":"pluja","repo":"whishper","owner_avatar_url":"https://avatars.githubusercontent.com/u/64632615?v=4","primary_language":"Svelte","stars":3072,"forks":181,"topics":["ai","audio-to-text","golang","speech-recognition","speech-to-text","stt","subtitles","sveltekit","transcription","ui","web","web-whisper","webapp","whisper"],"archived":false,"github_pushed_at":"2026-07-31T09:26:59+00:00","maintenance_label":"Steady","stars_delta_30d":24,"url":"https://www.graphcanon.com/tools/pluja-whishper","markdown_url":"https://www.graphcanon.com/tools/pluja-whishper.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/pluja-whishper","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=pluja-whishper","description":"Transcribe any audio to text, translate and edit subtitles 100% locally with a web UI. Powered by whisper models!","homepage_url":"https://whishper-docs.pages.dev/","license":"AGPL-3.0","open_issues":108,"watchers":41,"ai_summary":"Whishper is an all-in-one solution for transcribing media to text 100% locally using Whisper models. Features include speech recognition, translation services, powerful subtitle editing capabilities, and support for both GPU and CPU.","readme_excerpt":"## 🚧 I am working on a complete rewrite of the project. Progress on this can be seen at [v4 branch](https://github.com/pluja/whishper/tree/v4). Consequently, this branch will not receive any new releases or updates.\n\n**Whishper** is an open-source, 100% local audio transcription and subtitling suite with a full-featured web UI.\n\n## Features\n\n- [x] 🗣️ **Transcribe any media** to text: audio, video, etc.\n  - Transcribe from URLs (any source supported by yt-dlp).\n  - Upload a file to transcribe.\n- [x] 📥 **Download transcriptions in many formats**: TXT, JSON, VTT, SRT or copy the raw text to your clipboard.\n- [x] 🌐 **Translate your transcriptions** to any language supported by [Libretranslate](https://libretranslate.com).\n- [x] ✍️ **Powerful subtitle editor** so you don't need to leave the UI!\n  - Transcription highlighting based on media position.\n  - CPS (Characters per second) warnings.\n  - Segment splitting.\n  - Segment insertion.\n  - Subtitle language selection.\n- [x] 🏠 **100% Local**: transcription, translation and subtitle edition happen 100% on your machine (can even work offline!).\n- [x] 🚀 **Fast**: uses FasterWhisper as the Whisper backend: get much faster transcription times on CPU!\n- [x] 👍 **Quick and easy setup**: use the quick start script, or run through a few steps!\n- [x] 🔥 **GPU support**: use your NVIDIA GPU to get even faster transcription times!\n- [x] 🐎 **CPU support**: no GPU? No problem! Whishper can run on CPU too.\n\n### Roadmap\n\n- [ ] Local folder as media input ([#15](https://github.com/pluja/whishper/issues/15)).\n- [ ] Full-text search all transcriptions.\n- [ ] User authentication.\n- [ ] Audio recording from the browser.\n- [ ] Add [insanely-fast-whisper](https://github.com/Vaibhavs10/insanely-fast-whisper) as an optional backend ([#53](https://github.com/pluja/whishper/issues/53)).\n- [x] ~~Support for GPU acceleration.~~\n  - [ ] Non NVIDIA GPU support. Is it possible with faster-whisper?\n- [ ] Can we do something with [seamless_communication](https://github.com/facebookresearch/seamless_communication)?\n\n## Project structure\n\nWhishper is a collection of pieces that work together. The three main pieces are:\n\n- Transcription-API: This is the API that enables running Faster-Whisper. You can find it in the `transcription-api` folder.\n- Whishper-Backend: This is the backend that coordinates frontend calls, database, and tasks. You can find it in `backend` folder.\n- Whishper-Frontend: This is the frontend (web UI) of the application. You can find it in `frontend` folder.\n- Translation (3rd party): This is the libretranslate container that is used for translating subtitles.\n- MongoDB (3rd party): This is the database that stores all the information about your transcriptions.\n- Nginx (3rd party): This is the proxy that allows running everything from a single domain.\n\n### Contributing\n\nContributions are welcome! Feel free to open a PR with your changes, or take a look at the issues to see if there is something you can help with.\n\n### Development setup\n\nCheck out the development documentation [here](https://whishper-docs.pages.dev/guides/develop/).\n\n## Screenshots\n\nThese screenshots are available on [the official website](https://whishper-docs.pages.dev/usage/transcriptions/), click any of the following links to see:\n\n- [A transcription creation](https://whishper-docs.pages.dev/usage/transcriptions/)\n- [A transcription translation](https://whishper-docs.pages.dev/usage/translate/)\n- [A transcription download](https://whishper-docs.pages.dev/usage/download/)\n- [The subtitle editor](https://whishper-docs.pages.dev/usage/editor/)\n\n## Support\n\n- [Monero](https://www.getmonero.org/): `82x6cn628oTUXV63DxBd6MJB8d997FhaSaGFvoWMgwihVmgiXYQPAwm2BCH31AovA9Qnnv1qQRrJk83TaJ8DaSZU2zkbWfM`\n- [Bitcoin](https://bitcoin.org/en/): `bc1qfph44jl4cy03stwfkk7g0qlwx2grldr9xpk086`\n- [Lightning Network (kycnotme)](https://getalby.com/p/kycnotme)\n\n## Star History\n\n<a href=\"https://star-history.com/#pluja/whishper&Date\">\n  <picture>","github_created_at":"2023-08-26T08:34:13+00:00","created_at":"2026-07-11T12:16:32.915724+00:00","updated_at":"2026-09-20T07:18:24.569667+00:00","categories":[{"slug":"developer-tools","name":"Developer Tools","url":"https://www.graphcanon.com/categories/developer-tools","markdown_url":"https://www.graphcanon.com/categories/developer-tools.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/developer-tools"},{"slug":"speech-audio","name":"Speech & Audio","url":"https://www.graphcanon.com/categories/speech-audio","markdown_url":"https://www.graphcanon.com/categories/speech-audio.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/speech-audio"}],"tags":[{"slug":"audio-to-text","name":"audio-to-text"},{"slug":"golang","name":"golang"},{"slug":"speech-recognition","name":"speech recognition"},{"slug":"speech-to-text","name":"speech-to-text"},{"slug":"subtitles","name":"subtitles"},{"slug":"transcription","name":"transcription"},{"slug":"web","name":"web"}],"trust":{"provenance":{"is_fork":false,"github_id":683336280,"owner_type":"User","methodology":"github_public_v1","parent_repo":null,"near_duplicate_slugs":[]},"computed_at":"2026-09-20T07:18:22.782Z","maintenance":{"label":"Steady","score":60,"methodology":"github_public_v1","releases_90d":0,"days_since_push":50,"last_release_at":"2024-09-17T20:19:24Z","stars_delta_30d":24,"open_issues_delta_30d":0},"security_summary":{"status":"no_lockfile","scanner":null,"low_count":0,"high_count":0,"last_scan_at":"2026-07-11T12:16:37.339Z","medium_count":0,"scan_profile":"none","critical_count":0}},"capability_facts":{"scan":{"source":"repo_scan","observed_at":"2026-09-20T07:18:23.803Z"},"deploy":{"source":"dockerfile:Dockerfile","self_host":true,"observed_at":"2026-09-20T07:18:23.803Z","managed_saas":false},"languages":{"value":["svelte"],"source":"github.language","observed_at":"2026-09-20T07:18:23.803Z"},"has_docker":{"value":true,"source":"dockerfile:Dockerfile","observed_at":"2026-09-20T07:18:23.803Z"},"license_spdx":{"value":"AGPL-3.0","source":"github.license","observed_at":"2026-09-20T07:18:23.803Z"}},"decision_facts":{"hosting":null,"pricing":{"model":"freemium","summary":"Free, open-source solution that does not charge for usage or require payment plans."},"requirements":{"notes":["Supports both GPU and CPU for processing.","NVIDIA GPU is optional."],"min_ram_gb":4,"requires_docker":true},"constraints":{"min_ram_gb":4,"pricing_model":"freemium","requires_docker":true},"when_to_use":["When you need to transcribe media files locally without sending data to external servers, ensuring privacy.","For projects or environments where offline functionality is required and internet connectivity can't be assumed.","If your workflows include frequent subtitle editing since Whishper offers robust in-UI editing features such as CPS warnings and easy segment management."],"when_not_to_use":["When real-time transcription accuracy outweighs local processing needs, because while faster on CPU, it may not offer the same level of immediate precision as cloud-based solutions.","If your project is resource-constrained, especially in terms of development time and effort required for setup since Whishper involves a few manual steps to start using.","When direct audio input from web browsers is necessary because this feature is pending implementation."],"source":"enrich:decision_facts","observed_at":"2026-07-17T00:05:00.821Z"},"constraint_facets":{"min_ram_gb":4,"pricing_model":"freemium","requires_docker":true},"decision_summary":[{"label":"Pricing","value":"freemium - Free, open-source solution that does not charge for usage or require payment plans."},{"label":"Requirements","value":"Min 4 GB RAM; Requires Docker; Supports both GPU and CPU for processing.; NVIDIA GPU is optional."},{"label":"Adopt for","value":"Whishper is an open-source audio transcription and subtitling suite with a web UI that supports both GPU and CPU for local transcription."},{"label":"License detail","value":"Whishper uses the AGPL-3.0 license, requiring users who modify and deploy the software in a network service to make their changes available under the same license."}]}}