Learning Design Systems Course index

Lesson 0005 · 10 minutes

Accessibility as a System Constraint

Accessibility is not a checklist at the end. It is a set of invariants the system must preserve.

The tangible win

After this lesson, you should be able to explain why accessibility belongs in tokens, components, patterns, and documentation—not only in QA.

Accessibility = product correctness for more human conditions.

Backend analogy: invariants

Backend systems protect invariants: a payment cannot be negative, an order cannot ship before it exists, a user cannot access data without permission.

Design systems should protect experience invariants: text must be readable, focus must be visible, controls must have names, errors must be understandable, and keyboard users must be able to complete the task.

Where accessibility lives

LayerConstraintExample
TokensReadable contrast and spacing.color.text.default must work on color.bg.default.
ComponentsBuilt-in keyboard and screen reader behavior.A modal traps focus and returns focus when closed.
PatternsFlows remain understandable and recoverable.Form errors appear near fields and in a summary.
DocsUsage rules prevent misuse.Do not use placeholder text as the only label.

A common mistake

Weak system:

<Button color="lightGray">Continue</Button>

This lets a team choose a low-contrast button by accident.

Stronger system:

<Button variant="secondary">Continue</Button>

The system owns the contrast rules for secondary. Product teams choose intent, not fragile visual details.

Practice: classify the accessibility issue

A text input has placeholder text but no label. What kind of system failure is this?

System-level accessibility questions

Read next

Skim the WCAG quick reference for the shape of accessibility requirements, then skim ARIA Authoring Practices to see how common components have expected behavior contracts.