Skip to main content

Accessibility

Red Glare inherits the USWDS accessibility baseline — built on WCAG 2.1 AA. The integration ships with correct markup, focus management, keyboard navigation, and ARIA labels for every component it provides. Authoring still matters — accessibility is partly what you write.

What the integration does for you

Every page renders a hidden "Skip to main content" link that appears on keyboard focus. Links the user directly to <main id="main-content">, past the government banner, header, and nav.

What you still need to do

Author-side checklist

  • Write meaningful alt text for every image.
  • Describe link destinations in the link text, not "click here".
  • Use real headings, not bold paragraphs, for section titles.
  • Keep heading levels sequential — don't skip from ## to ####.
  • For alerts and summary boxes, always include the #heading slot with a real markdown heading.
  • For language switching, set i18n.lang in frontmatter.

Testing

Automated

Run an accessibility checker against a built site. The two battle-tested options:

  • axe-core via Playwright, Puppeteer, or the Chrome extension.
  • WAVE browser extension.

Both catch common issues — missing alt text, skipped heading levels, insufficient contrast, unlabeled form fields — and neither replaces manual review.

Manual

  • Keyboard-only walkthrough. Tab through every page. Every interactive element should be reachable, visible when focused, and activatable with Enter/Space.
  • Screen reader pass. VoiceOver (Mac) or NVDA (Windows). Listen to a page top to bottom. Regions should be announced with their names; images should have meaningful descriptions; code blocks should be readable.
  • Zoom to 200%. Content should reflow without horizontal scrolling.

Limitations

  • Color contrast is only enforced for USWDS defaults. Custom theming via uswdsSettings can introduce contrast failures; re-test after theming changes.
  • Math accessibility relies on KaTeX. Complex equations render with KaTeX's built-in accessibility; screen readers announce equations linearly. For high-stakes content (exams, legal text), consider providing a text-only fallback.
  • Third-party embeds are your responsibility. If you embed a YouTube video, a CodePen, or similar, meet the accessibility bar yourself — the integration doesn't inspect embed content.

Reporting an a11y bug

Found something that regresses the baseline? File an issue on the repo tagged accessibility. Include the page URL, the assistive tech you're using, and the expected behavior.

Red Glare

An official website of the Open source project

Looking for U.S. government information and services? Visit USA.gov