A curated list of live coding languages and tools
This list was created with the intention of giving a quick-glance over the many possibilities to engage in this practice. For further information, head over to TOPLAP.
- What is live coding
- Websites
- Community
- Languages
- Libraries and tools
- To Watch
- To Read
- To Dance
- Conferences
- Related lists
- Acknowledgement
- How to Contribute
- Code of Conduct
Quoting Wikipedia
Live coding (sometimes referred to as 'on-the-fly programming', 'just in time programming' and 'conversational programming') is a performing arts form and a creativity technique centred upon the writing of source code and the use of interactive programming in an improvised way.
- TOPLAP - The home of Live Coding.
- FORUM - A web-based 'discourse' forum for in-depth discussion and exchange around live coding.
- CHAT - A host of many (slack-like) active chat rooms around live coding activities, topics and technologies (discord servers are currently more active for chat - see below)
- Discord servers
- TOPLAP - cross-community live coding chat + discussion
- Estuary
- Hydra
- Pure Data
- SuperCollider
- TidalCycles
- ctrlAV - A community Twitch Channel for streaming live coding, audiovisual art, tutorials, and mass games.
- We.LURK - An email-based discussion system including several livecoding and algorave related forums. (mostly inactive)
- /r/livecoding - The Live Coding subreddit.
- LiveCoders - A semi-curated, rather incomplete list of people doing live coding in the performing arts.
(In Alphabetical Order)
-
afterglow - A live-coding lighting controller, building on the Open Lighting Architecture with Clojure and bits of Overtone.
Windows | macOS | GNU/Linux
lisp
FLOSS
audio
-
Alda - A music programming language for musicians.
Windows | macOS | GNU/Linux
FLOSS
audio
-
Atomiix - A re-implementation and re-invigoration of ixi lang.
Windows | macOS | GNU/Linux
JavaScript
FLOSS
SuperCollider
audio
-
ChucK - Strongly-timed, Concurrent, and On-the-fly Music Programming Language.
Windows | macOS | GNU/Linux
FLOSS
audio
-
clive - Live-coding audio in C.
GNU/Linux
C
FLOSS
audio
-
Conductive - A set of Haskell libraries for livecoding and real-time music applications.
Windows | macOS | GNU/Linux
haskell
SuperCollider
FLOSS
audio
-
Cyril - A programming language designed for fast prototyping of visualisations and livecoding visuals.
Windows | macOS | GNU/Linux
openFrameworks
FLOSS
visuals
-
Extempore - (Previously Impromptu) A programming language and runtime environment designed to support 'cyberphysical programming'.
Windows | macOS | GNU/Linux
lisp
FLOSS
audio
-
Fluxus - A rapid prototyping, playing and learning environment for 3D graphics, sound and games.
Windows | macOS | GNU/Linux | Android | PS2
racket-lang
lisp
FLOSS
visuals
-
FoxDot - Live Coding with Python and SuperCollider.
Windows | macOS | GNU/Linux
Python
SuperCollider
FLOSS
audio
-
Gibber - Creative coding for JavaScript.
Google Chrome | Mozilla Firefox
web
JavaScript
FLOSS
audio
visuals
-
Improviz - An environment for using and abusing primitive shapes and animated textures.
Windows | macOS | GNU/Linux
Haskell
FLOSS
visuals
-
ixi lang - An experimental project concerned with the creation of digital musical instruments and environments for generative music.
Windows | macOS | GNU/Linux
FLOSS
SuperCollider
audio
-
i-score - An interactive sequencer that allows live programming of OSC-enabled applications, through a visual language and JavaScript scripting.
Windows | macOS | GNU/Linux
C++
FLOSS
audio
-
Krill - Tidal cycle like live coding in NodeJS / Browser.
Windows | macOS | GNU/Linux
NodeJS
Browser
FLOSS
midi
-
LiveCodeLab - A web-based language and environment for VJs, musicians and graphic artists. Allows for immediate and engaging run-as-you-type prototyping, also used in education.
Windows | macOS | GNU/Linux
web
FLOSS
visuals
audio
-
Max - A visual programming language for media.
Windows | macOS
graphical-language
Commercial
audio
visuals
-
Mercury - A highly abstracted minimal language for the live coding of algorithmic music designed to make code more accessible for the performer and less obfuscating for the audience.
Windows | macOS
audio
visuals
MaxMSP
-
Moonlet - Lua live coding.
Windows | GNU/Linux
FLOSS
audio
-
Mosaic - An openFrameworks based Visual Patching Creative-Coding Platform.
Windows | macOS | GNU/Linux
FLOSS
graphical-language
audio
visuals
-
Motifn - Code music in Javascript that plays in your DAW or browser
Google Chrome | Mozilla Firefox
web
JavaScript
MIDI
audio
WebAudio
-
mutate4l - Live coding integrated into Ableton Live's session view.
Windows | macOS
Max for Live
C#
FLOSS
audio
-
Negasonic - Live coding in the browser with Ruby.
Google Chrome | Mozilla Firefox
web
Ruby
FLOSS
audio
-
ORCΛ - An esoteric live coding environment with two-dimensional syntax.
Windows | macOS | GNU/Linux
audio
FLOSS
-
Overtone - An open source audio environment designed to explore new musical ideas from synthesis and sampling to instrument building, live-coding and collaborative jamming.
Windows | macOS | GNU/Linux
SuperCollider
lisp
FLOSS
audio
FLOSS
-
PraxisLive - Hybrid visual IDE for live creative coding.
Windows | macOS | GNU/Linux
Java
Processing
GLSL
graphical-language
FLOSS
visuals
audio
-
Pure Data - An open source visual programming language that can be used to process and generate sound, video, 2D/3D graphics, and interface sensors, input devices, and MIDI.
Windows | macOS | GNU/Linux
graphical-language
FLOSS
audio
visuals
-
re<urse- A language for generating musical patterns.abandoned
Windows | macOS | GNU/Linux
TypeScript
FLOSS
audio
-
Repetition.sc - A set of tools to build a SequenceableCollection of Events.
Windows | macOS | GNU/Linux
SuperCollider
FLOSS
audio
-
serialist - A live coding environment that generates MIDI messages.
Windows | macOS | GNU/Linux
JavaScript
FLOSS
audio
-
Skoar - A high-level language for coding music with SuperCollider.
Windows | macOS | GNU/Linux
SuperCollider
Python
FLOSS
audio
-
Sonic Pi - The Live Coding music synth for everyone.
Windows | macOS | GNU/Linux
Ruby
SuperCollider
FLOSS
audio
-
Speccy - Live code 8-bit algorave in ClojureScript.
Windows | macOS | GNU/Linux
web
FLOSS
audio
lisp
-
Steno - Concatenative little metalanguage for live coding.
Windows | macOS | GNU/Linux
SuperCollider
FLOSS
audio
-
SuperCollider - A platform for audio synthesis and algorithmic composition, used by musicians, artists, and researchers working with sound.
Windows | macOS | GNU/Linux
FLOSS
audio
-
synth-x - An experimental live coding environment for making music created with modern web technologies.
Windows | macOS | GNU/Linux
JavaScript
nodejs
audio
-
TidalCycles - Is a language for Live Coding pattern.
Windows | macOS | GNU/Linxux
Haskell
SuperCollider
FLOSS
audio
-
TimeLines - A modular synthesizer for live coding the flow of time.
Windows | macOS | GNU/Linux
FLOSS
Haskell
SuperCollider
audio
-
tinyspec - A C++ live-coding environment for overlap-add (re)synthesis.
GNU/Linux
C++
FLOSS
audio
-
Tinalla - Framework Regex based for language parsing written in javascript.
Windows | macOS | GNU/Linux
FLOSS
Javascript
SuperCollider
audio
-
Tweakable - Visual programming for music, sound and video, used by artists and musicians to make interactive art and music on the web.
Google Chrome | Microsoft Edge
PWA
web
JavaScript
MIDI
audio
visuals
WebAudio
-
Vivid - Haskell synth live coding.
Haskell
SuperCollider
FLOSS
audio
-
Vuo - A realtime visual programming language for interactive media.
macOS
visual-language
FLOSS | Commercial
visuals
-
vvvv - A hybrid visual/textual live-programming environment for easy prototyping and development.
Windows
visual-language
Freeware | Commercial
visuals
-
WASM-music - A live-coding environment for performance, composition and synthesis in the web-browser.
Google Chrome | Mozilla Firefox
web
JavaScript
MIDI
audio
WebAudio
-
Wulfcode - A Midi live-coding environment for performance or composition.
macOS | Windows* | GNU/Linux*
FLOSS
audio
-
wide - Multi-instrumental, polyphonic, "DSLish" API for live coding music in C++.
macOS | Windows | GNU/Linux
FLOSS
audio
-
xi - A domain-specific language for Live Coding musical patterns in Ruby.
Windows | macOS | GNU/Linux
Ruby
SuperCollider
FLOSS
audio
(Also in Alphabetical Order)
- ANSIedad - Generate visuals through a terminal emulator using ANSI escape codes.
- Arcadia - Live coding Clojure in Unity3D.
- Automationism - A modular synthesiser that runs in the open source programming language Pure Data.
- blink - A library which allows you to edit source code of any Windows C++ project live at runtime.
- Bonzomatic - GLSL and HLSL live coding environment, originally designed for live coding competitions at demoparties.
- CHmUsiCK - Library to make ChucK a 'more algorave like' language.
- cl-collider - A SuperCollider client for CommonLisp.
- dafxpipe - Software for live coding audio effects and synths.
- disclojure - A live coding environment for Overtone and Leipzig.
- EspGrid - Synchronization and sharing for network music.
- Extramuros - Language-neutral shared-buffer networked live coding system.
- Flok - Web-based P2P collaborative editor for live coding music and graphics.
- Fragment - Collaborative live GLSL coding environment, additive/spectral/granular synthesizer.
- The Force - WebGL live coding performance IDE.
- Gibberwocky - Use Gibber inside Max/MSP and Max4Live.
- Gideros - Lua 2D game engine with live coding capabilities.
- glslViewer - Live GLSL coding render for macOS and Linux.
- hsc3 - A Haskell SuperCollider client.
- hydra - Live Coding networked visuals in the browser.
- HYLOGEN - An embedding of GLSL in Haskell.
- incudine - Music/DSP programming environment for Common Lisp.
- isobar - A Python library for algorithmic composition by expressing and constructing musical patterns.
- jet-live - A library which implements c++ hot code reload approach for Linux and macOS.
- KodeLife - Real-time GPU shader editor, live-code performance tool and graphics prototyping sketchpad.
- LiCK - Library for ChucK, provides intervals, chords, scales, arpeggiators, patterns, effects, etc.
- LiveCore - Library for live coding inside Reaktor Core.
- LÖVELive 💕 - Live coding framework for LÖVE(2D Game Engine).
- Lua2SC - Lua client for superCollider scsynth and supernova.
- Motifn - Code music in Javascript that plays in your DAW or browser
- Petal - A small language on Sonic Pi with similar syntax to TidalCycles.
- pytebeat - A piece of software for doing livecoding bytebeat performances.
- P5LIVE - p5.js collaborative live-coding vj environment!
- p5-live - Live Coding for p5.js.
- REPL Mode - This mode adds in a Read-Evaluate-Print-Loop console to Processing 3.0.
- Republic - SuperCollider library for conversational coding.
- Ronin - LISP repl for graphics livecoding.
- s2hs2 - An interface between TidalCycles and Processing.
- Siren - A tracker interface that embodies abstractions where programming is realized as the medium for pattern sequencing in a modular fashion.
- sonic-pixels - Interactive lighting effects for Sonic Pi.
- Supriya - A Python API for SuperCollider.
- tidal-autocode - Auto-generates patterns for TidalCycles (requires Atom editor).
- tidal-chord - An add-on to the amazing live coding project TidalCycles.
- TidalFX - A haskell package adding weirder effects to Tidal from non-standard UGens.
- tidal-maxmsp - Connecting the Tidal live coding environment to MaxMSP.
- TidalUnity - An interface between TidalCycles and Unity 3D.
- Tidal-Unity - TidalCycles meets Unity 3D.
- tida1vm - Another TidalCycles environment inside Docker.
- tidebox - TidalCycles live coding environment inside a Docker container.
- total-serialism - A NodeJS package filled with methods designed for algorithmic composition.
- Troop - Real-time collaborative live coding with FoxDot.
- VEDA - Real-time GLSL editor for Atom.
- WavTexture - A Unity example showing how to bake a waveform of an audio clip into a texture and use it in a shader.
- ZeroBrane Studio - Editor that allows live coding using Lua language.
- Algorave Generation - Resident Advisor.
- Algorithms are Thoughts, Chainsaws are Tools - A short film on livecoding presented as part of the Critical Code Studies Working Group, March 2010, by Stephen Ramsay.
- Live coding for Algoraving - Shelly Knotts+Joanne Armitage / workshop supported by YSWN + LCRN.
- PBUP - A patchwork portrait - A documentary about PowerBooks UnPlugged, "the first acoustic computer band".
- Run the code - Documentary in The Guardian.
- Show Us Your Screens - A Documentary about live coding practise by Louis McCallum and Davy Smith.
- Sounds of code - 2019 documentary w/ interviews with live coders.
- Algorave - Algorithmic dance culture - Alex McLean.
- Arte Tracks - Live coding and Algorave
- ComputerMusic(now) - Andrew Sorensen.
- Hacking Choreography - A live coded dance performance.
- ICLC YouTube Channel - International Conference on Live Coding.
- Programming as Performance - Sam Aaron.
- Programming in Time - Live Coding for creative performances - Andrew Sorensen.
- SuperCollider Tutorials - A video series by Eli Fieldsteel.
- THIS is computer music - Ge Wang.
- TidalCycles YouTube Channel - Official channel of the TidalCycles collective.
- Manifesto (draft) - Obscurantism is dangerous. Show us your screens.
- Origins of Live Coding - Nick Collins - Durham University.
- Herding Cats: Observing Live Coding in the Wild - Thor Magnusson - Department of Music - University of Sussex.
- Algorave: the live coding movement that makes next-level electronic music - MixMag magazine article about live coding (2017).
- Real DJs Code Live - Wired magazine article about live coding (2006).
- Alex McLean's publications - Conference papers, book chapters and journal articles.
- Live Coding Mailing List Archive - A piece of history.
- TOPLAP Wiki - Videos, articles, and papers.
- Collaboration and learning through live coding - Blackwell, Alan ; McLean, Alex ; Noble, James ; Rohrhuber, Julian.
- howto_co34pt_liveCode - Guide on how to live code in SuperCollider based on the performance practice of live coder co¥ᄀpt.
- Run the code: is algorave the future of dance music? - Another part of the Guardian’s underground music series (2017).
- Algorave - Embrace the alien sounds of raves from the past, and introduce alien, futuristic rhythms and beats made through strange, algorithm-aided processes.
- Eulerroom - Algorithmic music streams, mainly live coded and/or algorave but possibly also stranger things.
- Algorave Guidelines - Guidelines to host an Algorave.
- ICLC - International Conference on Live Coding.
- FARM - Workshop on Functional Art, Music, Modeling, and Design.
- ICLI - International Conference on Live Interfaces.
- NIME - New Interfaces for Musical Expression conference.
- Awesome Creative Coding - Creative Coding, Generative Art, Interaction Design, Resources.
- Awesome Audio visualization - A curated list about Audio Visualization.
- Awesome Music - A categorized collection of awesome music libraries, tools, frameworks and software.
- Awesome Live Coding Music - A curated list of awesome Music Live Coding Music environments, libraries and talks.
- Programming Languages Used for Music - An historical list of languages to produce music.
- awesome-musicdsp - A curated list of Oli Larkin's favourite music DSP and audio plug-in frameworks.
This has been brought to you by these contributors.
- Fork this repository.
- Add the changes you feel appropriate (be it a language, something to read, something to watch, a tool, a conf, etc).
- Create a Pull Request with a description of what you've modified.
- ???
- PROFIT !
Here is a friendly guide of how to proceed.
This list follows the Contributor Covenant Code of Conduct v1.4.0, available here.
In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
TL;DR: Be nice to each other.
This work is licensed under a Creative Commons Attribution 4.0 International License.
To the extent possible under law, Mauro Lizaur has waived all copyright and related or neighboring rights to this work.