From de20033c1a935caa49fd5f4035bb3134fe6121b9 Mon Sep 17 00:00:00 2001 From: LeonardoTrapani Date: Sun, 7 Sep 2025 19:26:57 +0200 Subject: [PATCH] update readme --- README.md | 42 ++++++++++++++++++++++++++---------------- go.mod | 11 +++++++---- 2 files changed, 33 insertions(+), 20 deletions(-) diff --git a/README.md b/README.md index 970f0b4..4272e9e 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ Press a toggle key, speak, and get instant text input. Built natively for Waylan - **Smart text injection**: Clipboard save/restore with direct typing fallback - **Daemon architecture**: Lightweight control plane with efficient pipeline management -**Status:** Early development - core functionality working, transcription integration in progress +**Status:** Beta - core functionality complete and tested, ready for early adopters ## Installation @@ -48,11 +48,19 @@ export PATH="$HOME/.local/bin:$PATH" git clone https://github.com/leonardotrapani/hyprvoice.git cd hyprvoice -# Build the binary -CGO_ENABLED=1 go build -o hyprvoice ./cmd/hyprvoice +# Install Go dependencies +go mod download -# Install locally +# Build the binary +go build -o hyprvoice ./cmd/hyprvoice + +# Install locally (optional) sudo cp hyprvoice /usr/local/bin/ + +# Or install to user directory +mkdir -p ~/.local/bin +cp hyprvoice ~/.local/bin/ +export PATH="$HOME/.local/bin:$PATH" # Add to ~/.bashrc or ~/.zshrc ``` ## Requirements @@ -235,7 +243,7 @@ The daemon automatically creates `~/.config/hyprvoice/config.toml` with helpful type = "desktop" # Notification type ("desktop", "log", "none") -- always keep "desktop" unless debugging ``` -#### whisper.cpp Local (Planned) +#### whisper.cpp Local (Planned) -> Not yet implemented Private, offline transcription using local models: @@ -355,17 +363,19 @@ systemctl --user enable --now hyprvoice.service ## Development Status -| Component | Status | Notes | -| --------------------- | ------ | ---------------------------------------- | -| Core daemon & IPC | ✅ | Unix socket control plane | -| Recording workflow | ✅ | Toggle recording via PipeWire | -| Audio capture | ✅ | Efficient PipeWire integration | -| Desktop notifications | ✅ | Status feedback via notify-send | -| OpenAI transcription | ✅ | HTTP API integration | -| Text injection | ✅ | Clipboard + wtype with fallback | -| Configuration system | ✅ | TOML-based user settings with hot-reload | -| Comprehensive tests | ⏳ | Pipeline and integration testing | -| whisper.cpp support | ⏳ | Local model inference | +| Component | Status | Notes | +| ---------------------- | ------ | ----------------------------------------------------- | +| Core daemon & IPC | ✅ | Unix socket control plane | +| Recording workflow | ✅ | Toggle recording via PipeWire | +| Audio capture | ✅ | Efficient PipeWire integration | +| Desktop notifications | ✅ | Status feedback via notify-send | +| OpenAI transcription | ✅ | HTTP API integration | +| Text injection | ✅ | Clipboard + wtype with fallback | +| Configuration system | ✅ | TOML-based user settings with hot-reload | +| Unit test coverage | ✅ | Comprehensive test suite (100% pass) | +| Installation (AUR etc) | ⏳ | Installation via AUR and easy setup | +| Light dictation models | ⏳ | Alternatives to whispers for light and fast dictation | +| whisper.cpp support | ⏳ | Local model inference | **Legend**: ✅ Complete · ⏳ Planned diff --git a/go.mod b/go.mod index 117d9e6..7cb8d35 100644 --- a/go.mod +++ b/go.mod @@ -3,11 +3,14 @@ module github.com/leonardotrapani/hyprvoice go 1.24.5 require ( - github.com/BurntSushi/toml v1.5.0 // indirect - github.com/fsnotify/fsnotify v1.9.0 // indirect + github.com/BurntSushi/toml v1.5.0 + github.com/fsnotify/fsnotify v1.9.0 + github.com/sashabaranov/go-openai v1.41.1 + github.com/spf13/cobra v1.9.1 +) + +require ( github.com/inconshreveable/mousetrap v1.1.0 // indirect - github.com/sashabaranov/go-openai v1.41.1 // indirect - github.com/spf13/cobra v1.9.1 // indirect github.com/spf13/pflag v1.0.6 // indirect golang.org/x/sys v0.13.0 // indirect )