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.
npm install eslint-config-airbnb-extendedVerified import paths — ran on the pinned version, not inferred.
Shows how to import and extend the Airbnb Extended ESLint config in a flat config file.
Upgrade Node.js to version 18.18.0 or higher.
Use import statements or switch to ESM in your project.
Refer to documentation for customization guidance.
Review your code for formatting issues after upgrading to v2.2.0+.
Override these rules in your eslint config if needed: 'n/prefer-global/crypto': 'off', 'n/prefer-global/timers': 'off'.
Run eslint --fix to auto-fix violations or manually update hook dependencies.
Set '"type": "module"' in package.json or use .mjs extension for config files.
Run 'npm install eslint-config-airbnb-extended --save-dev' and ensure correct import: 'import airbnbXConfig from 'eslint-config-airbnb-extended''.
Switch to ESM: use 'import' or rename config file to .mjs and set 'type': 'module' in package.json.
Install eslint-plugin-n: 'npm install eslint-plugin-n --save-dev'.
Update config to match v3 syntax or use 'override' correctly in flat config.
Use correct import: 'import { createConfig } from 'eslint-config-airbnb-extended''.