step16-synth

A live sequencer built for hands, not for mouse clicks.

MPD218 pads, APC mini faders and a microKEY drive a 32-track step sequencer with its own synth and sampler. The loop holds the groove while new sounds are hit, muted and twisted on top.

Stable
v1.3.1kept on the v1 branch
In development
v2.0on the main branch

macOS (Apple Silicon) · built with Electron

Two looks

Screenshot coming soon
1.x — dark
Screenshot coming soon
2.0 — pop

Why it exists

An instrument for hands

Not a DAW for programming notes, but a tool for playing live with pads, knobs and faders.

Complete on its own

One person can carry a whole live set with it. Collaborations with fellow musicians happen song by song.

Readable on a dark stage

LEDs and meters show the state at a glance. Every MIDI device has its own input indicator, so when something goes silent it is quick to tell where the problem is.

Built with AI, decided by ear

Claude Code writes much of the code. Whether a sound or a groove works is decided by a human.

What it does

32 tracks × 16 steps

One pad, one track, one sound. 16 patterns switch on the next bar or at the start of a phrase, and a bar counter shows where you are in a 4, 8, 16 or 32-bar section.

Synth and sampler

A built-in synth with drum, bass, lead and pad presets, plus a sampler. Record voice, claps or guitar through the audio interface, or load audio files, then trim, reverse, loop or slice them.

Melody tracks

Notes played on the microKEY are recorded into loops of 1 to 4 bars, quantized like pad recordings.

Mixer and performance effects

Pan, reverb and delay sends and a level meter on every track. A DJ filter, tempo-synced delay and swing sit on knobs for live tweaking.

MIDI out to external instruments

Any track can play an external instrument instead, such as Surge XT through the macOS IAC bus. Knob moves are sent as MIDI CC, and MIDI clock can go to several ports.

Acid preset

A ready-made acid house set: 303-style lines and drums in patterns 9 to 16.

Input indicator per device

Each MIDI device lights its own indicator whenever a signal arrives, even when nothing sounds — so a missing signal and an app-side problem are easy to tell apart.

Autosave and undo

Every edit is saved automatically and restored on the next launch. Cmd+Z undoes pattern edits and recordings, one loop pass at a time.

Coming in v2.0

In development

Pop look

A new old-American-pop screen design. The dark 1.x look stays available in the settings.

In development

Spectrum analyzer

The master output drawn as a spectrum above the pads, and on the lower half of the APC mini grid.

In development

Live mutes

On the APC mini's track buttons, a short press toggles a mute and holding mutes only while held. Unmutes wait for the next beat or bar (or come back immediately, if set).

In development

APC mini live view

The 8×8 grid shows all 32 tracks and flashes each one as it sounds. A level-meter view is also available.

In development

Big beat preset

A second ready-made set built on bundled big beat samples.

Three controllers, three jobs

Each device has its own role. The layouts below follow the app's mapping code as of v2.0.

AKAI MPD218

Hit the pads. Move the sound with the knobs.

Legend

  • Pads (1 is bottom left): play tracks. Pad bank A = tracks 1–16, bank B = tracks 17–32. Bank C turns the pads into mute, pattern or track-select buttons.
  • Knobs: control banks A and B shape the selected track's sound (pitch, decay, cutoff …). Control bank C is for performing: DJ filter, delay, swing.

AKAI APC mini mk2

Mute tracks, switch patterns, set levels — and read it all from the LEDs.

Legend

  • Top-left 4×4: tracks 1–16, in the same order as the MPD218. Press to select a track; it flashes when the track sounds.
  • Top-right 4×4: tracks 17–32.
  • Bottom four rows: spectrum analyzer of the master output (display only).
  • Track buttons: mute tracks 1–8. Lit = muted, blinking = waiting to unmute.
  • Scene buttons: patterns 1–8. Press the current pattern again to flip to 9–16. Blinking = switching on the next bar.
  • Faders 1–8: volume of tracks 1–8. Fader 9: master volume.

The grid can also show level meters or step editing (tracks 1–8 × 8 steps, the v1.3.1 layout).

KORG microKEY-25

Play simple melodies, record them and let them loop.

Legend

  • Keys: play the selected track's sound in pitch, or a track pinned to the keyboard. During REC, notes go into melody tracks.
  • Joystick: left and right bend the pitch by up to 2 semitones, up adds vibrato, down closes the filter.
  • Sustain button: holds released notes.
  • Octave buttons: shift the key range (handled by the keyboard itself).

Signal flow

  1. ControllersMPD218 / APC mini / microKEY
  2. Macstep16-synth
    1. Built-in soundssynth and sampler
    2. IAC busMIDI notes and CC
      Surge XT
  3. Audio interfaceTASCAM US-2x2HR
  4. Speakers

Under the hood

  • Electron (electron-vite), TypeScript and React
  • Web Audio API used directly, with no audio library
  • Web MIDI API for controllers, MIDI out and MIDI clock
  • Unit tests (Vitest) and screen tests that drive the built app (Playwright)
  • Runs fully offline — nothing is sent over the network
  • Developed with Claude Code

What's next

  • Ableton Link — tempo sync with a bandmate's Mac over a direct LAN cable
  • Working together with SuperCollider
  • Looking into an iPad version
  • Source on GitHub and a downloadable dmg

Development log

A log of how step16-synth is being built is in preparation. It will be linked from here.