eslint-config-eslint is the official ESLint shareable configuration used by ESLint projects themselves. Version 14.0.0 ships TypeScript types and requires ESLint ^10.0.0 as a peer dependency. Released as part of the ESLint monorepo, it follows ESLint's major release cadence. It provides multiple config presets: default (ESM), CJS, base (for non-Node.js files), and formatting. Unlike generic configs like eslint-config-standard, this config is tailored for internal ESLint development, enforcing strict rules expected in the ESLint codebase. It is not intended for general use unless mirroring ESLint's own style.
npm install eslint-config-eslintVerified import paths — ran on the pinned version, not inferred.
Shows a minimal eslint.config.js using the default ESM config from eslint-config-eslint with defineConfig.
Upgrade ESLint to ^10.0.0. If staying on ESLint v9, use eslint-config-eslint@13.x.
Use import for ESM projects, or require('eslint-config-eslint/cjs') for CommonJS.Migrate to eslint.config.js using flat config. See ESLint migration guide.
Add eslintConfigESLintFormatting from 'eslint-config-eslint/formatting' if formatting rules are needed.
Ensure Node.js version meets the engine requirement.
npm install eslint-config-eslint -D. If using CommonJS, use require('eslint-config-eslint/cjs').Create eslint.config.js and use import/require as shown in documentation.
Set "type": "module" in package.json, or use require('eslint-config-eslint/cjs').Use the CJS config (require('eslint-config-eslint/cjs')) for CommonJS files.