Zonara Trainer
Zonara Trainer – Fitness Coach: support, privacy policy and Health & Safety terms
翻譯準備中
尚未收集儲存庫資訊。
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗Personal training tracker for a Sub-3:45 NYC Marathon plan (race day: Sun Nov 1, 2026). Mobile-first, works on phone and laptop, progress syncs across devices.
Built from Sub_3-45_NYC_Marathon_Plan.xlsx (5 tabs → structured JSON). The plan itself is
immutable in git; check-offs, logged actuals, workout edits/swaps, and travel scenario picks
live in Supabase as a revertible override layer.
/guide/race-day, the Guide tab's landing page) — one
shareable link for family/friends: an animated cartoon-runner hero and race-bib card,
then collapsible sections: how to track me in the app, 3 viewing stops with be-there
times, subway directions and course maps (with the cartoon runner on the spot), the
post-race meetup, an outfit flat lay, and mile-by-mile ETAs. Content lives in
src/data/spectator.ts.Next.js 16 (App Router) · TypeScript · Tailwind v4 · Supabase Postgres (or a local JSON file store when Supabase env vars are unset) · Vercel.
npm install
npm run dev # http://localhost:3000 — no PIN, local file store in .data/
Regenerate plan data after editing the spreadsheet:
python3 scripts/convert_xlsx.py # validates weekly mileage, writes src/data/*.json
supabase/schema.sql in the SQL editor,
copy the Project URL and service_role key.APP_PIN, SUPABASE_URL,
SUPABASE_SERVICE_KEY, deploy. Optional features add STRAVA_CLIENT_ID /
STRAVA_CLIENT_SECRET (auto-sync), NEXT_PUBLIC_VAPID_PUBLIC_KEY / VAPID_PRIVATE_KEY
/ VAPID_SUBJECT (push), CRON_SECRET (weekly-recap cron auth).Docs: architecture · data model · roadmap/progress · decisions · Garmin sync