mirror of
https://github.com/sstent/FitTrack_GarminSync.git
synced 2026-01-26 09:01:53 +00:00
53 lines
1.1 KiB
Markdown
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
|