DJ Set Planner - An evening isn't a folder full of tracks. It has an arc
An evening doesn't fall apart because the music is bad. It falls apart because the order is wrong.
What it's about
DJ Set Planner plans a musical evening as a sequence of phases — arrival, build-up, peak, wind-down — each with a time slot, tempo range and genre. The tracks come from a Spotify playlist, are assigned to phases by tempo and, within a phase, arranged harmonically according to the Camelot wheel. The result: finished playlists in the DJ's Spotify account and M3U files for rekordbox.
Along the way, the application answers the question that comes before every purchase: Which tracks in my plan aren't yet on my computer?
Who it's for
- DJs who prepare an evening instead of improvising it
- Hosts who plan their own party and want to hand the DJ something to work with
The technology behind it
- Angular 22 without Zone.js, built entirely with Signals
- NestJS and PostgreSQL, migrations via TypeORM
- Spotify integration with PKCE in the browser — the customer's access token never reaches our servers
- Analysis of local music files in the browser: tempo and key from the tags, without any file leaving the computer
- Stripe with automatic VAT and invoicing
- Bilingual, GDPR-compliant, hosted in Germany
What made it difficult
The platform rules. Spotify prohibits passing track data to a language model; so the model only designs the shape of the evening, and the tracks are distributed locally on the computer. Music playback is ruled out — an automated check in the deployment pipeline triggers the moment someone tries anyway.
Photo: Francesco Paggiaro / Pexels