Rekordbox Migrator
A CLI tool for migrating Rekordbox DJ collections between computers or library locations without losing cue points, playlists, or hot cues.
A CLI tool for migrating Rekordbox DJ collections between computers or library locations without losing cue points, playlists, or hot cues.
Rekordbox Migrator
Rekordbox stores its library data in a way that’s tightly coupled to file paths. Move your music to a new drive or switch computers, and suddenly none of your tracks resolve. Cue points, hot cues, playlists. all orphaned.
Rekordbox Migrator fixes this by rewriting the internal database references so your collection works in its new location.
Architecture
graph TB
subgraph Input["Input"]
DB_IN[(Rekordbox SQLite DB<br/>Original)]
CFG[Migration Config<br/>YAML/CLI Args]
end
subgraph Core["Core Engine (Python)"]
PARSER[DB Parser]
MAPPER[Path Mapper]
VALIDATOR[Integrity Validator]
WRITER[DB Writer]
end
subgraph Output["Output"]
DB_OUT[(Rekordbox SQLite DB<br/>Migrated)]
LOG[Migration Log]
DRY[Dry-Run Report]
end
DB_IN --> PARSER
CFG --> MAPPER
PARSER --> MAPPER
MAPPER --> VALIDATOR
VALIDATOR --> WRITER
VALIDATOR --> DRY
WRITER --> DB_OUT
WRITER --> LOG
How It Works
- Parses the Rekordbox SQLite database directly
- Remaps file paths from old locations to new ones
- Preserves all metadata. cue points, hot cues, playlists, play counts, ratings
- Validates integrity before writing. ensures all referenced files exist at new paths
- Dry-run mode to preview changes before committing
Why I Built It
I switched machines and didn’t want to re-analyze and re-cue hundreds of tracks. The official Rekordbox migration path is clunky and error-prone. This just works.
Related Posts
- How I Taught Myself How to Code. The self-taught path from music to software, and how working support at a startup pushed me into engineering.