Inspiration

As the world begins shifting back to in person work, many people may be struggling to readjust their daily habits after needing to quickly adjust to online work. One of the good habits we hope to carry with us as we make a another shift in how we work and study is using the pomodoro timer! Known to increase productivity, keep your mind fresh for longer, reduce stress and encourage better physical health due to stretch breaks, its no wonder the pomodoro timer has gathered so much popularity!

To make ourselves stand out from other pomodoro timers, we wanted to incorporate more features that will help people continue to succeed with in person work:

  • We took a cue from research in psychology to further strengthen the benefits of the pomodoro timer. Positive reinforcement is the best mechanism to motivate individuals, so we added the ability for users to send uplifting, positive encouragements to others, and receive similar messages from them!

  • A virtual companion, inspired by Clippy. If you need a rubber ducky to practice explaining your solution to or just something to look at while you think, our small animated fox is there for you :)

  • [In debug stage - coming soon] A task list to help you easily keep track of the things you need to do.

What it does

Our app allows you to start a pomodoro timer with the standard time lengths, and timers for both short and long breaks.

You can also send and receive messages from other app users!

How we built it

We built the app using React.js, with various frontend components created via Materials UI. It is hosted on Google Cloud Platform, using continuous integration and continuous deployment from the main GitHub branch via CircleCI.

Backend calls are handled by axios and messages are stored in mongoDB.

Challenges we ran into

Some challenges we had were in getting various tools to work. The three of us were all on different platforms. One of us was on Windows, another on MacOS, and our final member was using Ubuntu. For example, having the docker container hot-reload changes was something we wanted for rapid development. We spent a lot of time trying to get this to work. In the end, we were able to have the docker container hot-reload changes on Windows and MacOS, but it did not work on Ubuntu. It was also a challenge to get multiple docker containers working, as well as deploying onto GCP. Working with React was also a challenge as we found that many available tutorials were deprecated for some of the features we were trying to use.

Accomplishments that we're proud of

We're proud of creating a functional webapp within 24 hours. Everyone on our team has little to no webdev knowledge and it was amazing how we were able to learn React and have a working webapp in such a short amount of time.

What we learned

Over the past 24 hours we have learned a lot while we participated in cmd-f. We learned about various new technologies hosted by the different sponsors, such as Salesforce and Covalent. However due to the time limit, we were unable to integrate these technologies into our project. During our project, we learned how to use the prototyping tool Figma to quickly iterate various ideas of our project while also creating quick mockups. We also found out that React has changed over the past few years and our knowledge has become very outdated. We also ran into various problems with npm, but we were able to spin up docker containers instead, which magically resolved those issues.

What's next for Comfy Pomodoro

We plan to finish adding the last few features to our project that are incomplete to the time constraint. We intend to finish a task list a user can use as a to do list manager. There are also plans to add in a friends feature as well to allow users to "work" together and also take breaks together. This would enhance our current "message in a bottle" feature that allows users to send motivational messages to others.

We hope to finish Comfy Pomodoro and show it the world!

To View Webapp:

http://35.202.122.87:3000

(Note: Please run the project on localhost:3000 instead, only the frontend is working at the moment on GCP)

Share this project:

Updates