Files
FitTrack_ReportGenerator/examples/GarminSync/pyproject.toml
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
TOML

[project]
name = "GarminSync"
version = "0.1.0"
description = "Sync and analyze Garmin activity data"
readme = "README.md"
requires-python = ">=3.11"
dependencies = [
"flask==3.0.0",
"flask-sqlalchemy==3.1.1",
"flask-migrate==4.0.7",
"python-dotenv==1.0.0",
"uvicorn==0.27.0",
"alembic==1.13.1",
"flask-paginate==2024.4.12",
"pytest==8.1.1",
"typer==0.9.0",
"apscheduler==3.10.4",
"requests==2.32.0",
"garminconnect==0.2.28",
"garth",
"fastapi==0.109.1",
"pydantic==2.5.3",
"tqdm==4.66.1",
"sqlalchemy==2.0.30",
"pylint==3.1.0",
"pygments==2.18.0",
"fitdecode",
"numpy==1.26.0",
"scipy==1.11.1",
"aiosqlite",
"asyncpg",
"aiohttp"
]
[build-system]
requires = ["uv"]
build-backend = "uv"
[tool.ruff]
line-length = 120
target-version = "py311"
select = ["E", "F", "W", "I", "B", "C", "N", "Q"]
ignore = []
[tool.ruff.per-file-ignores]
"__init__.py" = ["F401"]
"tests/*.py" = ["S101", "INP001", "F811", "PLR2004", "ANN001", "ANN101", "ANN201"]
[tool.black]
line-length = 120
target-version = ["py311"]
skip-string-normalization = true