Your first time on this page? Allow me to give some explanations.
Awesome ESLint
A list of awesome ESLint plugins, configs, etc.
Here you can see meta information about this topic like the time we last updated this page, the original creator of the awesome list and a link to the original GitHub repository.
Thank you dustinspecker & contributors
View Topic on GitHub:
dustinspecker/awesome-eslint
Search for resources by name or description.
Simply type in what you are looking for and the results will be filtered on the fly.
Further filter the resources on this page by type (repository/other resource), number of stars on GitHub and time of last commit in months.
Configs by Well-Known Companies/Organizations
JavaScript Style Guide
AirBNB rules for Babel
Airbnb's ESLint config with TypeScript support
Progressive ESLint config for your React/Vue/TypeScript projects
Find and fix problems in your JavaScript code.
ESLint shareable config for the Google JavaScript style guide
Set up a modern web app by running one command.
Principles, decision logs, best practices, and common configuration for building web apps at Shopify
JavaScript style guide for Wikimedia.
Other Prominent Configs (100 stars or so)
Automatically configure ESLint based on project dependencies
The most comprehensive ES code style guide.
ESLint Config for JavaScript Standard Style
ESLint shareable config for XO
Other Configs
A reasonable collection of plugins to use alongside your main esLint configuration
ESLint configuration for awesome projects
eslint-config-es contains a strict ESLint configuration for ES2015+ and TypeScript.
The most strict (but practical) ESLint config out there. 621 rules.
An eslint config that catches problems in your code, without checking style. For use with prettier.
Linting rules for supermind projects
Preconfigured Configs with ESLint Set up
Node.js Standard Style
Formats with Prettier and lints with ESLint+Standard! (✿◠‿◠)
🌟 JavaScript Style Guide, with linter & automatic code fixer
Supermind linting standards
❤️ JavaScript linter with great defaults
🌀 Zero-config ESLint toolchain with sensible defaults.
🧘♀️ Healthier is an opinionated style agnostic code linter – a friendly companion to Prettier
Code Quality
SonarJS rules for ESLint
Various awesome ESLint rules
Compatiblity
Lint the browser compatibility of your code
Check JavaScript code compatibility with target runtime environments
ESLint plugin about ECMAScript syntactic features.
ESLint plugin for ES5 users.
ESLint plugin for detecting unsupported ES6 features in IE11.
CSS in JS
Project status: NOT MAINTAINED; Checks that you are using the existent css/scss classes, no more no less
👩🎤 CSS-in-JS library designed for high performance style composition
ESlint's rules for styled components 💅
Deprecation
simple eslint rules for deprecation
ESLint rule that reports usage of deprecated code
Disable ESLint plugins using file path patterns and inline comments
Embedded
An ESLint plugin to extract and lint scripts from HTML files.
Lint JavaScript code blocks in Markdown documents
Frameworks
ESLint plugin for AngularJS applications
Backbone specific linting rules for ESLint
An ESlint plugin that provides set of rules for Ember Applications based on commonly known good practices.
ESLint plugin containing hapi style guide rules
🧐 Meteor specific linting rules for ESLint
Static AST checker for a11y rules on JSX elements.
React specific linting rules for ESLint
A declarative, efficient, and flexible JavaScript library for building user interfaces.
React Native plugin for ESLint
Enforcing best practices for react-redux
Official ESLint plugin for Vue.js
ESLint plugin for Scoped CSS in Vue.js
Languages
Eslint plugin for Coffeescript. Full coffee integration (including CJSX format) into eslint, with optional additional rules from (modified) coffeelint
An ESlint rule plugin companion to babel-eslint
ESLint plugin with rules that help validate proper imports.
Flow type linting rules for ESLint.
Run Flow as an ESLint plugin
ESLint plugin for linting HTML
Lint your JSON files
Format and auto-fix your JSON using ESLint
ESLint plugin for JSON(C|5)? files
ESLint plugin that validates data using JSON Schema Validator.
ESLint Parser/Plugin for MDX
Additional ESLint's rules for Node.js
SQL linting rules for ESLint.
This ESLint plugin provides linting rules for TOML.
Monorepo for all the tooling which enables ESLint to support TypeScript
This ESLint plugin provides linting rules for YAML.
Libraries
ESLint parser, plugin and set rules for GraphQL (for schema and operations). Easily customizable with custom rules. Integrates with IDEs and modern GraphQL tools.
Check your GraphQL query strings against a schema.
Linter for TypeGraphQL decorators
Control allowance of certain jQuery functions, and suggest or autofix alternatives.
JSDoc specific linting rules for ESLint.
ESLint rules for lodash
ESLint rules for lodash/fp
ESLint plugin for John Resig-style micro template, Lodash's template, Underscore's template and EJS.
ESLint plugin for processing files that use Resig-style microtemplates (including Underscore.js and Lodash).
🔎 MongoDB best practices rules for ESLint
ESLint rules for use with Ramda
Enforce code conventions for RequireJS modules with ESLint
Misc
Run ESLint on your changes only
Additional ESLint rules for directive comments of ESLint.
An ESLint plugin for linting ESLint plugins
ESLint configurations and additional rules for me
An eslint rule that checks the top of files and --fix them too!
Upgrade warnings to errors
Downgrade errors to warnings
pluggable and configurable code transformer with built-in eslint, babel plugins and jscodeshift codemods support for js, jsx typescript and flow files
TypeLint is an ESlint plugin for optional static typing in JavaScript, based on JSDoc.
Practices
Rules for Array functions and methods.
ESLint rules to ensure proper arrow function definitions
Eslint plugin checking architecture boundaries between elements
ESLint rules for functional programming
ESLint rules to disable mutation and promote fp in JavaScript and TypeScript.
ESLint plugin to disable all mutation in JavaScript.
Require throw new Error()
and not throw Error()
Prefer class arrow functions to binding in the constructor
A custom rule for ESLint that checks for inferred method names within object literals.
It's 2021 and you still use loops?
ESLint plugin to prevent use of extended native objects
Enforce best practices for JavaScript promises
ESLint plugin for finding regex mistakes and style guide violations.
Fork of https://eslint.org/docs/rules/sort-keys that allows automatic fixing
ESLint plugin to disallow the use of 'this'
An eslint plugin for disallow side effect at module toplevel
Performance
Lint DOM API performance
Optimize regex literals
A set of custom plugins to enforce high performance JS
Security
An eslint plugin to find strings that might be secrets/credentials
Custom ESLint rule to disallows unsafe innerHTML, outerHTML, insertAdjacentHTML and alike
umbrella config to achieve scanjs-like functionality through eslint
ESLint rules for Node Security
ESLint plugin for XSS detection
Style
ESLint plugin for generating a configuration automatically based on a repository's editorconfig.
Eslint plugin to check filenames.
Easy autofixable import sorting.
An ESLint plugin regarding any and all spacing between statements.
Testing Tools
ESLint rules for AVA
ESLint plugin that checks for common chai.js expect() mistakes
Makes eslint friendly towards Chai.js 'expect' and 'should' statements.
Prevent common problems when using chai-as-promised
An ESLint plugin for projects that use Cypress
ESLint rules for Jasmine
ESLint plugin for Jest
ESLint rules for formatting test suites written for jest.
eslint rules for use with jest-dom
ESLint rules for mocha
Check mocha tests for empty titles and equal titles, huge number of assertions in the one test and invalid sinon usage
ESLint plugin containing rules useful for QUnit tests.
ESLint plugin to follow best practices and anticipate common mistakes when writing tests with Testing Library
Parsers
A wrapper for Babel's parser used for ESLint (renamed to @babel/eslint-parser)
Monorepo for all the tooling which enables ESLint to support TypeScript
ESLint plugin to parse and lint BrightScript files
ESLint parser, plugin and set rules for GraphQL (for schema and operations). Easily customizable with custom rules. Integrates with IDEs and modern GraphQL tools.
Formatters
Create SVG badges summarizing your ESLint results
ESLint Formatter featuring Git Author, Date, and Hash
See ESLint errors and warnings directly in pull requests.
Good-lookin' ESLint formatter for delightful readability
A ESLint formatter to summarise errors by rules and files using bar charts
Output ESLint results in the GitLab code quality results.
Globals
A list of confusing globals that should be restricted to be used as globals
Global identifiers from different JavaScript environments
Tools
Traverse ECMAScript (JavaScript) files by their import
/require
chains
The local eslint executor.
Find built-in ESLint rules you don't have in your custom config
CLI for finding and managing rules in ESLint config files
Multiplex eslint results and merge results for common files
Ease into ESLint, by fixing one rule at a time
Find the url for the documentation of an ESLint rule
ESLint with simple watching capabilities
Codacy tool for Eslint
Fast eslint runner
A Yeoman generator to help with ESLint development
Developing for ESLint
Keep your rule names and descriptions up-to-date across your repo
Tutorials
Article walking through the creation of an ESLint rule and plugin.
Article walking through the benefits of using ESLint.
Video showing ESLint setup and basics.
Video showing how to use React and JSX with ESLint.
Article on how to write a plugin as a node module containing modular mixin configuration.
Article about creating rules that require scope analysis.