the signals and their derived score are provisional and subject to change.
validate manually before sharing.
464355ef43d4c8f8a4e0bb6db9c2af7f240593b54fc1c86ff8b53 weeks agoCo-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>492d5a15bf2f3 weeks agoCo-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>0ff2c1a3dfac3 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>094749ae0a253 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>74a88a1e71ad3 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>19a28ff181fb3 weeks agoCo-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>5447e5a36a023 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>35a9fb825f9a3 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>ffcaf67cac8d3 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>fd18a951eb9b3 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>1180446764373 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>ce69b8381eea3 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>3eefe4ee23453 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>2aee8cfbae623 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>8671d8e35b9f3 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>bed92bc321d23 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>c2a52076c71a3 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>ba5b7f477d8f3 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>5859d5e1c1ff3 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>be64a515b41b3 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>00b6b2d4d3bf3 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>f9d12fbf482f3 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>a0682f7589383 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>4e555adef0f33 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>5f34601a043b3 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>a2f47557291f3 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>507cb36cdad63 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>2fcb710602274 weeks agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>5d04c48e4ca91 month agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>61602f863ef51 month agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>0b3c9dbb62321 month agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>bc813a61992b1 month agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>5a6a63ac29fa1 month agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>a907ba42f0061 month agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>d962a2d582981 month agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>96d23617f6c91 month agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>508f1fb8014c1 month agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>ca4dddd326391 month agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>df2775b97d271 month agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>1fc64a6029141 month agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>f49dc38a06391 month agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>a7935eb62fe91 month agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>3a0e858d6ba31 month agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>9cf3794fd9c51 month agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>395a9555923a1 month ago🤖 Generated with [Claude Code](https://claude.com/claude-code)f08ec03da2e71 month ago🤖 Generated with [Claude Code](https://claude.com/claude-code)9664203fc2ac1 month ago🤖 Generated with [Claude Code](https://claude.com/claude-code)b9c7d1f78dba1 month ago🤖 Generated with [Claude Code](https://claude.com/claude-code)2cb782e7fcb01 month ago🤖 Generated with [Claude Code](https://claude.com/claude-code)520aff286a071 month agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>7bf38983584b1 month ago🤖 Generated with [Claude Code](https://claude.com/claude-code)518222c56f001 month agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>f92531f8fd3c1 month agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>c133605c5e921 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>0dd43aaeaa3f1 month agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>9a8ca16b4e311 month agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>d1a2f8906c671 month agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>829a98435e511 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>8a623c7fd0001 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>76c3eaf6602a1 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>9df47fdfb25d1 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>ed79c99ce3741 month agoCo-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>4bf8ca2c2b531 month agoCo-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>3c343b9d33ac1 month agoCo-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>03cfa4a5c22b1 month agoCo-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>8b2376c7b1b61 month ago🤖 Generated with [Claude Code](https://claude.com/claude-code)ae6f2a00f7391 month ago🤖 Generated with [Claude Code](https://claude.com/claude-code)a1c0636995fa1 month ago🤖 Generated with [Claude Code](https://claude.com/claude-code)98ed684cca671 month agoCo-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>4722c771daf51 month agoCo-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>6c65810d61821 month agoCo-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>5da80bebe85d1 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>d28d9dd3bf701 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>f438c4c578f01 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>af992ead27f41 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>7ca9349eb0ec1 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>1e901f7ab8211 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>300dcd68c49f1 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>1d8b04104cd51 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>003a72dfb45f1 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>b429a240b4631 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>07dece7920021 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>f67a00fc61bb1 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>565ea91c51f11 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>2e308bda21831 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>e01d482d52511 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>39daa2c8a9dd1 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>16e7474154381 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>c5052af644d21 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>8e6d8fd37c231 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>d92b02d74d971 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>57c5433473401 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>97078419c4f61 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>71e16038b10c1 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>9edce222eeec1 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>5fb7f53959fa1 month agoCo-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>7abada3bfcda1 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>e77be0ac3f351 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>46988c3bfcc41 month agoCo-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>fc555f57cedd1 month agoClaude-Session: https://claude.ai/code/session_01DBkhHLqWtSYrPdsNE11PiP8e18e77437df1 month agoClaude-Session: https://claude.ai/code/session_01DBkhHLqWtSYrPdsNE11PiPc63ec2ca6c841 month agoClaude-Session: https://claude.ai/code/session_01JVbWJtoyQU4WgwFR4eAKgy3dd2092a8d2d1 month agoClaude-Session: https://claude.ai/code/session_01JVbWJtoyQU4WgwFR4eAKgy8b917b6331691 month agoClaude-Session: https://claude.ai/code/session_01JVbWJtoyQU4WgwFR4eAKgy1c877173f49e1 month agoClaude-Session: https://claude.ai/code/session_01JVbWJtoyQU4WgwFR4eAKgyf97fcbccd7f31 month agoClaude-Session: https://claude.ai/code/session_01JVbWJtoyQU4WgwFR4eAKgybf4ffffcc76c1 month agoClaude-Session: https://claude.ai/code/session_016QqZBhX7PVNsRqLhkTt9y3e7a4597478b21 month agoClaude-Session: https://claude.ai/code/session_016QqZBhX7PVNsRqLhkTt9y36229215ed9711 month agoClaude-Session: https://claude.ai/code/session_016QqZBhX7PVNsRqLhkTt9y364563c257b161 month agoClaude-Session: https://claude.ai/code/session_016QqZBhX7PVNsRqLhkTt9y37378e5cd83bc1 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>29368d35d8351 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>6fa5cb8179231 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>a50a4a4eaefa1 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>3032ddaf80ef1 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>733dfa9d37381 month agoClaude-Session: https://claude.ai/code/session_01DUgSPgBBqMYdy4vnKjK3bEae6a4efd82871 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>1f9f20addf121 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>0dedfae6f41e1 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>c9ed58f382ed1 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>f631d9b8da121 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>50c7b2245d5b1 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>727ff8bfd04b1 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>9c10bf01b2f91 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>c0a628f4bb081 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>3acea011949c1 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>188a5890b4491 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>cea1f1a2dc541 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>12c3b3e407451 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>f61eb814363c1 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>bfa295027b591 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>ff88e3260b941 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>5e827d2bac0b1 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>23052e9d2d1e1 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>5175c0b85d361 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>992f901471c91 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>c7ec5c965b251 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>324d7420369b1 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>3daf87a38f361 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>d8c5bab3acc41 month agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>8aece71dacfa2 months agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>039190e2f0592 months agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>465aadb1cd192 months agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>e4e625b49f972 months agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>e38cf67f14dc2 months agoCo-Authored-By: opencode (Big Pickle) <noreply@opencode.ai>781e2441ba382 months agoCo-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>02ea938b2ce12 months agoCo-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>41061c1754ad2 months agoCo-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>72c3a88e53b62 months agoCo-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>9fa60d0b87be2 months agoCo-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com># 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/vie# 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.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.ch/api.html): OpenAPI spec, also at [ope.gitignoreclaude-code.claude/.gitignoreunspecified.agents/