Inspiration

We wanted to create an implementation of AI that had the capability of introducing new creative content rather than AI Slop. With spot-a-song, AI can bring about an exposure to fresh and incredible art, pushing forward creativity instead of replacing it.

What it does

Spot-a-song allows users to generate a playlist of songs with a similar bpm, length, and genre. This provides the opportunity for listeners to expand their music pallet to other tracks and artists.

How we built it

Implementing Gemini API, Spotify API, HTML/CSS/JS, and Figma we created an interactive application to intertwine the two API's. We first worked with the Gemini API to generate up to 51 songs with similar bpm, length and "vibe" formatted into a dictionary of titles and artists. This dictionary was then given to the Spotify API where the various information of each song was organized into arrays. The data in these arrays when paired with HTML/CSS/JS provided us with an interactive and creative playlist display. Ultimately creating an application with the capability of creating fully built spotify playlists generated by AI.

Challenges we ran into

We ran into some difficulty with the Spotify API, specifically generating the access token. This token expires every hour, and unfortunately we did not discover this fact right away. This ended up leading to quite a bit of confusion and struggle as our code would simply not run and we had no errors . Our other main problem turned out to be efficient and effective prompt engineering for the Gemini API. It was difficult to understand at first what we needed to instruct the Gemini AI to complete and what information was needed for the AI to complete the task correctly. However we worked with a variety of resources and we managed to create an effective prompt leading to diverse selection and correct storage of the songs.

Accomplishments that we're proud of

We are extremely proud of our UI/UX design. Implementing Figma allowed us to expand what we believed was possible with HTML/CSS/JS, creating a dynamic and exciting way to interact with our software. Our design lead hand drew a few of the elements creating flow and connection throughout the site, while the two frontend leads strived to turn the Figma maps into real working code. Overall the software we created is something that's exciting and fun to work with and we are delighted with the outcome.

What we learned

Invoking APIs to create solutions with data was something our group had never experienced before. API's are powerful tools that can be used in a variety of situations leading to more efficient and dynamic solutions. With this experience, creating programs that interact with real world technologies becomes a reality, one that we could not be more excited to contribute to!

What's next for spot-a-song

Our group would like to expand the features of spot-a-song to include AI input and storage on spotify jams with friends. This feature would allow users to save the songs played in jams to a playlist automatically, and even have an option for Gemini to suggest the next track. With this implementation listeners would be able to expand their scope of music with friends and others alike! We also would love to expand the current software to other music platforms like iTunes and Youtube Music.

+ 3 more
Share this project:

Updates