Skip to content

Document axe standard and best-practice options - #2105

Merged
cwickham merged 10 commits into
mainfrom
axe-standard-option-docs
Jul 30, 2026
Merged

Document axe standard and best-practice options#2105
cwickham merged 10 commits into
mainfrom
axe-standard-option-docs

Conversation

@cwickham

Copy link
Copy Markdown
Member

Documents the new axe scoping options for Quarto 1.10 on docs/output-formats/html-accessibility.qmd:

  • New section "Checking against a WCAG conformance level": the standard option (nine WCAG version+level values, cumulative semantics), its two side effects (default-disabled rules for the chosen level run, e.g. AAA contrast and WCAG 2.2 target size; best-practice rules are excluded), and best-practice: true/false in both combinations. Links axe-core's rule descriptions for the full rule list.
  • Updates the "Planned work" CDN sentence: axe-core is bundled with Quarto as of 1.10, so checks work offline.
  • Adds fig-alt to the two example screenshots — an axe site audit of this very page flagged them as missing alt text.

Documents quarto-dev/quarto-cli#14682 (standard/best-practice, quarto-dev/quarto-cli#14607) and quarto-dev/quarto-cli#14677 (vendored axe-core). Should merge after those land; draft until then.

@cwickham

Copy link
Copy Markdown
Member Author

Note for before marking ready: the example screenshots (images/axe-violation.png, light/dark) show the current overlay and will be stale once the open quarto-cli axe PRs merge — quarto-dev/quarto-cli#14676 (violations sorted by severity/standard) and quarto-dev/quarto-cli#14680 (left-aligned overlay polish) both change how the report looks, and quarto-dev/quarto-cli#14604 (already merged) added the WCAG conformance labels the current screenshots predate. Redo them against a 1.10 prerelease build that includes the whole stack.

@github-actions

Copy link
Copy Markdown
Contributor

📝 Preview Deployment

🔍 Full site preview: https://deploy-preview-2105.quarto.org

🔄 Modified Documents

@github-actions
github-actions Bot temporarily deployed to pull request July 13, 2026 23:07 Inactive
@github-actions

Copy link
Copy Markdown
Contributor

📝 Preview Deployment

🔍 Full site preview: https://deploy-preview-2105.quarto.org

🔄 Modified Documents

@github-actions
github-actions Bot temporarily deployed to pull request July 29, 2026 20:37 Inactive
@github-actions

Copy link
Copy Markdown
Contributor

📝 Preview Deployment

🔍 Full site preview: https://deploy-preview-2105.quarto.org

🔄 Modified Documents

@cwickham
cwickham changed the base branch from prerelease to main July 29, 2026 20:39
@github-actions
github-actions Bot temporarily deployed to pull request July 29, 2026 20:45 Inactive
@github-actions

Copy link
Copy Markdown
Contributor

📝 Preview Deployment

🔍 Full site preview: https://deploy-preview-2105.quarto.org

🔄 Modified Documents

@github-actions
github-actions Bot temporarily deployed to pull request July 29, 2026 20:53 Inactive
cwickham added 5 commits July 29, 2026 13:56
Adds a section on scoping accessibility checks to a WCAG conformance
level (quarto-dev/quarto-cli#14607, quarto-dev/quarto-cli#14682) and
updates the CDN note now that axe-core is bundled with Quarto 1.10
(quarto-dev/quarto-cli#14677).

Also adds fig-alt to the two example screenshots — an axe site audit
of this page flagged them as missing alt text (the bracket text of a
figure becomes the caption, not the alt).
@cwickham
cwickham force-pushed the axe-standard-option-docs branch from 686ca81 to ecd4379 Compare July 29, 2026 20:59
@github-actions
github-actions Bot temporarily deployed to pull request July 29, 2026 21:06 Inactive
@github-actions

Copy link
Copy Markdown
Contributor

📝 Preview Deployment

🔍 Full site preview: https://deploy-preview-2105.quarto.org

🔄 Modified Documents

@github-actions
github-actions Bot temporarily deployed to pull request July 29, 2026 21:26 Inactive
@github-actions

Copy link
Copy Markdown
Contributor

📝 Preview Deployment

🔍 Full site preview: https://deploy-preview-2105.quarto.org

🔄 Modified Documents

cwickham added 2 commits July 30, 2026 09:40
- Promote the interactive workflow to its own section and move the
  example up into it, with a new DevTools console screenshot for the
  default axe: true output
- Rename Customization to Output location and attach the existing
  overlay screenshots to output: document
- Reframe Planned work as Site-wide accessibility checks
- Add capture-axe-devtools.mjs (window-ID capture of headed Chromium
  with DevTools open) and a console.qmd example page
Adds a manual array to manifest.json for screenshots capture.js can't
produce (currently axe-console, which needs the DevTools panel). The
schema validates entries, --list and list.js show them, and
--name <manual-entry> points at the producing script instead of failing.
@cwickham
cwickham force-pushed the axe-standard-option-docs branch from 3a123d8 to 59e721f Compare July 30, 2026 16:45
@github-actions
github-actions Bot temporarily deployed to pull request July 30, 2026 16:53 Inactive
@github-actions

Copy link
Copy Markdown
Contributor

📝 Preview Deployment

🔍 Full site preview: https://deploy-preview-2105.quarto.org

🔄 Modified Documents

@cwickham

Copy link
Copy Markdown
Member Author

@cderv I ended up re-working this page to clarify the structure, but that involved a new screenshot that didn't fit great in the existing screenshotting infrastructure. I'm merging now so I can refer to this in the 1.10 blog post, but you might want to take a look at the changes I made in _tools/screenshots to allow for more manual screenshots.

@cwickham
cwickham marked this pull request as ready for review July 30, 2026 17:09
@cwickham
cwickham merged commit 6979d02 into main Jul 30, 2026
4 checks passed
@cwickham
cwickham deleted the axe-standard-option-docs branch July 30, 2026 17:09
@github-actions

Copy link
Copy Markdown
Contributor

Successfully created backport PR for prerelease:

cwickham added a commit that referenced this pull request Jul 30, 2026
* Document axe standard and best-practice options

Adds a section on scoping accessibility checks to a WCAG conformance
level (quarto-dev/quarto-cli#14607, quarto-dev/quarto-cli#14682) and
updates the CDN note now that axe-core is bundled with Quarto 1.10
(quarto-dev/quarto-cli#14677).

Also adds fig-alt to the two example screenshots — an axe site audit
of this page flagged them as missing alt text (the bracket text of a
figure becomes the caption, not the alt).

* Clarify that choosing a standard never adds deprecated rules

* Update axe overlay fig-alt to describe severity and conformance label

* Add prerelease callout for 1.10 axe options

* Remove prerelease callout shortcode

* Replace introduced-in callout notes with prerelease-callout shortcodes

* Simplify

* Dedent best-practice YAML example left over from removed bullet list

* Reorganize accessibility page around interactive and site-wide checks

- Promote the interactive workflow to its own section and move the
  example up into it, with a new DevTools console screenshot for the
  default axe: true output
- Rename Customization to Output location and attach the existing
  overlay screenshots to output: document
- Reframe Planned work as Site-wide accessibility checks
- Add capture-axe-devtools.mjs (window-ID capture of headed Chromium
  with DevTools open) and a console.qmd example page

* Register manual captures in the screenshot manifest

Adds a manual array to manifest.json for screenshots capture.js can't
produce (currently axe-console, which needs the DevTools panel). The
schema validates entries, --list and list.js show them, and
--name <manual-entry> points at the producing script instead of failing.

(cherry picked from commit 6979d02)

Co-authored-by: Charlotte Wickham <charlotte.wickham@posit.co>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant