Inspiration

As a team of high school students, we understand how challenging it can be to manage stress, anxiety, and other emotional challenges while balancing school, extracurricular activities, and personal life. Music has always been a powerful tool for emotional regulation, but we wanted to take it a step further by integrating technology. This personalized, adaptive music therapy experience was inspired by the potential of combining emotion recognition and music therapy.

What it does

Rest is an emotion-driven music therapy website that provides personalized music therapy sessions based on the user’s current emotional state. By analyzing facial expressions and text using advanced algorithms, Rest identifies the user’s emotional state and recommends a tailored music therapy session. The app continuously monitors the user’s response and adjusts the music in real-time to ensure maximum effectiveness.

How we built it

We built Rest using a combination of Python, Flask, CSS, HTML, and JS. The AI used for image analysis was taken from the web and uses a Torchscript model. The text analysis was done with the OpenAI API.

Challenges we ran into

We encountered several challenges that tested our problem-solving abilities and teamwork. First of all, as a team with no prior experience using Flask, we faced a steep learning curve. We had to quickly get up to speed with Flask’s framework and figure out how to integrate it effectively into our project.

Working with Spotify’s API was another significant challenge because the documentation is lackluster and it is highly unreliable at times. We spent considerable time reading documentation, experimenting, and troubleshooting issues.

Lastly, working as a team lead to multiple merge conflicts when trying to combine code.

Accomplishments that we're proud of

We are proud of several accomplishments achieved during this project. First of all, the successful development of Rest. This website manages to integrate emotion recognition, music recommendation, and real-time adaptation.

Another element of this project we are proud of is the innovative use of technology. Machine learning was used to both analyze facial expressions and text. This allowed for a personalized music therapy experience.

In addition, our user-friendly web interface allows users to interact with the app and receive their personalized therapy sessions. Our design and clean UI were a significant accomplishment for Rest.

What we learned

As it was our first time using Flask, we learned a lot about Flask. This presented a significant challenge, as Flask was the primary framework we chose to build our project. However, through persistence and collaboration, we were able to rapidly learn and adapt to using this framework.

Additionally, we learned about Spotify’s API during this hackathon project. Tasks like creating personalized recommendations analyzing track information, and adding songs to the queue were all things we achieved with Spotipy.

We also learned how to use the Auth0 API for the first time.

What's next for Rest

One improvement that could be made to Rest in the future is increased interactiveness—introducing interactive elements such as guided visualizations and interactive music-making exercises to enhance user engagement. We would also like to add features such as meditation between songs.

Another potential future idea would be to create a mobile application. A mobile version of Rest would be able to provide users with a more accessible and convenient platform for emotion-driven music therapy.

Finally, collaborating with mental health professionals to integrate Rest into therapeutic practices would allow us to provide more comprehensive support to users.

Rest aims to revolutionize the music therapy experience by providing personalized, adaptive, and effective emotional support through the power of music and technology.

Built With

Share this project:

Updates