- Overall Hacklahoma
- Best Domain Name from Domain.com,
With a six hour drive to Hacklahoma/OU each way, we needed a playlist for the road trip, however, we struggled to share and collaborate on our playlist because we all use different services and have different playlists. Our goal is to make it easier to create playlists from multiple services and facilitate group playlists.
What it does
PlayFuse uses the Spotipy and GMusic APIs to pull playlist information from a user’s account, to search each platform for selected music, and then add/remove (sync) playlists between services. On the user’s end, our custom web interface allows the user to see their playlist.
How we built it
We diagrammed the idea and split the project into several parts that were more manageable for each individual team member. Inspired by the services we each use, Huck worked on Spotify, Alex worked on Google Music, and Santiago initially worked on Apple Music before switching to working on the web interface.
Challenges we ran into
Surprisingly, building the individual components was nowhere near as difficult as then attempting to put it altogether in the end as a complete product for the end user. Getting the website UI to work with the backend APIs was challenging. Additionally, the APIs to work with Spotify and Google Music were tricky
Accomplishments that I'm proud of
Finally seeing the playlist load in the web interface after several hours of work on Huck’s part was definitely one of the biggest moments since it’s ultimately what the user sees. Furthermore, when working on the back end with the Spotify API, it was exciting to be able to add and remove songs via the API seeing it instantly refresh on thephone’s end.
What I learned
Working with Flask and AJAX was new for us since we had never worked on getting a front-end web interface written in HTML/CSS/JS/jQuery to work with a Python based back-end. We also learned about user authentication with the various APIs we used for the different services like Spotify and Google Play Music.
What's next for FusePlay
We would love to be able to integrate more music streaming services such as Apple Music, YouTube Music, and others. However, working with each of the services is completely different so it’s not like we can easily reuse the code for other services with Apple Music. Apple implements several restrictions that made it very clear to us from the beginning that it would be best to focus resources on getting Spotify and Google Play Music to work so we could work with at least two services.