
Product
Introducing Socket Firewall Enterprise: Flexible, Configurable Protection for Modern Package Ecosystems
Socket Firewall Enterprise is now available with flexible deployment, configurable policies, and expanded language support.
@eslint-react/eslint-plugin
Advanced tools
A unified plugin that combines all individual plugins from the eslint-react monorepo into one.
4-7x faster composable ESLint rules for React and friends.
@eslint-react/eslint-plugin - A unified plugin that combines all individual plugins into one.eslint-plugin-react-x - X Rules (renderer-agnostic, compatible with x-platform).eslint-plugin-react-dom - DOM specific rules for React DOM.eslint-plugin-react-web-api - Rules for interacting with Web APIs.eslint-plugin-react-hooks-extra - Extra React Hooks rules.eslint-plugin-react-naming-convention - Naming convention rules.[!NOTE]
Don't know which one to use? See our FAQ for guidance.
[!NOTE]
ESLint React requires the following minimum versions:
- Node.js: 20.19.0
- ESLint: 9.36.0
- TypeScript: 5.0.0
npm install --save-dev typescript-eslint @eslint-react/eslint-plugin
// eslint.config.js
import eslintReact from "@eslint-react/eslint-plugin";
import eslintJs from "@eslint/js";
import { defineConfig } from "eslint/config";
import tseslint from "typescript-eslint";
export default defineConfig([
{
files: ["**/*.ts", "**/*.tsx"],
// Extend recommended rule sets from:
// 1. ESLint JS's recommended rules
// 2. TypeScript ESLint recommended rules
// 3. ESLint React's recommended-typescript rules
extends: [
eslintJs.configs.recommended,
tseslint.configs.recommended,
eslintReact.configs["recommended-typescript"],
],
// Configure language/parsing options
languageOptions: {
// Use TypeScript ESLint parser for TypeScript files
parser: tseslint.parser,
parserOptions: {
// Enable project service for better TypeScript integration
projectService: true,
tsconfigRootDir: import.meta.dirname,
},
},
// Custom rule overrides (modify rule levels or disable rules)
rules: {
"@eslint-react/no-missing-key": "warn",
},
},
]);
x"react".dom"react-dom".web-apirecommended
Enforce rules that are recommended by ESLint React for general purpose React + React DOM projects.
This preset includes the x, dom, and web-api presets.
strict
Same as the recommended preset but enables additional strict rules.
recommended-typescript
Same as the recommended preset but disables rules that can be enforced by TypeScript.
recommended-type-checked
Same as the recommended-typescript preset but enables additional rules that require type information.
strict-typescript
Same as the strict preset but disables rules that can be enforced by TypeScript.
strict-type-checked
Same as the strict-typescript preset but enables additional rules that require type information.
disable-domdom preset.disable-web-apiweb-api preset.disable-type-checkeddisable-conflict-eslint-plugin-reacteslint-plugin-react that conflict with rules in our plugins.offFrequently Asked Questions ↗
ESLint React is not affiliated with Meta Corporation or facebook/react project or team, nor is it endorsed or sponsored by them.
Contributions are welcome!
Please follow our contributing guidelines.
This project is licensed under the MIT License - see the LICENSE file for details.
FAQs
A unified plugin that combines all individual plugins from the eslint-react monorepo into one.
The npm package @eslint-react/eslint-plugin receives a total of 358,487 weekly downloads. As such, @eslint-react/eslint-plugin popularity was classified as popular.
We found that @eslint-react/eslint-plugin demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Product
Socket Firewall Enterprise is now available with flexible deployment, configurable policies, and expanded language support.

Security News
Open source dashboard CNAPulse tracks CVE Numbering Authorities’ publishing activity, highlighting trends and transparency across the CVE ecosystem.

Product
Detect malware, unsafe data flows, and license issues in GitHub Actions with Socket’s new workflow scanning support.