Skip to content
| Marketplace
Sign in
Visual Studio Code>Linters>A11yInspect Accessibility Testing ToolNew to Visual Studio Code? Get it now.
A11yInspect Accessibility Testing Tool

A11yInspect Accessibility Testing Tool

BarrierBreak Solutions Pvt Ltd

|
3 installs
| (0) | Free
Accessibility testing for HTML, JSX/TSX, Vue, Angular, Markdown, and MDX files using BarrierBreak's Ruleset
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

A11yInspect Accessibility Testing Tool

A11yInspect is a comprehensive accessibility checking tool for VS Code and CI/CD pipelines — powered by BarrierBreak custom rulesets. Runs accessibility checks to meet Web Content Accessibility Guideline (WCAG) for HTML, JSX/TSX, Vue, Angular, Markdown, and MDX files.

Building with accessibility in mind will ensure that your digital assets are accessible to people with disabilities.

Licensing

Free Pro Enterprise
License key Not required Pro key Enterprise key
Core
WCAG accessibility checks ✓ ✓ ✓
Diagnostics in Problems panel ✓ ✓ ✓
Sidebar issues panel ✓ ✓ ✓
Run on save / open ✓ ✓ ✓
Intellisense & Editor
Context-aware attribute completions — ✓ ✓
Hover accessibility tips — ✓ ✓
Code action quick fixes — ✓ ✓
Scan Workspace — ✓ ✓
Enterprise
Show pass diagnostics — — ✓
CLI for CI/CD pipelines — — ✓
A11yAssist (AI-powered)
Inline ghost text suggestions — — ✓
A11yAssist AI: Explain issue — — ✓
A11yAssist AI: Fix element — — ✓

Activating a License

  1. Go to VS Code Settings → search for A11yInspect
  2. Enter your license key in the License Key field
  3. Features unlock automatically based on your tier

Visit A11yInspect for Visual Studio Code Extension for subscription information.


Supported File Types

File Type Details
HTML Standard HTML files
React (JSX/TSX) Components with cross-component resolution
Vue Single-file components (<template> section)
Angular Inline templates in .component.ts files
Markdown Converted to HTML for checking
MDX Markdown + JSX components

VS Code Extension

Installation

  1. Open VS Code
  2. Go to Extensions (Ctrl+Shift+X / Cmd+Shift+X)
  3. Search for A11yInspect
  4. Click Install

Core Features

WCAG Accessibility Checks

A11yInspect runs WCAG checks powered by BarrierBreak custom rulesets on every supported file. Issues are classified as Fail, Validate, or Suggestion based on their impact, severity and success criteria.

Type Description
Fail Critical accessibility violations that must be fixed
Validate Issues that require manual review to confirm
Suggestion Best practice recommendations
Pass Checks the element passed (Only in Enterprise)

Diagnostics in Problems Panel

All accessibility issues are surfaced directly in VS Code's built-in Problems panel (Ctrl+Shift+M / Cmd+Shift+M), just like lint errors. Each issue shows the rule code, issue type, and the affected line — making it easy to scan issues without leaving your workflow.

Run on Save / Open

A11yInspect can run checks automatically:

  • On save — opt-in, runs when you save a supported file (a11yinspect.runOnSave)
  • On open — opt-in, runs when you open a supported file (a11yinspect.runOnOpen)

Both can be toggled independently in VS Code Settings.

You can also trigger a check manually at any time by right-clicking in the editor and selecting A11yInspect: Run Accessibility Check, or by using the run button in the sidebar panel toolbar.


Sidebar Issues Panel

The A11yInspect panel appears in the VS Code Activity Bar (side icon bar) and provides a dedicated tree view of all accessibility issues across your workspace.

  • Group by severity — Issues grouped as Fails → Validates → Suggestions → Passes; within each group sorted by line number
  • Group by file — Issues organised under their source file, sorted Fail → Validate → Suggestion → Pass within each file
  • Click to navigate — Click any issue in the tree to jump directly to its location in the editor
  • Toolbar actions — Run check, Scan workspace, Refresh, and Clear all buttons in the panel header
  • Live updates — The panel refreshes automatically when a check completes

Switch grouping mode via the toolbar or via a11yinspect.panel.groupBy in settings.

Scan Workspace (Pro / Enterprise)

The Scan Workspace button (search icon, second in the panel toolbar) scans all supported files in your workspace at once. It is also available from the Command Palette as A11yInspect: Scan Workspace. Requires a Pro or Enterprise license — Free users will see an upgrade prompt.

When triggered, a file picker opens with every supported file pre-selected. Deselect any files you want to skip, then confirm to start the scan. A single progress bar tracks the scan (Scanning: filename (X/N)), and a summary notification shows the total issue counts when complete. All results are accumulated in the sidebar panel across every scanned file.

Running Run Accessibility Check on a single file (via right-click, toolbar, or Command Palette) clears the panel first and shows only that file's results.


Intellisense & Editor Features (Pro)

Context-Aware Attribute Completions

As you type inside an HTML or JSX tag, A11yInspect suggests the accessibility attributes most relevant to that element — alt for <img>, aria-label for <button>, role for custom elements, and so on. Suggestions are tailored per element type, so you only see what's applicable.

Hover Accessibility Tips

Hover over any HTML element to see a structured accessibility guidance panel — what attributes are missing, what values are expected, and relevant WCAG references. Tips are organised by category for easy scanning.

Code Action Quick Fixes

When a diagnostic underline appears on an element, a lightbulb (💡) shows in the gutter. Clicking it presents a list of pre-written, rule-based fixes — e.g. "Add alt attribute", "Add role" — that can be applied instantly without manual editing. No AI required; these are static fixes based on the accessibility rule.


Show Pass Diagnostics (Enterprise)

By default, only issues are shown. Enterprise users can enable pass diagnostics to see which checks an element successfully passed. This is useful for audits and compliance reporting where proof of passing checks is needed.

Enable via a11yinspect.showPasses: true in settings.


AI Integration — A11yAssist (Enterprise)

A11yAssist AI is inluded in A11yInspect providing AI-powered accessibility fixes and explanations. All AI features require an Enterprise license plus both apiKey and apiEndpoint to be configured.

Feature Trigger What You See
Inline Ghost Text Type <img (space after tag) Ghost text suggests alt="..." inline as you type
Explain Issue Hover on element with issues, click lightbulb → "Explain", or click the explain icon on a sidebar issue "A11yAssist Suggests:" with a contextual AI explanation of the issue
Fix Element Click "Fix using A11yAssist" in hover, lightbulb, CodeLens, or the fix icon on a sidebar issue AI rewrites the element with a proper accessible fix

How Inline Ghost Text Works

Ghost text appears directly in your editor as greyed-out text — you haven't typed it, it's just a preview suggestion:

  1. Trigger — Type an opening tag followed by a space, e.g. <img or <button
  2. Detection — A11yInspect checks the element type and identifies missing required accessibility attributes
  3. AI suggestion — A contextual prompt is sent to your configured AI provider, which returns the appropriate attribute and value
  4. Ghost text appears — The suggestion renders inline at your cursor, e.g. alt="product thumbnail"
  5. Accept or ignore — Press Tab to insert it, or keep typing to dismiss it

Ghost text is non-blocking and only appears when A11yInspect detects a likely accessibility gap — not on every keystroke. It requires an Enterprise license and a configured AI provider (apiKey + apiEndpoint).

Configuration

{
  "a11yinspect.licenseKey": "",
  "a11yinspect.runOnSave": false,
  "a11yinspect.runOnOpen": false,
  "a11yinspect.ignore": [],
  "a11yinspect.rootElement": "",
  "a11yinspect.hideElements": "",
  "a11yinspect.intellisense.enabled": true,
  "a11yinspect.intellisense.showHover": true,
  "a11yinspect.showFail": true,
  "a11yinspect.showValidate": true,
  "a11yinspect.showSuggestions": true,
  "a11yinspect.showPasses": false
}

Settings

Setting Default Description
a11yinspect.licenseKey - License key for Pro or Enterprise features
a11yinspect.runOnSave false Run check on file save
a11yinspect.runOnOpen false Run check when opening files
a11yinspect.ignore [] Rule codes or types to ignore
a11yinspect.rootElement "" CSS selector for the root element to check (empty = entire document)
a11yinspect.hideElements "" CSS selector for elements to exclude from checks
a11yinspect.intellisense.enabled true Enable intellisense features (requires Pro)
a11yinspect.intellisense.showHover true Show hover tips (requires Pro)
a11yinspect.panel.enabled true Show sidebar panel
a11yinspect.panel.groupBy severity Group by severity or file
a11yinspect.showFail true Show Fail diagnostics (critical violations)
a11yinspect.showValidate true Show Validate diagnostics (require manual review)
a11yinspect.showSuggestions true Show Suggestion diagnostics (best practice recommendations)
a11yinspect.showPasses false Show Pass diagnostics (requires Enterprise)
a11yinspect.useASTParser true AST-based JSX/TSX parsing for accurate positions
a11yinspect.componentDepth 2 Max depth for resolving nested component imports (1-20)

AI Settings

Setting Default Description
a11yinspect.ai.apiKey - API key for the AI provider
a11yinspect.ai.apiEndpoint - API endpoint URL
a11yinspect.ai.provider openai Provider: openai, anthropic, google, azure, ollama, custom
a11yinspect.ai.model - Model name (uses provider default if empty)
a11yinspect.ai.autoFix true Enable inline ghost text suggestions (Enterprise)
a11yinspect.ai.explainIssues true AI explanations in hover tooltips (Enterprise)
a11yinspect.ai.maxTokens 1024 Max response tokens
a11yinspect.ai.temperature 0.3 Response creativity (0-2)

Azure OpenAI endpoints (containing .openai.azure.com) are auto-detected and use the api-key header. All other endpoints use Authorization: Bearer.


CLI Tool (Enterprise)

The CLI requires an Enterprise license key. Provide it via --license-key=<key> argument or the A11YINSPECT_LICENSE_KEY environment variable.

Usage

# Static file analysis
a11yinspect --license-key=YOUR_KEY "src/**/*.html"
a11yinspect --license-key=YOUR_KEY --format=sarif --output=a11y-report.sarif "**/*.html"

# URL crawling (scan live website)
a11yinspect --license-key=YOUR_KEY --crawl --url=https://example.com --max-pages=100

# With reporters
a11yinspect --license-key=YOUR_KEY --github --fail-on=error "src/**/*.{html,jsx,tsx}"

CLI Options

Options:
  -h, --help                Show help message
  -v, --version             Show version number
  --license-key=<key>       Enterprise license key (or set A11YINSPECT_LICENSE_KEY)
  --config=<path>           Path to config file (default: a11yinspect.config.json)
  --format=<format>         Output format: json, junit, sarif, html, console
  --output=<path>           Output file path
  --severity=<level>        Minimum severity: error, warning, notice, pass
  --fail-on=<level>         Fail CI on: error, warning, notice, none
  --ignore=<codes>          Comma-separated rule codes to ignore
  --exclude=<patterns>      Comma-separated patterns to exclude

URL Crawling:
  --crawl                   Enable URL crawling mode
  --url=<url>               URL to crawl (can specify multiple times)
  --max-pages=<n>           Maximum pages to crawl (default: 50)
  --depth=<n>               Maximum crawl depth (default: 3)
  --follow-links            Follow links within same domain
  --wait-time=<ms>          Wait time for page load (default: 1000)
  --viewport=<WxH>          Viewport size (default: 1280x720)

Reporters (opt-in, only enabled ones run):
  --github                  Enable GitHub reporter (uses GITHUB_TOKEN)
  --github-annotations      Add PR annotations
  --github-grouped          Use grouped issue mode
  --jira=<url>              Jira base URL (uses JIRA_TOKEN)
  --jira-project=<key>      Jira project key
  --api=<url>               Custom API endpoint URL
  --api-token=<token>       API bearer token

Reporters are opt-in — only the ones you explicitly pass will run. For example, --github alone enables only GitHub Issues without Jira or API reporting. See CI/CD Documentation for details.

Output Formats

Format Description Use Case
console Human-readable output Local development
json JSON report Custom processing
junit JUnit XML Jenkins, CI test reports
sarif SARIF format GitHub Code Scanning
html Standalone HTML Shareable reports

GitHub Action (Enterprise)

name: Accessibility Check

on: [push, pull_request]

jobs:
  a11y:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - uses: barrierbreak/a11yinspect@v1
        with:
          license-key: ${{ secrets.A11YINSPECT_LICENSE_KEY }}
          files: 'src/**/*.{html,jsx,tsx}'
          format: sarif
          output: a11y-report.sarif
          fail-on: error

See CI/CD Documentation for detailed setup instructions including Jenkins, GitLab CI, and reporter configuration.


License

Proprietary - see LICENSE file for the full End User License Agreement.

Credits

Developed by BarrierBreak.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft