Habit Tracker
A full-stack app for creating and tracking recurring habits, with per-user accounts.
Technology stack
Overview
I built Habit Tracker to practise building a full-stack application end to end: a React frontend, an Express API and a MongoDB database, with each user's data kept separate.
Implementation
Users register and log in, then create, edit and delete habits, manage how often they recur, group them into categories and track them. Habits belong to the logged-in user, so nobody sees anyone else's data.
Login uses JWTs stored in HTTP-only cookies, which keeps the token out of reach of client-side JavaScript.
Key features
- User registration and login
- Create, edit and delete habits
- Track habits
- Frequency management
- Categories
- User-specific data
Technical outcome
The project gave me practical experience with authentication, user-specific data, CRUD operations and a MongoDB-backed API, plus managing state on the frontend with React Query and Zustand.