pre-commit: parallel: true commands: # Backend: Ruff (Linter + Formatter) ruff: root: "backend/" glob: "*.py" run: export PATH="$HOME/.local/bin:$PATH" && uv run ruff check --fix {staged_files} && uv run ruff format {staged_files} stage_fixed: true django-check: root: "backend/" run: export PATH="$HOME/.local/bin:$PATH" && uv run manage.py check # Frontend: Biome (Linter + Formatter) biome: root: "frontend/" glob: "**/*.{js,ts,jsx,tsx}" run: export PATH="$HOME/.bun/bin:$PATH" && bunx @biomejs/biome check --write --no-errors-on-unmatched {staged_files} stage_fixed: true # Frontend: TypeScript tsc: root: "frontend/" glob: "**/*.ts, **/*.tsx" run: export PATH="$HOME/.bun/bin:$PATH" && bunx tsc --noEmit --incremental --tsBuildInfoFile --ignoreConfig .tsbuildinfo {staged_files}