Skip to content

Monorepo for eslint-plugin-react-[x, dom, web-api, hooks-extra, naming-convention] – A set of composable ESLint rules for libraries and frameworks that use React as a UI runtime.

License

Notifications You must be signed in to change notification settings

rEl1cx/eslint-react

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

logo

ESLint React

A set of composable ESLint rules for libraries and frameworks that use React as a UI runtime.

Features

  • Simple: Low configuration overhead with sensible defaults.
  • Flexible: Increased flexibility with more granular severity control.
  • Comprehensive: First-class support for TypeScript, React UI libraries, polymorphic components.
  • Advanced Analysis: Handles complex scenarios and identifies problems that other tools might miss.

Public packages

All-in-one plugins

Modular plugins

Installation

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"],
  extends: [
    eslintJs.configs.recommended,
    tseslint.configs.recommended,
    eslintReact.configs.recommended,
  ],
  languageOptions: {
    parser: tseslint.parser,
    parserOptions: {
      projectService: true,
    },
  },
  rules: {
    // Put rules you want to override here
    "@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 applications. 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

Used by

used-by

Also available in

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

About

Monorepo for eslint-plugin-react-[x, dom, web-api, hooks-extra, naming-convention] – A set of composable ESLint rules for libraries and frameworks that use React as a UI runtime.

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Sponsor this project

Packages

No packages published

Languages