MoodMusic
Fall 2021: Web App made by Krishna Kumar, Nhi Ha, and I for HackUMass IX. Linked here.
YouTube Video SubmissionHackUMass Portal SubmissionNote: It is not known if the HackUMass Portal submission will be accessible, so details from that webpage have temporarily been added down here.
Description as a Tweet:
Using your Spotify Data to predict the mood of your songs.
Inspiration:
We wanted to challenge ourselves, while leveraging something which is universal to almost everyone: Music. We used a common platform, Spotify, to incorporate additional functionality that gives the user more insight into the music they listen to. We also wanted to challenge ourselves, hence we used Spotify APIs and React: especially getting the audio features of each song and devising a mathematical model to judge the mood.
What it does:
The project uses React for the frontend and Python for the backend. We implement a Spotify music player in the web, which is linked to the user's account. The Python Script in the backend takes that song, computes it's mood using values of the audio features given by thew Spotify API, and returns the mood of the song.
How we built it:
- Frontend: React, JavaScript, HTML/CSS
- Backend: JS, Python, Flask
Technologies we used:
- HTML/CSS
- Javascript
- React
- Python
- Flask
Challenges we ran into:
Figuring out the Spotify API (which was pretty complex to decipher and implement), converting the audio features values to the corresponding mood, linking Python with React using Flask (by creating our own API).
Accomplishments we're proud of:
Frontend + Music Player looks and works efficiently. Moreover, we were able to create our very first API using Flask, we created our first ever web app using React, and we used Python to map mathematical models for the first time.
What we've learned:
Using the Spotify APIs, learnt React, Python, Flask in software development.
What's next:
Implementing a more accurate mood detector using ML/AI, as well as utilize the YouTube API to present a visual representation of the aforementioned moods.
Built with:
We used React, Python, HTML/CSS, and Flask for languages. For tools: we relied heavily on VSCode, WebStorm, PyCharm, and GitHub.
Prizes we're going for:
- Best Software Hack
- Best Web Hack
- Best Beginner Software Hack
This project is being judged live.