eslint-config-airbnb-extended

raw JSON →
3.1.0 verified Sat Apr 25 auth: no javascript

An ESLint configuration package that extends the official Airbnb ESLint config to support TypeScript, React hooks, and modern JavaScript. Current stable version is 3.1.0, requiring Node.js >=18.18.0 and ESLint ^9.0.0. It is ESM-only and includes TypeScript types. Key differentiators: all batteries included (no need to install multiple peer configs), redesigned CLI, and significantly smaller package size (~72% reduction) compared to v2. Released on a monthly cadence. V3 dropped Node v16 support and switched to ESM-only.

error Cannot find module 'eslint-config-airbnb-extended'
cause Package not installed or wrong import path.
fix
Run 'npm install eslint-config-airbnb-extended --save-dev' and ensure correct import: 'import airbnbXConfig from 'eslint-config-airbnb-extended''.
error Error [ERR_REQUIRE_ESM]: require() of ES Module ... not supported.
cause Using CommonJS require() with an ESM-only package.
fix
Switch to ESM: use 'import' or rename config file to .mjs and set 'type': 'module' in package.json.
error 'n/prefer-global/crypto' rule is not found
cause Missing eslint-plugin-n dependency or version mismatch.
fix
Install eslint-plugin-n: 'npm install eslint-plugin-n --save-dev'.
error Configuration for rule 'react/jsx-curly-brace-presence' is invalid
cause Incompatible rule configuration from v2.2.0 re-enabling.
fix
Update config to match v3 syntax or use 'override' correctly in flat config.
error TypeError: Cannot destructure property 'createConfig' of ... undefined
cause Trying to import named export from a non-existent subpath.
fix
Use correct import: 'import { createConfig } from 'eslint-config-airbnb-extended''.
breaking v3 dropped Node.js v16 support, requires Node 18.18 or higher.
fix Upgrade Node.js to version 18.18.0 or higher.
breaking v3 is ESM-only; CommonJS require() will throw an error.
fix Use import statements or switch to ESM in your project.
breaking v2 removed the 'Own Customization' option from the CLI.
fix Refer to documentation for customization guidance.
deprecated v2.2.0 re-enabled formatting rules that were accidentally turned off, causing lint failures for users who relied on the disabled rules.
fix Review your code for formatting issues after upgrading to v2.2.0+.
gotcha v3.1.0 introduced n/prefer-global/crypto and n/prefer-global/timers rules at error level, which may break builds for code using Node.js global objects.
fix Override these rules in your eslint config if needed: 'n/prefer-global/crypto': 'off', 'n/prefer-global/timers': 'off'.
gotcha v3.1.0 enabled all recommended react-hooks rules; projects with pre-existing hook violations will now see lint errors.
fix Run eslint --fix to auto-fix violations or manually update hook dependencies.
gotcha The package is ESM-only and ships TypeScript types; ensure your TypeScript settings allow ESM imports.
fix Set '"type": "module"' in package.json or use .mjs extension for config files.
npm install eslint-config-airbnb-extended
yarn add eslint-config-airbnb-extended
pnpm add eslint-config-airbnb-extended

Shows how to import and extend the Airbnb Extended ESLint config in a flat config file.

// eslint.config.js
import airbnbXConfig from 'eslint-config-airbnb-extended';

export default [
  ...airbnbXConfig,
  {
    rules: {
      // Customize rules here
    }
  }
];