Back to browse
Yak – Voice typing tool in Tauri/Rust that auto-presses Enter for you

Yak – Voice typing tool in Tauri/Rust that auto-presses Enter for you

by zonghao·Mar 15, 2026·1 point·0 comments

AI Analysis

●●SolidSlickSolve My Problem

Auto-press Enter after voice dictation saves prompt review time.

Strengths
  • Tauri v2 and Rust build with 20 MB runtime memory footprint.
  • AI Command mode transforms selected text in any app in place.
  • Context awareness reads surrounding text via accessibility APIs.
Weaknesses
  • Paid product competing against free Wispr Flow alternatives.
  • Voice-to-text with AI editing is increasingly crowded category.
Category
Target Audience

Developers, writers, heavy keyboard users

Similar To

Wispr Flow · Superwhisper · Monologue

Post Description

Hi HN,

I built Yak (https://getyak.app), a voice typing tool that converts speech into ready-to-use text. I didn't choose a traditional STT-then-edit pipeline, but a multimodal model that transcribes, polishes, and formats simultaneously, which gives it many interesting features:

AI Command:

Select text in any app, press the hotkey(default to fn), speak an instruction — "translate to Japanese", "make it shorter". Yak replaces the selection in place.

Auto-send:

Press Right ⌘ (Command), speak, release — Yak will transcribes and presses Enter for you. Which means saving 10 seconds reviewing each prompt.

I use it myself daily — when prompting my parallel Claude Code sessions. Thanks to gemini's ability and knowledge base, more than 90% of transcriptions do not need any edit at all.

Context Awareness:

Yak can read surrounding text at your cursor via accessibility APIs and send it as context. This makes continuations and mid-paragraph insertions sound natural.(Opt-in, off by default for privacy.)

BTW, yak supports BYOK mode. Users can bring their own API key, or choose to use Yak Cloud with zero data retention.

Tech:

Built with Tauri v2 and Rust. ~20 MB memory footprint.

Development story:

This is my first Rust project. I started in Dec 2025(opus4.5) and did not wrote a single line of code by myself.

My workflow: Claude Code writes a feature → Codex reviews the changes → Claude Code fixes bugs Codex found → repeat until clean → pr and let github copilot review it again

Using this workflow, technical debt grows slowly, thus I can maintain the development speed.

One reason I chose Rust (even for Yak's cloud backend): rust is one of the best languages for vibe coding(at least for me). The compiler catches most mistakes inside the claude code session — cc sees the error, fixes it, tests and pass, and moves on without me involved.

A funny thing: I started on a single git branch, soon waiting for AI responses became the bottleneck. So I switched to git worktrees and ran 5–8 parallel cc sessions. At that point, my prompt typing speed became the real bottleneck — and Yak genuinely helped me ship Yak faster. ^_^

This is indeed my first time building a product from scratch to a real product. It can almost achieve the effect of wispr flow or typeless, which makes me very excited. I hope you will enjoy using yak too.

I'd love your feedback — especially on product features design.

If you are using any voice-typing tools, it can be very helpful if you can share some demands or problems with them. Thanks -.-

Similar Projects

AI/ML●●Solid

Toice – Local voice typing for Linux using Whisper

The repo solves a real Wayland pain with a clever two-part design: a lightweight out-of-sandbox trigger script wakes a sandboxed app via DBus so you can have a global hotkey without breaking security. It runs whisper.cpp locally and shows an overlay to paste transcripts system-wide — very useful for offline, privacy-first typing — but the Flatpak/runtime, AVX2 needs, and English-only support limit its reach.

Big BrainNiche Gem
zherotz
203mo ago