Tamagotchi Time is a full-stack web app that helps you build habits by turning completed Pomodoro-style sessions into rewards for a virtual pet companion. Normally for most of the time we use a simple timmer app to track time doing various activites so we decided to build this app to create a fun and interactive way to see progress in tracking one's time instead of a simple timer app.
- Backend: Flask + SQLAlchemy + Flask-Login on SQLite, with custom data structures(reward trees, level graphs) and Huffman-encoded images for efficent payloads
- Frontend: React with React Router and Axios, featuring a timer,dynamic reward choices,pet evolution based on streaks/levels, and a real-time leaderboard
- Rules
Stay focused for the full timer duration. You get a pet after 3 successful sessions. Cancel more than 3 times and your pet & rewards reset. Choose your treats after each session beyond streak #3.
⚙️ Level-Up Requirements
Start: complete 3 sessions of 10 mins and choose food.
Level 1: complete 3 sessions of 10 mins and choose playtime.
Level 2: complete 3 sessions of 25 mins and choose walk.
Level 3: complete 3 sessions of 25 mins and choose treats.
Level 4: complete 3 sessions of 50 mins and choose toy.
Level 5: complete 3 sessions of 50 mins and choose bath.
Level 6: complete 10 sessions of 10 mins and choose food.
Level 7: complete 10 sessions of 25 mins and choose walk.
Level 8: complete 15 sessions of 25 mins) and choose treats.
Level 9: complete 40 sessions of 50 mins and choose bath.
Level 10: complete 50 sessions of 50 mins and choose toy.
⏱️ Reward Thresholds
After 50 mins: choose toy or bath
After 25 mins: choose treats or walk
After 10 mins: choose food or playtime
⏭️ Skip Rules
If you have 0 cancels, you may skip from Level 3 to Level 5.
If you have 0 cancels, you may skip from Level 8 to Level 10.
- Clone the repository
- git clone https://github.com/University-of-Illinois-Chicago/fgp-team-23.git
- cd fgp-team-23
- Backend setup
- Move into the backend directory - cd backend
- Create a new virtual environment - python3 -m venv env
- Activate the virtual environment
- For Windows : .\env\Scripts\activate
- For Mac : source env/bin/activate
- You will now see a (venv) infront of your command line
- To install all dependencies and packages, run pip3 install -r requirements.txt
- Run the file
- python3 app.py
- Frontend setup
- cd frontend
- cd frontend
- npm install
- npm start
- Using the app
- Register a new account and pick your pet
- Start the timer (10,25,50) to log a session
- After 3 session, unlock your pet and begin choosing rewards
- Track your focus streak, total focus time, and current level on the Progress Page
- See the Top 3 on the Leaderboard Page
- Hit Cancel three time and your pet & rewards tree will reset-stay honest!
| About | Getting started | Demo | Project Roadmap | Documentation |
| Contributors | Acknowledgments | Feedback | Contact | License |
We welcome your feedback and contributions! To help us improve:
- Bug reports & feature requests: Please open an issue in GitHub and include steps to reproduce or a clear description of your idea.
Project Manager: Andrea Muñoz - amuno5@uic.edu / andreamunoz176@gmail.com
Project Manager: Andrea Muñoz - amuno5@uic.edu / andreamunoz176@gmail.com Blame: Backend/Frontend Implentation
Backend: Marcos Ambriz - mambr3@uic.edu
Frontend: Clarence Calarde - calarde3@uic.edu