In development

Local-first · MIT · No cloud

Your crate,
on your terms.

Crayt indexes your music, analyses it, writes USB drives your players can read, and repairs them when they break. Then it watches your decks live over Pro DJ Link while you play.

Platforms
macOS · Windows · Linux
Writes
export.pdb + exportLibrary.db
Telemetry
UDP 50002 · 10 Hz
DECKS 4 players linked
pro dj link pkt 0

A visualisation of the Decks view. Crayt reads status packets straight off the network — no MIDI mapping, no controller driver.

01 The prep flow

  1. 01

    Index

    Point Crayt at your folders. It scans fast and keeps a local SQLite library — nothing leaves the machine.

  2. 02

    Build

    Assemble the playlist you're actually taking out. Drag, reorder, search by title, artist, album, BPM or key.

  3. 03

    Analyse

    Only the tracks that playlist still needs get analysed — beatgrid, key and waveforms. Not the whole library, every time.

  4. 04

    Export

    Write the stick in mirror or additive mode, with a timestamped backup of the old database taken first.

02 What it does

Two export modes, chosen by you

Mirror makes the USB playlist exactly match the local one. Additive appends what's missing and touches nothing else — so you can build a stick up across sessions and machines without wiping earlier additions.

Diagnostics that tell you the truth

Read-only reports separate operationally passable from strict parity clean. A stick can play fine and still not be byte-faithful — Crayt says which, instead of one vague green tick.

Repair, preview first

A catalogue of fixes for known PDB/eDB structural faults, each previewed before it writes. Hardware-validated, and it has brought real broken sticks back.

Reorder on the stick

Drag playlists into order on a USB that's already exported. Crayt patches t07.sort_order in PDB in place and re-syncs eDB's sequenceNo — so players and rekordbox both see the new order.

Backups before every write

Existing PDB and eDB files are copied to PIONEER/rekordbox/backups/ with a timestamp before any export or repair. Recovery isn't guaranteed, but the escape hatch is there.

Runs where you run

Rust and Tauri, so it builds native on macOS, Windows and Linux — the platform rekordbox has never shipped for.

04 Not rekordbox

rekordbox is a far bigger application — streaming, DVS, video, lighting, cloud sync. Crayt re-implements one slice of it: getting a library onto a stick a player can read, and keeping that stick healthy. Scoped to that job:

Craytrekordbox
PlatformsWindows, macOS, LinuxWindows, macOS
SourceOpen, MITClosed, proprietary
Runs fully offlineYes — no account, no cloudOptional cloud/account features
Export sync modeExplicit mirror or additive, per exportNot user-selectable the same way
Reorder playlists on the USBDrag and drop, written back in placeRe-export from the library
USB diagnosticsOperational + strict-parity reportsNot exposed to users
USB repairPreview-first repair catalogueNo equivalent
Pre-write backupsAutomatic, timestampedNot automatic the same way
Analysis scopeOnly what the target playlist needsBroadly, as tracks are added

05 Build it

There are no published binaries — Crayt is a personal fork and ships as source. You'll need Rust (stable), Node 24 LTS, and the Tauri v2 system libraries for your OS.

# build and run the desktop app
cd desktop/src-tauri
cargo build
cargo run

# release bundles additionally need the Tauri CLI
cargo install tauri-cli --version '^2'

Read this before you point it at a stick

Crayt writes to DJ USB drives and library databases. Broken exports, corrupted databases and data loss are possible, and the software comes with no warranty. Keep your own backups. The automatic pre-write backups under PIONEER/rekordbox/backups/ have rescued real drives, but they are not a guarantee.