2026. Active.

m4l-builder

Max for Live devices written in Python instead of clicked together in a GUI. Pure standard library, ships to PyPI.

The Linear Phase EQ device running in Ableton Live: a flat EQ curve with a red peak node at 1 kHz and a pink high-cut node near 12 kHz, over a post-analyzer grid.
The Linear Phase EQ device from m4l-builder, running in Ableton Live.

Write scripts, emit .amxd files straight to your Ableton User Library. No Max GUI required.

The problem

Building Max for Live devices means clicking around a GUI, which makes the work hard to version, review, or reproduce.

What I built

Pure-stdlib Python library that emits valid .amxd files: 100+ DSP blocks, a theme system, jsui visual engines, a recipe layer for common combos, and a reverse-engineering pipeline that reads existing devices back into Python.

Interface design for the Linear-Phase EQ: processing, analyzer and range selectors across the top, a curve with one selected node, and band controls below.
The EQ's interface design, from the project docs.

Where it is now

Ships on PyPI with a test suite that asserts the produced .amxd files actually load in Ableton, and a corpus-mining toolchain that turns external devices into structured fixture data.

Audio devices become scriptable, reproducible, and version-controllable instead of being trapped in a visual editor.

Made with Python, Max for Live, Audio DSP and PyPI.

  • 100+ DSP blocks
  • Tests assert audio behavior
  • Reverse-engineering pipeline