Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/glicol/glicol-cli
glicol cli: cross-platform music live coding in terminal
https://github.com/glicol/glicol-cli
Last synced: about 2 months ago
JSON representation
glicol cli: cross-platform music live coding in terminal
- Host: GitHub
- URL: https://github.com/glicol/glicol-cli
- Owner: glicol
- License: mit
- Created: 2023-03-09T22:06:13.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-05-21T15:31:58.000Z (7 months ago)
- Last Synced: 2024-08-01T16:52:16.017Z (5 months ago)
- Language: Rust
- Homepage: https://github.com/chaosprint/glicol
- Size: 1.65 MB
- Stars: 133
- Watchers: 5
- Forks: 11
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-ratatui - glicol-cli - Cross-platform music live coding in terminal. (💻 Apps / 🎼 Music and Media)
README
# glicol-cli
https://user-images.githubusercontent.com/35621141/226138600-199aed46-4f16-4ae2-9951-716181782f59.mp4
## What's this?
It's a command line interface that you can use for music live coding with [Glicol](https://glicol.org).
It watches a file changes and then update the music in real-time.
## How to use it?
### Step 1
You need to have `cargo` installed (see [here](https://doc.rust-lang.org/cargo/getting-started/installation.html)).
### Step 2
In your Terminal:
```sh
cargo install --git https://github.com/glicol/glicol-cli.git
```### Step 3
Create a new file called `test.glicol`, then run this command in your Terminal:
```sh
glicol-cli test.glicol
```For more `OPTIONS`, call `--help` in your terminal:
```
~ glicol-cli --helpGlicol cli tool. This tool will watch the changes in a .glicol file
Usage: glicol-cli [OPTIONS]
Arguments:
path to the .glicol fileOptions:
-b, --bpm Set beats per minute (BPM) [default: 120]
-d, --device The audio device to use [default: default]
-H, --headless Disable the TUI
-h, --help Print help
-V, --version Print version
```### Step 4
Start live coding. Edit `test.glicol` with your favourite editor:
```
// test.glicol
~t1: speed 4.0 >> seq 60 >> bd 0.2 >> mul 0.6~t2: seq 33_33_ _33 33__33 _33
>> sawsynth 0.01 0.1
>> mul 0.5 >> lpf 1000.0 1.0out: mix ~t.. >> plate 0.1
```## Load your own samples
Run the line in your terminal first:
`export GLICOL_CLI_SAMPLES_PATH=/path/to/your/samples`
For example:
`export GLICOL_CLI_SAMPLES_PATH=~/Downloads/samples`
## Development
If you are developing the glicol-cli source code itself, you can setup
a convenient self-recompiling debug binary alias:* Install
[Just](https://github.com/casey/just?tab=readme-ov-file#readme)```sh
cargo install just
```* Put the alias into your shell init (`~/.bashrc`):
```
# Point this to the Justfile found in your git clone:
alias glicol-cli='just -f ~/git/vendor/glicol/glicol-cli/Justfile run'
```This special `glicol-cli` alias can be run from any directory, and the
program will automatically recompile itself before running the
program. You can still provide `glicol-cli` command line arguments as
normal.