Inspiration
Procrastination is a problem many people face, especially when tasks begin to pile up. It's easy for a simple to-do list to become an overwhelming mountain of tasks that causes panic. At this point it feels easier to keep procrastinating, and the cycle continues. Then when we try to get everything under control, we spend hours paralyzed by the simple task of figuring out where to start, only to realize we never completed anything. We end up sacrificing self-care needs such as taking breaks and eating just to try to stay afloat. This pattern is faced by most people, whether in high school, college, or beyond. Our team wanted to address this issue by creating a solution that cuts down the pressure of choosing a task and helps users balance productivity with mental health. Productivity should not come at the expense of our own self-care and mental health. Instead, we need to balance them, and our website helps with exactly that.
What it does
Our website is a board-game themed, gamified to-do list. The game board presents a digital board game in which two players compete against each other to be the first to reach a set number of points, either 50, 100, or 150 points based on the players' selection. Each square on the digital board contains a self-care task. Before starting, the players each enter the tasks they need to finish, the due date, and intensity. Based on this, points are calculated for each task. After starting, a random task is selected for each player. After a player completes their task, they mark it as completed, receive points, and are able to roll the dice. The player's icon is moved to the corresponding square on the board, and the player is to complete the self-care task (take a 15-minute walk). Upon completion, the player is awarded points, and the next task is automatically selected. Unlike other "game-like" productivity apps, our website uses body doubling: because the players are completing tasks alongside each other there is a sense of accountability and friendly competition to complete tasks and self-care activities. In addition, the game chooses the tasks for the players, eliminating the initial time needed to choose a task. Because of the competition and the point incentives, players are motivated to complete their tasks as well as self-care.
How we built it
We first planned the design and logistics of the game, specifically designing the game board and solidifying the rules. Then, we planned the architecture of the program which would use a variety of technologies. Replit was our main coding platform. We used Python Flask as the backend and HTML/CSS as the frontend. The Flask handles the requests and provides the webpages to be presented to the user. The HTML pages is the UI where users interact with the website. We also used a SQLite database to store the players' tasks so that they would persist between sessions. For the overall coding, we used Claude AI for implementation, syntax, and troubleshooting.
Challenges we ran into
While developing this website, we encountered a few challenges. We faced challenges at the beginning with getting started with our project, specifically deciding which technologies to use and how to set them up. After figuring this out, we gained momentum. It was also difficult to manage all our planned features for the program, which we overcame by prioritizing the most important features.
What we learned
On the technical side, we learned how to integrate our development environment with GitHub. Despite it being our first time using GitHub, we were able to connect Replit to our repository and used git commands to successfully commit and push changes to the remote repository. In addition, we learned how to work with Claude AI to create a product, specifically how to prompt it and describe our vision. As this was our first hackathon, there was a lot for us to learn. We gained experience designing the UI and planning. We also learned to prioritize features under a deadline by deciding which were necessary to the functionality and which would be added on after the initial program was finished.
What's next for Quest and Rest
We want to make a website where you can send an invite link to your friends and possibly turn it into a mobile app that connects to your contacts. This way, players can compete remotely rather than needing to be physically close. There would also be a feature for players to compete with a random opponent. We also want to add features specific to creating tasks. First, we want to add the ability to choose a more specific due date, as well as a priority level. We will use this to determine the probability that the task is selected (closer due date or higher priority = higher probability). In addition, we will implement task categories so players can keep track of which area of their life the tasks apply to. We also want to add bonus points if a player finishes a task a few days early. Conversely, we will implement penalties if tasks are not finished. For self-care activities, we want users to be able to set preferences for which self-care activities are presented. For example, if it's raining, they can exclude outdoor activities. We would also add the option for a limited self-care swap in case it is not possible to complete the selected task. We also want to add features to the overall game. First, data such as point values and board positions, should persist between sessions so that progress is not lost if the game closes or refreshes. An important feature we want to add is the ability for week-long competitions. This would help players complete their tasks over the week rather than one game session. Further features would be determined through extensive beta testing and obtaining feedback from our target users.
Log in or sign up for Devpost to join the conversation.