Project 01 / Gym tracker / In progress

A training log that follows you.

I’m building a private gym tracker and assistant to log my training, keep the context and pick up across devices.

The app requires account approval. Source is available under AGPL-3.0-or-later.

Why I’m making it

  • I want one place for my training, exercise context and progress across devices.
  • I’m building it around how I train, then refining it through daily use.

What I’m building

  • Workout logging with weight, reps, warmups and explicit reps in reserve for strength sets.
  • Server-synced drafts, device pairing and exercise-specific progress charts.
  • Private photo, video and audio attachments.
  • Chat-based workout entry with clarification and review before saving.
  • An assistant with visual input, diagrams, charts and interactive responses.

How I’m building it

  • Next.js, React and TypeScript on Vercel; a Node.js API on EC2.
  • SQLite for training records and private files stored on the server.
  • A local Codex/Claude worker for the assistant and workout parsing.

Decisions I’ve made

  • Keep drafts separate from saved workouts and surface conflicting edits.
  • Check account access for private chats and attachments.
  • Separate developer and user workspaces, restrict assistant file access and require approval before publishing.
  • Isolate rich responses and serve their libraries locally.
  • Compare matching exercise variants and exclude warmups from progress estimates.

What I’m improving next

  • More reliable offline drafts; closing a tab can still lose unsynced edits.
  • Stronger assistant isolation and tighter control of network access.
  • Video analysis with manual calibration; uploads and playback already work.