__ __| |__ (_)___ _ __ ___ \ \ /\ / /| '_ \| / __|| '__/ __| \ V V / | | | | \__ \| | \__ \ \_/\_/ |_| |_|_|___/|_| |___/
Press a hotkey, speak, and your words appear at the cursor — in any app on Wayland, X11, Hyprland, Sway, Niri, GNOME, or KDE. Cloud and fully offline backends. Fast, private, open source.
curl -sSL https://y0sif.github.io/whisrs/install.sh | bash
Or clone locally:
git clone https://github.com/y0sif/whisrs && cd whisrs && ./install.sh
Also available via pre-built binary / AUR / cargo / Nix
Groq, Deepgram REST + Streaming, OpenAI REST + Realtime, local whisper.cpp, and a generic ASR sidecar for bring-your-own local models.
Hyprland, Sway, Niri, GNOME, KDE, and any X11 window manager. Text goes to whatever app has focus.
uinput + XKB reverse lookup. Respects your keyboard layout, including AltGr and dead-key combinations.
Local whisper.cpp runs in under 500 MB of RAM with base.en. No API key, no internet, no data leaves your device.
OpenAI Realtime and Deepgram Streaming push text to your cursor while you speak over WebSocket.
Optional system tray icon and bottom-screen recording overlay. Visual feedback wherever you dictate.
Select text, speak an instruction, and an LLM rewrites it in place. Edit by voice instead of by hand.
Lightweight daemon runs in the background. Bind the CLI to any hotkey in your compositor.
| Backend | Type | Streaming | Cost |
|---|---|---|---|
| Groq | Cloud | Batch | Free tier available |
| Deepgram Streaming | Cloud (WebSocket) | True streaming | $200 free credit |
| Deepgram REST | Cloud | Batch | $200 free credit |
| OpenAI Realtime | Cloud (WebSocket) | True streaming | Paid |
| OpenAI REST | Cloud | Batch | Paid |
| Local whisper.cpp | Local (CPU/GPU) | Sliding window | Free |
| ASR sidecar | Local (HTTP) | Batch | Free (BYO model) |
| Feature | whisrs | nerd-dictation | Speech Note | Wispr Flow |
|---|---|---|---|---|
| Platform | Linux | Linux | Linux | macOS, Windows (no Linux) |
| Wayland support | Yes (native) | Partial (xdotool) | Yes (GUI app) | N/A |
| Offline transcription | Yes (whisper.cpp + sidecar) | Yes (Vosk) | Yes (multiple) | No |
| Cloud transcription | Groq, Deepgram, OpenAI | No | No | Proprietary |
| True streaming | Yes (OpenAI Realtime, Deepgram) | No | No | Yes |
| Keyboard injection | uinput + XKB (layout-aware) | xdotool | Clipboard paste | Native |
| Window tracking | Yes (6 compositors) | No | No | Native |
| Architecture | Daemon + CLI | Script | GUI app | GUI app |
| License | MIT (open source) | GPL (open source) | MPL (open source) | Closed source |
| Component | Support |
|---|---|
| Hyprland | Tested by maintainer and community (Arch Linux) |
| Sway / i3 | Implemented; additional reports welcome |
| Niri | Tested by contributor on Niri 26.04 (CachyOS) |
| X11 (any WM) | Tested by community on Ubuntu 24.04 (Xorg) |
| GNOME Wayland | Tested on Ubuntu 24.04 and Arch (overlay via bundled GNOME Shell extension) |
| KDE Wayland | Implemented via D-Bus; reports welcome |
| Audio | PipeWire, PulseAudio, ALSA (auto-detected via cpal) |
| Distros | Confirmed on Arch Linux and Ubuntu 24.04; any Linux with system dependencies |
Yes. whisrs has native support for Wayland compositors including Hyprland, Sway, Niri, GNOME, and KDE. It uses compositor-specific protocols for window tracking and uinput for keyboard injection, so it does not depend on X11 tools like xdotool.
Yes. The local whisper.cpp backend runs transcription entirely on your machine — base.en uses ~388 MB of RAM. No API key, no internet, no audio leaves your device. Run whisrs setup and select Local > whisper.cpp to get started.
Seven backends: Groq (cloud, free tier), Deepgram REST and Deepgram Streaming (cloud, $200 free credit), OpenAI REST, OpenAI Realtime (cloud, true streaming over WebSocket), local whisper.cpp (offline, CPU/GPU), and a generic ASR sidecar for bring-your-own local models.
Yes. The generic ASR sidecar backend talks to a small local HTTP service that hosts the model. Ready-to-run sidecars are bundled in contrib/asr-sidecars/ for Moonshine, NVIDIA Parakeet, and Microsoft VibeVoice-ASR.
Yes. Wispr Flow ships on macOS and Windows but not Linux; Superwhisper is macOS only. whisrs is the open source (MIT) Linux-native equivalent: press a hotkey, speak, and text appears at your cursor. It supports both cloud and fully offline transcription backends.
whisrs works on any Linux distribution with the required system dependencies (alsa-lib, libxkbcommon, clang, cmake). Daily-driven on Arch Linux, with community-confirmed reports on Ubuntu 24.04 (GNOME and Xorg) and CachyOS (Niri). Install via the universal script, AUR, cargo, Nix, or pre-built x86_64 binary tarballs.