Fix: website links and photos
22
README.md
@@ -12,14 +12,18 @@
|
|||||||
AGPL-3.0
|
AGPL-3.0
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
Cagire is a terminal-based step sequencer for live coding music. Each step in a pattern contains a **Forth** script that gets evaluated at the right time, producing sound and events. It ships with a self-contained audio engine — no external software needed.
|
Cagire is a terminal based step sequencer and live coding platform. Each step in a sequence is represented by a **Forth** script. It ships with a self-contained audio engine. No external software is needed, Cagire is a fully autonomous musical instrument that provides everything you need to perform.
|
||||||
|
|
||||||
### Examples
|
### Examples
|
||||||
|
|
||||||
A filtered sawtooth with reverb:
|
A filtered sawtooth with reverb:
|
||||||
|
|
||||||
```forth
|
```forth
|
||||||
saw sound 200 199 freq 400 lpf .8 lpq .3 verb .
|
saw sound
|
||||||
|
200 199 freq
|
||||||
|
400 lpf
|
||||||
|
.8 lpq .3 verb
|
||||||
|
.
|
||||||
```
|
```
|
||||||
|
|
||||||
A generative pattern using randomness, scales, and effects:
|
A generative pattern using randomness, scales, and effects:
|
||||||
@@ -34,17 +38,17 @@ sine sound 2 fm 0.5 fmh
|
|||||||
|
|
||||||
### Features
|
### Features
|
||||||
|
|
||||||
- **Cagire's Forth**: a stack-based DSL specialized for live coding
|
- **Cagire's Forth**: a stack-based language made for live coding
|
||||||
- Concise and light syntax, every step is a short script. Forth has almost no syntax, only words and numbers.
|
- Forth has almost no syntax, only words, numbers and spaces. Very easy to learn for beginners, quite deep for experienced programmers.
|
||||||
- Nondeterminism: randomness, probabilities, patterns as first-class operations.
|
- Nondeterminism and generative: randomness, probabilities, patterns thought as first-class features.
|
||||||
- Quotations: code blocks `( ... )` that compose with probability, cycling, euclidean, and conditional words.
|
- Quotations: code blocks `( ... )` that compose with probability, cycling, euclidean, and conditional words.
|
||||||
- User-defined words: extend the language on the fly with `:name ... ;` definitions.
|
- User-defined words: extend (or redefine) the language on the fly with `:name ... ;` definitions.
|
||||||
- Interactive documentation: built-in tutorials with runnable examples.
|
- Interactive documentation: built-in tutorials with runnable examples.
|
||||||
- **Audio engine** (powered by [Doux](https://doux.livecoding.fr)):
|
- **Audio engine** (powered by [Doux](https://doux.livecoding.fr)):
|
||||||
- Synthesis: classic waveforms (saw, pulse, tri, sine), additive, FM (2-op, 3 algorithms), additive synthesis, wavetables, 7-voice spread, Mutable Instruments Plaits models: modal, granular, waveshaping, chord, swarm, etc.
|
- Synthesis: classic waveforms (saw, pulse, tri, sine), additive, FM (2-op, 3 algorithms), additive synthesis, wavetables, 7-voice spread, Mutable Instruments Plaits models: modal, granular, waveshaping, chord, swarm, etc.
|
||||||
- Drum models: kick, snare, hat, tom, rim, cowbell, cymbal with timbral morphing.
|
- Drum models: seven drum models with timbral morphing.
|
||||||
- Sampling: disk-loaded samples with slicing, pitch tracking, wavetable mode, and live recording from engine output or line input.
|
- Sampling: disk-loaded samples with slicing, looping, pitch tracking, wavetable mode, and live recording from engine output or line input.
|
||||||
- Filters: biquad LP/HP/BP and ladder filters, each with independent envelope.
|
- Filters: biquad LP/HP/BP and ladder filters, each with independent envelope. Filters can be modulated, stacked, etc.
|
||||||
- Effects: phaser, flanger, chorus, smear, distortion, wavefolder, wavewrapper, bitcrusher, sample-rate reduction, 3-band EQ, tilt EQ, Haas stereo.
|
- Effects: phaser, flanger, chorus, smear, distortion, wavefolder, wavewrapper, bitcrusher, sample-rate reduction, 3-band EQ, tilt EQ, Haas stereo.
|
||||||
- Bus effects: delay (standard, ping-pong, tape, multitap), two reverb engines (Dattorro plate, Vital Space), comb filter, feedback delay with LFO, sidechain compressor.
|
- Bus effects: delay (standard, ping-pong, tape, multitap), two reverb engines (Dattorro plate, Vital Space), comb filter, feedback delay with LFO, sidechain compressor.
|
||||||
- Modulation: vibrato, AM, ring mod, pitch envelope, FM envelope, glide — all with selectable LFO shapes (sine, tri, saw, square, sample & hold).
|
- Modulation: vibrato, AM, ring mod, pitch envelope, FM envelope, glide — all with selectable LFO shapes (sine, tri, saw, square, sample & hold).
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 82 KiB After Width: | Height: | Size: 196 KiB |
|
Before Width: | Height: | Size: 46 KiB After Width: | Height: | Size: 148 KiB |
|
Before Width: | Height: | Size: 78 KiB After Width: | Height: | Size: 116 KiB |
|
Before Width: | Height: | Size: 52 KiB After Width: | Height: | Size: 92 KiB |
|
Before Width: | Height: | Size: 67 KiB After Width: | Height: | Size: 88 KiB |
|
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 174 KiB |
|
Before Width: | Height: | Size: 61 KiB After Width: | Height: | Size: 134 KiB |
|
Before Width: | Height: | Size: 55 KiB After Width: | Height: | Size: 194 KiB |
|
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 106 KiB |
@@ -56,32 +56,39 @@ const DL = 'https://dlcagire.raphaelforment.fr';
|
|||||||
<table class="downloads-table">
|
<table class="downloads-table">
|
||||||
<tr>
|
<tr>
|
||||||
<th>Platform</th>
|
<th>Platform</th>
|
||||||
<th>Desktop</th>
|
|
||||||
<th>Terminal</th>
|
<th>Terminal</th>
|
||||||
</tr>
|
<th>Desktop</th>
|
||||||
<tr>
|
<th>Plugins</th>
|
||||||
<td>macOS (Universal)</td>
|
|
||||||
<td colspan="2"><a href={`${DL}/cagire-macos-universal.pkg`}>.pkg</a></td>
|
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>macOS (ARM)</td>
|
<td>macOS (ARM)</td>
|
||||||
<td><a href={`${DL}/cagire-macos-aarch64-desktop.app.zip`}>.app</a></td>
|
<td><a href={`${DL}/cagire-macos-aarch64`}>binary</a></td>
|
||||||
<td><a href={`${DL}/cagire-macos-aarch64.tar.gz`}>.tar.gz</a></td>
|
<td><a href={`${DL}/Cagire-aarch64.dmg`}>.dmg</a></td>
|
||||||
|
<td><a href={`${DL}/cagire-plugins-macos-aarch64.clap`}>CLAP</a> · <a href={`${DL}/cagire-plugins-macos-aarch64.vst3`}>VST3</a></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>macOS (Intel)</td>
|
<td>macOS (Intel)</td>
|
||||||
<td><a href={`${DL}/cagire-macos-x86_64-desktop.app.zip`}>.app</a></td>
|
<td><a href={`${DL}/cagire-macos-x86_64`}>binary</a></td>
|
||||||
<td><a href={`${DL}/cagire-macos-x86_64.tar.gz`}>.tar.gz</a></td>
|
<td><a href={`${DL}/Cagire-x86_64.dmg`}>.dmg</a></td>
|
||||||
|
<td><a href={`${DL}/cagire-plugins-macos-x86_64.clap`}>CLAP</a> · <a href={`${DL}/cagire-plugins-macos-x86_64.vst3`}>VST3</a></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>Windows</td>
|
<td>Linux (x86_64)</td>
|
||||||
<td><a href={`${DL}/cagire-windows-x86_64-desktop.exe`}>.exe</a></td>
|
<td><a href={`${DL}/cagire-linux-x86_64.AppImage`}>AppImage</a></td>
|
||||||
<td><a href={`${DL}/cagire-windows-x86_64.zip`}>.zip</a></td>
|
<td><a href={`${DL}/cagire-desktop-linux-x86_64.AppImage`}>AppImage</a></td>
|
||||||
|
<td><a href={`${DL}/cagire-plugins-linux-x86_64.clap`}>CLAP</a> · <a href={`${DL}/cagire-plugins-linux-x86_64.vst3`}>VST3</a></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>Linux</td>
|
<td>Linux (ARM)</td>
|
||||||
<td><a href={`${DL}/cagire-linux-x86_64-desktop.deb`}>.deb</a></td>
|
<td><a href={`${DL}/cagire-linux-aarch64.AppImage`}>AppImage</a></td>
|
||||||
<td><a href={`${DL}/cagire-linux-x86_64.tar.gz`}>.tar.gz</a></td>
|
<td><a href={`${DL}/cagire-desktop-linux-aarch64.AppImage`}>AppImage</a></td>
|
||||||
|
<td><a href={`${DL}/cagire-plugins-linux-aarch64.clap`}>CLAP</a> · <a href={`${DL}/cagire-plugins-linux-aarch64.vst3`}>VST3</a></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Windows (x86_64)</td>
|
||||||
|
<td><a href={`${DL}/cagire-windows-x86_64.exe`}>.exe</a></td>
|
||||||
|
<td><a href={`${DL}/cagire-desktop-windows-x86_64.exe`}>.exe</a> · <a href={`${DL}/cagire-windows-x86_64.msi`}>.msi</a></td>
|
||||||
|
<td><a href={`${DL}/cagire-plugins-windows-x86_64.clap`}>CLAP</a> · <a href={`${DL}/cagire-plugins-windows-x86_64.vst3`}>VST3</a></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<p class="note">Source code and issue tracker on <a href="https://github.com/Bubobubobubobubo/cagire">GitHub</a>. You can also compile the software yourself from source!</p>
|
<p class="note">Source code and issue tracker on <a href="https://github.com/Bubobubobubobubo/cagire">GitHub</a>. You can also compile the software yourself from source!</p>
|
||||||
|
|||||||