perfect-postcode/Taskfile.yml
2026-01-25 21:54:42 +00:00

101 lines
2 KiB
YAML

version: '3'
tasks:
install:
desc: Install dependencies, generate client, and download data
cmds:
- uv sync
- cd frontend && npm install
download:
desc: Download data
deps:
- install
cmds:
- uv run python generate_tfl_client.py
- uv run python download_land_registry.py
- uv run python download_arcgis_data.py
pipeline:
desc: Run data processing pipeline
deps:
- download
cmds:
- uv run python -m pipeline.run
prepare:
desc: Prepare the application (install, download data, run pipeline)
deps:
- pipeline
server:
desc: Run FastAPI backend on port 8001
cmds:
- uv run fastapi dev server/main.py --port 8001
frontend:
desc: Run frontend dev server on port 3030 (proxies /api to :8001)
dir: frontend
cmds:
- npm run dev
build:
desc: Build frontend for production
dir: frontend
cmds:
- npm run build
prod:
desc: Run production server (serves built frontend)
cmds:
- uv run fastapi run server/main.py --port 8001
lint:
desc: Lint all code (Python and TypeScript)
cmds:
- task: lint:python
- task: lint:frontend
lint:python:
desc: Lint Python code with ruff
cmds:
- uv run ruff check .
lint:frontend:
desc: Lint frontend TypeScript code
dir: frontend
cmds:
- npm run lint
- npm run format:check
format:
desc: Format all code (Python and TypeScript)
cmds:
- task: format:python
- task: format:frontend
format:python:
desc: Format Python code with ruff
cmds:
- uv run ruff check --fix .
- uv run ruff format .
format:frontend:
desc: Format frontend TypeScript code
dir: frontend
cmds:
- npm run lint:fix
- npm run format
check:
desc: Run all checks (lint, typecheck, build)
cmds:
- task: lint
- task: typecheck
- task: build
typecheck:
desc: Type check frontend TypeScript code
dir: frontend
cmds:
- npm run typecheck