{"id":19490,"library":"eslint-config-auto","title":"eslint-config-auto","description":"Automatically configure ESLint based on project dependencies. Version 0.9.0. Analyzes your package.json dependencies and selects appropriate Airbnb ESLint config and plugins (Babel, React, TypeScript, etc.) dynamically. Reduces manual ESLint config management. Notable for auto-detecting plugins like eslint-plugin-react, eslint-plugin-jsx-a11y, and more. Released under MIT license. Lower maintenance as of recent versions.","status":"active","version":"0.9.0","language":"javascript","source_language":"en","source_url":"https://github.com/davidjbradshaw/eslint-config-auto","tags":["javascript","airbnb","eslint","eslint-config","eslint-config-airbnb","unicorn"],"install":[{"cmd":"npm install eslint-config-auto","lang":"bash","label":"npm"},{"cmd":"yarn add eslint-config-auto","lang":"bash","label":"yarn"},{"cmd":"pnpm add eslint-config-auto","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Base Airbnb ESLint config used when no React or TypeScript detected","package":"eslint-config-airbnb-base","optional":true},{"reason":"Full Airbnb config used when React dependencies present","package":"eslint-config-airbnb","optional":true},{"reason":"Automatically extends to disable formatting rules if Prettier is used","package":"eslint-config-prettier","optional":true}],"imports":[{"note":"This is an ESLint config package, not a JavaScript import. Use in .eslintrc extends field.","wrong":"import eslintConfigAuto from 'eslint-config-auto'","symbol":"eslint-config-auto","correct":"extends: ['auto'] in .eslintrc"},{"note":"The shorthand 'auto' works because the package name starts with 'eslint-config-'. Long form also works but is unnecessary.","wrong":"{\n  \"extends\": \"eslint-config-auto\"\n}","symbol":"auto","correct":"{\n  \"extends\": \"auto\"\n}"}],"quickstart":{"code":"// 1. Install\nnpm install eslint-config-auto --save-dev\n\n// 2. Create .eslintrc.json\n{\n  \"extends\": [\"auto\"],\n  \"settings\": {\n    \"react\": { \"version\": \"detect\" },\n    \"compat\": { \"targets\": [\"> 1%\", \"last 2 versions\", \"not dead\"] }\n  }\n}\n\n// 3. Add scripts to package.json\n\"scripts\": {\n  \"lint\": \"eslint --ext .js,.jsx,.ts,.tsx src/\",\n  \"lint:fix\": \"eslint --fix --ext .js,.jsx,.ts,.tsx src/\"\n}\n\n// 4. Run first lint to get install instructions for plugins\nnpm run lint","lang":"javascript","description":"Shows install, config file setup, and typical ESLint usage with auto-detection of plugins."},"warnings":[{"fix":"Copy and paste the npm install output printed when you first run ESLint after adding eslint-config-auto.","message":"Auto-detected plugins are not installed automatically; run the command printed on first lint.","severity":"breaking","affected_versions":">=0.1.0"},{"fix":"Add your custom rules after the 'auto' extends, or disable specific rules in overrides.","message":"If you customize rules, they may conflict with auto-detected plugin rules on future updates.","severity":"gotcha","affected_versions":">=0.1.0"},{"fix":"Add babel to devDependencies or set 'babel':true in settings if using transpiled code (e.g., create-react-app).","message":"Babel parser is only set if babel is in devDependencies or settings.babel=true; otherwise default parser used.","severity":"gotcha","affected_versions":">=0.1.0"},{"fix":"Explicitly set settings.compat = true in .eslintrc to enable compat checks.","message":"eslint-plugin-compat is only loaded if settings.compat = true; otherwise ignored.","severity":"deprecated","affected_versions":">=0.3.0"}],"env_vars":null,"last_verified":"2026-04-25T00:00:00.000Z","next_check":"2026-07-24T00:00:00.000Z","problems":[{"fix":"Run the npm install command printed in the eslint output (e.g., npm install eslint-plugin-react --save-dev)","cause":"Required plugin not installed; eslint-config-auto expects all plugins to be present in node_modules.","error":"Error: Failed to load plugin 'xxx' declared in 'eslint-config-auto': Cannot find module 'eslint-plugin-xxx'"},{"fix":"Add 'babel' to devDependencies or set settings.babel=true in .eslintrc","cause":"Babel is required for certain syntax (JSX, Flow) but not installed or not in devDependencies.","error":"Parsing error: Babel not found"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}