Our home page! The logo is animated.
Login page with phone number that will message you suing Twilio API.
First cat you begin with!
A very happy cat!
If you don't do your tasks, then your cat will turn into this rock :(.
It is hard for people to remember their long list of important tasks. On a daily basis, we have to juggle our activities and still remember what is due soon in our everyday lives. We found a need to use technology to motivate people to complete their most important tasks by finding something to take care of: their very own pet!
What it does
PetQuest is a fun and interactive way to be reminded of your daily tasks while also having an incentive to complete items on your to-do list. The user can create a pet profile by connecting with their mobile phone number, and jot down their to-do items on the PetQuest web application. Once registered, a user will then receive daily text messages that asks if the user completed each to-do item. Pets have multiple lives, which increase or decrease depending on whether a user completes their tasks. If the user doesn't take adequate care of their pet, the pet will turn into a rock!
How we built it
We used the Twilio API to send consistent text messages. To align with the text messaging capability, we created a web application in ReactJS that stored the user's pet's information with Google Firebase Database. We connected the frontend (React) to the backend (Python) with a Flask server to store and present information.
Challenges we ran into
We faced a major hurdle in deciding which language/framework to decide on for our backend, and spent the first couple hours working on learning Ruby on Rails. We later switched back to a more-familiar territory (Flask and Python!) but unfortunately faced severe problems with authentication that derailed the progress of the project.
Accomplishments that we're proud of
We were able to have a fully-functional backend!
What we learned
Being able to delegate roles and work concurrently is important.
What's next for PETQUEST
Continue to improve promised features and better understand the technologies used within the app.