๐ช FitnessTracker โ Your Complete Fitness Companion
A privacy-first Progressive Web App for tracking workouts, runs, body metrics, and daily wellness โ all stored on your own server. No accounts, no cloud, no third-party data sharing.
Install it on any device. It works offline, syncs when you're back, and looks great in light or dark mode.
Who it's for
FitnessTracker is for anyone who wants to take their fitness seriously without handing their data to a third-party service. No subscription fees, no ads, no accounts โ just you, your browser, and a lightweight server you control.
- Home gym users โ track bodyweight, dumbbell, and flexibility workouts with 76 pre-loaded exercises
- Runners & walkers โ log GPS-tracked runs/walks with pace, duration, and distance stats
- Weight watchers โ chart your weight journey with goal tracking and BMI calculation
- Wellness-minded people โ daily mood, energy, sleep, and stress check-ins with 8-week trends
- Privacy-conscious fitness enthusiasts โ everything stays on your server; export/backup anytime
What it can do
๐๏ธ Workouts
76 exercises across cardio, calisthenics, dumbbell, and flexibility. Circuit templates with configurable rounds, per-exercise durations, warmup/cooldown phases, and a full-screen workout runner with audio cues and text-to-speech.
๐ Run & Walk Tracking
Log GPS-tracked runs and walks with distance, duration, pace, and notes. Stats dashboard shows total distance, best pace, and average pace over time.
๐ History & Stats
Session history with date range filters, weekday bar chart, and a GitHub-style contribution heatmap. JSON import/export of all your sessions. Streak tracking with total sessions, hours, and calories burned.
โ๏ธ Health & Wellness
Weight tracking with goal progress bars and BMI calculator. Body measurements (waist, hips, chest, arms, thighs, neck) with before/after deltas. Daily wellness check-ins โ mood, energy, stress, sleep hours โ with 8-week trend charts. Health score (0โ100) combining BMI, workout consistency, streak, and measurements.
๐ Apple Health Import
Import your Apple Health export ZIP โ workouts and health metrics are automatically parsed and added to your history. No manual data entry needed if you're coming from an Apple Watch.
๐ฑ PWA & Offline
Installable on iOS, Android, and desktop. Works offline with service worker precaching. Push notification support via Web Push API. Light/dark theme, audio mute, and selectable date format (D/M or M/D).
Screenshots
Workout runner with exercise image, progress ring, and timer:
![]()
Stats dashboard with heatmap and charts:
![]()
Health dashboard with weight graph and wellness trends:
Tech Stack
CI/CD
Every push to main triggers a full pipeline: lint โ unit tests (backend + frontend) โ E2E (Playwright) โ Docker multi-arch build & push to GHCR โ auto-deploy to the VPS via SSH.
Why I built it
I wanted a fitness tracker that didn't require an account, didn't sell my data, and worked on every device I own. Most fitness apps lock your data behind a subscription or push you into a specific ecosystem. FitnessTracker is the opposite: self-hosted, privacy-first, and fully open source. Your data lives in a SQLite file you can back up, export, or inspect anytime.
Source Code
The project is open source and available on GitHub