Frontend UI and accessibility
Defaults
- Semantic HTML first; ARIA only when native semantics insufficient
- Keyboard-operable for every interactive control
- Visible focus states; do not remove outlines without replacement
- Color contrast and non-color-only status cues
Build checklist
- Heading hierarchy (
h1once per view where applicable) - Labels tied to inputs (
label/fororaria-labelledby) - Buttons vs links used correctly
- Modals: focus trap,
Escape, return focus on close - Images: meaningful
altor decorativealt="" - Dynamic updates:
aria-livewhen needed
Review checklist
- Tab order logical; no keyboard traps
- Touch targets adequate on mobile
- Motion respects
prefers-reduced-motion - Forms: errors associated with fields
Performance interaction
Avoid layout thrash; lazy-load below fold; measure LCP/CLS when shipping UI.
Related
- reference.md — WCAG-oriented checklist
performance/performance-optimization— web vitalsgstack/design-review— visual polish (complementary)