name: "PR Validation"
on:
pull_request:
branches: [main]
permissions:
contents: read
jobs:
structure-check:
name: "Structural Validation"
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Setup Node.js
uses: actions/setup-node@v6
with:
node-version: '24'
cache: 'npm'
cache-dependency-path: website/package-lock.json
- name: Install dependencies
working-directory: website
run: npm ci
- name: Run structural validation
run: node scripts/validate-structure.js
markdownlint:
name: "Markdown Lint"
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Setup Node.js
uses: actions/setup-node@v6
with:
node-version: '20'
- name: Install markdownlint-cli
run: npm install -g markdownlint-cli@0.41.0
- name: Run markdownlint
run: |
markdownlint '**/*.md' \
--ignore 'website/node_modules/**' \
--ignore 'website/build/**' \
--ignore 'website/docs/**' \
--config .markdownlint.json