Files
voculinux/web/PRODUCT.md
T
Jatin K MalikandGitHub c337d8f56d feat(shortcuts): default to hold Right Alt (push-to-talk) for new installs (#648)
* feat(shortcuts): default to hold Right Alt push-to-talk on first install

Double-tap Ctrl conflicts with many desktop and app shortcuts, so new
installs now use hold Right Alt (Option) in push-to-talk mode. Existing
config.json values are preserved unchanged.

Updates README, user guide, AGENTS.md, first-run dialog, website copy,
and tests to match the new defaults.

* refactor(shortcuts): trim redundant default-change test and comments

Drop the fresh-install assertion that duplicated DEFAULT_CONFIG coverage,
remove the duplicated Right-Alt rationale from config_manager, and drop a
vacuous source-string check from the settings shortcuts test.

* fix(shortcuts): align install.sh seeds and preserve legacy toggle mode

install.sh still wrote ctrl+ctrl without mode, so merges with the new
push_to_talk default became hold-Ctrl. Seed right_alt + push_to_talk for
new installs, and migrate existing shortcut-only configs to mode=toggle
so prior behavior is unchanged.

* style(config): fix black formatting after shortcuts migration

* fix(shortcuts): preserve legacy defaults when shortcuts section is missing

Existing config files without a shortcuts section previously inherited
ctrl+ctrl toggle from DEFAULT_CONFIG. Pin those historical defaults on
upgrade so the new first-install Right Alt push-to-talk defaults do not
silently change behavior.

* docs(agents): unwrap hard-broken dictation control paragraph

Keep the AGENTS.md paragraph as a single line like the surrounding prose.
2026-08-08 00:07:54 -07:00

3.8 KiB

Product (vocalinux.com)

Platform

web (Next.js marketing site under web/)

Users

Linux desktop users who want voice dictation that stays on their machine: developers, writers, and people reducing keyboard strain. They already live in terminals, browsers, IDEs, and GTK/Qt apps.

Product purpose

Vocalinux is free, open-source offline voice dictation for Linux. It turns speech into typed text in whatever app has focus, using local engines (whisper.cpp default, Whisper, VOSK) or an optional user-configured remote API. Success is: install once, dictate in any app, without cloud transcription or telemetry.

Positioning

Offline-first Linux voice typing with real desktop integration (system tray, X11 and Wayland text injection, toggle and push-to-talk, Silero VAD, suspend recovery). A cloud SaaS voice product cannot truthfully claim local-only models plus no usage telemetry from the installed app.

Operating context

  • Install via a one-line shell installer, AppImage from GitHub Releases, AUR, or local Flatpak build; then run from PATH, app menu, or the AppImage binary
  • System tray indicator and settings GUI (GTK) with searchable sidebar navigation and an always-visible sidebar footer for dictation status / Test Dictation / Close
  • Dictation into terminals, browsers, IDEs, office apps
  • Engines and models chosen for hardware (CPU, optional Vulkan GPU with discrete-device preference)
  • Guides and comparison pages on vocalinux.com; source on GitHub

Capabilities and constraints

  • Engines: whisper.cpp (default), OpenAI Whisper, VOSK, optional Remote API
  • Speech languages: large selectable catalog (~33 + Auto-detect) shared by Settings/CLI; VOSK only lists languages with official Alphacephei models; remaining Whisper languages available via Auto-detect
  • Display servers: X11 and Wayland
  • Shortcut modes: push-to-talk default (hold Right Alt / Option); toggle available; left/right modifier distinction; configurable modifier+key combos
  • Optional voice commands (English-only); Silero neural VAD with amplitude fallback
  • Continuous dictation polish: capitalize after sentence punctuation; trailing space after each completed utterance
  • Optional auto-pause while configured apps run; optional idle model keep-alive unload
  • Vulkan discrete GPU auto-select with manual device override in Advanced settings
  • Wayland: IBus when ibus-wayland is running, including on compositors previously treated as unbridged
  • Packaging: install.sh, AppImage (x86_64/aarch64), AUR, Flatpak (local/Flathub status as documented)
  • No usage telemetry in the installed app
  • GPL-3.0; marketing version string is tracked in site package/version surfaces
  • Website is Next.js marketing + SEO guides (static export); languages page documents per-engine support honestly

Brand commitments

  • Name: Vocalinux (also part of the "Voca" family with VocaMac / VocaWin)
  • Mark: microphone logo assets under public/
  • Emerald accent in the project green family (not purple SaaS defaults)
  • Voice: practical, specific, Linux-native; not hype-first SaaS copy

Evidence on hand

  • Real app screenshots in public/screenshots/
  • Install/uninstall commands pointing at GitHub raw install scripts
  • JSON-LD on the home page (software application, FAQ, how-to)
  • Do not invent user counts, testimonials, or benchmarks

Product principles

  1. Privacy is default: local engines process audio on-device; remote only when the user opts in.
  2. Ship the install path and real desktop proof, not abstract feature theater.
  3. Stay honest about engines, hardware, and what runs offline vs remote.
  4. Prefer Linux craft and clarity over generic AI-startup marketing patterns.

Accessibility

  • Respect prefers-reduced-motion
  • Body text contrast at least 4.5:1; large text at least 3:1
  • Keyboard-reachable install copy controls and navigation