4 Commits

Author SHA1 Message Date
felixm da941035f9 Add Linux desktop file for Rofi launching
Launches Blurt via `uv run --project`, which resolves the project/venv
without altering cwd. Blurt anchors all config to the script location,
so no working-directory change is needed.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-10 14:19:26 -04:00
felixm 5864d78081 Add README and cross-platform export tool
README documents minimal setup, run, and config for Linux and Windows. export.py bundles just the source into a zip (no .venv, caches, or API key files) for moving to another machine; it's pure stdlib run via 'uv run export.py', so it behaves identically on Linux and Windows with no shell required.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-05-31 09:03:43 -04:00
felixm 777d4bef33 Speed up transcription with a pluggable provider backend
Transcription:
- Provider-pluggable backend: each model routes to OpenAI (multipart
  upload) or OpenRouter (JSON + base64 body). Add OpenRouter's
  whisper-large-v3-turbo (Groq-served, ~216x real-time) to the tray
  menu for far lower latency than whisper-1.
- Load API keys env -> keyring -> file for both providers via a shared
  helper.
- Encode the WAV in memory and reuse a warm requests.Session (no temp file).

Other improvements:
- blurt-toggle signals the running app directly via SIGUSR1 instead of
  paying ~0.5s to import the full stack through "uv run blurt toggle".
- Remove the redundant dead blurt shell script.
- Suppress the benign Gdk-CRITICAL warning from pystray's GtkStatusIcon.
- gitignore openrouter_key.txt.

Transcription code is platform-agnostic; the Windows/Linux platform layer
is unchanged.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-05-31 08:38:05 -04:00
felixm 4d10653790 Initial commit
Toggle voice-to-text tool with Linux and Windows support.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-05-30 23:30:37 -04:00