{"id":26951,"library":"eslint-config-codfish","title":"eslint-config-codfish","description":"An opinionated ESLint configuration that extends Airbnb's base config and integrates with Prettier to avoid conflicts. Current stable version 13.1.3, released March 2026, with frequent updates (weekly/monthly). Key differentiators: dynamically enables React, TypeScript, and Jest rules based on project dependencies; supports linting markdown, JSON, YAML, and HTML files; includes opt-in configs for dApps and Docker environments. Requires peer dependencies eslint ^8.2.0 (v13 requires eslint ^10), prettier ^2.0.0, typescript ^4.0.0, and @babel/core ^7.13.8.","status":"active","version":"11.1.0","language":"javascript","source_language":"en","source_url":"https://github.com/codfish/eslint-config-codfish","tags":["javascript","eslint","eslintconfig","config","airbnb","codfish","prettier","styleguide"],"install":[{"cmd":"npm install eslint-config-codfish","lang":"bash","label":"npm"},{"cmd":"yarn add eslint-config-codfish","lang":"bash","label":"yarn"},{"cmd":"pnpm add eslint-config-codfish","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"peer dependency: ESLint is required to run linting","package":"eslint","optional":false},{"reason":"peer dependency: Prettier formatting integrated via plugin","package":"prettier","optional":false},{"reason":"peer dependency: needed for TypeScript support","package":"typescript","optional":true},{"reason":"peer dependency: Babel required for parsing when using TypeScript or JSX","package":"@babel/core","optional":true}],"imports":[{"note":"The extends value must be an array in ESLint config. Single string is not valid.","wrong":"module.exports = { extends: 'codfish' }","symbol":"codfish","correct":"module.exports = { extends: ['codfish'] }"},{"note":"dApp config is a sub-config; best used as additional extend.","wrong":"module.exports = { extends: 'codfish/dapp' }","symbol":"codfish/dapp","correct":"module.exports = { extends: ['codfish', 'codfish/dapp'] }"},{"note":"Standalone React config; typically not needed as main config detects React automatically.","wrong":"module.exports = { extends: 'codfish/react' }","symbol":"codfish/react","correct":"module.exports = { extends: ['codfish/react'] }"}],"quickstart":{"code":"module.exports = {\n  extends: ['codfish'],\n  rules: {\n    'no-console': 'warn',\n  },\n};\n\n// .prettierrc.js\nmodule.exports = {\n  printWidth: 100,\n  tabWidth: 2,\n  useTabs: false,\n  semi: true,\n  singleQuote: true,\n  trailingComma: 'all',\n  bracketSpacing: true,\n  jsxBracketSameLine: false,\n  proseWrap: 'always',\n};","lang":"javascript","description":"Shows minimal ESLint configuration extending eslint-config-codfish and recommended Prettier config."},"warnings":[{"fix":"Ensure your project uses ESLint ^10.0.0. Update peer dependencies accordingly.","message":"Version 13.0.0 upgraded to ESLint 10, which may break configs expecting ESLint 8 or 9.","severity":"breaking","affected_versions":">=13.0.0"},{"fix":"Check changelog; consider not using 'codfish/dapp' if core config meets needs.","message":"The dapp sub-config may be deprecated in future versions as core config includes docker-like ignores.","severity":"deprecated","affected_versions":">=12.0.0"},{"fix":"Upgrade ESLint to ^8.2.0 or use eslint-config-codfish@10.x.","message":"Version 11.x required ESLint ^8.2.0; older configs with ESLint 7 will fail.","severity":"breaking","affected_versions":">=11.0.0 <13.0.0"},{"fix":"Ensure jest is in devDependencies if you want Jest-specific lint rules.","message":"The config assumes Jest is installed as a project dependency; otherwise Jest rules are not applied. This may cause confusion if linting test files.","severity":"gotcha","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 `npx install-peerdeps eslint-config-codfish` to install with all peer deps.","cause":"eslint-config-codfish not installed or not in node_modules.","error":"Error: Failed to load config \"codfish\" to extend from."},{"fix":"Install eslint-config-codfish as a devDependency: `npm install --save-dev eslint-config-codfish`.","cause":"Package not installed or ESLint cannot resolve scoped config.","error":"Error: Cannot find module 'eslint-config-codfish'"},{"fix":"Use `extends: ['codfish']` with array syntax.","cause":"ESLint config file syntax error (extending a single string instead of array).","error":"Error: ESLint configuration is invalid: \"extends\" value 'codfish' is not defined."},{"fix":"Install peer dependencies: `npm install --save-dev @typescript-eslint/parser @typescript-eslint/eslint-plugin`.","cause":"TypeScript parser not installed as a dependency.","error":"Error: Failed to load parser '@typescript-eslint/parser'"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}