A modern, cross-platform GUI application for converting playlists between Rekordbox and Serato DJ software. Built with PyQt6.
For DJs ❤️ by DJs 🎧
- 🎨 Modern UI - PyDracula themed interface with smooth interactions
- 🔍 Auto-Detection - Automatically finds Rekordbox database and Serato directories
- 🔄 Bidirectional Conversion - Convert playlists between Rekordbox and Serato DJ
- 📁 Folder Structure Support - Preserves folder hierarchies and subcrate organization during conversion
- Python 3.12 or higher
- Rekordbox installed
- Serato DJ installed
Tested Versions:
- Rekordbox: 7.2.2
- Serato DJ: 3.2.2
-
Clone the repository:
git clone https://github.com/winson0123/Rexato cd rexato -
Install dependencies:
python -m pip install -r requirements.txt
-
Run the application:
python main.py
- Select conversion direction (Rekordbox ↔ Serato)
- Wait for playlists/crates to load
- Select items to convert using checkboxes
- Click "Convert Selected" and confirm
- Review conversion results
The application automatically detects:
- Rekordbox database via
pyrekordbox(checks default locations) - Serato crates directory in common locations:
- Windows:
%USERPROFILE%\Music\_Serato_\Subcrates - macOS:
~/Music/_Serato_/Subcrates - Linux:
~/Music/_Serato_/Subcrates
- Windows:
- Rekordbox → Serato: Reads playlists and creates
.cratefiles - Serato → Rekordbox: Reads crates and creates playlists in Rekordbox database
Both directions preserve track order and match tracks by file path.
Important
The conversion process ports the playlist/crate structure with tracks in order. Track analysis (BPM detection, key detection, beatgrids, waveforms) is not transferred and must be performed by the destination software (Rekordbox or Serato) after conversion.
- Rekordbox intelligent/smart playlists → converted to regular crates
- Serato Smart crates → converted to regular playlists
Note
Smart/intelligent rules are not preserved during conversion.
- USB detection for conversion
- Porting beatgrid analysis (including dynamic beatgrids)
- Porting hot cues/memory loops
- pyrekordbox - Rekordbox database access
- serato-tools - Serato crate file format support
- PyQt6 - GUI framework
- PyDracula - Theme inspiration