Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/toplap/awesome-livecoding

All things livecoding
https://github.com/toplap/awesome-livecoding

List: awesome-livecoding

awesome awesome-list coding graphics live livecoding music synthesis

Last synced: about 2 months ago
JSON representation

All things livecoding

Awesome Lists containing this project

README

        

TOPLAP Logo

# All things live coding [![Awesome](https://awesome.re/badge.svg)](https://awesome.re)

> 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](https://toplap.org).

## Contents

- [What is live coding](#what-is-live-coding)
- [Websites](#websites)
- [Community](#community)
- [Languages](#languages)
- [Libraries and tools](#libraries-and-tools)
- [To Watch](#to-watch)
- [To Read](#to-read)
- [To Dance](#to-dance)
- [Conferences](#conferences)
- [Related lists](#related-lists)
- [Acknowledgement](#acknowledgement)
- [How to Contribute](#how-to-contribute)
- [Code of Conduct](#code-of-conduct)

## What is live coding

Quoting [Wikipedia](https://en.wikipedia.org/wiki/Live_coding)

> 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.

## Websites

- [TOPLAP](https://toplap.org/) - The home of Live Coding.
- [LiveCoding.fr](https://livecoding.fr) - French-speaking information website on Live Coding

## Community

- [livecode mailing list](https://we.lurk.org/mailman3/lists/livecode.we.lurk.org/) - Old school email discussion list, going since 2004!
- [Archive from February 2004 - August 2023](https://toplap.org/livecode-archive/)
- [Current archive](https://we.lurk.org/archives/list/[email protected]/latest)
- Web forums
- [TOPLAP Forum](https://forum.toplap.org) - A web-based 'discourse' forum for in-depth discussion and exchange around live coding.
- [Tidal club](https://club.tidalcycles.org) - A discourse forum for TidalCycles (including for the [video course](https://club.tidalcycles.org/c/course/14?ascending=true&order=created))
- [Lines Forum](https://llllllll.co/) - from the monome community, with loads of general music tech threads including [on live coding](https://llllllll.co/t/live-coding/5032)
- Discord servers for live chat around live coding
- [TOPLAP](https://discord.gg/D4Enr5u7Rp) - cross-community live coding chat + discussion
- [Estuary](https://discord.gg/twqWteAFA2)
- [Hydra](https://discord.gg/cJBs9smhWE)
- [Cane](https://discord.gg/UVYAtpYYD2)
- [gwion](https://discord.gg/KmHqbTKSmS)
- [Pure Data](https://discord.com/invite/AZ43djV)
- [SuperCollider](https://discord.gg/ktz4xQZv7b)
- [TidalCycles, Strudel and friends](https://discord.gg/CqWhZEfNbq)
- [Bubo Tools](https://discord.gg/uJFF6rPKHH)
- Mastodon
- Official TOPLAP mastodon instance: [TOPLAP Social](https://social.toplap.org/)
- List of livecode communities and projects on mastodon: https://social.toplap.org/@toplap/111703319382988669
- Other live coding-related and -adjacent instances include: [sonomu.club](https://sonomu.club/), [assemblag.es](https://assemblag.es) and [post.lurk.org](https://post.lurk.org)
- General live coding-related accounts include: [@[email protected]](https://social.toplap.org/@toplap) [https://social.toplap.org/@algorave](@[email protected])
- [/r/livecoding](https://www.reddit.com/r/livecoding/) - The Live Coding subreddit.
- [livecode.demozoo.org](https://livecode.demozoo.org) - Archive of demoscene related live coding events.

## Languages

(In Alphabetical Order)

- [afterglow](https://github.com/brunchboy/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](https://github.com/alda-lang/alda) - A music programming language for musicians.

`Windows | macOS | GNU/Linux` `FLOSS` `audio`

- [Atomiix](https://github.com/rumblesan/atomiix) - A re-implementation and re-invigoration of ixi lang. (inactive)

`Windows | macOS | GNU/Linux` `JavaScript` `FLOSS` `SuperCollider` `audio`

- [Bacalao](https://github.com/totalgee/bacalao) - A live-coding library for SuperCollider inspired by Tidalcycles syntax.

`Windows | macOS | GNU/Linux` `SuperCollider` `audio`

- [Cane](https://github.com/Jackojc/cane) - A small MIDI sequencer DSL designed around vectors and euclidean rhythms.

`Windows | macOS | GNU/Linux` `FLOSS` `audio` `MIDI` `Jack`

- [ChucK](http://chuck.cs.princeton.edu/) - Strongly-timed, Concurrent, and On-the-fly Music Programming Language.

`Windows | macOS | GNU/Linux` `FLOSS` `audio`

- [clive](https://mathr.co.uk/clive/) - Live-coding audio in C.

`GNU/Linux` `C` `FLOSS` `audio`

- [Conductive](https://hackage.haskell.org/package/conductive-base) - A set of Haskell libraries for livecoding and real-time music applications. (inactive)

`Windows | macOS | GNU/Linux` `haskell` `SuperCollider` `FLOSS` `audio`

- [Cyril](http://cyrilcode.com/) - A programming language designed for fast prototyping of visualisations and livecoding visuals. (inactive)

`Windows | macOS | GNU/Linux` `openFrameworks` `FLOSS` `visuals`

- [Extempore](https://extemporelang.github.io) - (Previously [Impromptu](http://impromptu.moso.com.au/)) A programming language and runtime environment designed to support 'cyberphysical programming'.

`Windows | macOS | GNU/Linux` `lisp` `FLOSS` `audio`

- [Facet](https://github.com/mjcella/facet) - An open source livecoding environment in NodeJS with a text editor in the browser.

`Windows | macOS | GNU/Linux` `NodeJS` `JavaScript` `midi` `Open Sound Control` `audio` `synthesis`

- [FaustLive](https://faustdoc.grame.fr/manual/overview/#faustlive) - FaustLive is an advanced self-contained prototyping environment for the Faust programming language with an ultra-short edit-compile-run cycle.

`Windows | macOS | GNU/Linux` `faust` `llvm` `FLOSS` `audio` `DSP`

- [Fluxus](http://www.pawfal.org/Software/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](http://foxdot.org/) - Live Coding with Python and SuperCollider. See also the [pitchglitch](https://gitlab.com/iShapeNoise/foxdot) actively maintained fork.

`Windows | macOS | GNU/Linux` `Python` `SuperCollider` `FLOSS` `audio`

- [Gibber](https://gibber.cc/) - Creative coding for JavaScript.

`Google Chrome | Mozilla Firefox` `web` `JavaScript` `FLOSS` `audio` `visuals`

- [Glicol](https://glicol.org/) - A graph-oriented live coding language written in Rust.

`Google Chrome | Mozilla Firefox` `web` `Rust` `JavaScript` `WebAssembly` `FLOSS` `audio` `visuals`

- [gwion](https://github.com/Gwion/Gwion) - :musical_note: strongly-timed musical programming language
`Windows | macOS | GNU/Linux` `FLOSS` `audio`

- [hydra](https://github.com/hydra-synth/hydra) - Live Coding networked visuals in the browser.

`Google Chrome | Mozilla Firefox` `web` `JavaScript` `FLOSS` `visuals`

- [Improviz](http://github.com/rumblesan/improviz) - An environment for using and abusing primitive shapes and animated textures. (inactive/deprecated)

`Windows | macOS | GNU/Linux` `Haskell` `FLOSS` `visuals`

- [Iannix](https://www.iannix.org/en/) - A graphical open-source sequencer for digital art

`Windows | macOS | GNU/Linux` `JavaScript` `FLOSS` `audio` `Open Sound Control` `visuals`

- [ixi lang](https://github.com/thormagnusson/ixilang) - An experimental project concerned with the creation of digital musical instruments and environments for generative music. (inactive)

`Windows | macOS | GNU/Linux` `FLOSS` `SuperCollider` `audio`

- [ossia score](https://ossia.io/) - An interactive sequencer that allows live programming of intermedia, inter-protocol artworks, through a custom visual language.

`Windows | macOS | GNU/Linux` `C++` `FLOSS` `audio`

- [kilobeat](https://ijc8.me/kilobeat) - A collaborative web-based dsp livecoding instrument inspired by bytebeat and Gibber.

`Google Chrome | Mozilla Firefox` `web` `JavaScript` `FLOSS` `audio`

- [Krill](https://github.com/Mdashdotdashn/krill) - Tidal cycle like live coding in NodeJS / Browser. (inactive)

`Windows | macOS | GNU/Linux` `NodeJS` `Browser` `FLOSS` `midi`

- [Limut](https://github.com/sdclibbery/limut) - Live code music and visuals in a web browser.

`Google Chrome | Mozilla Firefox | Safari` `web` `JavaScript` `FLOSS` `audio` `visuals`

- [line](https://github.com/pd3v/line) - A tiny command-line midi sequencer and language for live coding.

`Windows | macOS | GNU/Linux` `c++` `FLOSS` `midi` `audio`

- [LiveCodeLab](http://livecodelab.net) - 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. (inactive)

`Windows | macOS | GNU/Linux` `web` `FLOSS` `visuals` `audio`

- [Max](https://cycling74.com/products/max/) - A visual programming language for media.

`Windows | macOS` `graphical-language` `Commercial` `audio` `visuals`

- [Melrōse](https://melrōse.org) - a MIDI producing environment for creating (live) music

`Windows | macOS | GNU/Linux` `golang` `web` `midi` `MIT`

- [Mégra.rs](https://github.com/the-drunk-coder/megra.rs) - A high-level, LISP-y live coding language implemented in Rust. Prominently features Markov chains.

`Windows | macOS | GNU/Linux` `FLOSS` `audio` `LISP` `rust`

- [Mercury](https://github.com/tmhglnd/mercury) | [Mercury Playground](https://mercury.timohoogland.com) - A highly abstracted minimal language for the live coding of algorithmic music, designed to make code more accessible for both the performer and the audience. Runs in Max or the Browser.

`Windows | macOS` `Chrome | Firefox` `audio` `visuals` `MaxMSP` `JavaScript`

- [Moonlet](https://github.com/elihugarret/Moonlet) - Lua live coding. (inactive)

`Windows | GNU/Linux` `FLOSS` `audio`

- [Mosaic](https://mosaic.d3cod3.org/) - An openFrameworks based Visual Patching Creative-Coding Platform.

`Windows | macOS | GNU/Linux` `FLOSS` `graphical-language` `audio` `visuals`

- [Motifn](https://www.motifn.com/) - Code music in Javascript that plays in your DAW or browser

`Google Chrome | Mozilla Firefox` `web` `JavaScript` `MIDI` `audio` `WebAudio`

- [mutate4l](https://github.com/carrierdown/mutate4l) - Live coding integrated into Ableton Live's session view.

`Windows | macOS` `Max for Live` `C#` `FLOSS` `audio`

- [Negasonic](https://github.com/merongivian/negasonic) - Live coding in the browser with Ruby.

`Google Chrome | Mozilla Firefox` `web` `Ruby` `FLOSS` `audio`

- [ORCΛ](https://github.com/hundredrabbits/Orca) - An esoteric live coding environment with two-dimensional syntax.

`Windows | macOS | GNU/Linux` `audio` `FLOSS`

- [OSCII](https://adelfaure.net/tools/liblab/) - OSCII is a web software for drawing and live-coding textmode visuals and sounds.

`Google Chrome | Mozilla Firefox` `web` `JavaScript` `FLOSS` `audio` `visuals`

- [Overtone](http://overtone.github.io/) - 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](http://www.praxislive.org/) - Hybrid visual IDE for live creative coding.

`Windows | macOS | GNU/Linux` `Java` `Processing` `GLSL` `graphical-language` `FLOSS` `visuals` `audio`

- [Pulchra](https://pulchra.netlify.app/) - Live coding language for 3D graphics.

`Google Chrome | Microsoft Edge | etc.` `Web` `WebGL` `visuals`

- [Punctual](https://github.com/dktr0/Punctual) - Browser-based, zero-installation, audiovisual live coding language, built into the Estuary collaborative platform.

`Google Chrome | Mozilla Firefox` `web` `WebGL` `JavaScript` `FLOSS` `visuals`

- [Pure Data](https://puredata.info/) - 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](https://github.com/lvm)
[](https://github.com/yaxu)
[](https://github.com/NewAlexandria)
[](https://github.com/rumblesan)
[](https://github.com/sicchio)
[](https://github.com/znmeb)
[](https://github.com/a-1219)
[](https://github.com/hvillase)
[](https://github.com/fpesari)
[](https://github.com/hellocatfood)
[](https://github.com/ddovod)
[](https://github.com/jcelerier)
[](https://github.com/grz0zrg)
[](https://github.com/charlieroberts)
[](https://github.com/carrierdown)
[](https://github.com/ajrussellaudio)
[](https://github.com/Almenon)
[](https://github.com/neuromancer85)
[](https://github.com/benswift)
[](https://github.com/bobvanluijt)
[](https://github.com/bgrayburn)
[](https://github.com/Bubobubobubobubo)
[](https://github.com/chr15m)
[](https://github.com/claudeha)
[](https://github.com/munshkr)
[](https://github.com/davidedc)
[](https://github.com/d3cod3)
[](https://github.com/alvare)
[](https://github.com/psenough)
[](https://github.com/jarmitage)

## How to Contribute

- 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](contributing.md) is a friendly guide of how to proceed.

## Code of Conduct

This list follows the [Contributor Covenant](http://contributor-covenant.org/) Code of Conduct v1.4.0, available [here](https://www.contributor-covenant.org/version/1/4/code-of-conduct.html).

> 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_.

## License

[![CC0](http://mirrors.creativecommons.org/presskit/buttons/88x31/svg/cc-zero.svg)](https://creativecommons.org/publicdomain/zero/1.0/)
This work is licensed under a [Creative Commons Attribution 4.0 International License](http://creativecommons.org/licenses/by/4.0/).

To the extent possible under law, [Mauro Lizaur](http://lvm.github.io) has waived all copyright and related or neighboring rights to this work.