Go to file
Moritz Graf 2240a32a53 feat: Implement development pipeline and boost test coverage
- Add Makefile with `check`, `run` (blocking), and `force-stop` targets
- Integrate fitmop.sh logic into Makefile
- Achieve 100% backend test coverage
- Improve frontend test coverage to >85% (Views/Components >90%)
- Enforce `make check` in GEMINI.md
- Add comprehensive tests for App.vue and WorkoutVisualEditor.vue
2026-01-01 22:16:00 +01:00
.gemini feat: Implement Analyze and Plan features, Smart Sync, Theming, and Optional Auth 2026-01-01 14:22:48 +01:00
backend feat: Implement development pipeline and boost test coverage 2026-01-01 22:16:00 +01:00
data/local feat: Implement Analyze and Plan features, Smart Sync, Theming, and Optional Auth 2026-01-01 14:22:48 +01:00
docs feat: Implement Analyze and Plan features, Smart Sync, Theming, and Optional Auth 2026-01-01 14:22:48 +01:00
frontend feat: Implement development pipeline and boost test coverage 2026-01-01 22:16:00 +01:00
.gitignore feat: Implement development pipeline and boost test coverage 2026-01-01 22:16:00 +01:00
ARCHITECTURE.md Implement Software Best Practices and Graceful API Key Management 2026-01-01 20:37:10 +01:00
CONTRIBUTING.md Implement Software Best Practices and Graceful API Key Management 2026-01-01 20:37:10 +01:00
GEMINI.md feat: Implement development pipeline and boost test coverage 2026-01-01 22:16:00 +01:00
Makefile feat: Implement development pipeline and boost test coverage 2026-01-01 22:16:00 +01:00
README.md Implement Software Best Practices and Graceful API Key Management 2026-01-01 20:37:10 +01:00
fitmop.sh Implement Software Best Practices and Graceful API Key Management 2026-01-01 20:37:10 +01:00

README.md

Fitness Antigravity (FitMop)

Your personal fitness coach powered by Google Gemini AI, Garmin Connect, and Withings. FitMop provides a unified dashboard for analyzing activity trends, creating advanced Garmin workouts, and chatting with an AI coach that has direct access to your training data.

Features

  • 📊 AI-Driven Analytics: Deep insights into your training history via the Gemini 2.0 Flash engine.
  • 🔄 Garmin Sync: Automated local synchronization of your Garmin activities and profile.
  • 🏋️ Advanced Workout Builder: Drag-and-drop visual editor for creating complex Garmin strength and endurance workouts.
  • 🤖 AGENTIC AI Coach: Chat with an AI that performs function calls to analyze your data and suggest improvements.
  • 🛡️ Modern Standards: 100% test pass rate, strict linting (Ruff/ESLint), and global error handling.

Project Structure

  • backend/: FastAPI service, Garmin integration, and Recommendation Engine.
  • frontend/: Vue.js 3 Single Page Application.
  • data/local/: Local JSON storage for privacy-first training data.

Documentation

Setup Instructions

Quick Start

The easiest way to run the entire project is using the FitMop orchestrator:

  1. Run bash fitmop.sh.
  2. Open http://localhost:5173 in your browser.
  3. Complete the setup guide on the dashboard.

Commands

  • Lint Backend: cd backend && uv run ruff check . --fix
  • Lint Frontend: cd frontend && npm run lint
  • Run Tests: npm run test (frontend) / uv run pytest (backend)

Built with ❤️ for better fitness through data.