{"id":13604572,"url":"https://github.com/kentcdodds/eslint-config-kentcdodds","last_synced_at":"2025-05-16T05:00:18.050Z","repository":{"id":1224512,"uuid":"41484899","full_name":"kentcdodds/eslint-config-kentcdodds","owner":"kentcdodds","description":"ESLint configuration for projects that I do... Feel free to use this!","archived":false,"fork":false,"pushed_at":"2024-01-03T23:52:28.000Z","size":296,"stargazers_count":342,"open_issues_count":3,"forks_count":63,"subscribers_count":12,"default_branch":"main","last_synced_at":"2025-04-08T14:12:21.705Z","etag":null,"topics":["eslint-config","personal-config"],"latest_commit_sha":null,"homepage":"http://eslint.org/docs/user-guide/configuring#extending-configuration-files","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kentcdodds.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2015-08-27T12:20:05.000Z","updated_at":"2025-01-10T22:51:55.000Z","dependencies_parsed_at":"2024-01-14T16:42:08.571Z","dependency_job_id":null,"html_url":"https://github.com/kentcdodds/eslint-config-kentcdodds","commit_stats":{"total_commits":190,"total_committers":19,"mean_commits":10.0,"dds":0.6421052631578947,"last_synced_commit":"ffa56417c39c1406930597c97055f759664a2b9b"},"previous_names":[],"tags_count":115,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kentcdodds%2Feslint-config-kentcdodds","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kentcdodds%2Feslint-config-kentcdodds/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kentcdodds%2Feslint-config-kentcdodds/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kentcdodds%2Feslint-config-kentcdodds/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kentcdodds","download_url":"https://codeload.github.com/kentcdodds/eslint-config-kentcdodds/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254471028,"owners_count":22076582,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["eslint-config","personal-config"],"created_at":"2024-08-01T19:00:48.314Z","updated_at":"2025-05-16T05:00:17.833Z","avatar_url":"https://github.com/kentcdodds.png","language":"JavaScript","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\u003ch1\u003eeslint-config-kentcdodds\u003c/h1\u003e\n\n\u003cp\u003eESLint rules for all of my personal projects. Feel free to use these conventions :-)\u003c/p\u003e\n\u003c/div\u003e\n\n---\n\n\u003c!-- prettier-ignore-start --\u003e\n[![Build Status][build-badge]][build]\n[![version][version-badge]][package]\n[![downloads][downloads-badge]][npmtrends]\n[![MIT License][license-badge]][license]\n[![All Contributors][all-contributors-badge]](#contributors-)\n[![PRs Welcome][prs-badge]][prs]\n[![Code of Conduct][coc-badge]][coc]\n\u003c!-- prettier-ignore-end --\u003e\n\n## Table of Contents\n\n\u003c!-- START doctoc generated TOC please keep comment here to allow auto update --\u003e\n\u003c!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --\u003e\n\n- [Installation](#installation)\n- [Usage](#usage)\n  - [Other configs](#other-configs)\n  - [Things to know](#things-to-know)\n- [Issues](#issues)\n  - [🐛 Bugs](#-bugs)\n  - [💡 Feature Requests](#-feature-requests)\n- [Contributors ✨](#contributors-)\n- [LICENSE](#license)\n\n\u003c!-- END doctoc generated TOC please keep comment here to allow auto update --\u003e\n\n## Installation\n\nThis module is distributed via [npm][npm] which is bundled with [node][node] and\nshould be installed as one of your project's `devDependencies`:\n\n```\nnpm install --save-dev eslint-config-kentcdodds\n```\n\nThis library has a required `peerDependencies` listing for [`eslint`][eslint]\n\n## Usage\n\nThen add the extends to your `.eslintrc.js`:\n\n```javascript\nmodule.exports = {\n  extends: 'kentcdodds',\n  rules: {\n    // your overrides\n  },\n}\n```\n\n### Other configs\n\nThis config also exposes a few other configs that I use often and pull in as\nneeded.\n\nYou can use them standalone:\n\n```javascript\nmodule.exports = {\n  extends: 'kentcdodds/\u003cconfig-name\u003e',\n}\n```\n\nOr in combination with the base config (recommended)\n\n```javascript\nmodule.exports = {\n  extends: ['kentcdodds', 'kentcdodds/\u003cconfig-name\u003e'],\n}\n```\n\n### Things to know\n\n- All plugins needed for rules used by these configs are dependencies of this\n  module so you don't have to install anything on your own.\n- The default config actually is composed of several configurations and you can\n  use those individually. You can use each of these configs yourself if you want\n  to leave my own personal style out of it.\n\n#### Example of customized config\n\n```javascript\nmodule.exports = {\n  extends: ['kentcdodds/import', 'kentcdodds/jest'],\n  rules: {\n    /* custom rules */\n  },\n}\n```\n\n## Issues\n\n_Looking to contribute? Look for the [Good First Issue][good-first-issue]\nlabel._\n\n### 🐛 Bugs\n\nPlease file an issue for bugs, missing documentation, or unexpected behavior.\n\n[**See Bugs**][bugs]\n\n### 💡 Feature Requests\n\nPlease file an issue to suggest new features. Vote on feature requests by adding\na 👍. This helps maintainers prioritize what to work on.\n\n[**See Feature Requests**][requests]\n\n## Contributors ✨\n\nThanks goes to these people ([emoji key][emojis]):\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --\u003e\n\u003c!-- prettier-ignore-start --\u003e\n\u003c!-- markdownlint-disable --\u003e\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://kentcdodds.com\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/1500684?v=3?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eKent C. Dodds\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/kentcdodds/eslint-config-kentcdodds/commits?author=kentcdodds\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"https://github.com/kentcdodds/eslint-config-kentcdodds/commits?author=kentcdodds\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"#infra-kentcdodds\" title=\"Infrastructure (Hosting, Build-Tools, etc)\"\u003e🚇\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"http://jonno.dev\"\u003e\u003cimg src=\"https://avatars3.githubusercontent.com/u/1351912?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eJonathan Haines\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/kentcdodds/eslint-config-kentcdodds/commits?author=BarryThePenguin\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/zack9433\"\u003e\u003cimg src=\"https://avatars3.githubusercontent.com/u/1610642?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eZack Yang\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/kentcdodds/eslint-config-kentcdodds/commits?author=zack9433\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://mohamed3on.online/\"\u003e\u003cimg src=\"https://avatars2.githubusercontent.com/u/12295159?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eMohamed Oun\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/kentcdodds/eslint-config-kentcdodds/commits?author=Mohamed3on\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://alexandernanberg.com\"\u003e\u003cimg src=\"https://avatars3.githubusercontent.com/u/8997319?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eAlexander Nanberg\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/kentcdodds/eslint-config-kentcdodds/commits?author=alexandernanberg\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://huchen.dev\"\u003e\u003cimg src=\"https://avatars3.githubusercontent.com/u/2078389?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eHu Chen\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/kentcdodds/eslint-config-kentcdodds/commits?author=huchenme\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/weyert\"\u003e\u003cimg src=\"https://avatars3.githubusercontent.com/u/7049?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eWeyert de Boer\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/kentcdodds/eslint-config-kentcdodds/commits?author=weyert\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"http://ma.vu\"\u003e\u003cimg src=\"https://avatars3.githubusercontent.com/u/3077558?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eMarko Vujanic\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/kentcdodds/eslint-config-kentcdodds/commits?author=ultrox\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://michaeldeboey.be\"\u003e\u003cimg src=\"https://avatars3.githubusercontent.com/u/6643991?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eMichaël De Boey\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/kentcdodds/eslint-config-kentcdodds/commits?author=MichaelDeBoey\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"https://github.com/kentcdodds/eslint-config-kentcdodds/commits?author=MichaelDeBoey\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"#tool-MichaelDeBoey\" title=\"Tools\"\u003e🔧\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://www.justindorfman.com\"\u003e\u003cimg src=\"https://avatars1.githubusercontent.com/u/398230?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eJustin Dorfman\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/kentcdodds/eslint-config-kentcdodds/commits?author=jdorfman\" title=\"Documentation\"\u003e📖\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"http://arvigeus.github.com\"\u003e\u003cimg src=\"https://avatars2.githubusercontent.com/u/4872470?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eNikolay Stoynov\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/kentcdodds/eslint-config-kentcdodds/commits?author=arvigeus\" title=\"Documentation\"\u003e📖\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://www.andrewm.codes\"\u003e\u003cimg src=\"https://avatars1.githubusercontent.com/u/18423853?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eAndrew Mason\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/kentcdodds/eslint-config-kentcdodds/commits?author=andrewmcodes\" title=\"Documentation\"\u003e📖\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/benmonro\"\u003e\u003cimg src=\"https://avatars3.githubusercontent.com/u/399236?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eBen Monro\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/kentcdodds/eslint-config-kentcdodds/commits?author=benmonro\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/silviuaavram\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/11275392?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eSilviu Alexandru Avram\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/kentcdodds/eslint-config-kentcdodds/commits?author=silviuaavram\" title=\"Documentation\"\u003e📖\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\u003c!-- markdownlint-restore --\u003e\n\u003c!-- prettier-ignore-end --\u003e\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:END --\u003e\n\nThis project follows the [all-contributors][all-contributors] specification.\nContributions of any kind welcome!\n\n## LICENSE\n\nMIT\n\n\u003c!-- prettier-ignore-start --\u003e\n[npm]: https://www.npmjs.com\n[node]: https://nodejs.org\n[build-badge]: https://img.shields.io/github/workflow/status/kentcdodds/eslint-config-kentcdodds/validate?logo=github\u0026style=flat-square\n[build]: https://github.com/kentcdodds/eslint-config-kentcdodds/actions?query=workflow%3Avalidate\n[version-badge]: https://img.shields.io/npm/v/eslint-config-kentcdodds.svg?style=flat-square\n[package]: https://www.npmjs.com/package/eslint-config-kentcdodds\n[downloads-badge]: https://img.shields.io/npm/dm/eslint-config-kentcdodds.svg?style=flat-square\n[npmtrends]: http://www.npmtrends.com/eslint-config-kentcdodds\n[license-badge]: https://img.shields.io/npm/l/eslint-config-kentcdodds.svg?style=flat-square\n[license]: https://github.com/kentcdodds/eslint-config-kentcdodds/blob/master/LICENSE\n[prs-badge]: https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square\n[prs]: http://makeapullrequest.com\n[coc-badge]: https://img.shields.io/badge/code%20of-conduct-ff69b4.svg?style=flat-square\n[coc]: https://github.com/kentcdodds/eslint-config-kentcdodds/blob/master/other/CODE_OF_CONDUCT.md\n[emojis]: https://github.com/all-contributors/all-contributors#emoji-key\n[all-contributors]: https://g.all-contributorsrcithub.com/all-contributors/all-contributors\n[all-contributors-badge]: https://img.shields.io/github/all-contributors/kentcdodds/eslint-config-kentcdodds?color=orange\u0026style=flat-square\n[bugs]: https://github.com/kentcdodds/eslint-config-kentcdodds/issues?utf8=%E2%9C%93\u0026q=is%3Aissue+is%3Aopen+sort%3Acreated-desc+label%3Abug\n[requests]: https://github.com/kentcdodds/eslint-config-kentcdodds/issues?utf8=%E2%9C%93\u0026q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc+label%3Aenhancement\n[good-first-issue]: https://github.com/kentcdodds/eslint-config-kentcdodds/issues?utf8=%E2%9C%93\u0026q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc+label%3Aenhancement+label%3A%22good+first+issue%22\n\n[eslint]: https://github.com/eslint/eslint\n\u003c!-- prettier-ignore-end --\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkentcdodds%2Feslint-config-kentcdodds","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkentcdodds%2Feslint-config-kentcdodds","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkentcdodds%2Feslint-config-kentcdodds/lists"}