eslint-config-adslot

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

ESLint shareable config for Adslot, currently at v2.2.1 requiring Node.js ^24 and ESLint ^9.39.1. It bundles plugins for React, JSX accessibility, import rules, Lodash, Chai-friendly assertions, and TypeScript (via @typescript-eslint). Release cadence is irregular; breaking changes occurred at v2.0.0 when upgrading to ESLint v9. Differentiators: opinionated setup for Adslot's internal stack, includes chai-friendly and lodash rules.

error Error: Failed to load plugin '@typescript-eslint' declared in 'eslint-config-adslot': Cannot find module '@typescript-eslint/eslint-plugin'
cause Missing peer dependencies for TypeScript support when using flat config.
fix
Run: npm install -D @typescript-eslint/eslint-plugin @typescript-eslint/parser
error Error: .eslintrc.json: Configuration for rule "import/no-cycle" is invalid: Value "ignoreExternal" has unexpected property.
cause Using eslint-config-adslot@1.x with ESLint v9; rule option format changed.
fix
Upgrade to eslint-config-adslot@2.x and use flat config or compatible .eslintrc.
error Error: Cannot find module 'eslint-config-adslot' from <path>
cause The package is not installed or the extends shorthand is misspelled.
fix
Install: npm install -D eslint-config-adslot eslint. Then use 'extends': 'adslot'.
breaking v2.0.0 drops support for ESLint <9. Config must use new flat config or .eslintrc with ESLint v9 compatibility mode.
fix Upgrade ESLint to v9 and migrate to flat config, or use ESLint v8 with eslint-config-adslot@1.x.
deprecated Node.js ^24 is required; older versions (e.g. 18, 20) are unsupported and may cause installation failures.
fix Update Node.js to v24.
gotcha The config includes eslint-plugin-lodash and eslint-plugin-chai-friendly; if your project doesn't use these libraries, you'll get false positives.
fix Override or disable rules from these plugins in your own config.
npm install eslint-config-adslot
yarn add eslint-config-adslot
pnpm add eslint-config-adslot

Shows how to extend the config in both legacy .eslintrc and flat config formats.

// .eslintrc.json
{
  "extends": "adslot"
}

// Or for flat config (eslint.config.js)
export default [
  ...require('eslint-config-adslot'),
  {
    rules: {
      // your overrides
    }
  }
];