Repository navigation
v1.1.0 — Full TUI, Setup Wizard & Automation
What's new in v1.1.0
Full Textual TUI
The terminal UI is now the primary interface — no command line knowledge required.
- Main Menu → Pull Data → live progress screen with per-metric checklist (single day) or per-day rows (multi-day range)
- Initial Setup — prerequisites checker, Garmin credential manager, Gmail OAuth wizard with in-dialog URL display for headless environments
- Automation — Gmail MFA status view, Scheduled Pulls manager (enable, disable, change pull time — no cron knowledge needed)
- MFA modal: prompts for a manual code inside the TUI when Gmail automation isn't available
Expanded Garmin API coverage
- Added nutrition (food log, meals) and menstrual cycle tracking
- Per-activity detail: 8 endpoints per logged workout (splits, HR/power zones, exercise sets, weather, and more)
- One-time profile pull per session: devices, personal records, training plans, workouts, gear →
profile.json
Bug fixes
- Fixed Python output buffering (
-uflag) that caused subprocess output to stall in the TUI - Fixed
call_from_threadusage in Textual screen workers - Fixed Gmail MFA CSS hex color false-match (
#000000no longer matched as a 6-digit security code)
Quickstart
git clone https://github.com/ColonelPanicX/garmin-extract.git
cd garmin-extract
uv sync
uv run python -m garmin_extractThen follow the TUI: Initial Setup → set up credentials → Pull Data.
See the README for full setup instructions.