Inspiration
We wanted to reimagine the way people connect with music by making it truly personal. Inspired by how moods shift with weather, time, and activities, we envisioned an intelligent music experience that adapts to users in real time. With the growing power of AI and APIs, we saw an opportunity to blend technology with emotion, creating a mood-based music app that feels human and responsive.
What it does
Moodify is a full-featured AI-powered music streaming web app that recommends songs based on your current location, weather, time of day, and listening behavior. It allows users to stream music from platforms like Jamendo, Audius, and Deezer, save and like tracks, upload their own music, chat with a music assistant, and view AI-generated listening insights — all from a personalized dashboard.
How we built it
We built Moodify using Next.js 15 and TypeScript for the frontend, styled with Tailwind CSS for responsiveness and design consistency. The backend leverages Next.js API routes and MongoDB (via Mongoose) for data storage. Music streaming is powered by integrations with Jamendo, Audius, and Deezer, while Cloudinary handles music uploads. AI features such as mood-based and behavior-based recommendations, as well as the chat assistant, are powered by Google Gemini. We used OpenWeather for real-time weather data and implemented OTP-based custom authentication for user security.
Challenges we ran into
Integrating multiple third-party music APIs with different data structures and authorization mechanisms was a major challenge. Implementing real-time geolocation and weather-based music recommendations in a meaningful way also required fine-tuning the AI prompts. Managing authentication flows securely with OTP and JWT, especially within Next.js API routes, took considerable debugging and testing.
Accomplishments that we're proud of
We’re proud of building a cohesive and immersive platform that blends AI, music APIs, and personalization into one seamless experience. The dual recommendation systems (environmental and behavioral) work intelligently, and the custom music player with metadata and upload support adds a personal touch. Successfully implementing OTP-based authentication and a Gemini-powered chat assistant also stand out as major achievements.
What we learned
We deepened our understanding of advanced Next.js patterns, API integration, AI prompt engineering, and user behavior modeling. We also learned how to design for scalability, improve UI/UX responsiveness with Tailwind, and handle asynchronous data flows across multiple services. Most importantly, we learned how to make tech feel personal.
What's next for Moodify
We're planning to enhance Moodify with collaborative playlists, voice-based commands, Spotify sync, and mood journaling features to track emotional trends over time. We also want to launch a mobile-first version, introduce real-time notifications, and improve AI context-awareness for even smarter recommendations.
Built With
- audius
- cloudinary
- deezer
- geminiaiapi
- jamendo
- mongodb
- nextjs
- node.js
- openweather
- react
- tailwindcss
- theaudiodb
- typescript

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