Skip to content

v0.1.0 — Sightline

Latest

Choose a tag to compare

@Ax1zz Ax1zz released this 03 Aug 18:10

axe-core tests 1 of the 9 success criteria WCAG 2.2 added. Sightline tests 8.

pip install sightline-a11y
python -m playwright install chromium
sightline https://example.com --level AA --html report.html

Verify the gap yourself — axe-core publishes every WCAG tag it emits:

curl -s https://raw.githubusercontent.com/dequelabs/axe-core/develop/doc/rule-descriptions.md \
  | grep -oE "wcag[0-9a-z]+" | sort -u

One WCAG 2.2 tag in the whole list: wcag258, on a single target-size rule marked "needs review".

What's in 0.1.0

SC Criterion Level
2.4.11 / 2.4.12 Focus Not Obscured AA / AAA
2.4.13 Focus Appearance AAA
2.5.7 Dragging Movements AA
2.5.8 Target Size (Minimum) AA
3.2.6 Consistent Help A
3.3.8 / 3.3.9 Accessible Authentication AA / AAA

Real Tab traversal with elementFromPoint hit testing, pixel-diffed focus
indicators via a dependency-free PNG decoder, addEventListener instrumentation
for drag detection, and a genuine cancelable paste probe. Terminal, JSON and
standalone HTML reports. Exit code 1 on failure for CI.

One runtime dependency (Playwright). No network calls, no telemetry, no model
inference. 55 tests.

What it deliberately does not do

3.3.7 Redundant Entry is not implemented — it needs a model of a multi-step
process, and any automated verdict would be a guess. Heuristic checks report
review, never fail. And it does not re-implement axe-core: run both.

Full notes, limitations and a German README in the repository.