accessibility-audit
Skill0 starsChanged 7 months agoMITView on GitHub
Audit Vue 3 components and pages for accessibility issues: semantic HTML, ARIA roles and attributes, keyboard navigation, focus management, dynamic content announcements, and color contrast (CSS custom properties). Use when the user mentions a11y, accessibility, screen readers, keyboard navigation, WCAG, or when preparing for a production or compliance review.
55 other projects use a version of this.
Adopted by
Most recently taken up by
- ishandutta2007/Awesome-Claude-Skillstheir own version, first seen Nov 8, 2026
- ainurdev/mystical-assistanttheir own version, first seen Nov 8, 2026
- Smaui94/ClaudeSkillCollectiontheir own version, first seen Nov 8, 2026
- memi-design/design-skillstheir own version, first seen Nov 8, 2026
- Cure-Consulting-Group/ProductEngineeringSkillstheir own version, first seen Nov 4, 2026
- wormeyman/wormeyman-skillstheir own version, first seen Nov 2, 2026
Used with
Projects with it also use design-system-audit, flaky-test-triage and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
jpoindexterSkilldesign-system-audit
Audit code for design system violations - grid spacing, tokens, existing components
Also in 4 projects that use this
SUDARSHANCHAUDHARISkillflaky-test-triage
Diagnoses inconsistent test results by separating product nondeterminism, automation defects, shared data, timing, infrastructure, environment, order, and concurrency effects.
Also in 3 projects that use this
tekumaraSkillapi-design-review
Reviews REST API design by inventorying routes, finding overlapping functionality, comparing payloads and pagination, and checking resource naming, URL structure, identifiers, errors, idempotency, and timestamps. Use when asked to review API routes, compare endpoints, find redundant or superseding operations, assess contract consistency, or run a REST API design review.
Also in 3 projects that use this
BufferoverflovvSkillobservability-setup
Add production observability to a FastMCP server: request IDs, slow-request logging, structured log fields, and optional Prometheus metrics. Use when: hardening logging for production, adding request tracing or correlation IDs, setting up slow-request alerts, adding a /metrics endpoint, or improving structured log output beyond the base middleware.
Also in 3 projects that use this
mmondoraSkillinfrastructure-as-code
Infrastructure as Code with Terraform and Pulumi. State management, modularity, drift detection, secrets handling. Use when provisioning cloud resources, writing Terraform/Pulumi modules, or managing infrastructure configuration.
Also in 3 projects that use this
OpenAISkilldesign-qa
Internal prototype QA helper. Use only after a Product Design prototype, URL-to-code build, or image-to-code build has a source visual target and a rendered implementation to compare before handoff. Do not use for broad UX critique, design critique, product audits, or flow reviews; route those user-facing requests to audit.
Also in 3 projects that use this
Other versions55 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 55
- me2resh/apexyard★ 542same name
- github/replica★ 230same name
- cuellarfr/design-skills★ 94same name
- adityareddy-dev/deskstudio★ 43same name
- launchapp-dev/animus-cli★ 39same name
- kumaran-is/claude-code-onboarding★ 35same name
- 5throck/ai-workspace-standards★ 25same name
- Indium-AI-Labs/indium-agentkit★ 18same name
- Ionate-Technologies/indium-agentkit★ 17same name
- ishandutta2007/Awesome-Claude-Skills★ 16same name
45 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository2 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- vue-performance-auditSkill
The file
We split this skill into the rules it gives an agent
10 rules. 0 are common, 1 is distinctive, and 9 are very specific to this project.
0
Common
Most of the 46 edited versions we read keep these.
1
Distinctive
This author's own choices. Worth a look.
9
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 19
Check that headings are hierarchical (h1 → h2 → h3), not skipped.
- Very specific: line 20
Verify form inputs are wrapped in <label> or linked via for / aria-labelledby.
- Very specific: line 24
Check that aria-label or aria-labelledby is present on icon-only buttons.
- Very specific: line 25
Verify aria-expanded, aria-controls, and aria-haspopup are toggled correctly in dropdowns and modals.
- Distinctive: line 31
Check that modals and dialogs implement a focus trap (focus cycles inside while open.
- Very specific: line 33
Verify @keydown.esc closes overlays.
- Very specific: line 36
Look for content that updates without a page navigation — these need an aria-live region (polite for status messages, assertive for errors).
- Very specific: line 38
Check that loading states have aria-busy="true" and an accessible label.
- Very specific: line 42
Verify decorative SVG icons have aria-hidden="true".
- Very specific: line 46
Check src/assets/ for CSS custom property definitions.
“Common” is measured: kept by at least 6 in 10 of the 46 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Accessibility Audit
Audit steps
- Semantic HTML in templates
- Grep
src/components/andsrc/pages/for<div @clickand<span @clickthat should be<button>or<a>. - Check that headings are hierarchical (
h1→h2→h3), not skipped. - Verify form inputs are wrapped in
<label>or linked viafor/aria-labelledby.
- Grep
- ARIA usage
- Flag
roleattributes that duplicate native semantics (e.g.,<button role="button">). - Check that
aria-labeloraria-labelledbyis present on icon-only buttons. - Verify
aria-expanded,aria-controls, andaria-haspopupare toggled correctly in dropdowns and modals.
- Flag
- Keyboard navigation
- Confirm interactive elements are reachable via Tab (no
tabindex="-1"on focusable controls except intentional focus traps). - Check that modals and dialogs implement a focus trap (focus cycles inside while open; returns to trigger on close).
- Verify
@keydown.esccloses overlays.
- Confirm interactive elements are reachable via Tab (no
- Dynamic content
- Look for content that updates without a page navigation — these need an
aria-liveregion (politefor status messages,assertivefor errors). - Check that loading states have
aria-busy="true"and an accessible label.
- Look for content that updates without a page navigation — these need an
- Images and icons
- Grep for
<imgmissingaltattributes. - Verify decorative SVG icons have
aria-hidden="true". - Confirm meaningful icons (standalone buttons) have
aria-label.
- Grep for
- Color and contrast (CSS layer)
- Check
src/assets/for CSS custom property definitions. - Flag any hardcoded hex/rgb color values in
<style scoped>blocks that bypass the theming system — these are untestable for contrast at a glance.
- Check
Output format
Group findings by component file, then by category:
- 🔴 Blocker — fails WCAG 2.1 AA (keyboard trap, missing alt, no label)
- 🟡 Warning — degrades experience for assistive technology users
- 🟢 Enhancement — WCAG AAA or UX improvement
For WCAG criteria mapping, see WCAG-QUICK-REF.md.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

