Inspiration

Imagine that you just got broken up with last night and all you want is to stay in and listen to sad break-up songs all day. Sorting through your Liked Songs and handpicking those with a breakup vibe is a pain, and other users’ playlists might not fit your taste. It’s just . . . too much work! This is why you need an AI that can categorize your favourite songs FOR YOU!

What it does

This is why we built a widget that generates a song for you based on your mood: all you have to do is click a single button to pick your mood, and co:here’s API will do the rest for you!

How we built it

We divided the algorithm into four chunks. We first created a database to store songs with their lyrics, and then created a dictionary of song-song lyric pairs. Then, we use co:here’s Summarize endpoint to summarize song lyrics, and then we updated the previous dictionary to include song-summary lyric pairs. Next, we used co:here’s Classify endpoint to categorize the songs from the dictionary into genres. Finally, we used the tkinter module in Python to design the widget that the user can interact with.

Challenges we ran into

While writing the Python script was (mostly) a breeze, none of us had ever worked with front-end design before, so we didn't know how to convert our algorithm into a fun-looking widget that users can interact with.

Accomplishments that we're proud of

Everyone on our team was a first-time hacker and had no idea what to expect--but we collaborated together and created something that actually works, so we are proud!

What we learned

Working with co:here's Summarize and Classify endpoints taught us that machines are super smart and can drastically save our time and energy, but also that machines are only as smart as we are! If we train the model poorly, then the model performs poorly, so we must use the technology with deliberation.

What's next for Moody Music

Our working model currently requires users to initialize their database manually, aka they must manually type in song titles and song lyrics before they can use the widget. We would like to automate this step by feeding the algorithm with our Spotify Liked songs so that it can extract the songs and their lyrics on its own!

Built With

Share this project:

Updates