# Awesome ESLint [![Awesome](https://awesome.re/badge.svg)](https://awesome.re) [eslint](http://eslint.org) > A list of awesome ESLint configs, plugins, etc. If you want to contribute, please read the [contribution guidelines](contributing.md). ## Contents - [Configs](#configs) - [Configs by Well-Known Companies/Organizations](#configs-by-well-known-companiesorganizations) - [Other Prominent Configs (100 stars or so)](#other-prominent-configs-100-stars-or-so) - [Other Configs](#other-configs) - [Preconfigured Configs with ESLint Set up](#preconfigured-configs-with-eslint-set-up) - [Plugins](#plugins) - [Code Quality](#code-quality) - [Compatibility](#compatibility) - [CSS in JS](#css-in-js) - [Deprecation](#deprecation) - [Embedded](#embedded) - [Frameworks](#frameworks) - [Languages and Environments](#languages-and-environments) - [Libraries](#libraries) - [Misc](#misc) - [Practices and Specific ES Features](#practices-and-specific-es-features) - [Performance](#performance) - [Security](#security) - [Style](#style) - [Testing Tools](#testing-tools) - [Parsers](#parsers) - [Formatters](#formatters) - [Globals](#globals) - [Tools](#tools) - [Developing for ESLint](#developing-for-eslint) - [Tutorials](#tutorials) - [Installation and Setup](#installation-and-setup) ## Configs ### Configs by Well-Known Companies/Organizations - [Airbnb](https://github.com/airbnb/javascript/tree/master/packages/eslint-config-airbnb) - Shareable config for [Airbnb's style guide](https://github.com/airbnb/javascript). - [Airbnb-babel](https://github.com/davidjbradshaw/eslint-config-airbnb-babel) - Airbnb's ESLint config with Babel Support. - [Airbnb-typescript](https://github.com/iamturns/eslint-config-airbnb-typescript) - Airbnb's ESLint config with TypeScript support. - [Alloy](https://github.com/AlloyTeam/eslint-config-alloy) - Progressive ESLint config for your React/Vue/TypeScript projects. - [ESLint](https://github.com/eslint/eslint/tree/master/packages/eslint-config-eslint) - Contains the ESLint configuration used for projects maintained by the ESLint team. - [Facebook](https://www.npmjs.com/package/eslint-config-fbjs) - Sharable config for Facebook's style guide. - [Feedzai](https://github.com/feedzai/eslint-config-feedzai) - Feedzai's shareable config for JavaScript/React projects. - [React App](https://github.com/facebook/create-react-app/tree/master/packages/eslint-config-react-app) - Sharable config for [React](https://reactjs.org) projects. - [Shopify](https://github.com/Shopify/web-foundation/blob/main/packages/eslint-plugin/README.md) - Shareable config for [Shopify's style guide](https://github.com/Shopify/javascript). - [Vercel](https://github.com/vercel/style-guide/tree/canary/eslint) - Vercel Engineering's composable eslint configuration used in all their codebases. - [Wikimedia](https://github.com/wikimedia/eslint-config-wikimedia) - Shareable config for [Wikimedia's style guide](https://www.mediawiki.org/wiki/Manual:Coding_conventions/JavaScript), used by [MediaWiki](https://www.mediawiki.org/). ### Other Prominent Configs (100 stars or so) - [Auto](https://github.com/davidjbradshaw/eslint-config-auto) - Automatically configure ESLint based on your project's dependencies. - [Canonical](https://github.com/gajus/eslint-config-canonical) - Shareable config for [Canonical style guide](https://github.com/gajus/canonical). - [Standard](https://github.com/feross/eslint-config-standard) - Shareable config for JavaScript [Standard Style](https://github.com/feross/standard). - [XO](https://github.com/xojs/eslint-config-xo) - Shareable config for [XO](https://github.com/xojs/xo). ### Other Configs - [Adjunct](https://github.com/davidjbradshaw/eslint-config-adjunct) - A reasonable collection of plugins to use alongside your main ESLint configuration. - [Ash-Nazg](https://github.com/brettz9/eslint-config-ash-nazg) - One config to rule them all! - [Cecilia](https://github.com/SandroMiguel/eslint-config-cecilia) - ESLint configuration for awesome projects. - [clean-typescript](https://github.com/cunarist/eslint-config-clean-typescript) - Enforce classic JavaScript featuress in TypeScript codebase by banning excessive keywords. - [ES](https://github.com/thenativeweb/eslint-config-es) - Shareable config for very strict code. - [Hardcore](https://github.com/EvgenyOrekhov/eslint-config-hardcore) - The most strict (but practical) ESLint config out there. - [Problems](https://github.com/RyanZim/eslint-config-problems) - Shareable config that only catches actual problems, and doesn't enforce stylistic preferences. - [Supermind](https://github.com/supermind/eslint-config-supermind) - Shareable config for Supermind style. - [Sheriff](https://github.com/AndreaPontrandolfo/sheriff) - Comprehensive and highly opinionated Eslint configuration. Typescript oriented. ## Preconfigured Configs with ESLint Set up - [Node.js Standard Style](https://github.com/geek/node-style) - Node.js core config. - [eslint-config-prettier](https://github.com/prettier/eslint-config-prettier) - Prettier config for ESlint maintained by Prettier team - [Standard](https://github.com/feross/standard) - JavaScript Standard Style. - [Superlint](https://github.com/supermind/superlint) - JavaScript Supermind Style. - [XO](https://github.com/sindresorhus/xo) - JavaScript happiness style linter ❤️. - [Healthier](https://github.com/KidkArolis/healthier) - Code style agnostic version of Standard, perfect companion to Prettier. ## Plugins ### Code Quality - [GitHub](https://github.com/github/eslint-plugin-github) - Misc. rules from GitHub. - [SonarJS](https://github.com/SonarSource/eslint-plugin-sonarjs) - Rules detecting bugs and suspicious patterns. - [Unicorn](https://github.com/sindresorhus/eslint-plugin-unicorn) - Various awesome ESLint rules. - [@mysticatea/eslint-plugin](https://github.com/mysticatea/eslint-plugin) - Misc. rules. - [@brettz9/eslint-plugin](https://github.com/brettz9/eslint-plugin) - Misc. rules. of `@mysticatea` without the personal config. ### Compatibility - [Compat](https://github.com/amilajack/eslint-plugin-compat) - Lint browser compatibility of APIs used ([caniuse](http://caniuse.com/#search=fetch) as an ESLint plugin). - [ecmascript-compat](https://github.com/robatwilliams/es-compat) - Disable ECMAScript language features not supported by your browserslist targets. - [es](https://github.com/mysticatea/eslint-plugin-es) - Disable specific ECMAScript language versions or individual features. - [es5](https://github.com/nkt/eslint-plugin-es5) - ESLint plugin for ES5 users (forbid ES2015+ usage). - [ie11](https://github.com/Volox/eslint-plugin-ie11) - Detect unsupported ES6 features in IE11. ### CSS in JS - [CSS-modules](https://github.com/atfzl/eslint-plugin-css-modules) - Lint undefined or unused rules for css modules. - [Emotion](https://github.com/emotion-js/emotion/tree/master/packages/eslint-plugin) - ESLint rules for emotion. - Styled Components - [Better Styled Components](https://github.com/tinloof/eslint-plugin-better-styled-components) - Auto fixable ESlint's rules for styled components. - [styled-components-a11y](https://github.com/brendanmorrell/eslint-plugin-styled-components-a11y) - A11y for Styled Components. ### Deprecation - [deprecate](https://github.com/AlexMost/eslint-plugin-deprecate) - Mark functions or modules as deprecated and get lint messages when they are used. - [deprecation](https://github.com/gund/eslint-plugin-deprecation) - Identifies use of jsdoc `@deprecated` functions. - [disable](https://github.com/mradionov/eslint-plugin-disable) - Disable specified plugins using file path patterns and inline comments. ### Embedded - [HTML](https://github.com/BenoitZugmeyer/eslint-plugin-html) - Linting for JavaScript inside of HTML `