A minimalist fitness streak tracker focused on consistency, forgiveness, and habit formation.
Gym Streak is designed for people who want motivation without pressure โ track your gym days, maintain streaks, and recover gracefully when life gets in the way.
-
๐ฅ Streak Tracking
See how many consecutive days youโve stayed consistent. -
โ๏ธ Streak Freezes
Earn freezes by staying consistent. If you miss a day, a freeze is used automatically to protect your streak. -
๐ค Sunday Rest Days
Sundays never break your streak โ but you can still log them if you go. -
๐๏ธ Weekly Workouts
Assign and edit workouts by day of the week. -
๐ Dark / Light Mode
Clean, distraction-free UI with theme support. -
๐พ Local Persistence
All data is stored locally usinglocalStorage. No accounts, no servers.
-
No guilt mechanics
Missed days arenโt punished harshly. -
Forgiveness over perfection
Streak freezes exist for real life. -
Minimal UI, strong feedback
Subtle animations and micro-interactions instead of noisy gamification. -
Offline-first
The app works entirely in the browser.
- Frontend: React + Vite
- State Management: React hooks
- Persistence: Browser
localStorage(Soon backend database) - Deployment: Vercel
๐ Deployed on Vercel
https://nudge-virid.vercel.app
- Log a day โ streak increases
- Miss a weekday:
- If you have a freeze โ freeze is used
- If you donโt โ streak breaks
- Rest days never break streaks
- Earn 1 freeze after 6 consecutive logged days
- Max freezes: 3
git clone https://github.com/your-username/gym-streak.git
cd gym-streak
npm install
npm run dev