# Welcome to Cagire Cagire is a terminal-based step sequencer for live coding music. Each step on the sequencer is defined by a **Forth** script that produces sound and create events. The documentation you are currently reading acts both as _tutorial_ and _reference_. It contains everything you need to know to use Cagire effectively. We recommend you to dive in and explore by picking subjects that interest you before slowly learning about everything else. Here are some recommended topics to start with: 1) How the sequencer works? Banks, patterns and steps. * the sequencer model, the pattern model, the step sequencer. 2) How to write a script? How to make sound using code. * how to write simple scripts that play `musical events`. * how to extend these scripts with `logic` and/or `randomness`. * how define `WORDS`, `variables`, and share data between steps. 3) What can I do with the audio engine? * audio sources: samples, oscillators, wavetables, noise generators. * audio effects: filters, delay, reverb, distortion, modulations. 4) How far can it go? * how to live code with Cagire. * how fast can I break things? ## What is live coding? Live coding is a technique where a programmer writes code in real-time in front of an audience. It is a way to experiment with code, to share things and thoughts openly, to express yourself through code. It can be technical, poetical, weird, preferably all at once. Live coding can be used to create music, visual art, and other forms of media. Learn more about live coding on [https://toplap.org](https://toplap.org) or [https://livecoding.fr](https://livecoding.fr). Live coding is an autotelic activity: it is an activity that is intrinsically rewarding, and the act of doing it is its own reward. There are no errors, only fun. ## About Cagire is built by BuboBubo (Raphaƫl Maurice Forment, [https://raphaelforment.fr](https://raphaelforment.fr)). It is a free and open-source project licensed under the `AGPL-3.0 License`. You are free to contribute to the project by making direct contributions to the codebase or by providing feedback and suggestions. ### Credits * **Doux** (audio engine) is a Rust port of Dough, originally written in C by Felix Roos. * **mi-plaits-dsp-rs** is a Rust port of the code used by the Mutable Instruments Plaits. * _Author_: Oliver Rockstedt [info@sourcebox.de](info@sourcebox.de). * _Original author_: Emilie Gillet [emilie.o.gillet@gmail.com](emilie.o.gillet@gmail.com).