A browser-based Software Synthesizer Inspired by Xfer Serum, Built using Rust (Compiled to WebAssembly) and the Web Audio API. It Provides a Modern Synth UI with Oscillators, Filters, Envelopes, LFOs, Effects, Modulation Matrix, Wavetable Editor, Presets, MIDI Input, and Spectrum Analyzers — All Running Directly in Your Browser.
- Dual oscillator setup (OSC A / OSC B)
- Waveforms: Sine, Saw, Square, Triangle, Noise, Wavetable
- Per-oscillator detune and gain
- Wavetable loading with custom editor
- Freehand drawing mode
- Additive synthesis mode (harmonic sliders)
- Normalize, Clear, Save & Load slots
- Real-time FFT preview
- Filter types: (Low-pass, HP, BP, etc. – extensible)
- Cutoff & Resonance knobs
- ADSR Envelopes (Attack, Decay, Sustain, Release)
- Envelope modulation to filter cutoff
- Waveforms: Sine, Saw, Square, Triangle, Random
- Adjustable rate & depth
- Retrigger toggle
- Routable via modulation matrix
- Route LFOs / Envelopes to filter cutoff
- Extensible for more destinations
- Delay: time, feedback, wet/dry
- Convolution Reverb: IR-based space simulation
- Master Gain
- Full WebMIDI support (Chrome/Edge, Safari experimental)
- Play with your MIDI keyboard in real-time
- Spectrum Analyzer (real-time FFT)
- Wavetable waveform + frequency preview
- Save/load presets with LocalStorage
- Quick recall of custom patches
# Install wasm-pack if missing
cargo install wasm-pack
# Build the Rust synth backend
wasm-pack build --target web --out-dir ./static/pkg# Using Python
cd static
python3 -m http.server 8000
# OR using Node
npx serve static