Skip to content

Commit b4679d7

Browse files
jonfroehlichclaude
andcommitted
Point check_a11y.py deprecation at html-proofer (not pa11y-ci)
Decided to standardize on the Jekyll-native html-proofer gem for content QA (missing alt + broken links + HTML validity, no new toolchain) rather than a Node/Chromium pa11y stack. Update the deprecation notes accordingly (#110). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 parent 90121a7 commit b4679d7

2 files changed

Lines changed: 13 additions & 12 deletions

File tree

scripts/README.md

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ Python utilities that bulk-edit or generate content across the textbook. They ar
2727
| [`fix_embedded_media.py`](fix_embedded_media.py) | Normalize `<video>` inline styles and wrap bare YouTube iframes responsively. | `--run` |
2828
| [`update_lesson_nav.py`](update_lesson_nav.py) | Migrate old `.btn` lesson nav to card-style `<nav class="lesson-nav">` (rewrites `.md``.html`). | `--run` |
2929
| [`fix_arduino_urls.py`](fix_arduino_urls.py) | Migrate old `arduino.cc` URLs to `docs.arduino.cc`. **Untested/brittle — use with care.** | `--apply` |
30-
| [`check_a11y.py`](check_a11y.py) | **Deprecated** local-only a11y spot-check (iframe `title`, video `aria-label`, image alt). **Not a CI gate** — superseded by pa11y-ci. Read-only. | _(none)_ |
30+
| [`check_a11y.py`](check_a11y.py) | **Deprecated** local-only a11y spot-check (iframe `title`, video `aria-label`, image alt). **Not a CI gate** — superseded by html-proofer. Read-only. | _(none)_ |
3131

3232
## Details
3333

@@ -96,10 +96,11 @@ YouTube `<iframe>`s missing `title=`, `<video>`s missing `aria-label`, and image
9696
with empty alt (`![](...)`). Same published-page scope and draft/contributor
9797
exemptions as `check_seo_frontmatter.py`.
9898

99-
> **Not a CI gate.** Accessibility enforcement is moving to off-the-shelf
100-
> [`pa11y-ci`](https://github.com/pa11y/pa11y-ci) (axe-core, run against the built
101-
> site), which covers far more of WCAG. Do **not** wire this script into
102-
> `content-lint.yml`; once pa11y-ci is in place it can be deleted (see issue #110).
99+
> **Not a CI gate.** Content QA is moving to the off-the-shelf, Jekyll-native
100+
> [`html-proofer`](https://github.com/gjtorikian/html-proofer) gem (checks missing
101+
> image alt, broken links, and malformed HTML against the built `_site/`, with no
102+
> new toolchain). Do **not** wire this script into `content-lint.yml`; once
103+
> html-proofer is in place it can be deleted (see issue #110).
103104
104105
```bash
105106
python scripts/check_a11y.py # full report, grouped by module

scripts/check_a11y.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
"""
22
check_a11y.py — quick local accessibility audit for embedded media and images.
33
4-
DEPRECATED — NOT a CI gate. We are standardizing on off-the-shelf pa11y-ci
5-
(axe-core, run against the built site) for accessibility enforcement, since
6-
it covers far more of WCAG (contrast, heading order, ARIA, ...) and matches
7-
the Makeability Lab website's tooling. This bespoke checker is kept only as a
8-
fast, dependency-free local spot-check for the three source-level patterns
9-
below. Do NOT wire it back into `.github/workflows/content-lint.yml`; once
10-
pa11y-ci is in place and proven, this script can be deleted. See issue #110.
4+
DEPRECATED — NOT a CI gate. We are standardizing on the off-the-shelf,
5+
Jekyll-native html-proofer gem (run against the built _site/) for content
6+
QA — it checks missing image alt, broken links, and malformed HTML, with no
7+
new toolchain. This bespoke checker is kept only as a fast, dependency-free
8+
local spot-check for the three source-level patterns below. Do NOT wire it
9+
back into `.github/workflows/content-lint.yml`; once html-proofer is in place
10+
and proven, this script can be deleted. See issue #110.
1111
1212
Scans published .md pages for three common, mechanically-detectable a11y gaps:
1313

0 commit comments

Comments
 (0)