Skip to content
This repository was archived by the owner on Mar 29, 2026. It is now read-only.

✨ Phase 5C: Visual Enhancements & Animations System #10

✨ Phase 5C: Visual Enhancements & Animations System

✨ Phase 5C: Visual Enhancements & Animations System #10

Workflow file for this run

name: Lint & Validate
on:
push:
branches: ['**']
pull_request:
branches: [main]
jobs:
lint:
name: Code Quality Checks
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'npm'
- name: Install dependencies
run: npm ci
- name: Lint HTML
run: npm run lint:html
continue-on-error: true
- name: Lint CSS
run: npm run lint:css
continue-on-error: true
- name: Lint JavaScript
run: npm run lint:js
continue-on-error: true
validate:
name: Validation Checks
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Validate JSON files
run: |
echo "Validating JSON files..."
for file in $(find . -name "*.json" -not -path "./node_modules/*"); do
echo "Checking $file"
if ! python3 -m json.tool "$file" > /dev/null 2>&1; then
echo "❌ Invalid JSON: $file"
exit 1
fi
done
echo "✅ All JSON files are valid"
- name: Check for broken links
uses: gaurav-nelson/github-action-markdown-link-check@v1
with:
use-quiet-mode: 'yes'
config-file: '.github/markdown-link-check-config.json'
continue-on-error: true
accessibility:
name: Accessibility Audit
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
- name: Install dependencies
run: npm install -g @axe-core/cli http-server
- name: Start local server
run: |
http-server . -p 8080 &
sleep 5
- name: Run axe accessibility tests
run: |
axe http://localhost:8080 --exit || true
summary:
name: Summary
runs-on: ubuntu-latest
needs: [lint, validate, accessibility]
if: always()
steps:
- name: Check results
run: |
echo "🔍 Lint & Validation Complete"
echo "Lint: ${{ needs.lint.result }}"
echo "Validate: ${{ needs.validate.result }}"
echo "Accessibility: ${{ needs.accessibility.result }}"