[tools] python = "3.14" node = "24" [tasks.setup] description = "Create the venv and install backend and frontend dependencies" # ponytail: reinstalls on every run (fast when up to date); add sources/outputs if it ever gets slow run = [ "python -m venv .venv", ".venv/bin/pip install -q --disable-pip-version-check -r backend/requirements.txt", "npm install --no-fund --no-audit", ] [tasks.db] description = "Start local Postgres and wait until it accepts connections" run = [ "docker compose up -d db", "until docker compose exec -T db pg_isready -q -U postgres; do sleep 1; done", ] [tasks."dev:api"] description = "Flask API on :5000" depends = ["setup", "db"] run = ".venv/bin/python backend/app.py" [tasks."dev:web"] description = "Vite UI; /api is proxied to Flask" depends = ["setup"] run = "npm run dev" [tasks.dev] description = "Start the app for local testing (API + UI)" depends = ["dev:api", "dev:web"]