{"id":19623,"library":"eslint-config-wesbos","title":"eslint-config-wesbos","description":"Wes Bos's personal ESLint & Prettier config, version 4.3.2. Updated infrequently; based on eslint-config-airbnb and includes TypeScript support. Lightweight alternative to other configs like `eslint-config-airbnb` or `standard`. Options for JS and TypeScript (via `wesbos/typescript`). Requires peer dependencies ESLint ^8, Prettier ^3, TypeScript ^4.8.4 or ^5. Requires manual `tsconfig.json` for TypeScript. Uses Prettier for formatting with opinionated defaults (singleQuote, endOfLine).","status":"active","version":"4.3.2","language":"javascript","source_language":"en","source_url":"ssh://git@github.com/wesbos/eslint-config-wesbos","tags":["javascript","typescript","ecmascript","eslint","eslint-config","lint","config","prettier"],"install":[{"cmd":"npm install eslint-config-wesbos","lang":"bash","label":"npm"},{"cmd":"yarn add eslint-config-wesbos","lang":"bash","label":"yarn"},{"cmd":"pnpm add eslint-config-wesbos","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Peer dependency for linting","package":"eslint","optional":false},{"reason":"Peer dependency for code formatting","package":"prettier","optional":false},{"reason":"Required for TypeScript config (`wesbos/typescript`)","package":"typescript","optional":true}],"imports":[{"note":"In .eslintrc or eslintConfig in package.json","wrong":"Use 'wesbos/js' or just 'wesbos'.","symbol":"Config for JavaScript","correct":"{\n  \"extends\": [\"wesbos\"]\n}"},{"note":"Requires tsconfig.json in project root","wrong":"{\n  \"extends\": [\"wesbos\"]\n} // TypeScript files not linted properly","symbol":"Config for TypeScript","correct":"{\n  \"extends\": [\"wesbos/typescript\"]\n}"},{"note":"Custom Prettier options can be set in .prettierrc or via prettier/prettier rule","wrong":"Placing Prettier rules outside 'prettier/prettier' rule","symbol":"Override rules","correct":"{\n  \"extends\": [\"wesbos\"],\n  \"rules\": {\n    \"no-console\": 2,\n    \"prettier/prettier\": [\"error\", { \"singleQuote\": false }]\n  }\n}"}],"quickstart":{"code":"npm init -y && npm install eslint-config-wesbos\n# .eslintrc.json\n{\n  \"extends\": [\"wesbos\"]\n}\n# package.json scripts\n\"lint\": \"eslint .\",\n\"lint:fix\": \"eslint . --fix\"","lang":"json","description":"Sets up a new project with Wes Bos's ESLint config for JavaScript projects."},"warnings":[{"fix":"Create an empty tsconfig.json or point to existing one.","message":"TypeScript config requires a tsconfig.json file in root. If missing, TypeScript linting will fail.","severity":"gotcha","affected_versions":">=4.0.0"},{"fix":"Stick with ESLint v8 or switch to flat config and a different config package.","message":"Using eslint-config-wesbos with ESLint v9 may cause incompatibilities. The config uses the .eslintrc format which is not supported in flat config.","severity":"gotcha","affected_versions":">=4.0.0"},{"fix":"Override both in .prettierrc or via prettier/prettier rule.","message":"Only two Prettier options are set by default: singleQuote: true, endOfLine: 'auto'. Changes to these may cause conflicts.","severity":"gotcha","affected_versions":">=3.0.0"}],"env_vars":null,"last_verified":"2026-04-25T00:00:00.000Z","next_check":"2026-07-24T00:00:00.000Z","problems":[{"fix":"Run `npm install eslint-config-wesbos` and ensure peer deps are installed. Use 'wesbos' not 'wesbos/javascript'.","cause":"Missing peer dependency or incorrect extension name.","error":"Error: Failed to load config \"wesbos\" to extend from."},{"fix":"Create a tsconfig.json in your project root.","cause":"TypeScript config used without a tsconfig.json.","error":"Parsing error: \"parserOptions.project\" has been set for @typescript-eslint/parser."},{"fix":"npm install prettier@^3.0.0 --save-dev","cause":"Prettier not installed as a peer dependency.","error":"Cannot find module 'prettier'.eslint"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}