fixing-accessibility

Audit and fix HTML accessibility issues including ARIA labels, keyboard navigation, and focus management.

1|Updated Aug 17, 2025
One-click install
npx skills add https://github.com/ratnesh-maurya/mdconverter --skill fixing-accessibility-ratnesh-maurya
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: fixing-accessibility
Source: https://github.com/ratnesh-maurya/mdconverter/tree/main/.claude/skills/fixing-accessibility
Command: npx skills add https://github.com/ratnesh-maurya/mdconverter --skill fixing-accessibility-ratnesh-maurya

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? UI code often ships with accessibility violations such as unlabeled icon buttons, non-keyboard-accessible controls, broken focus handling in dialogs, and form errors that screen readers cannot announce. This Skill audits HTML and UI code against WCAG-aligned rules and proposes minimal, targeted fixes. ## Core Features & Use Cases - Prioritized Rule Audit: Reviews code against nine ranked categories covering accessible names, keyboard access, focus and dialogs, semantics, forms and errors, announcements, contrast, media, and tool boundaries. - Concrete Fix Suggestions: Reports each violation with the exact offending snippet, a one-sentence explanation of why it matters, and a code-level fix. - Use Case: When adding a modal dialog or a form with validation to a Next.js page, run the audit to catch missing aria-describedby links, absent focus trapping, or icon-only buttons without aria-labels before shipping. ## Quick Start Ask the assistant to review a specific UI file for accessibility violations and suggest minimal fixes using the fixing-accessibility rules.

Frequently Asked Questions about fixing-accessibility

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I fix accessibility issues in HTML forms?

Link error messages to fields using aria-describedby, set aria-invalid on invalid inputs, and announce required fields. Critical errors should use aria-live so screen readers announce them, and helper text must be programmatically associated with its input.

How to make icon-only buttons accessible to screen readers?

Add an aria-label or aria-labelledby attribute to the button so it has an accessible name, and mark the decorative SVG icon with aria-hidden="true". Every interactive control must expose a meaningful name to assistive technology.

Should I use ARIA roles or native HTML elements?

Prefer native elements like button, a, and input over role-based hacks, since they provide keyboard support and semantics for free. Only add ARIA when native HTML cannot solve the problem, and include all required attributes when a role is used.

How do I handle focus management in modal dialogs?

Modals must trap focus while open, set initial focus inside the dialog on open, and restore focus to the trigger element on close. Escape should close the dialog, and opening it should not unexpectedly scroll the page.

What are the limitations of automated accessibility fixes?

This approach favors minimal, targeted fixes and does not rewrite large UI sections or migrate component libraries. For complex widgets like menus and comboboxes, established accessible primitives are recommended over custom behavior.