Inspiration

During times like this Covid-19 pandemic, many people's moods can easily fluctuate from manic highs to plunging lows, leaving somebody feeling tired and sad. We wanted to create an application to help deal with these mood changes, and we turned to music. Music has been known to influence our emotions, making it a viable option for therapy to help with anxiety and depression. It can generate dopamine to bring you out of low moods or create a calming mood to reduce stress levels.

While exploring already existing music platforms such as Spotify, we wanted to create a platform specifically for mood-setting to avoid all the other clutter of the larger apps. While we may not be able to solve all mental health problems, we aimed to create an app that could at least provide people with some stability and support for whatever situation they find themselves in.

What it does

Since we're all avid music listeners, we chose to make a website that allows you to listen to music, but with a special twist. Our website has different categories of music, allowing the user to quickly and easily find songs that match the mood they want to feel. Our library of songs is generated by user recommendations, allowing people the share their favorite songs for anything from studying to having a solo dance party and choose the corresponding mood this song would fall into.

How we built it

For our back-end aspect, we used the Shazam API through RapidAPI. We wrote our Get and Pull requests in VSCode and used Postman to test our endpoints. We had to use Axios and JSON to send and receive data between the API and our various endpoints. To store the data, we used the Google Cloud Firestore database. With the front-end, we used Figma to create a general layout and prototype of our UI-UX design and then coded it using React.js. To share the code, we had one GitHub repository with separate front-end and back-end folders.

Challenges we ran into

Many of our members are first-time hackers who have never attended a hackathon before or have never worked on a web development project. Therefore, almost everything was a challenge from copying code off of Github to learning how to use HTTP requests for the first time. Specifically, one of the most challenging things for our beginners was getting error messages without knowing what they meant, especially with languages and databases we had never used before.

Accomplishments that we're proud of

Since most of our team members are first time hackers, we are proud of being able to pull through TechTogether New York where all team members were able to attend workshops, and activities, all while actively learning and hacking in three days. Specifically, our beginners are proud of figuring out how Firebase works, how to test out endpoints in Postman, and especially learning how to use the Command line.

What we Learned

The back-end developers learned a lot about how APIs work. Because most of us have never worked with APIs before, we learned the process of accessing information from a database and viewing it through Postman. Additionally, we figured out how to create our own databases. The front-end developers learned how to use react.js to create various components that could connect with our back-end aspects. Since this was the first time creating a large project for most of us, we also became more familiar with how Git and GitHub work. Finally, we learned how to work together as a team, making sure to take advantage of everybody's strengths and helping those who needed it.

What's next for "Mood Setter"

The main next steps for us are connecting the front-end and the back-end together as well as styling. Additionally, since we only have a limited number of pre-set moods, we're hoping to expand this list to cover every user's needs. In the future, users may be able to create their own accounts to have personalized moods rather than stick to the pre-set ones. We're hoping to allow users to design their own mood backgrounds and submit them to our site, allowing other users to view their art while listening to music. Additionally, "Mood Setter" may eventually have an option to view the number of times a song has been recommended.

Built With

Share this project:

Updates