Accessibility

Target met: WCAG 2.2 level AA on the main journeys.

Why it is a floor, not an argument

A learning platform is by definition aimed at people who are learning — a significant share of whom face difficulties with reading, vision, attention or motor control. Shipping an interface that excludes part of them is not only a legal defect: it is a pedagogical contradiction.

Accessibility was therefore treated as a design constraint, from the first line of interface, and not as a catch-up campaign.

What is actually in place

How it is checked

Three levels, all run on every pull request:

  1. Static checks in the test suite: presence of labels, text alternatives, skip links, no inline onclick attributes, a single h1.
  2. Automated axe-core audit in a browser on the main screens (landing page, sign-in, dashboard, wiki, quiz, administration), failing the build on serious violations.
  3. Manual review before each release: full keyboard journey, screen reader (NVDA and VoiceOver), 200 % zoom, dark theme.

An automated audit does not replace a human test: it catches mechanical omissions, not ambiguities. Both are needed.

Reporting an accessibility problem

Open an issue labelled accessibility, stating: the screen concerned, the browser, the assistive technology you use, and what you expected. An accessibility regression is treated as a blocking defect, not as an enhancement.

If you cannot go through GitHub, write to developper@openlearnproject.org: the message will be copied into the public tracker unless you ask otherwise.