1.5 KiB
1.5 KiB
Fitness Antigravity
Your personal fitness coach powered by Gemini CLI, Garmin Connect, and Withings.
Features
- Data Sync: Sync your Garmin workouts and Withings weightings locally.
- Visualization: Beautiful Vue JS frontend to track your progress.
- Strength Training: Create custom Garmin strength workouts locally.
- Gemini Recommendations: Get AI-driven training advice for endurance and strength.
- 100% Test Coverage: Robust Python backend with full unit test coverage.
Project Structure
backend/: Python source code and unit tests.frontend/: Vue JS web application.data/local/: Local storage for synced fitness data.docs/: Detailed documentation and setup guides.
Setup Instructions
Quick Start (FitMop)
The easiest way to run the entire project is using the FitMop orchestrator:
- Run
bash fitmop.sh. - Open
http://localhost:5173in your browser. - Enter your Garmin credentials in the UI. They will be stored securely in
.env_garmin.
Manual Backend Setup
- Navigate to
backend/. - Install
uvif you haven't:brew install uv. - Install dependencies:
uv sync.
Frontend
- Navigate to
frontend/. - Install dependencies:
npm install. - Start the dev server:
npm run dev.
Usage
- Run sync scripts manually to update local data.
- Use the CLI/TUI in
backend/to create workouts and get recommendations.