EVERYTHING XIAOMI
Get listed

eslint-plugin-jsx-a11y

eslint-plugin-jsx-a11y is a free ESLint plugin that checks JSX in React applications for accessibility issues in static code.

Place
#8 of 26
Score
6.5
eslint-plugin-jsx-a11y's website

What eslint-plugin-jsx-a11y is

eslint-plugin-jsx-a11y is a free ESLint plugin that checks JSX in React applications for accessibility issues in static code. It offers recommended and strict rule configurations, including options for legacy .eslintrc and flat eslint.config.js setups. Its rules cover ARIA properties, values and roles, alternative text, labels, keyboard access, and captions for audio and video. For example, checks can flag clickable elements that are not interactive but lack keyboard listeners, or interactive handlers on elements that cannot receive focus. Teams can configure mappings between custom components and DOM element types, as well as between DOM attributes and JSX properties. An optional polymorphicPropName setting is available, though the project warns that polymorphic components can make code harder to maintain. Installation instructions cover npm and Yarn, and ESLint must be installed separately. Static checks do not evaluate the rendered DOM; the maintainers recommend adding @axe-core/react and assistive technology testing. The repository links to Tidelift for professional support. The package is MIT-licensed and listed as free.

Good

  • Recommended and strict rule configurations are available.
  • Checks ARIA, labels, keyboard access, and captions.
  • Custom components and JSX properties can be mapped.
  • MIT-licensed, with a free plan.

Watch out

  • Checks static code, not the rendered DOM.
  • Requires ESLint to be installed separately.
  • No manual review tools, mobile testing, or browser extension.

Who it suits

It suits React developers who want accessibility checks within an ESLint workflow. Teams needing checks of rendered pages should supplement its static analysis with DOM and assistive technology testing.

Verdict

eslint-plugin-jsx-a11y adds focused accessibility rules to JSX linting, with configurable checks for custom components. Treat it as one part of accessibility review, not a substitute for rendered-DOM and assistive technology testing.

Plans and prices

From eslint-plugin-jsx-a11y's own pricing page, checked 9 Oct 2026.

All about pricing
PlanPriceWhat it gives you
MIT-licensed open-source packageFreeStatic JSX code analysis

The facts

Each one read from eslint-plugin-jsx-a11y's own pages, with the date it was checked.

What it does

Accessibility rules
Its documented rules cover topics including alternative text, ARIA properties and roles, keyboard access, labels, and captions for audio and video.checked 10 Oct 2026
ARIA checks
Its rules check ARIA properties, values, roles, and role requirements.checked 9 Oct 2026
Automated scans
Yeschecked 23 Sep 2026
Configuration
Users can map custom components to DOM element types and map DOM attributes to JSX properties for checking.checked 9 Oct 2026
Configurations
The plugin provides recommended and strict shareable configurations, including flat-config variants.checked 10 Oct 2026
Custom components
Configuration can map custom component names to DOM element types so the plugin can check those components.checked 10 Oct 2026
ESLint dependency
The installation instructions say to install ESLint before installing the plugin.checked 10 Oct 2026
ESLint integration
The README documents legacy .eslintrc and flat eslint.config.js setup.checked 9 Oct 2026
Integrations
The README includes instructions for installation through eslint-config-airbnb and recommends using @axe-core/react to test rendered DOM accessibility.checked 10 Oct 2026
Keyboard access checks
Rules flag clickable non-interactive elements without keyboard event listeners and interactive handlers on elements that are not focusable.checked 9 Oct 2026
License
The repository states that eslint-plugin-jsx-a11y is licensed under the MIT License.checked 10 Oct 2026
Manual review tools
Nochecked 23 Sep 2026
Media accessibility
A rule enforces captions by requiring a track for audio and video elements.checked 9 Oct 2026
Mobile testing
Nochecked 23 Sep 2026
Package installation
The README provides npm and Yarn commands to install the plugin as a development dependency.checked 10 Oct 2026
Package managers
Installation instructions are provided for npm and Yarn, and ESLint must also be installed.checked 9 Oct 2026
Polymorphic components
The plugin can use a configured prop, such as `as`, to determine the element type for rules requiring semantic context; the README cautions that polymorphic components can make code harder to maintain.checked 10 Oct 2026
Professional support
The repository links to Tidelift for professional support for the package.checked 9 Oct 2026
Purpose
eslint-plugin-jsx-a11y statically checks JSX elements for accessibility issues in React apps.checked 10 Oct 2026
Remediation guidance
Nochecked 23 Sep 2026
Rule configurations
It provides recommended and strict rule configurations.checked 9 Oct 2026
Scope limit
It catches issues in static code and recommends pairing it with @axe-core/react to test the rendered DOM and with assistive technology testing.checked 9 Oct 2026

Where it runs

Browser extension
Nochecked 23 Sep 2026

Money

Free plan
Yeschecked 23 Sep 2026

Alternatives to eslint-plugin-jsx-a11y

All alternatives
  1. 1

    Avidemux

    Free planOpen sourceWebLinuxmacOSWindows
    7.3Free plan
  2. 2

    Masscan

    Free planOpen sourceLinuxmacOSSelf-hostedWindows
    7.2Free plan
  3. 3

    Nmap

    Free planLinuxmacOSSelf-hostedWindows
    7.0From $9,980 a month
  4. 4

    Naabu

    Free planAPILinuxmacOSSelf-hosted
    6.8Free plan
  5. 5Pentest-Tools Port Scanner logo
    6.8From $95 a month
  6. 6ScanSearch logo

    ScanSearch

    Free planWebAPILinux
    6.8From $0.30 a month