Skip to content

Repository files navigation

fitness-sdk

A CLI + training methodology for wiring up your Garmin and Strava data and using it to train for — and actually finish — an ultramarathon.

This is two things in one repo:

  1. A methodology (methodology/) — the training system: how to fuel, how to train your gut to absorb carbs, trail technique, and how to not trust broken sensor data. This is the part that gets you to the finish line.
  2. A toolkit (src/fitness_sdk/) — a small Python CLI that pulls your own Garmin/Strava data so you can look at real splits, elevation, and recovery instead of a vendor dashboard.

You bring your own accounts and API keys. Nothing here phones home; your data and credentials stay on your machine.

Quickstart

git clone https://github.com/<you>/fitness-sdk && cd fitness-sdk
python -m venv .venv && source .venv/bin/activate
pip install -e .

cp .env.example .env    # then fill in your own Garmin/Strava creds
chmod 600 .env

fitness-sdk garmin snapshot          # today's recovery/wellness
fitness-sdk garmin activities -n 5   # recent activities

Full setup: docs/quickstart.md, docs/setup-garmin.md, docs/setup-strava.md.

Build your plan

  1. Copy templates/athlete-profile.template.md → fill in your numbers (age, paces, zones, goal race).
  2. Copy templates/training-plan.template.md → lay out your build.
  3. Read methodology/ — especially fueling.md and gut-training.md. Under-fueling, not fitness, is the #1 reason first ultras fall apart.
  4. See examples/build-to-a-50k/ for a worked example.

Design principle: your data is yours

  • Credentials live in .env (gitignored). Token caches and any health database are gitignored too — see .gitignore.
  • The tools only ever read your accounts with your keys.

Status

v0.1 — early. The methodology is battle-tested by one runner training for a mountain 50K; the tooling is a thin, honest wrapper over garminconnect and stravalib. PRs and field reports welcome.

MIT licensed.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages