ismaelramos.dev

← Architecture notes

Accessibility is a design-system problem

Treating accessibility as a per-feature checklist guarantees regressions. The leverage is in the primitives.

  • accessibility
  • design-systems

The most common pattern I see: a team runs an audit, fixes 80 issues across 40 components, and ships. Six months later, half of them are back.

That’s not an accessibility problem. That’s a system problem.

Accessibility regressions come from the same place visual regressions do — when every team can independently invent buttons, modals and forms, every team can independently make them inaccessible. The fix is the same:

  • semantic primitives owned by the design system
  • focus management baked into composite components, not opted into
  • a11y assertions in the same CI as visual regression
  • review checkpoints when teams extend a primitive, not when they reinvent one

The goal isn’t 100% compliance after a sprint. The goal is making the wrong thing harder than the right thing.

Once accessibility lives in the primitives, individual features stop being the unit of work. Whole categories of problems disappear at once.