the signals and their derived score are provisional and subject to change.
validate manually before sharing.
a68a88d2da04cf3334eeeca136385114a65450ff2a369e38bd96a9523269a1416dc669c253751586Authored: 3 days ago (Fri, 11 Sep 2026 11:20:26 +0000)Match: Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>fc555f57cedddeae57223517f12b1bfa3e0a6a1aAuthored: 6 days ago (Tue, 8 Sep 2026 11:27:58 +0000)Match: Claude-Session: https://claude.ai/code/session_01DBkhHLqWtSYrPdsNE11PiP8e18e77437dfa55f8a425fc78bd2faafaa78c006Authored: 6 days ago (Tue, 8 Sep 2026 10:19:25 +0000)Match: Claude-Session: https://claude.ai/code/session_01DBkhHLqWtSYrPdsNE11PiPc63ec2ca6c843f543ddfe5411a609bf1828f0606Authored: 1 week ago (Sun, 6 Sep 2026 18:27:24 +0000)Match: Claude-Session: https://claude.ai/code/session_01JVbWJtoyQU4WgwFR4eAKgy3dd2092a8d2dedb3ff63fb6d73a5a8fcf6b9b8adAuthored: 1 week ago (Sun, 6 Sep 2026 18:27:24 +0000)Match: Claude-Session: https://claude.ai/code/session_01JVbWJtoyQU4WgwFR4eAKgy8b917b63316924b5d93abaae94e4c14da22f12d7Authored: 1 week ago (Sun, 6 Sep 2026 18:27:24 +0000)Match: Claude-Session: https://claude.ai/code/session_01JVbWJtoyQU4WgwFR4eAKgy1c877173f49e2ad33ea72f741be67d844e0fca5aAuthored: 1 week ago (Sun, 6 Sep 2026 18:27:24 +0000)Match: Claude-Session: https://claude.ai/code/session_01JVbWJtoyQU4WgwFR4eAKgyf97fcbccd7f355ffd8170ace696368e3008b4bc6Authored: 1 week ago (Sun, 6 Sep 2026 18:27:24 +0000)Match: Claude-Session: https://claude.ai/code/session_01JVbWJtoyQU4WgwFR4eAKgybf4ffffcc76cfb0faff995f1bb9dfab17ed1d5e6Authored: 1 week ago (Sun, 6 Sep 2026 18:27:24 +0000)Match: Claude-Session: https://claude.ai/code/session_016QqZBhX7PVNsRqLhkTt9y3e7a4597478b23505383dbc059eebb688034fec29Authored: 1 week ago (Sun, 6 Sep 2026 18:27:24 +0000)Match: Claude-Session: https://claude.ai/code/session_016QqZBhX7PVNsRqLhkTt9y36229215ed9719bdf192c7b97acb7b95b322e22c8Authored: 1 week ago (Sun, 6 Sep 2026 01:06:25 +0000)Match: Claude-Session: https://claude.ai/code/session_016QqZBhX7PVNsRqLhkTt9y364563c257b1636d658dd7e08af2496422da9e65eAuthored: 1 week ago (Sun, 6 Sep 2026 00:16:28 +0000)Match: Claude-Session: https://claude.ai/code/session_016QqZBhX7PVNsRqLhkTt9y3733dfa9d37383a233a31427fae7448e4af6f927fAuthored: 1 week ago (Wed, 2 Sep 2026 08:18:56 +0000)Match: Claude-Session: https://claude.ai/code/session_01DUgSPgBBqMYdy4vnKjK3bEf0c554e86d037b2df3af341556e05b7176ce3753Authored: 2 weeks ago (Tue, 25 Aug 2026 08:01:07 +0000)Match: Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>ec3dc8ba69fe50887a3db7348b03770113974cc9Authored: 2 weeks ago (Tue, 25 Aug 2026 08:01:07 +0000)Match: Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>e326f1b1cbcdf4716c92f4e0c78ad23a0c4a75ecAuthored: 2 weeks ago (Tue, 25 Aug 2026 08:01:07 +0000)Match: Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>781e2441ba386b0abf3674d23216eec1c090e953Authored: 3 weeks ago (Tue, 25 Aug 2026 05:59:12 +0000)Match: Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>02ea938b2ce19587c58327c1e90ccfaa90f87aaeAuthored: 3 weeks ago (Mon, 24 Aug 2026 18:36:25 +0000)Match: Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>41061c1754ad8274f294ddc1addf8630cb83b628Authored: 3 weeks ago (Mon, 24 Aug 2026 16:02:04 +0000)Match: Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>5d8332d11d0e3e39db9a9af724f280cd1c57e8abAuthored: 1 month ago (Fri, 7 Aug 2026 14:27:02 +0000)Match: Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>4ee9a2abbf180a7ea2996462b389448ef8223ab3Authored: 1 month ago (Fri, 7 Aug 2026 10:45:45 +0000)Match: Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>ef61df50f2f4b13e75b2c28d8d5420749e831606Authored: 1 month ago (Fri, 7 Aug 2026 06:28:16 +0000)Match: Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>64fd67cfa8fdd5fc34c09879555e1ea18f502550Authored: 1 month ago (Fri, 7 Aug 2026 06:25:01 +0000)Match: Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>ab1adcdd4f512befc2c824e3a8df3a738dc04ba3Authored: 1 month ago (Thu, 6 Aug 2026 10:02:25 +0000)Match: Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>49be4e0626c4c5463a36afc7bf1c0ed0272a7cb2Authored: 1 month ago (Thu, 6 Aug 2026 09:46:28 +0000)Match: Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>2c76da270bb9cebeedc6e02b72463e6da0d75e5fAuthored: 1 month ago (Thu, 6 Aug 2026 09:34:38 +0000)Match: Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>34d41b8e647c7508b6f2904b6a2e2bcc5ad63fb0Authored: 1 month ago (Thu, 6 Aug 2026 07:25:42 +0000)Match: Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>CLAUDE.mdTool: claude-code# CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
## What this is
openGym is a self-hosted gym & body-weight tracker PWA. Two containers (`api` + `web`) plus a
`./data` folder the user owns — no third-party account, no telemetry. Passkey (WebAuthn) login,
installable as a home-screen app, optional Capacitor shells for standalone Android/iOS builds.
License: AGPL-3.0-or-later.
## Project layout
```
frontend/ React 19 + Vite app (src/viewebsite/llms.txtTool: unspecified# openGym
> Free, open-source gym & body-weight tracker (AGPL-3.0). Runs as a standalone
> Android app (sideloaded APK) or self-hosted with Docker (passkey profiles,
> multi-device sync, PWA). No account required, no cloud, no telemetry.
## Docs
- [Complete reference](https://opengym.duarte-santos.ch/docs.html): every feature, self-hosting, every .env setting, AI Coach, imports (FitNotes/Strong/Hevy/Apple Health), backups, MCP server, troubleshooting
- [HTTP API](https://opengym.duarte-santos.ch/api.html).claude/File: .gitignoreTool: claude-code.agents/File: .gitignoreTool: unspecified