Freedom251 › Port Scanner Software
eslint-plugin-jsx-a11y

What eslint-plugin-jsx-a11y is
eslint-plugin-jsx-a11y is a free package that statically checks JSX in React apps for accessibility issues. It works with ESLint and provides recommended and strict rule configurations, with setup instructions for both legacy .eslintrc files and flat eslint.config.js files. Its rules cover alternative text, ARIA properties and roles, labels, keyboard access, and captions for audio and video. For example, checks can flag clickable non-interactive elements that lack keyboard event listeners, or interactive handlers on elements that cannot receive focus. Configuration can map custom component names to DOM element types and DOM attributes to JSX properties. Installation instructions cover npm and Yarn, and ESLint must be installed as well. The plugin analyzes static code; its maintainers recommend checking the rendered DOM with @axe-core/react and testing with assistive technology. It does not include manual review tools, mobile testing, a browser extension, or remediation guidance. The package uses the MIT License, and the repository links to Tidelift for professional support.
Who it suits
This plugin suits React developers using ESLint who want automated checks for accessibility issues in JSX. It is intended as one part of accessibility review, alongside rendered DOM and assistive technology testing.
What it does well
- Free, MIT-licensed package.
- Recommended and strict rule configurations.
- Checks ARIA, keyboard access, labels, and captions.
- Supports custom component mappings.
What to know first
- Checks static code, not the rendered DOM.
- ESLint must also be installed.
- No mobile testing or browser extension.
- No manual review tools or remediation guidance.
Limits
The free package analyzes static JSX code; it does not check rendered DOM or provide manual review tools or mobile testing. Its maintainers recommend also using @axe-core/react and assistive technology testing.
Plans
| Plan | Billed and limits | Price |
|---|---|---|
| MIT-licensed open-source package | Static JSX code analysis | Free |
As github.com lists them, read 9 Oct 2026. The maker's own page has the final word.
Getting started
- Install ESLint.
- Install eslint-plugin-jsx-a11y as a development dependency with npm or Yarn.
- Choose the recommended or strict configuration for legacy .eslintrc or flat eslint.config.js.
- Configure custom component and DOM attribute mappings if needed.
- Add @axe-core/react and assistive technology testing to check rendered accessibility.
Verdict
eslint-plugin-jsx-a11y can flag a broad set of accessibility issues while developers work in JSX. Its static analysis has limits, so rendered DOM checks and assistive technology testing are also recommended.
Questions
Is eslint-plugin-jsx-a11y free?
Yes. The package is free and licensed under MIT.
What does it check?
Its rules cover alternative text, ARIA properties and roles, labels, keyboard access, and captions for audio and video.
Which ESLint configurations does it support?
The README documents legacy `.eslintrc` and flat `eslint.config.js` setup, with recommended and strict configurations.
How can I install it?
Installation instructions are provided for npm and Yarn. ESLint must also be installed.
Does it test the rendered page?
No. It checks static JSX; the maintainers recommend `@axe-core/react` for rendered DOM checks and assistive technology testing.
Is professional support available?
The repository links to Tidelift for professional support.
Facts from eslint-plugin-jsx-a11y's own pages
- Accessibility rules
- Its documented rules cover topics including alternative text, ARIA properties and roles, keyboard access, labels, and captions for audio and video. · github.com, 10 Oct 2026
- ARIA checks
- Its rules check ARIA properties, values, roles, and role requirements. · github.com, 9 Oct 2026
- Automated scans
- Yes · github.com, 23 Sept 2026
- Browser extension
- No · github.com, 23 Sept 2026
- Configuration
- Users can map custom components to DOM element types and map DOM attributes to JSX properties for checking. · github.com, 9 Oct 2026
- Configurations
- The plugin provides recommended and strict shareable configurations, including flat-config variants. · github.com, 10 Oct 2026
- Custom components
- Configuration can map custom component names to DOM element types so the plugin can check those components. · github.com, 10 Oct 2026
- ESLint dependency
- The installation instructions say to install ESLint before installing the plugin. · github.com, 10 Oct 2026
- ESLint integration
- The README documents legacy .eslintrc and flat eslint.config.js setup. · github.com, 9 Oct 2026
- Free plan
- Yes · github.com, 23 Sept 2026
- Integrations
- The README includes instructions for installation through eslint-config-airbnb and recommends using @axe-core/react to test rendered DOM accessibility. · github.com, 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. · github.com, 9 Oct 2026
- License
- The repository states that eslint-plugin-jsx-a11y is licensed under the MIT License. · github.com, 10 Oct 2026
- Manual review tools
- No · github.com, 23 Sept 2026
- Media accessibility
- A rule enforces captions by requiring a track for audio and video elements. · github.com, 9 Oct 2026
- Mobile testing
- No · github.com, 23 Sept 2026
- Package installation
- The README provides npm and Yarn commands to install the plugin as a development dependency. · github.com, 10 Oct 2026
- Package managers
- Installation instructions are provided for npm and Yarn, and ESLint must also be installed. · github.com, 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. · github.com, 10 Oct 2026
- Professional support
- The repository links to Tidelift for professional support for the package. · github.com, 9 Oct 2026
- Purpose
- eslint-plugin-jsx-a11y statically checks JSX elements for accessibility issues in React apps. · github.com, 10 Oct 2026
- Remediation guidance
- No · github.com, 23 Sept 2026
- Rule configurations
- It provides recommended and strict rule configurations. · github.com, 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. · github.com, 9 Oct 2026
Where eslint-plugin-jsx-a11y stands on Freedom251
- Port Scanner Software#10 of 26
- Accessibility Testing Software#127 of 169
- Website Accessibility Tools#102 of 133