Training Tracker
A mobile-first training app that logs every session and syncs across devices. Built as a PWA, backed by a self-hosted database on my own VPS. Phone at the gym, laptop at home -- same data everywhere.
Vanilla JS / PWA / PocketBase / VPS
Live on GitHub Pages. Install to home screen on Android or iOS for a native app feel.
What it tracks
- StrongLifts 5x5 -- auto-progression, rest timer, workout A/B alternation
- Rowing -- distance, time, split per 500m
- Kettlebell -- 15 exercises, multi-set logging
- Barbell and dumbbell accessory work
- Body weight and measurements (waist, hips, thighs, upper arms) with trend charts
How it's built
No framework, no build step. Vanilla JS ES modules, a hash-based router, and Chart.js for progress charts. The frontend is a PWA hosted on GitHub Pages -- installable directly from the browser.
Data is stored in PocketBase, an open-source backend running as a Docker container on a Hostinger VPS. All reads and writes go through the PocketBase REST API. The same domain hosts n8n and future tools -- Traefik handles routing and SSL automatically.
What's next
An MCP server wrapper on top of PocketBase so Claude can query training history directly. The use case: ask for a progress summary, spot patterns, get coaching without leaving the conversation.