Skip to main content
Introducing packages.sweber.dev
All posts
Release1 min read

Surjection 0.4.0 released

Screenshots of every affected element as evidence in client reports, and a regression check that tells you when a client site got worse overnight.

By Seya Weber

Surjection 0.4.0 is about what you hand to the client and what happens after the audit. A list of selectors is easy to produce. A picture of the problem and an alarm when it comes back are what clients pay an agency for.

What is new in 0.4.0

Free: screenshots as evidence. --screenshots a11y-shots saves a picture of every affected element, with a little context around it: up to five per finding and forty per page. The paths are stored in the results file. Elements inside iframes or shadow DOM and invisible elements are skipped.

npx surjection check --config surjection.config.json \
  --out-json a11y.json --screenshots a11y-shots

Pro: reports with evidence. surjection-report embeds the pictures next to the selector and the fix instruction, so the client sees the low-contrast opening hours instead of reading p. The report stays one self-contained file, as HTML or PDF. The live demo has an example.

Pro: monitoring. surjection-history regressions compares the latest run of a project with the previous one and lists what is new, in German, Swiss German, French, Italian and English. It exits with 1 when new issues reach --fail-on, so a scheduled job fails and GitHub mails you.

npx surjection check --config surjection.config.json --out-json a11y.json
npx surjection-history record --results a11y.json
npx surjection-history regressions --fail-on serious --out-md monitoring.md

The docs contain a complete nightly workflow that records the run in your repository and fails on a new serious issue.

Upgrade

pnpm add -D @sweberdev/surjection@^0.4.0

Nothing breaks: screenshots are opt-in. Pro customers update the three @weber-development packages to 0.4.0.

Automated tests, with or without screenshots, find only part of all barriers. A passing run is no proof of conformance.

Package in this post

Surjection

Accessibility checks for CI and tests, client-ready reports and accessibility statements in five languages. Built on axe-core, no overlay.

pnpm add -D @sweberdev/surjection
View package

Related posts

Release

Surjection 0.7.0 released

SARIF output, dark mode and reduced-motion checks, a JSON schema for the config file, and monitoring that notifies you by webhook or mail.

Surjection
Release

Surjection 0.3.0 released

A keyboard check for focus traps and missing focus indicators, checks behind a login, and status badges per client project in Surjection Pro.

Surjection
Release

Surjection 0.5.0 released

Two more criteria tested automatically, reflow at 320 pixels and text spacing, and the manual checklist of Surjection Pro in French and Italian.

Surjection