repos:
- repo: local
  hooks:
  - id: no-commit-to-main
    name: Don't commit to main branch
    entry: sh -c 'if [ "$(git rev-parse --abbrev-ref HEAD)" = "main" ]; then echo "Direct commits to main branch are not allowed!"; exit 1; fi'
    language: system
    pass_filenames: false
    always_run: true
  - id: typecheck
    name: Typecheck Frontend
    entry: just typecheck
    language: python
    pass_filenames: false
    files: ^ui/.*\.(ts|tsx)$
  - id: test-ui
    name: Test Frontend
    entry: just test-frontend
    language: python
    pass_filenames: false
    files: ^ui/.*\.(ts|tsx|js|jsx)$
  - id: test-api
    name: Test API
    entry: just test-api
    language: python
    pass_filenames: false
    files: ^api/.*\.(ts)$

