Live Coding & Generative Music
SuperCollider, TidalCycles, Sonic Pi, ChucK, Pure Data, Hydra — code-as-instrument environments.
Live coding writes music as text — usually on stage, projected for the audience to see — using a small set of high-level functions for sequencing, synthesis, and effects. Generative / algorithmic environments cover the same ground but offline. For a related-but-different category, see synths-free-oss (VCV Rack and Bitwig Grid are also "patch-as-instrument" environments). For DAW context see daws-overview.
Live coding languages (audio)
- ★ SuperCollider (sclang + scsynth) — GPL3, cross-platform. Battle-tested, mature, used at academic computer-music programs everywhere. scsynth is the C++ audio server; sclang is the Smalltalk-derived language. Steep but rewarding. The substrate that powers Sonic Pi and TidalCycles internally.
- ★ TidalCycles — MIT-licensed Haskell-based pattern language. Targets SuperCollider / Dirt-Samples by default. Pattern-combinator approach; the choice for algorithmic dance music. Big live-coding scene presence.
- ★ Sonic Pi (Sam Aaron) — MIT, cross-platform. Ruby-flavored DSL designed for music-education and live coding. Targets SuperCollider internally. The most beginner-friendly entry point. Bundled on Raspberry Pi OS.
- ★ ChucK (Princeton) — GPL, cross-platform. Real-time, strongly-timed concurrent audio language. Newer WebChucK runs in the browser via WASM. The choice for time-precise generative work.
- FoxDot — Python-based live coder targeting SuperCollider; lower learning curve than TidalCycles for Python folks.
- Overtone — Clojure live coding on top of SuperCollider.
- Strudel — JS port / cousin of TidalCycles; runs in the browser. Lowest-friction live coding.
- Glicol — Rust-WASM browser-based live coder with web playground.
- Mercury — JS-based live-coding language with a web editor.
Visual / audio-visual
- ★ Hydra — MIT; live-codable browser visuals; pairs with audio live coding for AV sets. Very popular in live-coding scenes.
- Punctual — Haskell-derived AV live coding; runs in browser.
- TouchDesigner — paid (free Non-Commercial tier); node-based AV; not live-coded but generative-friendly.
Patcher / dataflow ("Max-shape") environments
- ★ Pure Data (Pd) (Miller Puckette) — BSD-licensed open-source patcher; the OSS counterpart to Max/MSP, by Max's original author. Cross-platform. Embeddable via libpd in iOS / Android / Unity.
- Pd extended / Pd vanilla — vanilla is the actively maintained branch; extended is legacy.
- Purr Data — fork of Pd extended with modern UI.
- Max/MSP (Cycling '74) — paid; included with Ableton Live Suite as Max for Live. The commercial dataflow environment.
- RNBO (Cycling '74) — paid; export Max patches as VST3 / AU / WASM / C++. Effectively "Max → plugin / web."
- VVVV — paid Win visual programming environment (audio + video + 3D).
Generative / scoring (offline)
- ★ VCV Rack 2 — GPL2 modular synthesizer; not live-coded but generative-friendly with sequencer modules. See synths-free-oss.
- Bitwig Grid / Poly Grid — bundled with paid Bitwig.
- Music21 (MIT) — Python toolkit for computer-aided musicology and generative score work.
- Magenta (Google) — Python ML toolkit for music generation.
- MuseTree — paid AI-assisted notation generation.
Specific niches
- Orca (hundredrabbits) — GPL ESM-based esoteric live coding language; sigil-grid programming. Cult favorite.
- Sema — browser live-coding meta-language playground.
- gibber — JS browser AV live coding.
Hardware-leaning
- Raspberry Pi + Sonic Pi — bundled together on Pi OS. See pi-classic-projects.
- Norns (monome) — paid open hardware Lua-script-driven sound platform.
- Daisy (Electrosmith) — paid open-source DSP development board; pairs with Faust / C++.
Pick this if…
- Beginner / classroom: Sonic Pi.
- Pattern-based dance music live: TidalCycles.
- Mature reference platform: SuperCollider.
- Time-precise concurrent audio: ChucK.
- Web browser, zero install: Strudel + Hydra.
- Patcher / dataflow, free: Pure Data.
- Patcher with DAW integration, paid: Max/MSP + Max for Live (in Ableton Suite).
- Generative MIDI in Python: Music21.