Individual project
Emotify — emotion-based music recommendation
A web app that reads your facial expression from the webcam and recommends Spotify playlists to match your mood.

Project facts
- Period
- 2022
- My role
- Designer and developer (Creative Experience Design course project)
- Organisation
- UNIST
Context
Music recommendations are usually based on listening history, not on how the listener feels at that moment — so finding music for a mood means searching manually. Emotify was my individual course project (2022): a web app that detects your emotion from your face and suggests matching Spotify playlists.
How it works
Emotify captures a frame from the webcam, classifies the facial expression with a convolutional model trained on the FER-2013 dataset, and fetches matching playlists from Spotify. The interface shows the detected emotion, the model's confidence and a ranked list of playlists by genre; the background colour changes with the detected emotion. The app is built with Flask and adapts an open-source emotion-recognition project, which I credited in the report.

Testing and iteration
I ran usability tests with three users. All of them ignored the capture and retake buttons, a music icon was mistaken for a play button, and the live-changing playlist and background colour divided opinion. In response I removed the icon, split capture and recommendations into separate screens, restyled the playlist table and enlarged the emotion read-out.


What I learned
Turning the concept into a working prototype showed the limits of the data: the emotion model was trained on a skewed dataset, and Spotify offers no mood-based playlist API, so playlists had to be curated per emotion.
Outcomes
Working Flask prototype with real-time expression detection and a neumorphic UI.