MoodTunes Project Description
Inspiration
MoodTunes was inspired by the vision of crafting a personalized music experience that merges emotional intelligence with geolocation, delivering songs that align with users’ emotions and locations.
What It Does
MoodTunes analyzes user text to identify emotions using a multi-label emotion classifier and retrieves location-specific music through Google Maps’ reverse geocoding and the Jamendo API, creating tailored playlists.
How We Built It
The front-end, crafted with React.js, provides a responsive UI. The back-end, powered by Node.js and NestJS, supports scalable APIs. A Logistic Regression model, trained on the GoEmotions dataset, drives emotion detection, deployed via FastAPI on Hugging Face Spaces. PostgreSQL with Prisma ORM handles data, and JWT-based authentication ensures security. The app is hosted on Google Cloud Run and Firebase Hosting.
Challenges We Ran Into
Integrating the emotion classifier with the music API was complex, particularly in managing limited song variety due to the Jamendo API’s royalty-free constraints and ensuring accurate emotion detection.
Accomplishments That We're Proud Of
We’re proud of delivering a seamless full-stack application with a robust emotion classifier, effective cloud deployment, and a user-friendly interface that blends AI, geolocation, and music curation.
What We Learned
We gained expertise in full-stack development, machine learning deployment, and API integration, while navigating challenges in model performance and music data limitations.
What's Next for MoodTunes
Future plans include enhancing the emotion classifier, expanding the music library with additional APIs, and incorporating real-time user feedback to improve playlist personalization.
Built With
- cloudrun
- docker
- firebase
- google-maps
- jwt
- nestjs
- node.js
- react
Log in or sign up for Devpost to join the conversation.