Inspiration
This project was inspired by our own group members' aspirations to become a DJ this summer. What we learned was devastating: the good DJ boards cost $1000+ and require an encyclopedic knowledge of music theory that we can’t instantly call upon just yet. With Avicii, we brought those musical dreams to an automated reality. Now, people like us, the music lovers, musicians, and everything in between, can DJ like never before.
What it does
Avicii analyzes BPM, key/pitch,energy curves, and separate tracks + generates compatibility scores between songs (song analysis from CLAP model). With this song data, Avicii can find the optimal points to mix songs and choose specific types of mixing techniques. Lastly, we combine songs into a single, multitrack file and compresses it into an easy output to the user as a full mix.
How we built it
In order to approach this complex DJ problem, we first started by breaking it down into simpler, key functionalities. First, we needed a way to process audio: analyze BPM, key, rhythm, energy curves (all part of the librosa library) and separate tracks to enable more creativity in the mixing process (enabled by demucs library).
The next key functionality was the actual DJ mixing algorithm. With all the audio analysis data, this algorithm assigns mixing compatibility scores to songs and uses librosa’s energy curves to find optimal points in each song to mix them In essence, you want to transition from high-energy passage to another high-energy part in a shorter transition, while slower transitions are supposed to be crossfaded at a slower rate (both fades followed 32 beat rule for songs in 4/4). In addition we leveraged transformers to utilize the CLAP model. This model allowed us to understand the genre of songs and find where vocals are happening, ensuring that songs aren’t incompatible even when in the same time signature/BPM/key. The CLAP model also helped us prevent any overlapping vocals. In total, for the DJ mixing algorithm, we found rules to optimize the best sounding mix, but also left room for creativity with the split tracks from step 1.
For the UI/UX portion, we wanted to design a clear but interactive interface where users can still feel like they’re actually remixing like a DJ without needing to learn DJ tools. The layout was designed in Figma, optimized for a two-state interaction: choose songs → preview → mix. Once the layout was designed in Figma with high-fidelity, flow between each frame and button, and the algorithm was completed, the trickiest part was combining the frontend and backend work.
Challenges we ran into
Some challenges we ran into included figuring out the most optimal method of implementing realistic DJ logic that goes beyond simple crossfades, such as energy flow, beat matching, and transition timing. We also had to ensure smooth real-time audio processing so that mixes felt natural and seamless. Another key challenge was designing an interface that felt powerful and creative without overwhelming users. Finally, tuning the mixing algorithm to feel human, intentional, and artistic required extensive testing and iteration.
Accomplishments that we're proud of
Firstly, we’re proud we were able to conceptualize and create such a fun product from scratch at our first ever hackathon. There were moments when the bugs were complicated and difficult to understand, but we’re proud that we were able to persevere through those moments. It was also very rewarding to watch how our initial idea grew into a tangible, working application over the past few days just through all of our teamwork, creativity, and synergy.
What we learned
We learned how complex real DJ decision-making is, and how much detail goes into creating smooth, intentional transitions. We gained experience in translating artistic intuition—like energy flow and emotional pacing—into algorithmic logic. We also learned how important user experience design is when making advanced tools approachable.
What's next for Avicii
Due to limited time, we weren't able to add all the features that our team has in mind for Avicii. We plan on adding features such as interactive remix controls, where users can adjust BPM/key/volume after Avicii produces the AI-aided DJ remix. We also want to implement saved playlists and remix libraries, so users are able to go back to previously created playlists and use those. Avicii also plans on expanding the music search bar to the entire internet, enabling users to have a wide variety of access to music, which also provides room for other features such as analyzing what the recommended next best song to mix with would be based on energy levels, BPM, etc.

Log in or sign up for Devpost to join the conversation.