A shared ESLint flat config package by hudochenkov, providing preset configurations for JavaScript, React, React Testing Library, and Jest. Current stable version 13.0.0 requires ESLint ^9.30.0, Node.js >=20, and runs as ESM only. It is released actively, following ESLint and plugin updates. Key differentiators: it is opinionated but modular, allowing selective use of `main`, `react`, `reactTesting`, and `jest` configs; it migrated to flat config in v10 and dropped CommonJS support; peer dependencies are extensive, and users must install them manually. This config enforces modern rules from `@stylistic/eslint-plugin`, `eslint-plugin-unicorn`, and `eslint-plugin-import`, and disables `import/no-unresolved`.
npm install eslint-config-hudochenkovVerified import paths — ran on the pinned version, not inferred.
Sets up ESLint with the main and React configs from the package, then adds a custom no-console rule.
Switch to import syntax and set "type": "module" in package.json.
Update to @stylistic/eslint-plugin rules; see changelog.
Upgrade ESLint to v9.x.
Add configs.jest to your configuration if you need Jest rules.
Use eslint.config.js with flat config. See https://eslint.org/docs/latest/use/configure/configuration-files-new
Install all peer deps listed in package.json manually.
Use ESLint >=9.30.0.
Use import syntax or set "type": "module" in package.json.
Run: npm install --save-dev @stylistic/eslint-plugin
Remove or override that rule if needed; it is explicitly disabled by the config.