PREOCCUPY

created by Andreya Augst and Rishi Garg

"preoccupy: verb (T); to be the main thought in someone's mind, causing other things to be forgotten" (Definition of preoccupy from the Cambridge Advanced Learner's Dictionary & Thesaurus © Cambridge University Press).

Our web app responds to the increased depression, loneliness, and boredom reported by youth and young adults due to the onset of COVID-19. PREOCCUPY creates a space to cure boredom and improve your mood by suggesting activities to try based on your mood. Users with high mood levels will be suggested more "fun" activities, while users with lower mood levels will be suggested more "self-care" activities to help improve their mood and overall well being. The web app includes a profile page to track your mood and accomplishments over time, and a chat feature to talk anonymously with other users.

We used Figma, and HTML/CSS through Bootstrap Studio to design the front-end. We used Python, Flask, Visual Studio 2019, and Firebase database for the back-end. We also used Github to manage our project.

One of the most difficult parts of creating any web application is managing the database. For this project, we decided to use Firebase because it provides a NoSQL database. We track the user's mood every day, and storing that on a SQL database can be a tricky business. Firebase provides a JSON based database which worked perfectly with our project as our query responses were way faster and less complex.

The brain of our website is made using Flask. We used this as our framework because of its simplicity and high functionality. One of the main features of our website is "Global Chat" that allows users to talk to each other and provide positive feedback. The biggest hurdle we faced was creating web sockets because none of us had prior knowledge on this. After millions of attempts, we were finally able to create a functional chat room (yay!).

Overall, we had so much fun creating this project! Initially, we weren't sure we could finish everything in time because we lost the majority of our original team members, but we figured it out and now here we are with a fully functional website !!

Share this project:

Updates