All 65 Dependencies

Every package Handy depends on, ranked by repo health score.

Handy is a cross-platform desktop application that transcribes your speech entirely on your own machine and pastes the result into whatever text field is active. There are no cloud uploads, no subscriptions, and no data leaving your computer. Press a hotkey, speak, and your words appear — that is the complete workflow.

The application is built on Tauri 2, pairing a React and TypeScript settings UI with a Rust backend that handles audio capture, voice activity detection, and ML inference. It supports multiple transcription engines in parallel: the Whisper family (Small, Medium, Turbo, Large) with GPU acceleration via CUDA, Metal, and ROCm, and the CPU-optimised Parakeet V3 which adds automatic language detection without manual selection. Additional ONNX-based engines include Moonshine, SenseVoice, GigaAM for Russian, Canary, and Cohere.

After transcription, an optional post-processing step lets you refine the raw text through any OpenAI-compatible API — including local models — using configurable LLM prompts. Custom word dictionaries let you correct proper nouns and technical terms that models frequently misrecognise. The result is a tool that fits into accessibility workflows, note-taking pipelines, and developer automation with equal ease.

Handy is explicitly designed to be the most forkable speech-to-text application. The codebase prioritises clarity over cleverness: a clean separation between the Rust backend and the TypeScript frontend, type-safe bindings generated with Specta, and a contributing philosophy that favours bug fixes and stability over feature growth.

32 ferrous-opencc 0.2.3 outdated 33 tauri-plugin-macos-permissions 2.3.0 37 rs-natural 0.5.0 39 strsim-rs 0.11.0 40 once_cell 1 40 remark-gfm ^4.0.1 41 RustFFT 6.4.0 43 eslint-plugin-i18next ^6.1.3 44 handy-keys 0.3.0 44 transcribe-rs 0.3.8 50 hound 3.5.1 61 react-select ^5.8.0 62 tar 0.4.44 65 react-markdown ^10.1.0 65 Sonner ^2.0.7 67 Rusqlite Migration 2.3 71 sha2 0.10 outdated 73 enigo 0.6.1 74 Tauri Specta =2.0.0-rc.21 75 anyhow 1.0.95 75 Rubato 0.16.2 outdated 75 tempfile 3 76 react-i18next ^16.4.1 outdated 76 serde_json 1 77 Chrono 0.4 77 flate2 1.0 77 log 0.4.25 77 serde 1 78 env_logger 0.1.0 outdated 80 Zustand ^5.0.8 81 regex 1 83 reqwest 0.12 outdated 85 Specta =2.0.0-rc.22 85 Specta 0.0.9 outdated 87 i18next ^25.7.2 outdated 89 Immer ^11.1.3 89 rusqlite 0.37 outdated 90 Tailwind CSS ^4.1.16 90 Clap 4 90 prettier ^3.6.2 90 Tailwind CSS ^4.1.16 90 Zod ^3.25.76 outdated 91 Playwright ^1.58.0 91 Tauri Plugin FS ~2.4.4 outdated 91 cpal 0.16.0 outdated 91 lucide-react ^0.542.0 outdated 91 Tauri 2.11.5 91 Tauri Plugin FS 2.3.2 91 Tauri Plugin FS 2.6 outdated 91 Tauri Plugin FS 2.4.4 91 Tauri Plugin FS 2.7.1 outdated 91 Tauri Plugin FS 2.5.2 91 Tauri Plugin FS 2.3.2 91 Tauri Plugin FS 2.3.1 91 Tauri Plugin FS 2.4.1 92 @vitejs/plugin-react ^4.7.0 outdated 92 futures 0.3 93 Tokio 1.43.0 93 Vite ^6.4.1 outdated 94 typescript-eslint ^8.49.0 94 typescript-eslint ^8.49.0 94 ESLint ^9.39.1 outdated 96 TypeScript ~5.6.3 outdated 97 React ^18.3.1 outdated 97 React DOM ^18.3.1 outdated

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers

Search