SuperCollider
A platform for audio synthesis and algorithmic composition, used by musicians, artists and researchers working with sound.
Free and open source software for Windows, MacOS and Linux.
SuperCollider features three major components:
scsynth – A real-time audio engine implemented as a server
sclang – An interpreted programming language which acts as a client to the server
scide – An editor for sclang with an integrated help system
Due to the client/server architecture, it is possible for multiple clients to connect and control what is happening on the server.
Although sclang is the native language and client for the server, there are also several client implementations in other programming languages such as Python, JavaScript, Haskell or Scala.
SuperCollider also includes an alternative implementation of scsynth called supernova which has multi-threading support.
SuperCollider was developed by James McCartney and originally released in 1996.
In 2002, he generously released it as free software under the GNU General Public License.
Since then, it is maintained and developed by an active and enthusiastic community.
Downloads
The current version is 3.13.0:
Community
SuperCollider is a community project and there are several communities to join. For an incomplete list, take a look at the communities site.
A good place to start is the forum located at scsynth.org.
We also have a Code of Conduct.
Examples
Here are some code examples from the documentation.
You can find much more user examples on sccode.org.
sc-140
Check out the amazing sc-140 album (with code examples!).
Simple FM
{ SinOsc.ar(SinOsc.kr([1, 3]).exprange(100, 2e3), 0, 0.2) }.play
Drummer – Thor Magnusson, 2006
{
var snare, bdrum, hihat;
var tempo = 4;
tempo = Impulse.ar(tempo); // for a drunk drummer replace Impulse with Dust !!!
snare = WhiteNoise.ar(Decay2.ar(PulseDivider.ar(tempo, 4, 2), 0.005, 0.5));
bdrum = SinOsc.ar(Line.ar(120,60, 1), 0, Decay2.ar(PulseDivider.ar(tempo, 4, 0), 0.005, 0.5));
hihat = HPF.ar(WhiteNoise.ar(1), 10000) * Decay2.ar(tempo, 0.005, 0.5);
Out.ar(0, (snare + bdrum + hihat) * 0.4 ! 2)
}.play
Check out all examples on the examples page.
Gallery

Greenwashing
An audiovisual piece in which we look at the invisible and listen to the inaudible.
By Fredrik Olofsson
Show Us Your Screens
A Documentary about live coding practices by Louis McCallum and Davy Smith.

SuperCollider Book
The essential reference to SuperCollider, a powerful, flexible, open-source, cross-platform audio programming language.
https://mitpress.mit.edu/9780262232692/the-supercollider-book/
Audio Coding
Introduction to Audio Coding with SuperCollider.
By Eli Fieldsteel
Check out the whole gallery on the projects page.