A gamified productivity and wellness app — and my learning sandbox since early 2024.
ProgressPal started as my escape from tutorial hell. Instead of following along with someone else's project, I wanted to build something real. Something I'd actually use. Over the past year+ it's gone through several complete overhauls as I leveled up: first building things by hand to understand how they worked, then discovering libraries, then diving into clean code principles, TDD, and proper architecture planning. Most recently I've been doing the actual design work — drawing custom assets in Procreate/Illustrator, researching the core MVP, writing user stories, and planning the UX properly before touching code.
⚠️ Status: On pause. The productivity app space got crowded fast, and AI shifted what these tools even need to be. I'm using this repo as a record of where I got to and what I learned along the way. Active development is on hold while I figure out what, if anything, makes sense to build next in this space.
- Tasks
- Pomodoro timer
- Basic SMART goals
- Daily habit tracking
- Journal prompts + free write
- Mood check-in
- One pet companion
- Coins + streaks
- Basic pet customization (color, accessories)
- Simple stats dashboard
| Layer | Tech |
|---|---|
| Framework | React + Vite + TypeScript |
| Styling | TailwindCSS + shadcn/ui |
| Routing | React Router |
| State | Zustand (modular feature stores) |
| Data fetching | TanStack React Query |
| Backend | Supabase |
| Forms | react-hook-form + zod |
| Testing | Vitest + React Testing Library |
This project was deliberately used to practice:
- Getting out of tutorial hell and building something from scratch
- Writing modular, testable React code
- TDD and debugging habits
- Clean architecture and separation of concerns
- Async data flow with React Query + Supabase
- UI/UX design — from research and user stories down to drawing every asset by hand
- Animation and component design
I started this in early 2024 when I was learning to program. By the time I had a solid architecture and design direction, the landscape had shifted — there are a lot of productivity apps, and AI is eating a lot of what made building one interesting as a problem.
Rather than archive it, I'm keeping it up as a snapshot. It represents a real chunk of learning, and I'm proud of how far it got.