Skip to content
@SureA11y

SureA11y

Deterministic accessibility testing that tells you what it can't tell you.

SureA11y

Accessibility testing that tells you what it can't tell you.

SureA11y is an open-source family of accessibility testing packages built around one deterministic WCAG testing engine. You run it in your own test suite, CI pipeline, or from the command line.

It automates what can be determined objectively and makes the limits of that automation explicit. Instead of hiding uncertain cases, it distinguishes between what fails, what passes, what can't be determined automatically, and what doesn't apply.

Website & documentation · Getting started

The engine

surea11y core

@surea11y/core is the foundation of the ecosystem. Every other package is built on it.

  • Deterministic results. The same input produces the same output.
  • Explicit uncertainty. Cases that require human judgement are reported as cantTell, not silently ignored.
  • Conservative findings. fail is reserved for objective, normative violations.
  • Standards traceability. Rules map to the applicable WCAG Success Criterion whenever appropriate.
  • ACT validation. Rules with a W3C ACT counterpart are verified against ACT's published test corpus, with a public implementation report.
  • Stable, machine-readable output for testing and CI workflows.
  • Zero runtime dependencies.

Automate what can be determined objectively. Never pretend to automate what cannot.

Use it with your stack

Install the package that matches how you already test. Each one pulls in @surea11y/core for you and uses the same result model.

Environment Package
Playwright @surea11y/playwright
Cypress @surea11y/cypress
Puppeteer @surea11y/puppeteer
Selenium @surea11y/selenium
WebdriverIO @surea11y/webdriverio
Jest / Vitest @surea11y/test-matchers
CLI / CI @surea11y/cli
A DOM you already have @surea11y/core

Four outcomes, including uncertainty

Every rule produces one of four explicit outcomes:

  • fail: a violation provable from the DOM.
  • pass: the rule's specific condition is met.
  • cantTell: a human has to decide, and the result says what was ambiguous.
  • notApplicable: the rule's precondition is not present.

A pass is not a claim that a page is accessible. Automated testing covers only what can be determined from the information available to the engine.

Results and reports · Known limitations

Get started

npm install @surea11y/core

The engine needs a DOM to read but never creates one. You supply it, whether that is jsdom, a browser automation page, or the live document. To scan static HTML without writing any code:

npx @surea11y/cli scan ./index.html

The Getting Started guide covers installation and usage for each package.

Open source

SureA11y is an independent open-source project, developed in the open. @surea11y/core is licensed under MPL-2.0, and the integration packages under MIT. Every package is published on npm.

Issues and contributions are welcome. See CONTRIBUTING.md, or core's own guide before working on a rule.

Explore the documentation →

Popular repositories Loading

  1. playwright playwright Public

    JavaScript 1

  2. puppeteer puppeteer Public

    JavaScript

  3. selenium selenium Public

    JavaScript

  4. webdriverio webdriverio Public

    JavaScript

  5. core core Public

    Deterministic WCAG accessibility testing with explicit uncertainty and standards-traceable results.

    JavaScript 1

  6. cypress cypress Public

    JavaScript

Repositories

Showing 10 of 11 repositories

Top languages

Loading…

Most used topics

Loading…