Inspiration

We have all found ourselves doing anything except the assignment that needs to be done, especially when it feels so freeing to do anything but said task. As we were brainstorming ideas, we took a "break" to discuss our classes and all the work we needed to get done but were putting off until after the Hackathon. We were procrastinating, and we needed a solution. So, we decided to create a solution ourselves: a way to emphasize what needs done, with the ability to feel as though one is procrastinating without truly wasting time.

What it does

Procatination has multiple factors. The main page is the to-do list, where users have the ability to add tasks, select and deselect tasks to be moved to a different page -- where users can view all their completed tasks for a boost of dopamine after seeing how much they have completed -- and finally a "procrastinate" button. This feature is our main differentiator from simply being a list. Clicking "procrastinate" will bring the user to a page titled "Play with the cat." An image of a cat is at the center, along with a "pet" button -- that will cause a hand to pet the cat and hearts to appear, encouraging the user -- and a button in the shape of a food bowl -- which will "feed" the cat and tell the user how happy the cat is. However, after completing five of these interactions combined, the user will get a message saying the cat is bored, and the cat disappears. The user is encouraged to return to work to regain the ability to play with the cat again, since the cat will also be bored of the user has yet to complete at least 50% of their tasks. The cat page also has a settings option, through which users can set a bedtime and a wake-up time. If the user tries to play with the cat during the time they set to be asleep, they will receive a message that the cat is asleep, as well as a visual cue of the sleeping cat. All buttons are disabled during this time, including the settings, so users will be unable to circumvent the sleep times they set.

How we built it

After brainstorming an idea and general framework of what we wanted our project to do, we planned out how everything would be done. We created a prototype of what screens we need and the algorithms behind each one. Once that was complete, we split up tasks, working on individual tasks to maximize efficiency. We used Visual Studio Code and wrote in html, CSS, and JavaScript to create our project. When our tasks needed to be integrated together, we shared everything on a repository and debugged as needed.

Challenges we ran into

We faced difficulty in the functionality of the "completed tasks" menu -- we struggled to get the tasks to be deselected and visual before being moved to the "completed tasks" page. The process frustrated us to a point where we were ready to restart the entirety of the to-do portion of our project. We took a break and, luckily, were able to work out the logic before such drastic measures had to be taken.

Accomplishments that we're proud of

We are incredibly proud of everything we have done this weekend: we created an entirely functional project in less than two days! The aforementioned "completed tasks" page is one of our greatest accomplishments, and we are proud of our perseverance and dedication to bringing Procatination to this point.

What we learned

We learned a lot about all the languages we used, having limited experience with them prior to this experience. We learned how to utilize available tools more thoroughly, including one another, for assistance. We also learned of our own capabilities, both technically and in terms of our commitment.

What's next for Procatination

Features we would like to integrate into Procatination in the future include the ability to assign due dates to certain tasks. Similarly, we plan to implement a calendar feature that displays tasks, due dates, and even events to act as a visual aid for users. We also hope to grant users the ability to flag and prioritize tasks.

Share this project:

Updates