forked from OpenDJLab/cadja
A WIP music library indexer & database for DJs
- Rust 99.9%
| crates | Fix sorting | |
| .gitignore | Here we go | |
| Cargo.lock | Fix sorting | |
| Cargo.toml | Fix sorting | |
| README.md | - Add --output=print0 to use with xargs | |
| ROADMAP.md | Fix sorting | |
| SPEC.md | Start working on query language | |
CAJA
Caja is a WIP project to bring an open source alternative to the Rekordbox PDB concept. It comes as a rust library to embed in your own project and with a cli tool to use from your terminal.
ATTENTION: This is not battle tested. Make sure you have a backup of your music library. Try at your own risk!
Current status
- Simple (re)indexing
- Simple query language to create smart playlists and search the index
- Indexing playlists
- Rebuilding smart playlists on change
- Modifying metadata with caja
- Many fields are missing
How to install
- make sure you have rustup/cargo installed
- clone this repo
- cd into it
- cargo install --path ./crates/caja_cli
Examples
Indexing your music library
- Cd into your music folder.
caja_cli initcaja_cli index
Search examples
caja_cli query 'some test'caja_cli query 'artist:Foo'caja_cli query 'artist:"Foo & Bar"'caja_cli query 'filename:".mp3"'caja_cli query 'bpm:130..140'caja_cli query '#hypnotic #techno'
Play query results with vlc:
caja_cli query '#hypnotic' --output print0 | xargs -r0 vlc