Files
FitTrack_ReportGenerator/examples/GarminSync/DEVELOPMENT_WORKFLOW.md
sstent 9e0bd322d3 feat: Initial implementation of FitTrack Report Generator
This commit introduces the initial version of the FitTrack Report Generator, a FastAPI application for analyzing workout files.

Key features include:
- Parsing of FIT, TCX, and GPX workout files.
- Analysis of power, heart rate, speed, and elevation data.
- Generation of summary reports and charts.
- REST API for single and batch workout analysis.

The project structure has been set up with a `src` directory for core logic, an `api` directory for the FastAPI application, and a `tests` directory for unit, integration, and contract tests.

The development workflow is configured to use Docker and modern Python tooling.
2025-10-11 09:54:13 -07:00

1.1 KiB

GarminSync Development Workflow

This document describes the new development workflow for GarminSync using UV and justfile.

Dependency Management

We've switched from pip/requirements.txt to UV for faster dependency installation. The dependency specification is in pyproject.toml.

Key Commands:

# Install dependencies with UV
just run_build

# Create and activate virtual environment
uv venv .venv
source .venv/bin/activate

# Update dependencies
uv pip install -r pyproject.toml

Tooling Integration

justfile Commands

Our workflow is managed through a justfile with these commands:

just run_dev      # Run server in development mode with live reload
just run_test     # Run validation tests
just run_lint     # Run linter (Ruff)
just run_format   # Run formatter (Black)
just run_migrate  # Run database migrations

Pre-commit Hooks

We've added pre-commit hooks for automatic formatting and linting:

# Install pre-commit hooks
pre-commit install

# Run pre-commit on all files
pre-commit run --all-files

The hooks enforce:

  • Code formatting with Black
  • Linting with Ruff
  • Type checking with mypy