Inspiration
Fundamentally, music exerts a powerful influence on us by relating with our mood and emotions. Therefore, we may enjoy different music when we have different emotions and thoughts. Current music recommendations from different apps such as Spotify or Apple Music are always based on previous listening history, but the users’ current emotions and “mood” are not taken into account. This is what inspired us to create Mood Melody, which allows users to enter their thoughts and form music recommendations based on those “thoughts” and the emotions in them.
What it does
Mood Melody provides you with a list of song recommendations based on the user’s mood and thoughts. Type your thoughts (or anything you want to type) into the search bar, and the program will analyze the overall sentiment and emotions in those thoughts. Then, the program will provide the user with recommended songs based on the user’s overall sentiment and different criterias (danceability, instrumentalness, liveness, speechiness, valence, etc.). The recommended songs are randomized and never the same, so even if the user enters the same thoughts, the web-app will still give different recommendations! The user can find our top pick for their mood displayed right when they search. The user can also browse through other picks to see what else you might like. If the user finds something that they like, they can easily sample and share songs through our app to feel the vibes and spread their mood.
How we built it
We built the frontend of the web-app with HTML and stylized it with CSS. For the backend, we used Python and Flask. We also used a few APIs to support the web-app.
Challenges we ran into
Initially, when we were building the minimum viable product, we were just trying to get the backend to be functional. While doing so, we had trouble using Spotify’s API because the API Token expires every 1 hour. Obviously, we cannot manually request for an API every time, which is why we created a short program that requests the API key automatically each time. Also, the CSS styling and HTML integration with the Python/Flask backend turned out to be a bit more complicated than expected, but thankfully, we were able to put the entire project together nicely.
Accomplishments that we're proud of
We are proud of the aesthetics of the web-app as a whole, specifically how clean and modern everything looks. We are also proud of being able to accomplish our initial idea and finish our web-app.
What we learned
We learned a lot about Python and Flask when making this project, especially considering that one of us had no prior experience with Flask. We also learned a lot about integrating the frontend and the backend for a website.
What's next for Mood Melody
We would like to add features that will allow multiple users to enter their thoughts, and then “group listen” to the music recommended. We could also allow the user to create their own playlists within our app. Finally, our web-app only supports Spotify as of now, so we would like to allow users to use some of the other big music streaming apps, and save their songs there.


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