Skip to main content

Accessibility: axe-core coverage в CI gate

## Что это Axe-core встраивается в каждый component-test через `@axe-core/playwright`. Каждый rendered компонент прогоняется через axe rules ≥ WCAG 2.2 AA level. Violations блокируют CI (severity ≥ moderate). Coverage tracking: какие компоненты прогоняются через axe, какие нет — generates report. Goal: 100% public-facing components covered by axe в CI. Allow-list для known false-positives с TTL 90 дней (review quarterly). E2E tests дополнительно прогоняют axe на full pages через keyboard-only navigation. Компоненты: `tests/setup/axe-helpers.ts`, `vitest.shared.ts` global setup. GitHub Actions step: axe-report comment на PR с diff vs main. ## Зачем Accessibility — non-negotiable для public-facing software. Manual audits scale poorly; axe в CI catches 60%+ violations автоматически. WCAG 2.2 AA — minimum для legal compliance в EU/US/Canada (ADA, EAA). ## Источники вдохновения - [intentui/intentui](https://github.com/intentui/intentui) — React Aria + Tailwind с встроенной accessibility - [shadcnblocks/kibo](https://github.com/shadcnblocks/kibo) — composable accessible UI registry - [elevenlabs/ui](https://github.com/elevenlabs/ui) — accessible shadcn/ui для мультимодальных агентов ## 🔗 Linear - [PZD-420](https://linear.app/kuhjie/issue/PZD-420) — backing ticket

Log in to comment and vote

No comments yet

Be the first to share your thoughts.