feat: implement responsive dashboard with accessibility improvements #291
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Workflow for Vercel deployment | |
name: Vercel Deployment | |
on: | |
push: | |
branches: [main, develop] | |
pull_request: | |
branches: [main, develop] | |
jobs: | |
deploy: | |
runs-on: ubuntu-latest | |
defaults: | |
run: | |
working-directory: ./frontend | |
steps: | |
- uses: actions/checkout@v4 | |
# Install pnpm first | |
- name: Install pnpm | |
uses: pnpm/action-setup@v2 | |
with: | |
version: 8 | |
run_install: false | |
# Node.js setup after pnpm is available | |
- name: Use Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: '18.x' | |
cache: 'pnpm' | |
cache-dependency-path: './frontend/pnpm-lock.yaml' | |
- name: Clean pnpm cache | |
run: pnpm store prune | |
continue-on-error: true | |
- name: Install Node.js dependencies | |
run: pnpm install | |
- name: Commit updated lockfile | |
run: | | |
git config --local user.email "github-actions[bot]@users.noreply.github.com" | |
git config --local user.name "github-actions[bot]" | |
git add pnpm-lock.yaml | |
if git diff --quiet && git diff --staged --quiet; then | |
echo "No changes to commit" | |
else | |
git commit -m "chore: update pnpm lockfile" | |
git push origin HEAD:${{ github.head_ref || github.ref_name }} | |
fi | |
continue-on-error: true | |
- name: Run security audit | |
run: pnpm audit | |
continue-on-error: true | |
- name: Type check | |
run: pnpm run type-check | |
- name: Build | |
run: pnpm run build --production | |
- name: Run frontend tests | |
run: | | |
CI=true pnpm run test | |
- name: Upload test results | |
uses: actions/upload-artifact@v4 | |
with: | |
name: frontend-test-results | |
path: ./frontend/test-results | |
# Vercel deployment | |
- name: Deploy to Vercel | |
uses: amondnet/vercel-action@v20 | |
with: | |
vercel-token: ${{ secrets.VERCEL_TOKEN }} | |
vercel-org-id: ${{ secrets.VERCEL_ORG_ID }} | |
vercel-project-id: ${{ secrets.VERCEL_PROJECT_ID }} | |
working-directory: ./frontend | |
vercel-args: ${{ github.ref == 'refs/heads/main' && '--prod' || '' }} |