Files
mouth/Cargo.toml
T
steve 3fa4d102df v0.2.1: Fix cancel key (Escape) being swallowed globally
The cancel key was consumed by rdev::grab at all times, not just during
recording/transcribing. This made the Escape key unusable system-wide
while Mouth was running. Now the cancel key only gets swallowed when
Mouth is actively recording or transcribing.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 16:37:50 +01:00

75 lines
1.4 KiB
TOML

[package]
name = "mouth"
version = "0.2.1"
edition = "2024"
description = "Offline speech-to-text with global hotkey and paste"
license-file = "LICENSE"
[dependencies]
# CLI
clap = { version = "4", features = ["derive"] }
# Config
serde = { version = "1", features = ["derive"] }
serde_yaml = "0.9"
dirs = "6"
# Interactive config TUI
dialoguer = "0.11"
# Logging
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
# Async
tokio = { version = "1", features = ["full"] }
# Global hotkey
rdev = { version = "0.5", features = ["unstable_grab"] }
# Audio capture
cpal = "0.15"
# Audio resampling
rubato = "0.16"
# ONNX inference (Parakeet v3 + Silero VAD)
ort = { version = "2.0.0-rc.12", features = ["download-binaries"] }
ndarray = "0.17"
# Model download from HuggingFace
hf-hub = "0.4"
indicatif = "0.17"
# Clipboard
arboard = "3"
# Keyboard simulation
enigo = { version = "0.3", features = ["serde"] }
# Overlay window
winit = "0.30"
softbuffer = "0.4"
# Audio feedback
rodio = "0.20"
# System info
num_cpus = "1"
# System tray
tray-icon = "0.19"
# IPC status
serde_json = "1"
# Error handling
anyhow = "1"
thiserror = "2"
[build-dependencies]
winresource = "0.1"
[target.'cfg(windows)'.dependencies]
windows-sys = { version = "0.59", features = ["Win32_System_Console", "Win32_UI_WindowsAndMessaging", "Win32_System_Pipes", "Win32_System_IO", "Win32_Storage_FileSystem", "Win32_Foundation", "Win32_Security"] }