← Projects
Rekordbox Migrator

Rekordbox Migrator

A CLI tool for migrating Rekordbox DJ collections between computers or library locations without losing cue points, playlists, or hot cues.

TypeScriptNode.jsXML

A CLI tool for migrating Rekordbox DJ collections between computers or library locations without losing cue points, playlists, or hot cues.

TypeScriptNode.jsXML

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.