1.0.0-alpha.3 • Published 1 year ago
@rainstormy/preset-eslint-react v1.0.0-alpha.3
React Preset for ESLint
This package provides a predefined, opinionated ESLint configuration suitable for any web project with React components.
Installation
Install the @rainstormy/preset-eslint-react
package and its peer dependencies:
npm install --save-dev @rainstormy/preset-eslint-react eslint
pnpm install --save-dev @rainstormy/preset-eslint-react eslint
yarn add --dev @rainstormy/preset-eslint-react eslint
This preset configures a subset of rules from the following plugins, which are installed along with the preset package:
- eslint-plugin-jsx-a11y (with rule names prefixed by
jsx-a11y/
) - eslint-plugin-react (with rule names prefixed by
react/
) - eslint-plugin-react-hooks (with rule names prefixed by
react-hooks/
)
Usage
Create or extend a flat ESLint configuration file (eslint.config.js
) to target JSX component files in TypeScript.
For example:
import {
eslintAmbientTypeScriptModules,
eslintBase,
} from "@rainstormy/preset-eslint-base"
import { eslintReact } from "@rainstormy/preset-eslint-react"
export default [
eslintBase({ files: ["**/*.+(js|ts|tsx)"] }),
// `eslintAmbientTypeScriptModules` and `eslintReact` must follow `eslintBase` to take effect.
eslintAmbientTypeScriptModules({ files: ["**/*.d.ts"] }),
eslintReact({ files: ["**/*.tsx"] }),
]