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

53 lines
1.1 KiB
Markdown

# 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:
```bash
# 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:
```bash
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:
```bash
# 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