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.
This commit is contained in:
2025-10-11 09:54:13 -07:00
parent 6643a64ff0
commit 9e0bd322d3
152 changed files with 25695 additions and 49 deletions

View File

@@ -0,0 +1,29 @@
version: '3.8'
services:
backend:
extends:
file: docker-compose.yml
service: backend
command: pytest -v tests/
environment:
- DATABASE_URL=postgresql://garmin:sync@db_test/garminsync_test
- TESTING=True
db_test:
image: postgres:15-alpine
volumes:
- postgres_test_data:/var/lib/postgresql/data
environment:
- POSTGRES_USER=garmin
- POSTGRES_PASSWORD=sync
- POSTGRES_DB=garminsync_test
networks:
- garmin-net
volumes:
postgres_test_data:
networks:
garmin-net:
external: true

View File

@@ -0,0 +1,12 @@
services:
garminsync:
build:
context: ..
dockerfile: Dockerfile
# Removed entrypoint to rely on Dockerfile configuration
volumes:
- ../data:/app/data # Persistent storage for SQLite database
ports:
- "8888:8888"
env_file:
- ../.env # Use the root .env file