What Is Tidal Cycles?
Tidal Cycles (often just "Tidal") is a free, open-source live coding environment for making algorithmic patterns, written in Haskell. It is used by musicians for composition, improvisation, and exploration of algorithmic music. If you want to describe sequences of sounds, notes, or parameters in code and change them while they play, Tidal is built for that. It relies on SuperCollider, another open-source tool, for synthesis and MIDI output.
What "live coding environment for algorithmic patterns" means
Tidal lets you make patterns with code. Its language is designed for describing flexible sequences — polyphonic, polyrhythmic, and generative — of sounds, notes, parameters, and other kinds of information. The "live" part is the point: you edit and re-evaluate code while the pattern is running, so the music changes as you type.
The name of the underlying idea is "patterns of time." Tidal's model has been adopted by a family of similar open-source environments known collectively as Uzulangs, which includes the web-based Strudel environment.
How the pieces fit together
| Component | Role |
|---|---|
| Tidal Cycles | The pattern language and live coding environment, written in Haskell |
| SuperCollider | Handles synthesis and MIDI — the sound-producing side |
| Uzulangs | The broader family of environments built on Tidal's pattern-of-time model |
| Strudel | A web-based member of that family |
A practical consequence: Tidal itself is not the synthesizer. You write patterns in Tidal, and SuperCollider turns them into audio or MIDI. Setting up a working Tidal environment therefore means having both sides in place.
Who uses it, and for what
Tidal is used by a diverse community of musicians for:
- Composition — writing and refining pattern-based pieces
- Improvisation — performing by editing code in real time
- Exploration — investigating algorithmic music and generative structures
Because it is free and open source, there is no license cost to try it. The project also maintains a blog and a community page, and accepts community-submitted blog posts.
Where to go next
- The main site, tidalcycles.org, is the starting point for documentation and community links.
- If you want the same pattern model without a local Haskell/SuperCollider setup, look at Strudel, the web-based member of the Uzulangs family.
- If you want to see how others use it, the Tidal Blog and community pages are the intended entry points.