name: docs

on:
  push:
    branches:
      - main
  pull_request:
    branches:
      - main

jobs:
  docs:
    runs-on: macos-latest # for the screenshots
    steps:
      - uses: actions/checkout@v4
        with:
          fetch-depth: 0
      - uses: astral-sh/setup-uv@v6
        with:
          enable-cache: true

      - name: Deploy docs to GitHub Pages
        if: github.event_name == 'push'
        run: uv run --group docs mkdocs gh-deploy --strict --force

      - name: Test that docs build without error
        if: github.event_name == 'pull_request'
        run: uv run --group docs mkdocs build --strict
