Set Builder
Drop in the tracks you want to play and it works out an order that mixes: keys that sit together on the Camelot wheel, tempos close enough to beatmatch, and an energy arc of your choosing.
From Rekordbox, right-click a playlist and choose Export a playlist to a file, or use File → Export Collection in xml format to pick from all of them. M3U playlists and CSVs with title, artist, BPM and key columns work too. Nothing leaves your browser.
I’m learning to DJ, and the part that takes me longest isn’t the mixing. It’s deciding what comes next. This does the first draft. Every pair of tracks gets a score for how well the second one follows the first, and then it searches for the running order with the best total.
Keys are scored on the Camelot wheel, which is the circle of fifths with numbers. Staying put or moving one step around it is the easiest move, and so is crossing between a minor key and its relative major. An energy boost two steps up, or a lift of a semitone, costs a bit more. Anything else is a clash. For tempo, the incoming track has to be pitched to match. Under 2% nobody hears it, and past 8% it starts to sound wrong. Mixing at half or double time works, but costs a little extra.
Tracks you search for get the Dance Judge treatment: your browser listens to the 30-second preview for tempo, key and energy. Those numbers are guesses (faded until you correct them), and the key is wrong about one time in four, so trust your library over it. Imported playlists keep your library’s BPM and key. The page only looks up previews for their energy, one every few seconds so Apple doesn’t mind.