openGym started as a tiny app I built for myself. I wanted to log my workouts and my weight without a subscription app claiming my training data. Then friends wanted in, and it grew a mind of its own.
Duarte Santos · read the whole story
openGym
A free, open-source gym and body-weight tracker. No subscription, no account required, and no telemetry — not now, not later.
Features
Every feature here exists because something was awkward between two sets. Nothing is here to sell you anything.
It already knows what day it is. Today's session opens with your weights from last time filled in, rest timed between sets, and a PR called out the moment you beat one.
Linear, Greyskull LP, double progression or added time, set per routine and overridable per exercise. The targets are right when the session opens, and each one tells you where it came from.
Optional, off by default, and it runs on whatever AI you bring — an Anthropic, OpenAI or Gemini key, any OpenAI-compatible endpoint such as Ollama on your own network, or a Claude Code / Codex runtime in the container. Nothing it proposes is applied on its own; every change carries its reason and can be undone.
The same body diagram, three questions.
Animated demos, searchable, filtered by body part and by the equipment you actually own. Add your own and they behave like the rest.
An interactive chart with your target drawn across it. Every change is coloured by whether it moved you toward it.
Every session as a square in a heatmap, shaded by how long you trained. Streaks counted, quiet weeks impossible to miss.
Nineteen more things it does.
Screenshots





Swipe through them.
Live demo
The real app with a seeded example history, running in your browser. Start a workout, break something, change anything you like.
Demo data lives only in this browser and can be reset from its own Settings. Open it full-screen if you would rather have the room.
The demo wants the whole screen to itself. Its data lives only in this browser and can be reset from its own Settings.
Open the live demoGet openGym
Same codebase. The choice is where your data lives: entirely on your phone, or on a server you control.
For anyone. Install it and you are done.
For homelabbers, and the people they train with.
docker compose upopenGym started as a tiny app I built for myself. I wanted to log my workouts and my weight without a subscription app claiming my training data. Then friends wanted in, and it grew a mind of its own.
Duarte Santos · read the whole story
Open source
The code is public, the license keeps every fork open, and there is no commercial edition waiting behind a curtain.
Elsewhere