Awesome ESLint 
<img src="https://eslint.org/icon.svg" width="160" align="right" alt="eslint">
A list of awesome ESLint configs, plugins, etc.
If you want to contribute, please read the contribution guidelines.
Contents
Configs
Configs by Well-Known Companies/Organizations
Other Prominent Configs (100 stars or so)
<!-- lint disable double-link -->
Other Configs
- Adjunct - A reasonable collection of plugins to use alongside your main ESLint configuration.
- Ash-Nazg - One config to rule them all!
- Cecilia - ESLint configuration for awesome projects.
- clean-typescript - Enforce classic JavaScript featuress in TypeScript codebase by banning excessive keywords.
- ES - Shareable config for very strict code.
- Hardcore - The most strict (but practical) ESLint config out there.
- Problems - Shareable config that only catches actual problems, and doesn't enforce stylistic preferences.
- Supermind - Shareable config for Supermind style.
- Sheriff - Comprehensive and highly opinionated Eslint configuration. Typescript oriented.
Preconfigured Configs with ESLint Set up
Plugins
Code Quality
Compatibility
- Compat - Lint browser compatibility of APIs used (caniuse as an ESLint plugin).
- ecmascript-compat - Disable ECMAScript language features not supported by your browserslist targets.
- es-x - Disable specific ECMAScript language versions or individual features. Properly maintained fork of no longer maintained
eslint-plugin-es
.
- es5 - ESLint plugin for ES5 users (forbid ES2015+ usage).
- ie11 - Detect unsupported ES6 features in IE11.
CSS in JS
- CSS-modules - Lint undefined or unused rules for css modules.
- Emotion - ESLint rules for emotion.
- Styled Components
Deprecation
- deprecate - Mark functions or modules as deprecated and get lint messages when they are used.
- deprecation - Identifies use of
jsdoc
@deprecated
functions.
- disable - Disable specified plugins using file path patterns and inline comments.
Embedded
- HTML - Linting for JavaScript inside of HTML
<script>
tags.
- Markdown - Linting for JavaScript inside of Markdown.
Frameworks
Languages and Environments
- AssemblyScript - Rules for enforcing restrictions on TypeScript toward AssemblyScript compliance.
- Babel - Adds replacements for built-in rules to include Babel features.
- Coffee - Enables linting CoffeeScript files with, with optional linting rules from the Coffeelint library.
- eslint-plugin-eslint-plugin - An ESLint plugin for linting ESLint plugins.
- Flow
- Flow - Flow type linting rules.
- Flow Errors - Run Flow as an ESLint plugin.
- HTML - ESLint plugin for HTML.
- JSON
- JSON - Lint your JSON files.
- JSON, package.json - Lint, format, and auto-fix your JSON files. Sort your
package.json
.
- JSON with Comments - ESLint plugin for JSON, JSONC and JSON5.
- JSON Schema - Validates data defined in JavaScript, JSON, YAML and TOML using JSON Schema Validator.
- MDX - ESLint Parser/Plugin for MDX.
- N - Additional ESLint's rules for Node.js. Properly maintained fork of no longer maintained
eslint-plugin-node
.
- SQL - SQL linting rules for ESLint.
- TOML - ESLint plugin for TOML.
- TypeScript - Linting rules for TypeScript.
- YAML - ESLint plugin for YAML.
Libraries
- GraphQL
- TypeGraphQL - Linting rules for TypeGraphQL, targeted at finding common mistakes.
- jQuery - Linting rules for jQuery, including versioned configs for deprecated features.
- JSDoc - Linting rules for JSDoc comments (including the JavaScript within
@example
).
- Lodash
- Mongodb - Mongodb native Node.js driver linting rules.
- Ramda - Ramda specific linting rules.
- RequireJS - Linting rules for RequireJS.
- Tailwind CSS - Linting rules for Tailwind CSS classnames.
Misc
- Diff - Run ESLint on your changed lines only. Also supports CI!
- Misc - Miscellaneous rules including rules for creating custom checks and wrapping (modifying) third-party rules.
- Notice - An eslint rule that checks the top of files and fixes them too!
- Only-Error - Convert all rules to errors.
- Only-Warn - Convert all rules to warnings.
- PutOut - an ESLint plugin integrates putout linter into ESLint.
- TypeLint - Introduces types, based on existing schemas (Swagger, Redux) and linting access to object properties, preventing
undefined
errors.
- Woke -