diff --git a/.gitignore b/.gitignore index cb3908a..18a34e8 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,8 @@ node_modules/ build/ .cache/ .DS_Store -*.log \ No newline at end of file +*.log + +# Playwright test output (created by `npx playwright test`). +test-results/ +playwright-report/ diff --git a/docs/a11y-checklist.md b/docs/a11y-checklist.md new file mode 100644 index 0000000..0b9a6f0 --- /dev/null +++ b/docs/a11y-checklist.md @@ -0,0 +1,26 @@ +# Accessibility Checklist — Filtered Image block + +This is a manual checklist for the team to verify on every release. + +## Rendered output + +- [ ] The `` element has the `alt` attribute set to the user's entered text. +- [ ] The `` is wrapped in a `
` with a `
` only when the user supplied a caption. +- [ ] The filter class is on the `
`, not the ``. The visible filter is presentational and does not affect the accessible name. +- [ ] Lighthouse accessibility score >= 95 on a page with at least one Filtered Image block. +- [ ] axe-core run on the public URL returns zero violations. + +## Editor UI + +- [ ] The preset grid is reachable by Tab and arrow keys. +- [ ] Each preset button has `aria-pressed="true"` when active. +- [ ] Each preset swatch is a `