🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
DemoInstallSign in
Socket

@eslint-react/eslint-plugin

Package Overview
Dependencies
Maintainers
1
Versions
1521
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@eslint-react/eslint-plugin

A unified plugin that combines all individual plugins from the eslint-react monorepo into one.

1.52.2
latest
Source
npm
Version published
Weekly downloads
271K
6.16%
Maintainers
1
Weekly downloads
 
Created
Source

logo

ESLint React

Version Downloads

A series of composable ESLint rules for React and friends.

Table of Contents

Features

  • Modern: First-class support for TypeScript, React 19, and more.
  • Flexible: Fully customizable rule severity levels, allowing you to enforce or relax rules as needed.
  • Performant: Built with performance in mind, optimized for large codebases, 4-7x faster than other ESLint plugins.
  • Context-aware Linting: Rules that understand the context of your code and project configuration to provide more accurate linting.

Public Packages

Modular

Unified

Installation

[!NOTE]
ESLint React requires the following minimum versions:

  • Node.js: 18.18.0
  • ESLint: 8.57.0
  • TypeScript: 4.9.5

Install

npm install --save-dev typescript-eslint @eslint-react/eslint-plugin

Setup

// eslint.config.js

// @ts-check
import eslintJs from "@eslint/js";
import eslintReact from "@eslint-react/eslint-plugin";
import tseslint from "typescript-eslint";

export default tseslint.config({
  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",
  },
});

Full Installation Guide ↗

Presets

Bare Bones

  • x
    Enable rules for "react".
  • dom
    Enable rules for "react-dom".
  • web-api
    Enable rules for interacting with Web APIs.

General Purpose

  • recommended
    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.

TypeScript Specialized

  • 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.

Other

  • disable-dom
    Disable rules in the dom preset.
  • disable-web-api
    Disable rules in the web-api preset.
  • disable-type-checked
    Disable rules that require type information.
  • off
    Disable all rules in this plugin except for debug rules.

Full Presets List ↗

Rules

Rules Overview ↗

FAQ

Frequently Asked Questions ↗

Roadmap

Contributing

Contributions are welcome!

Please follow our contributing guidelines.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Keywords

react

FAQs

Package last updated on 12 Jun 2025

Did you know?

Socket

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.

Install

Related posts