Skip to content
Jakarta, Indonesia

Ignatius
Karel

Indexing000
Ignatius Karel
  • About
  • Work
  • Experience
  • Contact
  • About
  • Work
  • Experience
  • Contact
ignatiuskarel@gmail.com
© Ignatius KarelJakarta, IndonesiaBack to top
All work

02 / 04

Kavox

Role
Creator, vibe coded with AI
Period
2026
Where
Open source
Stack
Rust, Tauri, React, TypeScript, Zustand, PipeWire
Kavox main board: a grid of sound pads with hotkeys, two of them playing, above mic and output level sliders

Overview

A free, open-source soundboard and voice changer for Windows and Linux, fully vibe coded with AI. Its Rust audio engine mixes your mic with sound clips into a virtual microphone that Discord, OBS and games can pick.

Signal flow

  1. 01Mic capture
  2. 02Drift correction
  3. 03Pitch shifter
  4. 04Mix into Kavox Mic

What I built

  • Fully vibe coded: I directed AI coding tools through the whole project, from the Rust audio engine to the interface.
  • A real-time audio engine in Rust decodes clips, mixes them with the mic and feeds the virtual mic, with no allocations or locks on the audio threads.
  • On Linux, Kavox creates its own Kavox Mic through PulseAudio or PipeWire and removes it on exit. On Windows it plays into the free VB-CABLE driver.
  • Mic passthrough with clock-drift correction: a PI controller holds the mic buffer at 20 ms, tested against ±1000 ppm drift with no underruns.
  • A live voice changer: a granular pitch shifter with presets like Chipmunk, Giant and Wobbly, a pitch dial and a hotkey per voice.
  • Pads with drag-to-reorder, multiple boards, global hotkeys, a setup wizard, a tray menu and a kavoxctl CLI.

Screens

Voice changer with Chipmunk selected among the presets, a pitch dial and a hear-myself toggle
Pad editor for Sad trombone: name, colour, volume and hotkey, with a note on binding kavoxctl under Wayland
Audio settings: Kavox Mic as the virtual microphone, mic passthrough and headphone monitoring
The main board in the light theme

The problem

My friends and I wanted a soundboard to use on calls and in games, but the good ones are paid. I decided to make my own and release it fully open source, so we could all use it for free.

Outcome

It's free for anyone to use, and my friends and I use it. It's been really helpful.

  • Source(opens in a new tab)
Next projectMantra Trans Nusantara