repos: # Backend (Python) — ruff linting + formatting - repo: https://github.com/astral-sh/ruff-pre-commit rev: v0.15.0 hooks: - id: ruff args: [--fix] files: ^backend/ - id: ruff-format files: ^backend/ # Frontend (TypeScript/React) — local hooks using project node_modules - repo: local hooks: - id: oxlint name: oxlint entry: npx oxlint -c frontend/.oxlintrc.json language: system files: ^frontend/src/.*\.(ts|tsx)$ pass_filenames: true - id: oxfmt name: oxfmt entry: npx oxfmt --check --config frontend/.oxfmtrc.json language: system files: ^frontend/src/.*\.(ts|tsx)$ pass_filenames: true - id: tsc name: tsc entry: bash -c 'cd frontend && npx tsc -b' language: system files: ^frontend/src/.*\.(ts|tsx)$ pass_filenames: false