The Mission
A fully browser-based drum sampler with no dependencies. Load audio samples onto 16 pads, program patterns in the step sequencer, and shape sound with per-pad envelope, filter, pitch, and swing controls.
Key Engineering Challenges
- Precise timing without drift: Used the Web Audio API clock directly rather than
setInterval or setTimeout, scheduling note events ahead of time to avoid browser jitter.
- Per-pad signal chain: Each pad routes through its own gain, filter, and envelope nodes, allowing independent volume, EQ, and ADSR shaping without affecting other pads.