All four apps are free through 13 September 2026

← All products
Chordinator icon

Chordinator

128 chords under one keybed, and a chord generator to help you pick or follow the tonic of your bass line.

Good chord parts stall on knowing the voicings and playing them in time. Chordinator puts a whole chord under one key, laid out so the white keys are the seven degrees of your scale and the black keys are inversions of their neighbours, so there is no wrong note anywhere on the keybed. Play a progression with one finger, then build it out with a poly piano roll, a rhythm generator measured from real dub house and dub techno records, groove and humanize passes, and eight modulation lanes that land in Live as clip envelopes.

The Chordinator window: a generated progression stamped across the poly piano roll with chord-name labels, the chord library and history strip down the left, and the trigger keyboard along the bottom

128 chords under one keybed

The trigger keyboard covers the whole MIDI range, divided into octave blocks, each block a family: triads, 7ths, 9ths, 11ths, sus chords, add chords, 6/9 and triad-4, power 5ths, quartal and quintal. Within a block the white keys are the seven degrees of your scale and the black keys are inversions of their neighbours, so moving one finger changes the voicing and not the harmony.

That is why there is no wrong note on it. Play up an octave and you are playing the same progression in a richer flavour; play the black key beside a chord and you get the same chord sitting differently. Keys you have not mapped pass through as ordinary single notes, and right-clicking a key takes it out of the pool the generators may draw from.

The Chordinator trigger keybed, labelled by octave block: triads, 7th chords, 9th chords, 11th chords, sus chords, add chords, 6/9 and triad-4, power 5ths, quartal and quintal
The full keybed. Each octave block is a chord family, labelled where it starts, so the register you play in is the flavour you get.

The chord generator

The algorithms are not stored progressions. Each one is a table of legal moves: one row per scale degree, listing the two or three degrees that degree is allowed to go to, best first. Chord Gen takes the rhythm already on the roll, starts somewhere, and walks that map. So two rolls of the same algorithm are two different sentences in the same language rather than the same loop twice.

There are 84, grouped by what they are for: functional (strong steps, cadence pull, circle of 5ths), colour (suspension chains, upper structures, neo-soul 9ths, quartal drift, Dorian), dub and minimal, house, trance, plus a top-line group of nine that hand their chords to a voicing pass so the bottom notes hold still and the highest note carries a melody. Five of them were measured from chroma analysis of a reference record rather than written from memory.

Hold decides where a chord change is allowed to land and Loop decides when the progression comes back round, which between them is what makes a roll a progression instead of a chord per hit. Follow Bass hands the root motion to the bassline already on the roll and leaves the algorithm to choose only which chord of that root. The tonic comes from your bass line, the harmony from the engine. And Suggest reads the same tables with no dice at all: it lights the recommended keys on the keybed so you can play the progression by hand.

The Chordinator generator row: the algorithm dropdown showing Sus top line, the Chord Gen and Sparse Dub buttons, Hold and Loop settings, a melody selector, Weak beats and Follow Bass
The generator row: pick the engine, how long a chord holds, how long the loop is, and Follow Bass to keep the root motion you already have.
The Chordinator engine dropdown open across the window, showing all 84 harmony engines in labelled groups: functional, colour, dub and minimal, house, trance, minimal house, acid house, garage, rave, call and response, top-line and happy hardcore
All 84 engines, open. They are grouped by what they are for rather than alphabetically. Functional and colour at one end, then the genre groups, then the top-line engines that put the melody in the top voice. Random at the corner rolls the dice on the lot.

The library, the visualiser and the chord editor are the way in when the keybed does not already have what you want. Search every chord type by name, drag one onto the roll and it stamps rooted on the row you dropped it on, or drop it on a trigger key to assign it. The visualiser names and shows whatever you just played, and its Edit mode lets you play in a chord the library does not have and put it on a key. Beside them sit Invert, Octave and Humanize, the voicing mode and the smoothing switch, which apply to one key or to the whole block at once.

The Chordinator chord library with its search box and family chips, the visualiser keyboard below it, and the chord edit controls for invert, octave, humanize, voicing and smoothing
Chord library, visualiser and chord edit, stacked down the left of the window. Search, see it on a keyboard, re-voice it.
The Chordinator history and snapshots strip: a grid of small piano-roll thumbnails, the first labelled Start and the rest saved Snapshots, with a plus button to take a snapshot
Above it sits History & Snapshots, and it is the reason generating is cheap. Every take is kept as a thumbnail you can read at a glance, so going back to the progression from four re-rolls ago is one click rather than an exercise in remembering. The + pins one you want to keep by name.

Controlled randomness

Generators are only useful if you can keep the parts that already work. Chordinator uses the same lock system as MutationStation, the one Elektron sequencers made famous.

Click a note or a chord to pin it and the generators step around it. Rhythm Gen replaces only unlocked notes. Chord Gen keeps the timeline's rhythm and re-rolls which chord each step gets. Fit Stabs rewrites the roll against a bassline. Lock the four chords that make the progression, then roll the rhythm underneath them as many times as you like.

Auto-Lock marks the notes worth keeping for you, scored the same eight ways: structural, recurring, phrase corners, downbeats, offbeats, accents, long notes or low notes. Velocity locks are separate, so a note can keep its dynamics while its pitch stays free.

Or narrow it to a marked area. Draw a box selection over a few notes and Re-Roll re-rolls only those hits, holding every other one exactly as it is, and the status line says how many it held. That is the one thing Chord Gen cannot do, since it always rolls the whole timeline. Locks and the box work together: the dice never touch a locked note, in any generator.

The generators overwrite the roll by design, so before any of them runs, the outgoing state is parked in the History strip for you. The take you wanted is routinely two rolls back, past the point undo is comfortable, and it is still sitting there as a picture you can click.

Take the rhythm off a clip · including an audio clip

↓ Rhythm Import takes the timing of whatever clip Ableton is showing and lands it in the roll as a mono line on the scale root: exactly the shape a Rhythm Gen pattern lands in, so Chord Gen can roll chords straight onto it. Point it at your drum loop and the progression lands on that groove instead of a grid.

It works on audio clips, not only MIDI ones. Live's scripting cannot hand an app the audio, so Chordinator reads the sample off disk, decodes it, and finds the attacks itself, by spectral flux: how much the spectrum grew from one frame to the next, which is what an attack actually is. That is why it finds a kick sitting under a held pad, where plain loudness barely moves but the spectrum does. Hit strength becomes velocity, so the accents survive the trip.

A warped clip is read through its own warp map, so the hits land on the grid you are looking at rather than where they fell in the raw file, and only the region Live actually plays is analysed. Hits snap to the roll's current grid. On a MIDI clip a chord counts as one hit, at the velocity of its loudest note, and deactivated notes are ignored.

Playing

  • One key per chord, across all 128 notes. One keyboard row picks the trigger key, the other builds the chord that key fires. Or pull a voicing from the chord library and let the trigger's own pitch be the root.
  • Unmapped keys pass through. Where you have not defined a chord, the key plays as its own single note. The keyboard keeps working as a keyboard.
  • Correct note-off, always. Releasing a trigger releases that chord, and notes shared between overlapping chords are reference-counted, so holding two chords that share a tone never leaves a note stuck on.
  • Humanize. Stagger a chord's note-ons so a stab does not land in perfect machine-gun unison.
  • Velocity that follows your hand. Pass-through by default, with per-voice scaling and a Fixed mode when you want every stab to land identically.
  • Suggestions for where to go next. After a chord plays, it recommends two or three to follow it, walking weighted diatonic transitions, including tension swaps, where the harmony stays put and only the colour changes.

Building the sequence

  • A poly piano roll. A chord stamped from a trigger key moves, resizes, transposes and carries its chord-name label as one unit, while lock, mute and velocity stay per note.
  • A rhythm generator with a point of view. Three families: dub house (offbeat and bouncy, measured from onset analysis of five reference tracks), dub techno (Basic Channel school, where the space is the point) and piano house (offbeat 8ths, dotted 8ths, Charleston and tresillo figures).
  • Groove, which is not humanize. Jitter says "played by a human"; groove says "played with this feel". 16-step templates carry timing and velocity per step, scaled from straight to full.
  • Fit stabs to a bassline. Point it at a bass pattern, either a Live clip or an audio file you drop on it, and it places stabs either on the strongest hits to reinforce them, or around them so the stab answers the bass.
  • Draw, marquee-select, halve, duplicate, invert, zoom. The roll is a real editor, not a preview.
  • A library of saved takes. Save whatever is in the sequencer under a name, star the ones you keep coming back to, file them into folders, and step through the list with ◀ ▶ to audition them in order. It lives in its own file with a rolling backup, separate from your settings.
  • Layouts save as JSON. A whole keybed, every trigger and every voicing, kept per song, per set or per gig.

Particular integration with Live

  • Pull the clip you are looking at straight into the roll, and send it back, either as a new clip or replacing the one that is already there.
  • Eight modulation lanes. Draw a curve in step, slide or bend, with shape templates and its own independent length, bind it to any parameter on any device in the set, and it is written into the clip as an envelope. Live's own knobs move, with no CC stream and nothing left running.
  • A bundled Remote Script installs itself into Live's User Library on first launch, with no Max for Live or AppleScript involved.

Why standalone

Chordinator runs as its own app, not a plugin, and reaches your DAW the way a hardware chord box would: over a virtual MIDI port, the same route any outboard MIDI gear uses. That separation is deliberate. If your DAW crashes, Chordinator and the sequence you were building are untouched, and if Chordinator hits a snag, your session keeps playing. Two programs talking over MIDI is a lot harder to kill than one process holding both jobs.

Requirements

macOS on Apple Silicon, and any MIDI controller you want to trigger from.

Chords go out over a virtual MIDI port any DAW can listen to, and sequences import and export as standard MIDI files. The clip bridge and the modulation lanes are Ableton Live features. Everything else works anywhere.

Version 1.0.0

Licence, updates and refunds

Setting it up with Live

1. Launch Chordinator. The banner confirms the virtual output Chordinator is live.
2. Pick your controller under Trigger keyboard.
3. In Live, add a MIDI track, set its input to Chordinator, and arm it.
4. Click a key in the Triggers row, then click notes in the Chord row to build it.

Play the trigger key on your controller and the whole chord fires into Live. Layouts save and load as JSON, so you can keep a set of chords per song, per set, or per gig.

Run it from a hardware panel

MidiMirror can switch a controller into JamWare mode and hand it straight to Chordinator: every knob, fader and key fills with this app's own parameters, named, with live values, so the panel becomes Chordinator's front panel rather than a MIDI map you built by hand. And because MidiMirror can run two controllers at once, one can stay in JamWare mode driving this app while the other stays free for Live itself, splitting duty across two pieces of hardware instead of switching one back and forth.