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

Share this project:

Updates