Training Tracker
In daily use · v2.11An app for logging strength and running sessions, set by set, and tracking your progress.

The need
To be honest, I’ve always found gym log apps clunky, or not straight to the point. So I logged my sets in the Notes app on my phone.
Then I thought: “Let’s give it a try.” That’s how I started building Training Tracker, an app designed to support athletes during their strength workouts.
Since version 2.10, an MCP server lets an AI agent analyze exercises and create programs right in the app.
What the app does
Sessions
Start an empty session or one from a program, log each set as you train, or record a past session after the fact.
Programs and calendar
Build programs with per-exercise targets, plan them on a day and see what’s next; logging the session automatically completes the planned day.
Records and statistics
Weight and pace records detected at the end of each session, streaks, totals and per-exercise progress.
Exercise catalogue
1,324 exercises from an open dataset, with animated visuals and French names for common movements.
On your home screen
A web app you add to your phone’s home screen that opens full screen, just like an app, in French and English.
AI agents via MCP
An AI agent such as Claude Code connects to the account through OAuth: explicit consent, write access only when allowed. It can review sessions, analyze progress or draft a program.
Under the hood
- Layered architecture: Domain, Application, Infrastructure, API
- .NET 10 Minimal APIs
- EF Core 10 and SQLite, ready to move to PostgreSQL
- ASP.NET Core Identity, JWT and rotating refresh tokens
- Zoneless Angular 22, signals and standalone components
- Remote MCP server secured with OAuth 2.1
- xUnit and Vitest tests, GitHub Actions CI
- Architecture decisions recorded as ADRs
- Angular 22 (PWA, signals)
- .NET 10 (Minimal APIs, layered architecture)
- EF Core 10
- SQLite
- ASP.NET Core Identity + JWT
- MCP server
- Docker
- nginx
- xUnit
- Vitest