Personal fitness and nutrition coach
Translation pending
HealthHTML · PythonGitHub @cdunn444OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Loading the full README. The saved excerpt is shown below.
"I will either find a way, or make one." — Hannibal
An adaptive AI fitness coach, built as a Claude Agent Skill. Makeway (your coach
answers to "Coach") replaces the
fragmented stack of training apps, nutrition trackers, and static plans with one
system: a training plan that talks to your nutrition, adapts when life happens, and
remembers what you did last Tuesday.
Based on Coach PRD v0.1. Claude (chat or Claude Code) is
the entire backend — no app build required.Read the full README ↗"I will either find a way, or make one." — Hannibal
An adaptive AI fitness coach, built as a Claude Agent Skill. Makeway (your coach answers to "Coach") replaces the fragmented stack of training apps, nutrition trackers, and static plans with one system: a training plan that talks to your nutrition, adapts when life happens, and remembers what you did last Tuesday.
Based on Coach PRD v0.1. Claude (chat or Claude Code) is the entire backend — no app build required.
Clone this repo and start Claude Code in it. Then:
/coach # onboard (first time) or today's Daily Brief
/coach log done, 4 miles at 10:30 pace
/coach import garmin-week.csv # weekly Garmin Connect export → auto-logged with real pace/HR
/coach schedule # view/edit the week ("move Thursday's run to Friday")
/coach progress # trends, streaks, milestones
Your state lives in coach-data/ as plain JSON/markdown (profile.json,
plan.json, log.jsonl, notes.md) — human-readable, editable, and yours. Commit
the directory to keep history, or gitignore it to keep it private.
Zip the skill and upload it as a Skill (Settings → Capabilities → Skills):
cd .claude/skills && zip -r coach.zip coach/
In chat, Claude keeps your coach state in the conversation and gives you a JSON
block to save between sessions; for persistent memory, use it inside a Project and
keep profile.json / plan.json as project files. Claude Code is the best
experience because state persists automatically on disk.
index.html at the repo root is a self-contained PWA that renders your coach data as
the PRD's app screens — Daily Brief, Schedule, and Progress — with a
floating whistle button (lower right) that deep-links into your most recent Claude
Code coach chat (it reads coach-data/session.json, which the skill keeps updated).
Data is fetched live from GitHub on each open, so it shows whatever the coach last
pushed. If the repo is private, tap the gear icon once and paste a fine-grained PAT
with read-only Contents access (stored only on your device).
Deploy (one-time): GitHub → repo Settings → Pages → Source: Deploy from a
branch → pick main (after merging) or this branch, folder / (root). Your app
URL will be https://<user>.github.io/makeway/.
Install on iPhone: open that URL in Safari → Share → Add to Home Screen. You get the whistle icon, full-screen app, the works.
Daily loop: glance at the dashboard → tap the whistle → tell Coach how the workout went → Coach logs, adapts, and pushes → pull down to refresh the dashboard.
A scheduled GitHub Action (.github/workflows/activity-sync.yml) pulls new
activities from the free intervals.icu API every 4 hours,
auto-logs them into coach-data/log.jsonl with real pace/HR, marks plan sessions
completed/partial, and pushes — so the dashboard updates itself. intervals.icu
syncs from Garmin Connect officially (activities arrive ~5 min after your watch
syncs), so the chain is: watch → Garmin → intervals.icu → this repo.
One-time setup:
i123456) and generate an API key.INTERVALS_ATHLETE_ID, INTERVALS_API_KEY.Secrets stay in GitHub's encrypted vault — never in the repo files. (The script
also supports Strava via STRAVA_CLIENT_ID/STRAVA_CLIENT_SECRET/
STRAVA_REFRESH_TOKEN, but Strava's API now requires a paid subscription.)
.claude/skills/coach/
SKILL.md # the coach: persona, commands, workflows
references/
onboarding.md # 6-step onboarding flow
data-model.md # schemas for profile/plan/log files
methodology.md # plan architecture, periodization, goal conflicts
nutrition.md # TDEE, macros, session-specific nutrient timing
movement-prep.md # warmups by session type + prehab menus
adaptation.md # the rule-based adaptation engine
garmin-import.md # wearable export import (CSV/TCX/GPX) + device-data insights
coach-data/ # your profile, plan, and logs (created at onboarding)
docs/Coach_PRD_v0.1.md # the product spec this implements
| PRD feature | Where it lives |
|---|---|
| Onboarding flow (6 screens) | references/onboarding.md |
| Daily Brief (workout / prep / nutrition / log CTA) | SKILL.md + nutrition & movement-prep references |
| Workout-specific nutrient timing | references/nutrition.md |
| Rule-based adaptation engine | references/adaptation.md |
| Schedule editing, Progress tracking | SKILL.md + data-model.md |
| Expert methodology layer | references/methodology.md (encoded coaching rules; swap in credentialed-expert content as partnerships land) |
| Push notifications, paywall, RevenueCat, etc. | N/A — out of scope for the skill form factor |
Coach is a training aid, not medical advice. It will tell you the same thing.