Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
borghei avatar

A11y Audit

  • 62 installs
  • 451 repo stars
  • Updated July 21, 2026
  • borghei/claude-skills

a11y-audit is a Claude skill that scans HTML files for WCAG 2.1 violations and checks color contrast against AA/AAA thresholds.

About

a11y-audit is a Claude skill that scans HTML files for WCAG 2.1 accessibility violations and checks color contrast against AA/AAA standards. A developer runs its two Python scripts to catch missing alt text, broken heading hierarchies, unlabeled form inputs, and low-contrast colors before release. It supports directory scans, CSS parsing, and JSON output so it can gate a CI pipeline on Level A findings.

  • Scans HTML files for WCAG 2.1 violations (alt text, heading order, form labels, ARIA, link text)
  • Checks color contrast against WCAG AA (4.5:1) and AAA (7:1) thresholds
  • JSON output and Level-A strict mode for CI gating

A11y Audit by the numbers

  • 62 all-time installs (skills.sh)
  • Ranked #1,157 of 2,153 Testing & QA skills by installs in the Skillselion catalog
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
At a glance

a11y-audit capabilities & compatibility

Free; runs local Python scripts with no API keys required.

Capabilities
seo audit · contrast checker · wcag scanner
Use cases
testing · code review
Pricing
Free
From the docs

What a11y-audit says it does

automated scanning of HTML files for WCAG 2.1 compliance violations and color contrast checking against AA/AAA standards
SKILL.md
It catches missing alt text, broken heading hierarchies, unlabeled form inputs, and insufficient color contrast early in development.
SKILL.md
Scans HTML files for WCAG 2.1 violations including structural, semantic, and interactive element issues.
SKILL.md
npx skills add https://github.com/borghei/claude-skills --skill a11y-audit

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs62
repo stars451
Last updatedJuly 21, 2026
Repositoryborghei/claude-skills

What it does

Audit web page HTML and CSS for WCAG 2.1 accessibility and color-contrast violations before shipping.

Who is it for?

Developers who need automated WCAG scanning of HTML templates and stylesheets in CI or PR review.

When should I use this skill?

When you need to check accessibility, audit WCAG compliance, scan HTML for a11y issues, or check color contrast.

What you get

A prioritized list of WCAG violations by conformance level plus contrast ratios, ready to remediate and re-scan.

  • WCAG violation report
  • color contrast ratio report
  • JSON output for CI

By the numbers

  • scans 8 categories of WCAG checks (alt text, heading hierarchy, form labels, ARIA, link text, lang, tab order, landmarks
  • 3 severity levels mapped to WCAG A/AA/AAA

Files

SKILL.mdMarkdownGitHub ↗

Accessibility Audit

Category: Engineering
Domain: Web Accessibility

Overview

The Accessibility Audit skill provides automated scanning of HTML files for WCAG 2.1 compliance violations and color contrast checking against AA/AAA standards. It catches missing alt text, broken heading hierarchies, unlabeled form inputs, and insufficient color contrast early in development.

Quick Start

# Scan HTML for WCAG violations
python scripts/a11y_scanner.py --file index.html

# Scan a directory of HTML files
python scripts/a11y_scanner.py --dir ./src/templates

# Check color contrast
python scripts/contrast_checker.py --foreground "#333333" --background "#ffffff"

# Parse CSS file for contrast issues
python scripts/contrast_checker.py --css styles.css

# JSON output for CI
python scripts/a11y_scanner.py --file index.html --format json

Tools Overview

a11y_scanner.py

Scans HTML files for WCAG 2.1 violations including structural, semantic, and interactive element issues.

FeatureDescription
Image alt textDetects missing or empty alt on non-decorative images
Heading hierarchyValidates h1-h6 levels are sequential
Form labelsEnsures inputs have associated label elements
ARIA attributesChecks ARIA usage correctness
Link textFlags generic text like "click here" or "read more"
Language attributeChecks for lang on html element
Tab orderDetects positive tabindex values
LandmarksValidates semantic landmark usage

contrast_checker.py

Checks color contrast ratios against WCAG AA and AAA thresholds.

FeatureDescription
Ratio calculationComputes relative luminance contrast ratio
AA compliance4.5:1 normal text, 3:1 large text
AAA compliance7:1 normal text, 4.5:1 large text
CSS parsingExtracts color/background pairs from CSS
Color suggestionsRecommends nearest compliant color

Workflows

Full Accessibility Audit

1. Scan HTML - Run a11y_scanner.py on all templates 2. Check contrast - Run contrast_checker.py on stylesheets 3. Triage - Prioritize Level A violations first 4. Remediate - Fix critical issues (alt text, form labels, headings) 5. Re-scan - Verify fixes pass all checks

CI Integration

# Gate on Level A violations
python scripts/a11y_scanner.py --dir ./templates --format json --level A --strict

# Check CSS contrast
python scripts/contrast_checker.py --css ./static/css/main.css --format json

Development Workflow

1. Pre-commit - Quick scan of changed HTML files 2. PR review - Full scan as part of review checklist 3. Staging audit - Comprehensive scan before release 4. Monitoring - Regular scheduled audits

Reference Documentation

  • WCAG Guidelines - Conformance levels, success criteria, common fixes

Common Patterns Quick Reference

WCAG Levels

LevelDescriptionTypical Requirement
AMinimum baselineLegal compliance
AAIndustry standardMost regulations, ADA
AAAEnhancedBest practice goal

Contrast Ratios

ContextAAAAA
Normal text (<18pt)4.5:17:1
Large text (>=18pt bold or >=14pt)3:14.5:1
UI components3:13:1

Quick Fixes

IssueFix
Missing alt text<img alt="Description of image">
Skipped headingUse sequential h1 through h6
No form label<label for="inputId">Label</label>
Generic link textReplace "click here" with descriptive text
Missing lang<html lang="en">
Positive tabindexUse tabindex="0" or tabindex="-1" only

Severity Mapping

  • CRITICAL - WCAG Level A violations
  • WARNING - WCAG Level AA violations
  • INFO - WCAG Level AAA recommendations

Related skills

FAQ

What contrast ratios does it check?

WCAG AA requires 4.5:1 for normal text and 3:1 for large text; AAA requires 7:1 for normal text and 4.5:1 for large text.

Can it run in CI?

Yes. Run a11y_scanner.py with --format json --level A --strict to gate a build on Level A violations.

Testing & QAtestingfrontend

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.