seqbaby is a step sequencer that runs entirely in your browser. You build patterns on a grid, each track playing its own instrument, and layer effects and movement on top. Nothing is installed and nothing is uploaded unless you choose to save or share.
Press play. Browsers keep audio muted until you interact with the page, so the first press is what switches the sound on — if you hear nothing at first, press it once more.
A new session opens with a few drum tracks already playing. Click any cell in a track's row of squares to add or remove a hit, and you are sequencing. From there:
The bar across the top controls playback for everything.
| Control | What it does |
|---|---|
| play | Starts and stops the sequencer. Playback always restarts from the top. |
| record | While the sequencer runs, notes you play on your computer keyboard are written into the active track. |
| capture | Writes the phrase you just played into the active track, even though you were not recording. It keeps the last 32 seconds and takes the run of notes after the most recent pause, with the note lengths you actually held. |
| bpm | Tempo. Type a number, or drag the field up and down. |
| swing | Delays every second step, from straight to a heavy shuffle. |
| metronome | A click on each downbeat, for playing along. It is never included in an export. |
| meter | The bar at the far right shows the output level. If it sits at the very top, turn some tracks down. |
The second row is the keyboard-performance strip — scale, octave, chord and arp. It is covered under playing from your keyboard.
Every session holds 32 pattern slots, numbered 1–32. Click a number to switch to it; the one you are editing is outlined. An empty slot is a blank canvas, so a slot per section (intro, verse, chorus) is a good way to build an arrangement.
| Control | What it does |
|---|---|
| repeat / chain | Repeat loops the current pattern forever. Chain plays through your non-empty patterns in order, like a song. |
| immediate / finish | Whether clicking another pattern switches instantly or waits for the current bar to finish. |
| dup | Copies this pattern into the next free slot — the usual way to make a variation. |
| drag a number | Drops a copy of that pattern onto any other slot, and takes you there to work on it. (While playing in finish mode it waits for the bar, like any other switch.) |
| sig | Time signature for this pattern, from 4/4 to 7/8. |
| rep | In chain mode, how many bars this pattern plays before moving on. |
A track is one instrument plus its pattern. The header row holds its name, its engine (the instrument), and the length of its pattern.
| Control | What it does |
|---|---|
| len | How many steps this track loops over. Tracks can differ — a 12-step track against a 16-step one drifts in and out of phase. |
| +1 x2 x4 /2 /4 | Grow or shrink the pattern. Growing copies what is already there. |
| spd | Plays this track faster or slower than the rest, from 1/16 to 16 times. |
| vol | Track volume, with its level meter behind the slider. |
| solo / mute | Hear only this track, or silence it. |
| p-lock | Gives this track a sound of its own in the pattern you are on. Per pattern, so it changes as you move between them. See below. |
| clear | Empties this pattern on this track. |
| dice | Generates a new pattern. Keep pressing until something sticks. The fill level behind the icon is how busy the roll comes out — drag the dice up or down to set it. |
| dup / remove | Copy the whole track (sound and all), or delete it. |
| oct / semi | Transposes everything in the pattern up or down. |
The second row of buttons — roll, filter, env, fx, eq, comp, mod, aut — opens the panels described in filter, effects and dynamics and modulation and automation.
Wherever you meet a control you do not recognise, in a track row or in any of those panels, right-click it: you get what it does, and whatever movement is on it.
The row of squares is the pattern. A filled square is a note; every fourth square is marked so you can find the beat.
For drum tracks the pitch rarely matters, so the grid is all you need. For melodies, the piano roll is easier.
roll opens a pitch-by-time grid: pitches up the side, steps across. It is the best place to write a melody, and the only place to stack notes into a chord you draw by hand.
| Gesture | Result |
|---|---|
| Click empty space | Adds a one-step note. Keep dragging right to make it longer as you create it. |
| Drag a note's middle | Moves the whole note — left and right in time, up and down in pitch. Its length is kept. |
| Drag a note's edge | Resizes it. The left edge moves the start, the right edge moves the end. |
| Drag a one-step note | Its single cell does both: the right sliver resizes, the rest moves. The cursor tells you which you are on. |
| Double-click a note | Deletes it. On a stacked note it deletes only the row you clicked. |
| Click an empty row above a note | Stacks another pitch onto that step, for chords you voice yourself. |
| Right-click / long press | Opens the step editor for that note. |
The lane underneath is velocity — drag a bar to make that step harder or softer. The buttons along the top shift every note up a step, double or halve the pattern length, or roll a new melody.
Right-click any step to open everything that step can do beyond pitch and length.
| Setting | What it does |
|---|---|
| note | The pitch, on a small keyboard. |
| chord | Plays a whole chord from that root — major, minor, sevenths and so on — plus an inversion. |
| arp | Instead of sounding together, the chord's notes play one after another for the length of the note. Set how fast, how many octaves, and which direction. |
| ratchet | Retriggers the step up to 8 times — drum rolls and stutters. |
| vel | How hard the note hits. |
| offset | Nudges the step slightly early or late for a looser feel. |
On a desktop machine your computer keyboard always plays the active track — the one you clicked last, which is outlined. Typing in a text box is safe; note keys only play when no text field has focus.
The layout is a piano: the home row is the white keys and the row above holds the black keys.
Two ways to get what you play into a pattern:
Tick scale and pick a root and a mode to lock your playing to a key. Everything you play on the white keys then belongs to that scale — the black keys go quiet, so there are no wrong notes. There are major and minor modes, pentatonics, blues, several exotic scales, and microtonal tunings.
The palette button next to it colours notes by pitch across the roll and grid, which makes repeated shapes easy to spot.
With chord on, each key plays a whole chord instead of one note. Pick the chord type and a voicing. With a scale active the choice collapses to on or off, because the chord is built from the scale itself — so each degree gets the quality it should have, and everything stays in key.
Chords you record or capture are stored as a chord, not as loose notes, so the roll shows a single labelled note you can retune or move in one go.
The arp box appears next to the chord picker. Switch it on and a held key arpeggiates as you play, at the rate, octave range and direction you choose. Chords you then record or capture carry those arp settings into the pattern.
The dropdown beside a track's name chooses its instrument. They are grouped:
| Group | What is in it |
|---|---|
| plaits | Sixteen synthesis models from the Mutable Instruments Plaits oscillator — virtual analogue, FM, wavetable, granular, noise, and physical models. |
| drum / synth | An 808 and 909 kit, a poly saw, an FM bell and a pad. |
| Emulators | The 303 — a model of the acid machine’s own circuits, down to the diode-ladder filter and the accent behaviour (see below). The virus, a polyphonic model of the digital synth that defined trance and drum and bass, with its two routable filters and its hypersaw (see below). The dx7, six sine operators through the machine’s own 32 algorithms (see below). An electric guitar and an electric bass, each modelled as a whole rig — string, pickup, amp, cab — with a dropdown of famous tones (see below). Plus five monosynth voices in the spirit of classic hardware: MiniBrute, Moog, Juno, Rhodes and Prophet. |
| texture | A granular engine that plays a sample as a cloud of tiny grains. |
| wavetable | A wavetable synth with its own editor. |
| sampler | Your own audio, or one of the bundled kits. See samples. |
| saved patches | Sounds you have saved yourself. |
| midi | Sends notes to external hardware or software instead of making sound itself. |
The four sliders under the name — labelled per engine, for example harm, timb, morph and decay on a Plaits model — are that instrument's main tone controls. The labels change with the engine, so they always say what they actually do.
The 303 engine is modelled on the machine rather than approximated with a filter preset, so it responds to a pattern the way the original does. Its four sliders are the panel knobs: cutoff, reso, env mod and decay. Beside them sit the waveform switch, the accent depth and tuning.
Three things are worth knowing, because they are how you play it:
The filter loses low end as the resonance climbs, exactly as the real one does. That is why acid records run a 303 into a distortion pedal — reach for the track's fx panel and do the same.
Where the 303 is one idea done perfectly, the virus is a big polyphonic synth built for movement. Its four sliders are cutoff, reso, shape and decay; the four beside them are the levels of osc 1, osc 2, the sub and the noise. Everything else is in the three rows underneath.
Four things are worth reaching for first:
Sync is the other one to know: turn it on and osc 2 is forced to osc 1's pitch, so dragging the semi slider (or automating it) gives the classic tearing sync lead.
Six sine waves. That is the entire instrument — no filter, no sub oscillator, nothing else. What you get out of it depends only on which sines are wired into which, and how hard. The panel is the same six rows whatever you are making: one row per operator, with its level, its frequency as a ratio of the note, and its own envelope.
Four things to know, in the order they matter:
The four track sliders ride all six operators at once: bright is every modulator's level together (the fastest way to hear what a patch can do), fbk is the feedback, mod dec scales how fast the timbre falls away and decay how fast the note does.
Start from the voice dropdown rather than from silence — an electric piano, a bass, a bell, brass, a marimba, an organ and a pad. Load one and change a single operator level, and you are programming a dx7. Two others are worth knowing: vel makes playing harder raise the modulation index, so hard notes are brighter and not just louder, and key scale pulls the modulators back as you play up the keyboard — without it the top octave screams.
Neither of these is a plucked-string preset. Each one models the whole chain a real one goes through — the string, the pickup that reads it, the amp it runs into and the speaker in front of the mic — because on these instruments the sound is the chain and not the note.
Both start from a tone dropdown of famous rigs. That is the honest way in: load the nearest one, then move a control and hear what that control is actually for. Loading a tone replaces everything, including the four track sliders, so nothing of the last one is left behind.
The string is a waveguide with the losses of a real one: the highs die before the fundamental does, which is why a guitar note gets duller as it rings rather than merely quieter. Where you pick it notches harmonics out of it — bridge is thin and cutting, over the neck is round — and the pickup does the same again on the way out. Which pickup you choose is really a choice of where its resonance sits: a single coil peaks high and glassy, a humbucker low and fat.
The four track sliders are drive (how hard the amp is hit, on a log taper like the real pot), tone (the knob on the guitar itself, not the amp — roll it right down with a neck humbucker for the darkest sound the instrument has), bloom and sustain.
bloom is feedback, and it is worth knowing what it does. The speaker is coupled back into the strings, so past a certain point the energy coming back beats the string's own losses and the note stops decaying and starts growing. It needs volume — a clean amp barely blooms, a cranked one sings — and it stops when the note ends, exactly as taking your hand off the string does. Hold a long step on a high setting and listen to it climb.
Same string, wound and stiffer: its harmonics sit noticeably sharp of where the arithmetic says, and that disagreement between the pitch and the clank is most of what a bass sounds like. Flatwounds take it away along with the high end, which is why every record made before about 1970 sounds the way it does — that is the roundwound / flatwound select.
Two things on the panel are worth finding. fret is how hard the string is allowed to clatter against the fretboard; wound up with the hand control at the top, that clatter is what slap is. grind is distortion, but only above the xover frequency, with the clean low end put back underneath — distort a bass whole and the bottom disappears, which is why every bass overdrive worth having works this way.
The sliders are drive, tone, comp and sustain. Compression gets a slider of its own because a bass part sitting perfectly still under everything else is a compressor doing that, and it is as much the sound as the amp is.
Choose sampler as a track's engine and you are asked for a source: a file from your machine, or one of the bundled drum kits. The waveform button in the track header then opens the sample editor.
Files you load stay in your browser. They are only sent anywhere if you save the session to an account or make a share link.
With the wavetable engine selected, the waveform button opens an editor where you draw the sound itself. A wavetable is a series of frames — single cycles of a waveform — and the wave slider sweeps between them.
Each track has its own chain, opened from the buttons under its name.
| Panel | What it holds |
|---|---|
| filter | A low-pass filter with cutoff and resonance — the classic way to open and close a sound. |
| env | An envelope that sweeps the filter on every note: how far it moves, and how it attacks, decays, sustains and releases. |
| fx | The effects chain, below. |
| eq | Three bands — low, middle and high — to sit a track in the mix. |
| comp | Compression, either on the track itself or ducked by another track, which is how you get a pumping bass under a kick. |
Effects run in the order they appear in the panel, starting with amp: drive pushes the signal into everything that follows, so fuzz, the wave shaper, tape saturation and the crusher all bite harder, and out trims the level back afterwards. Both sit at unity in the middle.
After that come vinyl and cassette (wear, warble and noise), fuzz, ring modulation, a wave shaper, a bit crusher, auto-wah, chorus, phaser, flanger, pitch shift, delay and reverb. Each has a wet or amount control that does nothing at zero, so the panel is safe to explore.
glide lives here too: it slides the pitch between notes rather than jumping, for portamento leads and basses.
A track normally has one sound and 32 patterns of notes. Move its filter and it moves everywhere, because the sound belongs to the track and only the notes belong to the pattern.
The p-lock button in a track's button row changes that for the pattern you are on. Locked, that pattern keeps its own sound; every pattern you leave unlocked goes on sharing the track's. So you can give the bass a bright, delayed sound for the chorus and leave the verse and the middle eight alone — and they still move together when you tweak them.
It is per pattern, so the button changes as you move around: it lights up on the patterns you have locked. In chain mode the sound changes come with the arrangement, on the bar.
Everything about the sound comes along:
What does not move is the instrument itself: the engine, and any sample loaded into it, stay put. A locked pattern is one instrument being played differently, not a different instrument.
Two ways to make a sound move. Both are per track, and both are worth using on almost anything that repeats for long.
Assign an LFO to a parameter and it sweeps back and forth on its own. Pick the target, a shape, a depth, and either a speed in hertz or a division of the tempo so it stays in time. Filter cutoff is the classic target; effect amounts and the instrument's own tone controls work too.
Automation draws a value for each step of the pattern instead. Choose a parameter, and you get a lane under the grid where each step holds its own value — a filter that opens over 16 steps, a delay that only appears on the last beat. Automation lanes belong to the pattern, so each pattern can move differently.
The two panels above list a whole track at once, which is the long way round when the question is what is moving this control. Right-click a slider, a switch or its label — anywhere: the instrument row, the filter, effects, eq and comp panels, the sample and wavetable editors — and you get a small window for that one parameter: what it does, whatever LFO or automation is on it, and a button to add either. It is also the quickest way to learn an unfamiliar control, since the explanation is the first thing in the window.
You do not have to go looking, either: a parameter with something on it wears a dot next to its label — green for an LFO, blue for an automation lane, grey for a lane you have switched off. Scan a track and you can see where its movement is coming from.
| Action | What happens |
|---|---|
| session | Saves the whole session — every track, pattern and setting — into this browser. |
| save (signed in) | Stores the session to your account so you can open it anywhere, and keep a library of songs. |
| share | Creates a link anyone can open. They get a playable copy; your original is untouched. |
| patch | The save icon in a track header stores that instrument's sound, which then appears under saved patches for any track. Signed in, you can publish patches to the gallery for others to use. |
| Pattern / Session | Renders audio and downloads a WAV — either the current pattern, or the whole chained arrangement. Recording happens in real time, so a long session takes as long as it plays. |
Without an account everything stays in your browser, which means clearing site data clears your work. An account is the way to keep it.
seqbaby is built on other people's work. Thank you to everyone below — and if you use the sounds in something you release, the licences here are the ones that travel with them.
| Project | Used for | Licence |
|---|---|---|
| Tone.js | Transport and scheduling, and the synth voices behind the drum, emulator and 303 engines | MIT |
| woscillators | A WebAssembly port of Mutable Instruments' Plaits, which is the plaits engine group | MIT (Plaits: MIT) |
| AKWF — Adventure Kid Waveforms by Kristoffer Ekstrand | The single-cycle waveforms in the wavetable engine and its editor | CC0 |
| Lemondrop Pack by callimero | The texture library offered to the granular engine | GPL-3.0 |
| Tone.js audio samples | The bundled drum kits in the sampler (808, CR-78, breakbeat, acoustic) | MIT |
| Next.js and Supabase | The shell around the studio: accounts, saved songs, the patch gallery and share links | MIT / Apache-2.0 |
The 808 and 909 engines are original models of those machines' circuits rather than recordings of them, and Roland's trademarks belong to Roland.