
Lyftr Review
A Go + React self-hosted fitness tracker with workout logging, programs, gym mode, nutrition tracking, and an 800+ exercise library.
Each review covers deployability, value versus commercial alternatives, and privacy model. Tools that can run locally were started and exercised; mobile or backend-dependent tools were assessed from published builds, source code, and deploy guides. Ratings reflect what we were able to verify.
Lyftr — Self-Hosted Workout and Nutrition Tracker
A Go + React self-hosted fitness tracker with workout logging, programs, gym mode, nutrition tracking, and an 800+ exercise library. Last updated: 2026-06-21.
One-sentence verdict: The most polished self-hosted fitness tracker in this batch — a credible open-source alternative to Hevy or Strong for users comfortable with Docker.
What the System Is
Lyftr is a self-hosted workout and nutrition tracker. It is built as:
- Go (Gin) backend with JWT authentication and refresh tokens.
- React + TypeScript + Tailwind CSS + Vite frontend.
- SQLite database stored in a single file.
- 800+ exercise library auto-synced from free-exercise-db on first run.
- Docker Compose deployment with pre-built images.
Features include workout logging, reusable program templates, active workout mode, gym mode, exercise detail with personal records and progression charts, a dashboard with volume trends and consistency heatmap, weight tracking, and nutrition tracking with calories, macros, food search, and barcode scan.
| Key data | |
|---|---|
| Category | Fitness & Nutrition |
| Language | Go + React |
| License | MIT |
| Self-hosted | Yes |
| AI | None |
| Database | SQLite |
| Deployment | Docker Compose |
How to Install and Deploy
The deploy guide uses Docker Compose with pre-built images.
cd /data2/docker/going-global/repos/lyftr
cp .env.example .env
# Set a strong JWT secret and avoid port conflicts
sed -i 's/^JWT_SECRET=.*/JWT_SECRET=lyftr-super-secret-32-char-long-key-123456/' .env
sed -i 's/^PORT=.*/PORT=8082/' .env
sed -i 's|^CORS_ORIGIN=.*|CORS_ORIGIN=http://localhost:8082|' .env
docker compose up -d
The backend seeds the exercise library asynchronously in the background. Open http://localhost:8082 and create an account.
How to Test
The documented test flow is:
- Open
http://localhost:8082. - Click Create account and register, or use the demo credentials
demo@lyftr.local/LyftrPass123!if seeded. - Explore the Home dashboard: Volume Trend, Consistency, Nutrition, Weight.
- Start a workout, browse the 800+ exercise library, and log sets.
- Check the Programs and Gym Mode views.
- Verify that data persists after logging out and back in.
Privacy & Compliance
Lyftr is self-hosted; all data stays in the local SQLite file (./data/lyftr.db). It is not HIPAA compliant and is intended for personal fitness tracking, not clinical use. Backup is a single-file copy.
Lyftr vs Commercial Fitness Trackers
| Dimension | Lyftr | Commercial Tracker (e.g., Hevy, Strong, Freeletics) |
|---|---|---|
| Cost | Free / self-hosted | Subscription |
| Data location | Your server | Vendor cloud |
| Exercise library | 800+ auto-synced | Large, often larger |
| Mobile apps | Browser/PWA (native iOS planned) | Native iOS / Android |
| Social features | Not listed | Often included |
| Setup effort | Medium: Docker, JWT secret, port config | Low: app store install |
| Open source | Yes | No |
Who Should Use It
- Self-hosters who want a modern workout and nutrition tracker.
- Users looking to own their fitness data instead of storing it in a commercial cloud.
- Raspberry Pi or VPS owners who want a lightweight fitness app.
Who Shouldn't Use It
- People who need polished native mobile apps today.
- Users who rely on wearable auto-sync or Apple Health / Google Fit integration (planned but not available).
- Anyone needing clinical-grade nutrition or exercise guidance.
FAQ
Does Lyftr require a database server?
No. It uses a single SQLite file stored in ./data/lyftr.db. No PostgreSQL or MySQL setup is required.
How does the exercise library get populated?
On first startup Lyftr automatically fetches 800+ exercises from free-exercise-db in the background. Existing workout data is not overwritten on re-sync.
Can I import data from Hevy or Strong?
Strong / Hevy CSV import is on the roadmap but not yet available.
Verdict
Lyftr is the most complete self-hosted fitness tracker in this batch. It combines a clean modern UI, a large exercise library, workout logging, and nutrition tracking in a simple Docker-based package. For users willing to self-host, it is a genuine alternative to subscription fitness apps.
Ratings: Deployability 5/5 · Value vs Commercial 4/5 · Privacy Compliance 5/5
