OpenAthlete
AGPLv3 endurance training platform: EU-oriented hosting, transparent CTL/ATL/TSB logic in code, self-hosting, and full export. Built in Grenoble.
翻译准备中
AI 驱动的体操与健身软件——跟踪锻炼、营养和进度,配有个人 AI 教练。跨平台 React Native 应用 + web PWA,可在 PocketBase 上自托管。免费且开源。
AI 翻译
AI-powered calisthenics & fitness app — track workouts, nutrition, and progress with a personal AI coach. Cross-platform React Native app + web PWA, self-hostable on PocketBase. Free & open source.
取自仓库 README
正在加载完整 README。 以下为已保存的摘录。
Your AI calisthenics & fitness coach — workouts, nutrition, and progress in one app.
Train with a structured calisthenics program, log every set, track your nutrition, run cardio with live GPS, and let an AI coach adapt the plan to you. Free, open source, and self-hostable.
📱 Download the Android app · 🌐 Try the web app · ⭐ Star this repo
Most fitness apps are paywalled, bloated, or cloud-locked. Calistenia is the opposite:查看完整 README ↗Train with a structured calisthenics program, log every set, track your nutrition, run cardio with live GPS, and let an AI coach adapt the plan to you. Free, open source, and self-hostable.
📱 Download the Android app · 🌐 Try the web app · ⭐ Star this repo
Most fitness apps are paywalled, bloated, or cloud-locked. Calistenia is the opposite:
Get it now: gym.guille.tech/download (Android) or gym.guille.tech (web).
A pnpm monorepo with shared business logic across native and web.
| Part | Stack |
|---|---|
Mobile (apps/mobile) | React Native + Expo, expo-router, MapLibre, Notifee, Sentry, Android widgets |
Web (apps/web) | React + Vite, Tailwind CSS, shadcn/ui, PWA |
Shared core (packages/core) | Cross-platform hooks, data layer, i18n (EN/ES) |
AI / MCP (mcp-server) | MCP server + AI API for the coach and smart tools |
| Backend | PocketBase (SQLite, self-hosted) — 30+ collections, migration-driven |
| Testing | Playwright |
calistenia-app/
├── apps/
│ ├── mobile/ # Expo React Native app (Android APK + iOS)
│ └── web/ # React + Vite PWA
├── packages/
│ └── core/ # Shared hooks, data, locales
├── mcp-server/ # AI coach + MCP tools
├── pb_migrations/ # PocketBase schema migrations
└── pocketbase # PocketBase binary
Requires Node 20+ and pnpm 10+.
# 1. Install deps (whole monorepo)
pnpm install
# 2. Start PocketBase (backend + API)
pnpm pb:serve
# Admin UI: http://127.0.0.1:8090/_/ (create admin on first run)
# 3a. Run the web app
pnpm --filter @calistenia/web dev # http://localhost:5173
# 3b. Run the mobile app
cd apps/mobile && pnpm start # Expo dev server
Migrations in pb_migrations/ apply automatically on PocketBase start.
A GitHub Action (.github/workflows/build-mobile-apk.yml) builds the release APK and publishes it as a GitHub Release. The web download page fetches the latest release automatically.
# Trigger a release: bump version in apps/mobile/app.json, then
git tag mobile-v1.0.1 && git push origin mobile-v1.0.1
The web app + PocketBase ship as a single Docker image (multi-stage build) and deploy via Dokploy + GitHub Actions on push to main. PocketBase serves both the API (/_/) and the static frontend from one port (8090). See Dockerfile and docker-compose.yml.
# Local smoke test
docker compose up --build # http://localhost:8090
Issues and PRs welcome. If Calistenia helps you train, a ⭐ on the repo goes a long way and helps others discover it.
MIT — see LICENSE.md. Use it, fork it, self-host it.