I listen to music while I work, while I walk around trying to reach my 8,000 steps (jaja) or while I train. Most of the time I listen to full albums, what some people call old-fashioned, but sometimes I want something different: a random 90s-style compilation, prog rock/metal from the 2010s, old tracks from artists I forgot about, or songs I didn’t even remember I had.
The problem was that normal music players are not very exciting for this. You add some tracks to a playlist, click play, and then it is always the same playlist again and again (even shuffled), or you have to dig through your music library every time to pick out different tracks to replace the current playlist. I wanted something more surprising. Something that could make my own music library feel alive again.
So I started building a small app for myself. Step by step, it turned into months of work: crossfades, track ordering, avoiding awkward vocal cuts, handling genres differently, even BPM matching for electronic/dancing music, and trying to make transitions feel natural instead of random.
That became My Personal DJ. Actually, I've been trying to come up with an original name, but Google keeps telling me that any name I want is already taken. It's a nightmare.
How it works? You point it to your music folder and it starts playing without gaps. Every time you launch it, it generates a new playlist automatically, so you can rediscover tracks from your own collection instead of listening to the same static queue.
The free version has the full auto mode, no time/playlists limits. You can use it properly without paying.
The Plus version gives you genres-specific transitions, for example like rap/hip-hop, and Latin pop, where many tracks start with vocals. I had to build a lot of guard logic there to avoid vocals overlapping or getting cut in a weird way, right in the middle of the lyrics.
It is built with Tauri, Rust, and React. Audio analysis runs locally via WebAssembly. And it is still in permanent development.
I hope this little thing comes in handy for someone else. Thank you!
Song of the day: Iron Maiden “The Loneliness Of The Long Distance Runner”