Shared ESLint config for React projects
This package includes a set of ESLint configurations for React projects.
The package includes:
| Package | Description | Rules | License |
|---|---|---|---|
eslint-plugin-react |
React specific linting rules | recommended and jsx-runtime rules. Additionally manually selected rules that were not included. |
MIT |
eslint-plugin-jsx-a11y |
Accessibility rules for JSX | recommended rules. |
MIT |
eslint-plugin-react-hooks |
Rules for React hooks | recommended rules. |
MIT |
eslint-plugin-react-hooks-extra |
Additional rules for React hooks | recommended rules. |
MIT |
eslint-plugin-react-web-api |
ESLint plugin for React to interact with Web APIs | recommended rules. |
MIT |
eslint-plugin-react-compiler |
React 19 specific rules. | At the moment there is only one rule exists. | MIT |
eslint-plugin-react-refresh |
Validate that your components can safely be updated with Fast Refresh. | configurable option. By default, recommended rules and additionally configuration added for vite, remix and react router 7 |
MIT |
Additionally, this package includes the @zemd/eslint-ts and @zemd/eslint-js rules.
Installation
npm install --save-dev @zemd/eslint-react
Usage
Basic Setup
// eslint.config.js
import react from "@zemd/eslint-react"; // <- this will import all rules including the @zemd/eslint-ts rules
export default [...react()];
More Advanced Setup
You can cherry-pick only what you need:
// eslint.config.js
import { react, typescript, javascript, json } from "@zemd/eslint-ts"; // import only typescript config
export default [...react(), ...typescript(), ...javascript(), ...json()];
You might be also interested in
| Package | Version | Description |
|---|---|---|
@zemd/eslint-js |
JavaScript-only rules. | |
@zemd/eslint-ts |
TypeScript rules (includes JS rules from @zemd/eslint-js). | |
@zemd/eslint-react |
React rules (includes TS rules from @zemd/eslint-ts and JS rules from @zemd/eslint-js). |
|
@zemd/eslint-rock-stack |
Rules for Fullstack projects that include React.js, GraphQL, Playwright, Tailwind(optional), Turbo, Vitest, and Storybook. | |
@zemd/eslint-next |
Rules for Next.js projects (inherits from @zemd/eslint-rock-stack). |
|
@zemd/eslint-astro |
Rules for Astro based projects (includes rules @zemd/eslint-react by default). |
License
The @zemd/eslint-react is licensed under Apache-2.0 license .