Skip to main content

Add the GitHub Action

1) Create repository secrets

In GitHub: Settings → Secrets and variables → Actions.

  • SCANU_TOKEN = API token from ScanU dashboard.
  • SCANU_PROJECT_ID = your ScanU project UUID.
  • SCANU_API_BASE_URL (optional) = custom API URL.

2) Add workflow file

Start with this minimal file:

yaml
name: Visual checks
on:
  pull_request:

jobs:
  visual-regression:
    runs-on: ubuntu-latest
    permissions:
      contents: read
      pull-requests: write
      issues: write
    steps:
      - uses: actions/checkout@v4

      - name: Run ScanU
        uses: scanyou/scanu-action@v1
        with:
          token: ${{ secrets.SCANU_TOKEN }}
          project_id: ${{ secrets.SCANU_PROJECT_ID }}
          urls: |
            https://staging.example.com

Recommended version for PR + main branch + browser/device matrix:

yaml
name: ScanU visual regression
on:
  pull_request:
  push:
    branches: [main]

jobs:
  visual-regression:
    runs-on: ubuntu-latest
    timeout-minutes: 30
    permissions:
      contents: read
      pull-requests: write
      issues: write

    strategy:
      fail-fast: false
      matrix:
        browser: [chrome, firefox]
        device: [desktop, mobile]

    steps:
      - uses: actions/checkout@v4

      - name: Run ScanU
        uses: scanyou/scanu-action@v1
        with:
          token: ${{ secrets.SCANU_TOKEN }}
          project_id: ${{ secrets.SCANU_PROJECT_ID }}
          api_base_url: ${{ secrets.SCANU_API_BASE_URL }}
          urls: |
            https://staging.example.com
            https://staging.example.com/pricing
          browsers: ${{ matrix.browser }}
          devices: ${{ matrix.device }}
          fail_on_diff: true
          timeout: 20