
ESLint React
More than 80 high-quality linting rules for writing better React code.
Features
- Modern: First-class support for TypeScript, React 19, polymorphic components.
- Flexible: Increased flexibility with more granular severity control.
- Performant: Built with performance in mind, optimized for large codebases.
- Comprehensive: Handles complex scenarios and identifies problems that other tools might miss.
Public Packages
Modular
All-In-One
Installation
Install
npm install --save-dev typescript-eslint @eslint-react/eslint-plugin
Setup
import eslintJs from "@eslint/js";
import eslintReact from "@eslint-react/eslint-plugin";
import tseslint from "typescript-eslint";
export default tseslint.config({
files: ["**/*.ts", "**/*.tsx"],
extends: [
eslintJs.configs.recommended,
tseslint.configs.recommended,
eslintReact.configs.recommended,
],
languageOptions: {
parser: tseslint.parser,
parserOptions: {
projectService: true,
},
},
rules: {
"@eslint-react/prefer-shorthand-boolean": "warn",
},
});
Full Installation Guide ↗
Presets
Bare Bones
- Core (
core
)
Enable rules for "react"
. - DOM (
dom
)
Enable rules for "react-dom"
. - Web API (
web-api
)
Enable rules for interacting with Web APIs.
General Purpose
- Recommended (
recommended
)
Enforce rules that are recommended by ESLint React for general purpose React + React DOM projects.
This preset includes the core
, dom
, and web-api
presets.
TypeScript Specialized
-
Recommended TypeScript (recommended-typescript
)
Same as the recommended
preset but disables rules that can be enforced by TypeScript.
-
Recommended Type-Checked (recommended-type-checked
)
Same as the recommended-typescript
preset but enables additional rules that require type information.
Full Presets List ↗
Rules
Rules Overview ↗
FAQ
Frequently Asked Questions ↗
Roadmap
Notable Projects Using ESLint React

Data collected from GitHub dependents network, if there are any mismatch or outdated information, feel free to open issue or pull request.
Find more on GitHub Dependents.
Contributing
Please follow our contributing guidelines.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Inspiration