We both love music and hate the recommend mood playlists on spotify and google play. After discovering an interesting Machine learning algorithm that classifies text with emojis, we realized that it could be applicable. A few days before the start of the hackathon, we came up with the idea of MusicMoji.
What it does
The user begins by linking thier spotify account with our app. Then, the user can select upto 10 different emojis that reflect the current mood they wish to listen to. The user can then fine tune this mood by adjusting the weightings of the various emojis. Once the user presses submit, a spotify playlist is created with the number of songs the user asked for, right in their account. A link will be presented and the user can begin listening!
How we built it
We built the app in several pieces. The back-end API for calculating emojis is built in python using PANDAS and Numpy for datascience, and PyTorch for the machine learning. We also coded the back end Spotify integration in NodeJS. We built the front-end UI in React.
Challenges we ran into
We ran into several challenges throughout the hackathon, the biggest of which was coding in Node. Although we had some experience with it before, coding asynchronous functions in Node is extremely difficult, and cause us several long delays. Another major challenge we found was time management. We tried our hardest to keep our project's scope small enough to come out with a polished finished product.
Accomplishments that we're proud of
Were proud that we managed to come out of this hackathon with a mostly finished implementation of our idea! We are also proud that we managed to learn and utilize all these new skills effectively to create something.
What we learned
We gained a ton of experience using all the frameworks and tech that was involved in our project. We learned more about using APIs, about coding in Node, about creating React interfaces and about linking it all together into a finished app!
What's next for MusicMoji
There are a few plans we have for the app. Firstly we want to continue to polish the app and implement new features. Things like support for more then 10 emojis, naming playlists, playing the spotify playlist in-browser, and expanding the song database. We also want to deploy that app, and make a mobile version.