awesome-eslint

ESLint config library

A curated list of popular ESLint configurations and plugins for code quality and style enforcement in JavaScript projects.

A list of awesome ESLint plugins, configs, etc.

GitHub

4k stars
69 watching
226 forks
last commit: about 1 month ago
Linked from 4 awesome lists

awesomeawesome-listeslintlist

Awesome ESLint / Configs / Configs by Well-Known Companies/Organizations

Airbnb 145,313 about 2 months ago Shareable config for
Airbnb-babel 3 over 1 year ago Airbnb's ESLint config with Babel Support
Airbnb-typescript 1,044 3 months ago Airbnb's ESLint config with TypeScript support
Alloy 2,648 10 months ago Progressive ESLint config for your React/Vue/TypeScript projects
ESLint 25,110 6 days ago Contains the ESLint configuration used for projects maintained by the ESLint team
Facebook Sharable config for Facebook's style guide
Feedzai 8 4 months ago Feedzai's shareable config for JavaScript/React projects
React App 102,771 3 months ago Sharable config for projects
Shopify 464 about 1 month ago Shareable config for
Vercel 1,280 26 days ago Vercel Engineering's composable eslint configuration used in all their codebases
Wikimedia 29 16 days ago Shareable config for , used by

Awesome ESLint / Configs / Other Prominent Configs (100 stars or so)

Auto 402 7 months ago Automatically configure ESLint based on your project's dependencies
Canonical 598 5 days ago Shareable config for
Standard 2,610 6 days ago Shareable config for JavaScript
XO 267 about 1 month ago Shareable config for
Antfu Eslint Config 4,063 7 days ago Anthony's ESLint config preset

Awesome ESLint / Configs / Other Configs

Adjunct 50 7 months ago A reasonable collection of plugins to use alongside your main ESLint configuration
Ash-Nazg 6 about 1 month ago One config to rule them all!
Cecilia 7 5 months ago ESLint configuration for awesome projects
clean-typescript 1 9 months ago Enforce classic JavaScript featuress in TypeScript codebase by banning excessive keywords
ES Shareable config for very strict code
Hardcore 420 3 months ago The most strict (but practical) ESLint config out there
Problems 68 6 days ago Shareable config that only catches actual problems, and doesn't enforce stylistic preferences
Supermind 4 over 3 years ago Shareable config for Supermind style
Sheriff 111 9 days ago Comprehensive and highly opinionated Eslint configuration. Typescript oriented

Awesome ESLint / Preconfigured Configs with ESLint Set up

Node.js Standard Style 6 almost 8 years ago Node.js core config
eslint-config-prettier 5,470 4 months ago Prettier config for ESlint maintained by Prettier team
Standard 29,135 2 months ago JavaScript Standard Style
Superlint 5 over 7 years ago JavaScript Supermind Style
XO 7,698 about 1 month ago JavaScript happiness style linter ❤️
Healthier 84 about 1 year ago Code style agnostic version of Standard, perfect companion to Prettier

Awesome ESLint / Plugins / Code Quality

depend 349 17 days ago Helps detect dependency tree bloat and redundant polyfills
GitHub 299 6 days ago Misc. rules from GitHub
SonarJS 1,196 about 2 months ago Rules detecting bugs and suspicious patterns
Unicorn 4,291 about 1 month ago Various awesome ESLint rules
@mysticatea/eslint-plugin 26 about 2 years ago Misc. rules
@brettz9/eslint-plugin 2 4 months ago Misc. rules. of without the personal config

Awesome ESLint / Plugins / Compatibility

Compat 3,081 2 months ago Lint browser compatibility of APIs used ( as an ESLint plugin)
ecmascript-compat 65 7 months ago Disable ECMAScript language features not supported by your browserslist targets
es-x 118 4 days ago Disable specific ECMAScript language versions or individual features. Properly maintained fork of no longer maintained
es5 54 almost 2 years ago ESLint plugin for ES5 users (forbid ES2015+ usage)
ie11 14 almost 4 years ago Detect unsupported ES6 features in IE11

Awesome ESLint / Plugins / CSS in JS

CSS-modules 152 12 months ago Lint undefined or unused rules for css modules
Emotion 17,506 9 days ago ESLint rules for emotion

Awesome ESLint / Plugins / CSS in JS / Styled Components

Better Styled Components 65 almost 2 years ago Auto fixable ESlint's rules for styled components
styled-components-a11y 145 about 2 months ago A11y for Styled Components

Awesome ESLint / Plugins / Deprecation

deprecate 81 4 months ago Mark functions or modules as deprecated and get lint messages when they are used
deprecation 330 about 1 month ago Identifies use of jsdoc functions
disable 56 over 1 year ago Disable specified plugins using file path patterns and inline comments

Awesome ESLint / Plugins / Embedded

HTML 435 2 months ago Linting for JavaScript inside of HTML tags
Markdown 407 4 days ago Linting for JavaScript inside of Markdown

Awesome ESLint / Plugins / Frameworks

Angular 1,642 7 days ago Linting rules for Angular (v2+)
AngularJS 618 7 months ago Linting rules to adhere to the
Astro 318 4 days ago Plugin for
Backbone 95 almost 7 years ago Linting rules for Backbone
Custom Elements 58 about 1 year ago Rules by GitHub for Custom Elements
Ember 262 10 days ago Linting rules for Ember
Hapi 21 30 days ago Linting rules for hapi
Meteor 44,421 6 days ago Meteor specific linting rules for ESLint

Awesome ESLint / Plugins / Frameworks / React

JSX a11y 22 6 months ago Accessibility rules on JSX elements
React 8,999 17 days ago Linting rules for React and JSX
React Hooks 229,269 6 days ago Linting rules for React Hooks
React Native 722 4 months ago React Native specific linting rules
React-Redux 82 about 2 months ago React-Redux specific linting rules

Awesome ESLint / Plugins / Frameworks

Solid 220 9 days ago Linting rules for Solid and JSX
Svelte 305 4 days ago Linting rules for Svelte v3 Components

Awesome ESLint / Plugins / Frameworks / Vue

VueJS 4,471 10 days ago Plugin for VueJS
VueJS Scoped CSS 98 4 days ago Plugin for Scoped CSS in VueJS

Awesome ESLint / Plugins / Languages and Environments

AssemblyScript Rules for enforcing restrictions on TypeScript toward AssemblyScript compliance
Babel 43,241 6 days ago Adds replacements for built-in rules to include Babel features
Coffee 11 over 3 years ago Enables linting CoffeeScript files with, with optional linting rules from the Coffeelint library
eslint-plugin-eslint-plugin 196 27 days ago An ESLint plugin for linting ESLint plugins

Awesome ESLint / Plugins / Languages and Environments / Flow

Flow 1,077 9 months ago Flow type linting rules
Flow Errors 402 over 2 years ago Run Flow as an ESLint plugin

Awesome ESLint / Plugins / Languages and Environments

HTML 161 12 days ago ESLint plugin for HTML

Awesome ESLint / Plugins / Languages and Environments / JSON

JSON 209 3 months ago Lint your JSON files
JSON, package.json 41 almost 2 years ago Lint, format, and auto-fix your JSON files. Sort your
JSON with Comments 199 4 days ago ESLint plugin for JSON, JSONC and JSON5
JSON Schema 72 4 days ago Validates data defined in JavaScript, JSON, YAML and TOML using JSON Schema Validator

Awesome ESLint / Plugins / Languages and Environments

MDX 266 21 days ago ESLint Parser/Plugin for MDX
N 232 6 days ago Additional ESLint's rules for Node.js. Properly maintained fork of no longer maintained
SQL 94 3 months ago SQL linting rules for ESLint
TOML 26 4 days ago ESLint plugin for TOML
TypeScript 15,283 4 days ago Linting rules for TypeScript
YAML 121 4 days ago ESLint plugin for YAML

Awesome ESLint / Plugins / Libraries / GraphQL

dotansimha/graphql-eslint 800 4 days ago Validates, prettifies and checks your GraphQL operations and GraphQL schema for best-practices
apollostack/eslint-plugin-graphql 1,213 20 days ago Check your GraphQL query strings against a schema

Awesome ESLint / Plugins / Libraries

TypeGraphQL 17 over 2 years ago Linting rules for TypeGraphQL, targeted at finding common mistakes
jQuery 31 5 months ago Linting rules for jQuery, including versioned configs for deprecated features
JSDoc 1,100 9 days ago Linting rules for JSDoc comments (including the JavaScript within )

Awesome ESLint / Plugins / Libraries / Lodash

Lodash 277 10 months ago Lodash specific linting rules
Lodash/fp 151 almost 2 years ago Lodash/fp specific linting rules
Lodash template 17 6 days ago Plugin for Lodash template/Underscore template
Microtemplates 4 over 8 years ago (Used in Lodash and Underscore.js)

Awesome ESLint / Plugins / Libraries

Mongodb 19 almost 2 years ago Mongodb native Node.js driver linting rules
Ramda 117 over 3 years ago Ramda specific linting rules
RequireJS 29 almost 2 years ago Linting rules for RequireJS
Tailwind CSS 1,501 about 1 month ago Linting rules for Tailwind CSS classnames

Awesome ESLint / Plugins / Misc

Diff 181 3 months ago Run ESLint on your changed lines only. Also supports CI!
Misc 10 3 months ago Miscellaneous rules including rules for creating custom checks and wrapping (modifying) third-party rules
Notice 26 5 months ago An eslint rule that checks the top of files and fixes them too!
Only-Error 16 5 months ago Convert all rules to errors
Only-Warn 164 6 months ago Convert all rules to warnings
PutOut 708 10 days ago an ESLint plugin integrates linter into ESLint
TypeLint 175 over 6 years ago Introduces types, based on existing schemas (Swagger, Redux) and linting access to object properties, preventing errors
Woke 33 about 1 month ago Helps catch insensitive words, promoting an inclusive codebase

Awesome ESLint / Plugins / Practices and Specific ES Features

array-func 94 10 days ago Avoid redundancy when using es2015 array methods and functions
arrow functions 307 over 2 years ago ESLint rules to ensure proper arrow function definitions
boundaries 554 7 days ago Ensures that your architecture boundaries are respected by the elements in your project checking file structure and dependencies
@eslint-community/eslint-plugin-eslint-comments 53 27 days ago Best practices about ESLint directive comments ( , etc.). Properly maintained fork of no longer maintained
eslint-plugin-hexagonal-architecture 294 about 2 years ago A plugin that helps you to enforce hexagonal architecture best practices
eslint-plugin-write-good-comments 36 11 months ago Enforce good writing style in comments
eslint-plugin-exception-handling 26 about 1 month ago Lints unhandled functions that might throw errors
fp 968 almost 4 years ago ESLint rules for functional programming
functional 852 19 days ago ESLint rules to disable mutation and promote fp in JavaScript and TypeScript
Immutable 912 about 5 years ago Disable all mutation in JavaScript
import 5,558 6 days ago Linting of ES2015+ import/export syntax, and prevent issues with misspelling of file paths and import names
import-x 431 6 days ago Linting of ES2015+ import/export syntax, and prevent issues with misspelling of file paths and import names. Lightweight fork of , but which breaks backwards compatibility
new-with-error 26 17 days ago Require errors to be thrown using
no-argument-spread 3 over 2 years ago Lints against expressions like that can lead to a stack overflow for large arrays
no-comments 13 over 1 year ago Prevents leaking comments into production if bundler is not used and stops developers from commenting out old lines of code
no-constructor-bind 12 over 1 year ago Encourages use of class properties by reporting use of with or setting state in constructors
no-inferred-method-name 27 almost 3 years ago Custom rule for ESLint that checks for inferred method names within object literals
no-loops 126 5 months ago It's 2019 and you still use loops?
no-restricted-syntax 5 5 months ago Show queried syntax's content in messages
no-use-extend-native 56 3 months ago Prevent using extended native objects
Promise 943 7 days ago Best practices when working with promises
pure 29 over 8 years ago Enforce pure functions (without side effects)
ReDoS ESLint plugin for finding possible ReDoS vulnerabilities
ReDoSDetector 5 5 days ago ESLint plugin for finding possible ReDoS vulnerabilities
RegExp 697 4 days ago ESLint plugin for finding regexp mistakes and style guide violations
sort-keys-fix 97 5 months ago Adds fixer for ESLint rule
this 16 over 1 year ago Write pure functions, don't allow
toplevel 19 8 months ago An eslint plugin for disallow side effect at module toplevel

Awesome ESLint / Plugins / Performance

DOM 9 about 6 years ago
Optimize Regex 74 5 months ago Optimize regex literals
plugin 23 almost 8 years ago Perf-Standard and

Awesome ESLint / Plugins / Security

no-secrets 137 17 days ago An eslint plugin that detects potential secrets/credentials
no-unsanitized 231 about 1 month ago Checks for , , etc
pii 9 over 2 years ago Checks and enforces PII Compliance of the code. i.e. no email address, birth date, IP address or phone number in comments or string literals
config 88 over 3 years ago ScanJS and - Security-related rules
Security 2,220 about 1 month ago ESLint rules for Node Security
xss 66 about 1 year ago Tries to detect XSS issues in codebase before they end up in production

Awesome ESLint / Plugins / Style

ESLint Stylistic -
const case Enforce capitalization of constant primitive literals
editorconfig 15 about 1 year ago Derive rules from
filenames 323 4 months ago Ensure consistent filenames for your JavaScript files. No longer maintained and does not work with ESlint 9 at all
Simple import sort 2,114 about 2 months ago Easy autofixable import sorting
perfectionist sorting 1,932 7 days ago Sort objects, imports, TypeScript types, enums, JSX props, etc
Switch case 17 4 months ago Switch-case-specific linting rules for ESLint
padding 5 almost 4 years ago Allows/disallows padding between statements
paths 64 8 days ago Use paths from tsconfig/jsconfig and auto fix relative paths to aliases

Awesome ESLint / Plugins / Testing Tools

AVA 230 6 months ago Linting rules for AVA

Awesome ESLint / Plugins / Testing Tools / Chai

expect practices 27 6 days ago
with unused expressions 53 3 months ago
permitted keywords 1 4 months ago
with chai-as-promised plugin 4 4 months ago
globals 2 about 7 years ago

Awesome ESLint / Plugins / Testing Tools

Cucumber 7 over 1 year ago Linting rules for Cucumber
Cypress 706 15 days ago Linting rules for Cypress
Jasmine 95 about 1 month ago Linting rules for Jasmine

Awesome ESLint / Plugins / Testing Tools / Jest

Enforcing practices 1,135 7 days ago Linting rules for Jest
Enforcing consistent formatting 156 over 1 year ago Formatting rules for Jest
Jest-async Async linting rule for Jest
Jest-DOM 361 4 months ago Linting rules for Jest-DOM

Awesome ESLint / Plugins / Testing Tools / Mocha

Enforcing practices 281 3 months ago Linting rules for Mocha
Enforcing manageability 13 about 2 months ago

Awesome ESLint / Plugins / Testing Tools

Playwright 281 6 days ago Linting rules for Playwright
QUnit 30 3 months ago Linting rules for QUnit
TestCafe-Community 4 3 months ago TestCafe linting rules with env globals (fork from )
Testing Library 992 6 days ago Linting rules for Testing Library

Awesome ESLint / Parsers

babel-eslint-parser 43,241 6 days ago Allows you to lint ALL valid Babel code with the fantastic ESLint
TypeScript 15,283 4 days ago A TypeScript parser that produces output compatible with ESLint
BrightScript 44 almost 2 years ago BrightScript plugin for Roku development. Includes Parser and Rules
GraphQL 800 4 days ago Parser for the GraphQL AST. Includes parser, plugin, processor (for non-graphql files) and rules

Awesome ESLint / Formatters

html 35 5 months ago A enhanced ESLint formatter
badger 6 10 months ago Make SVG-based badges summarizing ESLint results (e.g., for use on a README)
git-log 41 over 2 years ago ESLint Formatter featuring Git Author, Date, and Hash
github 102 26 days ago See ESLint errors and warnings directly in pull requests
gitlab Output ESLint results in the GitLab code quality results
mo 124 over 1 year ago Good-lookin' ESLint formatter and also for delightful reading experience
SARIF Generate a results in a SARIF format so it can be imported into tools like GitHub Advanced Security
summary-chart 12 5 months ago Format ESLint output into a bar chart

Awesome ESLint / Globals

confusing-browser-globals 102,771 3 months ago A curated list of browser globals that commonly cause confusion and are not recommended to use without an explicit window. qualifier
ES and browser globals 405 17 days ago (originally from ESLint)
chai globals 2 about 7 years ago
TestCafe globals 15 over 4 years ago & globals for TestCafe

Awesome ESLint / Tools

eslint-define-config 361 6 days ago Provide a function for files
es-file-traverse 2 4 months ago Obtain a list of only those files which are in use based on imports and/or requires from an entry file or files; list passable to ESLint. Intended esp. for linting 3rd party dependencies
eslint-find-rules 206 about 1 month ago Find built-in ESLint rules you don't have in your custom config
eslint-index 20 over 3 years ago CLI for finding and managing rules in ESLint config files
eslint-interactive 368 about 2 months ago The CLI tool to fix huge number of ESLint errors
eslint-multiplexer 7 4 days ago Multiplex eslint results and merge results for common files
eslint-nibble 782 2 months ago Ease into ESLint, by fixing one rule at a time
eslint-plugin-rule-adoption 1 5 months ago An eslint plugin for incremental rule adoption, when and codemods don't cut it
eslint-rule-documentation 30 over 1 year ago Find the url for the documentation of an ESLint rule
eslint-watch 196 over 1 year ago Run ESLint with watch mode
codacy-eslint 15 6 days ago Docker used at to run ESLint
esprint 662 3 months ago Run ESLint across multiple threads
generator-eslint 230 24 days ago Generate ESLint plugin and rules with
editor-info 6 5 days ago Detect whether one is within an editor/IDE and which type, allowing one to tweak ESLint configuration accordingly
eslint-dashboard 19 about 3 years ago Interactive ESLint workflow that lives in your terminal
eslint-remote-tester 129 6 days ago CLI tool for testing given ESlint rules against multiple repositories at once

Awesome ESLint / Developing for ESLint

eslint-doc-generator 92 9 days ago Generate documentation for your ESLint plugin including a rules table for your readme and header for your rule docs
eslint-docgen 10 6 months ago Automatically generate ESLint plugin documentation from rule metadata and test cases

Awesome ESLint / Tutorials

Creating an ESLint Plugin Article walking through the creation of an ESLint rule and plugin
Lint Like It's 2015 Article walking through the benefits of using ESLint
Linting JavaScript with ESLint Video showing ESLint setup and basics
Linting React JSX with ESLint (in ES6) Video showing how to use React and JSX with ESLint
Plugin Module with Mixins Article on how to write a plugin as a node module containing modular mixin configuration
Writing a rule to spot undeclared props hiding in plain sight Article about creating rules that require scope analysis

Awesome ESLint / Installation and Setup

Lintier 24 10 days ago CLI to quickly scaffold an ESLint & Prettier setup in a TypeScript project

Backlinks from these awesome lists:

More related projects: