
@ariestools/eslint-config-react-flat

React ESLint flat config extending @ariestools/eslint-config-flat
Install
Requires Node.js ≥ 22. pnpm is fully supported; npm / yarn / bun are experimental.
pnpm add -D @ariestools/eslint-config-react-flat
Also install the same ESLint peers as the base package (eslint ^10.3, eslint-import-resolver-typescript ^4.4).
Usage
import {
configReactStorybook,
recommendedConfig,
} from '@ariestools/eslint-config-react-flat'
export default [
...recommendedConfig({ tier: 3, isTypeChecked: true }),
...configReactStorybook,
]
recommendedConfig accepts tier (0–4, default 3) and isTypeChecked (default true). Named configReactTier* exports remain available but are deprecated. Tier 4 is experimental.
React layers are added at tier 2 (best practices) and above. Lower tiers match @ariestools/eslint-config-flat without React rules. Storybook is opt-in via configReactStorybook.
Extending with custom rules
import { recommendedConfig } from '@ariestools/eslint-config-react-flat'
export default [
...recommendedConfig({ tier: 3, isTypeChecked: true }),
{
rules: {
},
},
]
What's included
Everything from @ariestools/eslint-config-flat, plus:
- React component linting via
eslint-plugin-react-x
- DOM API validation via
eslint-plugin-react-dom
- Hooks rules via
eslint-plugin-react-hooks
- Naming convention enforcement via
eslint-plugin-react-naming-convention
- React Refresh validation via
eslint-plugin-react-refresh
- Web API best practices via
eslint-plugin-react-web-api
There is no SonarJS layer in this package.
License
LGPL-3.0-only. See LICENSE (LGPLv3) and COPYING (GPLv3, incorporated by LGPL-3).
Credits
Made with 🔥 and ❄️ by Aries Tools