{"id":19512,"library":"eslint-config-eyeo","title":"eslint-config-eyeo","description":"ESLint shareable config enforcing eyeo/Adblock Plus JavaScript coding style. Version 3.2.0, with ESLint >=6.7.0 as a peer dependency. Provides a consistent linting base for all eyeo projects, including Adblock Plus. It is a flat, unopinionated rule set that can be extended. Released as needed; no frequent updates. Unlike generic configs (e.g., eslint-config-standard), it is tailored to eyeo's internal style guide.","status":"active","version":"3.2.0","language":"javascript","source_language":"en","source_url":null,"tags":["javascript","eyeo","adblockplus","abp","eslint","eslintconfig"],"install":[{"cmd":"npm install eslint-config-eyeo","lang":"bash","label":"npm"},{"cmd":"yarn add eslint-config-eyeo","lang":"bash","label":"yarn"},{"cmd":"pnpm add eslint-config-eyeo","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"peer dependency required for linting","package":"eslint","optional":false}],"imports":[{"note":"Use a single string in extends, not array, for shareable configs. This works with .eslintrc.* or eslintConfig in package.json.","wrong":"module.exports = {\n  extends: ['eslint-config-eyeo'],\n  root: true\n}","symbol":"eslint-config-eyeo","correct":"module.exports = {\n  extends: 'eslint-config-eyeo',\n  root: true\n}"},{"note":"The config is inherited via extends, not passed directly as a config file.","wrong":"eslint --config eslint-config-eyeo some-file.js","symbol":"CLI usage","correct":"eslint some-file.js"},{"note":"eslint must be installed globally alongside the config to use the CLI globally. For local projects, install both as devDependencies.","wrong":"npm install -g eslint-config-eyeo","symbol":"Global install","correct":"npm install -g eslint eslint-config-eyeo"}],"quickstart":{"code":"// .eslintrc.json\n{\n  \"extends\": \"eslint-config-eyeo\",\n  \"root\": true\n}\n\n// package.json script\n\"scripts\": {\n  \"lint\": \"eslint .\"\n}","lang":"json","description":"Setup ESLint with eyeo config. Create .eslintrc.json with extends, then run eslint from CLI or script."},"warnings":[{"fix":"Update ESLint to >=6.7.0.","message":"Requires ESLint >=6.7.0. Older ESLint versions will fail to parse the config.","severity":"gotcha","affected_versions":"<6.7.0"},{"fix":"Ensure all ESLint plugins support ESLint's flat config if using eslint.config.js.","message":"Config uses ESLint's new config format (array of objects) which may not be compatible with older ESLint plugins expecting rc-style config.","severity":"breaking","affected_versions":">=3.0.0"},{"fix":"Install eslint and eslint-config-eyeo as devDependencies in each project and run via npx eslint.","message":"Global installation is discouraged; prefer local devDependencies to avoid version conflicts across projects.","severity":"gotcha","affected_versions":"all"},{"fix":"Add rules object in .eslintrc.json to override.","message":"The config extends base rules; any overrides must be explicitly set in user config.","severity":"deprecated","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-04-25T00:00:00.000Z","next_check":"2026-07-24T00:00:00.000Z","problems":[{"fix":"Run 'npm install --save-dev eslint-config-eyeo' in the project.","cause":"Config not installed or not in node_modules.","error":"Cannot find module 'eslint-config-eyeo'"},{"fix":"Use integer severity: 0, 1, or 2.","cause":"User overrides rule with invalid severity.","error":"Configuration for rule \"xyz\" is invalid: Severity should be one of the following: 0 = off, 1 = warning, 2 = error"},{"fix":"Check spelling and ensure package is installed. Must be 'eslint-config-eyeo'.","cause":"Config name typo or not installed.","error":"ESLint couldn't find the config \"eslint-config-eyeo\" to extend from."},{"fix":"Install both eslint and eslint-config-eyeo locally.","cause":"Config not in node_modules or missing peer dependency eslint.","error":"Error: Cannot find module 'eslint-config-eyeo' from '/path/to/project'"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}