.PHONY: help install lock migrate test lint format check run worker beat shell demo backup verify package backlog

help:
	@printf '%s\n' \
	  'make install  - dependencies installeren met uv' \
	  'make migrate  - database migreren' \
	  'make demo     - admin + demodata aanmaken' \
	  'make run      - lokale Django-server' \
	  'make test     - tests uitvoeren' \
	  'make lint     - Ruff-controle' \
	  'make format   - Ruff formatter' \
	  'make verify   - volledige lokale kwaliteitsgate' \
	  'make backlog  - toon de volgende autonome taak' \
	  'make package  - maak een schone project-ZIP'

install:
	uv sync --all-groups

lock:
	uv lock

migrate:
	uv run python manage.py migrate

demo:
	uv run python manage.py bootstrap_instance --with-demo

run:
	uv run python manage.py runserver 0.0.0.0:8080

worker:
	uv run celery -A config worker -l INFO -Q high,default,low

beat:
	uv run celery -A config beat -l INFO

test:
	uv run pytest

lint:
	uv run ruff check .

format:
	uv run ruff format .
	uv run ruff check --fix .

check:
	uv run python manage.py check

backup:
	./scripts/backup.sh

verify:
	./scripts/codex_verify.sh

backlog:
	uv run python scripts/backlog.py next

package:
	uv run python scripts/package_project.py
