On a road trip to Lake Tahoe with Berkeley’s DiversaTech, drivers asked members to add to a car playlist to make the trip more lively. It seemed like a simple request, but as I started to add songs I quickly realized there were a few key issues present. Members had many different playlists within different streaming services, and dumping all songs into a large playlist meant the mood in the car often changed quite dramatically. We wanted a way to not only have a list of similar songs but to have themed playlists automatically generated from our libraries as well.

Whether it’s car rides, house parties, or restaurants, combining playlists between users has always been a hassle. Manually dragging songs between different streaming devices is time-consuming and leads to accidental duplication in the process. Having a way to retrieve the songs in common between each user would accelerate this process.

Right from the start, our team split up the work based on each member’s strengths and focused on building a complete product. Max began developing the mobile app using Android Studio and wrote cloud functions to speed up computation and open up the possibility for future cross-platform compatibility. Ryan explored Spotify, Napster, and Apple Music APIs to access and manipulate a user’s playlists. Jason worked on backend Python functions and wrote a method for combining different playlists. Finally, James created a KNN neural network using Tensorflow that could generate new playlists from new titles.

As we worked together to develop each aspect of our app, our product came together. A user can now enter their login information, select playlists, and see generated playlists for the party. We utilize a KNN to develop custom playlists and utilize a cloud-based app to speed up the experience for the user.

While developing the app, our team faced many challenges such as the time restraint and trickly software bugs. But the challenge we are most proud of overcoming is powering through our very first hackathon and creating a working demo. For three of us, CalHacks 6.0 is our first hackathon, so at first, we were a bit disoriented and confused. But after a few hours of writing some code, we soon got the hang of it and started getting somewhere.

Throughout this process, each of us learned a lot. Whereas we each worked on our field of specialty, there was a large amount of cooperation between members where we all learned about techniques used in other aspects of this project. For three of us, this was our first hackathon ever, and coming together to make a fully-developed project was exciting. Across the group, we’ve never worked on so many aspects of a single project before and seeing each part cooperate with one another was immensely valuable.

Share this project:

Updates