accessibility-auditor

webmasterarbez's avatarfrom webmasterarbez

Audits e-learning content for WCAG 2.1 AA accessibility compliance. Use when checking accessibility, auditing content, reviewing for compliance, or when user mentions "accessibility check," "WCAG audit," "a11y review," "accessibility compliance," or "screen reader."

⭐0stars🔀0forks📁View on GitHub🕐Updated Jan 3, 2026⬇️3downloads

When & Why to Use This Skill

The Accessibility Auditor is a specialized Claude skill designed to evaluate e-learning content against WCAG 2.1 AA standards. It streamlines the 'a11y' review process by providing a structured framework for identifying critical accessibility barriers, such as screen reader compatibility, keyboard navigation, and color contrast. By offering actionable remediation advice and a professional audit report template, it helps developers and content creators ensure their digital learning materials are inclusive, compliant, and user-friendly.

Use Cases

  • Pre-launch Compliance Audit: Perform a comprehensive review of online course modules to ensure they meet WCAG 2.1 AA requirements before public release.
  • Automated Report Generation: Use the built-in template to create professional accessibility audit reports that categorize issues by severity (Critical, High, Medium) for stakeholders.
  • Code Remediation: Identify and fix inaccessible HTML/CSS elements, such as missing ARIA labels, improper heading structures, or low-contrast color schemes using provided examples.
  • Quality Assurance Training: Serve as a guide for QA teams to learn manual testing techniques, including screen reader commands (NVDA/VoiceOver) and keyboard-only navigation.
  • Content Accessibility Review: Audit non-text elements like videos and images to ensure the presence of synchronized captions, transcripts, and descriptive alt text.
nameaccessibility-auditor
descriptionAudits e-learning content for WCAG 2.1 AA accessibility compliance. Use when checking accessibility, auditing content, reviewing for compliance, or when user mentions "accessibility check," "WCAG audit," "a11y review," "accessibility compliance," or "screen reader."

Accessibility Auditor

Guide for auditing e-learning content against WCAG 2.1 AA standards.

Quick Audit Checklist

Critical Issues (Must Fix)

  • Images have alt text - All informative images have descriptive alt text
  • Videos have captions - All video content has synchronized captions
  • Keyboard accessible - All interactive elements work with keyboard only
  • Color contrast - Text meets 4.5:1 ratio (3:1 for large text)
  • Focus visible - Keyboard focus indicator is clearly visible
  • No auto-play - Audio/video doesn't play automatically

High Priority (Should Fix)

  • Headings structured - Proper heading hierarchy (H1→H2→H3)
  • Links descriptive - Link text describes destination
  • Forms labeled - All form fields have visible labels
  • Error messages clear - Errors identify field and suggest fix
  • Audio has transcript - All audio-only content has text alternative
  • No flashing - Content doesn't flash more than 3 times/second
  • Reading level - Content at 8th grade level where possible
  • Consistent navigation - Same elements in same location
  • Timeout warnings - Users warned before session timeout
  • Skip links - Skip to main content link provided
  • Language set - Page language declared in HTML

Audit Report Template

# Accessibility Audit Report

**Course:** [Course Name]
**Date:** [Audit Date]
**Auditor:** [Name]
**Standard:** WCAG 2.1 AA

## Executive Summary

**Overall Status:** [Pass / Fail / Conditional Pass]
**Critical Issues:** [Count]
**High Priority Issues:** [Count]
**Recommendations:** [Count]

## Findings by Category

### 1. Perceivable

#### 1.1 Text Alternatives
| Issue | Location | Severity | Recommendation |
|-------|----------|----------|----------------|
| [Issue] | [Page/Screen] | Critical/High/Medium | [Fix] |

#### 1.2 Time-based Media
| Issue | Location | Severity | Recommendation |
|-------|----------|----------|----------------|

#### 1.3 Adaptable
| Issue | Location | Severity | Recommendation |
|-------|----------|----------|----------------|

#### 1.4 Distinguishable
| Issue | Location | Severity | Recommendation |
|-------|----------|----------|----------------|

### 2. Operable

#### 2.1 Keyboard Accessible
| Issue | Location | Severity | Recommendation |
|-------|----------|----------|----------------|

#### 2.4 Navigable
| Issue | Location | Severity | Recommendation |
|-------|----------|----------|----------------|

### 3. Understandable

#### 3.1 Readable
| Issue | Location | Severity | Recommendation |
|-------|----------|----------|----------------|

#### 3.3 Input Assistance
| Issue | Location | Severity | Recommendation |
|-------|----------|----------|----------------|

### 4. Robust

#### 4.1 Compatible
| Issue | Location | Severity | Recommendation |
|-------|----------|----------|----------------|

## Remediation Priority

### Critical (Fix Immediately)
1. [Issue and location]
2. [Issue and location]

### High (Fix Before Launch)
1. [Issue and location]
2. [Issue and location]

### Medium (Fix in Next Update)
1. [Issue and location]
2. [Issue and location]

## Sign-off

| Role | Name | Date |
|------|------|------|
| Auditor | | |
| Remediation Lead | | |
| Approver | | |

Common Issues and Fixes

Images

Issue: Missing alt text

<!-- Bad -->
<img src="diagram.png">

<!-- Good -->
<img src="diagram.png" alt="Sales process flowchart showing 5 steps from lead to close">

Issue: Decorative image not marked

<!-- Bad -->
<img src="decorative-line.png" alt="decorative line">

<!-- Good -->
<img src="decorative-line.png" alt="" role="presentation">

Color Contrast

Issue: Low contrast text

/* Bad - 2.5:1 ratio */
color: #999999;
background-color: #ffffff;

/* Good - 4.5:1 ratio */
color: #595959;
background-color: #ffffff;

Issue: Color-only indication

<!-- Bad -->
<p style="color: red;">Error in field above</p>

<!-- Good -->
<p style="color: red;"><span aria-hidden="true">⚠</span> Error: Please enter a valid email</p>

Keyboard Navigation

Issue: Mouse-only interaction

<!-- Bad -->
<div onclick="showMore()">Show more</div>

<!-- Good -->
<button onclick="showMore()">Show more</button>

<!-- Or if div is required -->
<div role="button" tabindex="0" onclick="showMore()" onkeypress="if(event.key==='Enter')showMore()">
  Show more
</div>

Issue: Hidden focus indicator

/* Bad */
:focus { outline: none; }

/* Good */
:focus {
  outline: 3px solid #005fcc;
  outline-offset: 2px;
}

Forms

Issue: Missing labels

<!-- Bad -->
<input type="text" placeholder="Email">

<!-- Good -->
<label for="email">Email address</label>
<input type="email" id="email" placeholder="name@example.com">

Issue: Error not associated with field

<!-- Bad -->
<input type="email" id="email">
<span style="color:red">Invalid email</span>

<!-- Good -->
<input type="email" id="email" aria-describedby="email-error" aria-invalid="true">
<span id="email-error" role="alert">Please enter a valid email address</span>

Headings

Issue: Skipped heading levels

<!-- Bad -->
<h1>Course Title</h1>
<h3>First Topic</h3>  <!-- Skipped H2 -->

<!-- Good -->
<h1>Course Title</h1>
<h2>Module 1</h2>
<h3>First Topic</h3>

Video/Audio

Issue: Missing captions

<!-- Bad -->
<video src="training.mp4" controls></video>

<!-- Good -->
<video src="training.mp4" controls>
  <track kind="captions" src="training-captions.vtt" srclang="en" label="English" default>
</video>

Testing Tools

Automated Testing

Tool Purpose URL
WAVE Browser extension for quick checks wave.webaim.org
axe DevTools Detailed accessibility testing deque.com/axe
Lighthouse Chrome DevTools audit Built into Chrome
Color Contrast Analyzer Color testing paciellogroup.com

Manual Testing

Test How
Keyboard only Tab through entire course without mouse
Screen reader Test with NVDA (Windows) or VoiceOver (Mac)
Zoom 200% Verify content reflows, nothing hidden
Color blindness Use simulator extension
Captions Verify accuracy and timing

Screen Reader Testing Commands

NVDA (Windows):

  • Insert + Down Arrow - Read all
  • H - Next heading
  • Tab - Next focusable element
  • Insert + F7 - Elements list

VoiceOver (Mac):

  • VO + A - Read all
  • VO + Command + H - Next heading
  • Tab - Next focusable element
  • VO + U - Rotor (elements list)

Severity Definitions

Severity Definition Action
Critical Prevents access to content for users with disabilities Must fix before launch
High Significant barrier to access Should fix before launch
Medium Causes difficulty but workaround exists Fix in next update
Low Minor inconvenience Fix when possible

WCAG Success Criteria Reference

Level A (Minimum)

  • 1.1.1 Non-text Content
  • 1.2.1 Audio-only and Video-only
  • 1.3.1 Info and Relationships
  • 1.4.1 Use of Color
  • 2.1.1 Keyboard
  • 2.4.1 Bypass Blocks
  • 3.1.1 Language of Page
  • 4.1.1 Parsing

Level AA (Target)

  • 1.2.4 Captions (Live)
  • 1.2.5 Audio Description
  • 1.4.3 Contrast (Minimum)
  • 1.4.4 Resize Text
  • 2.4.5 Multiple Ways
  • 2.4.6 Headings and Labels
  • 3.2.3 Consistent Navigation
  • 3.2.4 Consistent Identification

File Output

Save reports to: course-template/04-evaluation/reports/

Naming: accessibility-audit-[date].md