Track Awesome Eslint Updates Weekly
A list of awesome ESLint plugins, configs, etc.
🏠 Home · 🔍 Search · 🔥 Feed · 📮 Subscribe · ❤️ Sponsor · 😺 dustinspecker/awesome-eslint · ⭐ 4.2K · 🏷️ Programming Languages
Jul 08 - Jul 14, 2024
Plugins / Compatibility
- es-x (⭐109) - Disable specific ECMAScript language versions or individual features. Properly maintained fork of no longer maintained
eslint-plugin-es
.
Plugins / Languages and Environments
- N (⭐195) - Additional ESLint's rules for Node.js. Properly maintained fork of no longer maintained
eslint-plugin-node
.
Plugins / Practices and Specific ES Features
- @eslint-community/eslint-plugin-eslint-comments (⭐44) - Best practices about ESLint directive comments (
/*eslint-disable*/
, etc.). Properly maintained fork of no longer maintainedeslint-plugin-eslint-comments
.
- ReDoS - ESLint plugin for finding possible ReDoS vulnerabilities.
- ReDoSDetector (⭐4) - ESLint plugin for finding possible ReDoS vulnerabilities.
Plugins / Style
- ESLint Stylistic - Formatting and stylistic ESLint core rules moved to this project and are maintained by the community.
Jul 01 - Jul 07, 2024
Configs / Other Prominent Configs (100 stars or so)
- Antfu Eslint Config (⭐3.4k) - Anthony's ESLint config preset.
Plugins / Code Quality
- depend (⭐122) - Helps detect dependency tree bloat and redundant polyfills.
Plugins / Practices and Specific ES Features
- import-x (⭐243) - Linting of ES2015+ import/export syntax, and prevent issues with misspelling of file paths and import names. Properly maintained lightweight fork of
eslint-plugin-import
with the proper support of latest ESlint.
Tools / Testing Tools
- eslint-plugin-rule-adoption (⭐0) - An eslint plugin for incremental rule adoption, when
--fix
and codemods don't cut it.
May 20 - May 26, 2024
Plugins / Practices and Specific ES Features
- eslint-plugin-exception-handling (⭐14) - Lints unhandled functions that might throw errors.
Apr 15 - Apr 21, 2024
Configs / Other Configs
- clean-typescript (⭐1) - Enforce classic JavaScript featuress in TypeScript codebase by banning excessive keywords.
Plugins / Style
- paths (⭐43) - Use paths from tsconfig/jsconfig and auto fix relative paths to aliases.
Feb 05 - Feb 11, 2024
Configs / Configs by Well-Known Companies/Organizations
- Vercel (⭐1.2k) - Vercel Engineering's composable eslint configuration used in all their codebases.
Nov 13 - Nov 19, 2023
Preconfigured Configs with ESLint Set up / Other Configs
- eslint-config-prettier (⭐5.3k) - Prettier config for ESlint maintained by Prettier team.
Jul 10 - Jul 16, 2023
Plugins / Frameworks
- Meteor (⭐44k) - Meteor specific linting rules for ESLint.
Parsers / Testing Tools
- babel-eslint-parser (⭐43k) - Allows you to lint ALL valid Babel code with the fantastic ESLint.
Globals / Testing Tools
- confusing-browser-globals (⭐102k) - A curated list of browser globals that commonly cause confusion and are not recommended to use without an explicit window. qualifier.
Developing for ESLint / Testing Tools
- eslint-docgen (⭐10) - Automatically generate ESLint plugin documentation from rule metadata and test cases.
Jun 12 - Jun 18, 2023
Plugins / Testing Tools
- Playwright (⭐244) - Linting rules for Playwright.
Jun 05 - Jun 11, 2023
Plugins / Style
- perfectionist sorting (⭐1.7k) - Sort objects, imports, TypeScript types, enums, JSX props, etc.
May 22 - May 28, 2023
Plugins / Frameworks
- Svelte (⭐277) - Linting rules for Svelte v3 Components.
Feb 20 - Feb 26, 2023
Configs / Other Configs
- Sheriff (⭐97) - Comprehensive and highly opinionated Eslint configuration. Typescript oriented.
Dec 12 - Dec 18, 2022
Configs / Configs by Well-Known Companies/Organizations
- Feedzai (⭐9) - Feedzai's shareable config for JavaScript/React projects.
Dec 05 - Dec 11, 2022
Plugins / Libraries
- Tailwind CSS (⭐1.4k) - Linting rules for Tailwind CSS classnames.
Formatters / Testing Tools
- html (⭐33) - A enhanced ESLint formatter.
Oct 31 - Nov 06, 2022
Plugins / Practices and Specific ES Features
- no-comments (⭐11) - Prevents leaking comments into production if bundler is not used and stops developers from commenting out old lines of code.
Oct 24 - Oct 30, 2022
Developing for ESLint / Testing Tools
- eslint-doc-generator (⭐91) - Generate documentation for your ESLint plugin including a rules table for your readme and header for your rule docs.
Oct 17 - Oct 23, 2022
Plugins / Practices and Specific ES Features
- no-argument-spread (⭐3) - Lints against expressions like
Math.max(...args)
that can lead to a stack overflow for large arrays.
Oct 10 - Oct 16, 2022
Plugins / Misc
- Misc (⭐8) - Miscellaneous rules including rules for creating custom checks and wrapping (modifying) third-party rules.
Plugins / Practices and Specific ES Features
- eslint-plugin-hexagonal-architecture (⭐283) - A plugin that helps you to enforce hexagonal architecture best practices.
Aug 22 - Aug 28, 2022
Plugins / Frameworks
- Solid (⭐206) - Linting rules for Solid and JSX.
May 30 - Jun 05, 2022
Plugins / Frameworks
- Angular (⭐1.6k) - Linting rules for Angular (v2+).
- Astro (⭐287) - Plugin for Astro components.
Feb 14 - Feb 20, 2022
Plugins / Code Quality
- GitHub (⭐285) - Misc. rules from GitHub.
- @mysticatea/eslint-plugin (⭐25) - Misc. rules.
- @brettz9/eslint-plugin (⭐2) - Misc. rules. of
@mysticatea
without the personal config.
Plugins / Languages and Environments
- Babel (⭐43k) - Adds replacements for built-in rules to include Babel features.
- eslint-plugin-eslint-plugin (⭐189) - An ESLint plugin for linting ESLint plugins.
Plugins / Misc
- TypeLint (⭐175) - Introduces types, based on existing schemas (Swagger, Redux) and linting access to object properties, preventing
undefined
errors.
Plugins / Practices and Specific ES Features
- eslint-plugin-write-good-comments (⭐32) - Enforce good writing style in comments.
- import (⭐5.4k) - Linting of ES2015+ import/export syntax, and prevent issues with misspelling of file paths and import names. Still does not work with ESlint 9 and does not support flat configs.
Tools / Testing Tools
- eslint-define-config (⭐346) - Provide a
defineConfig
function for.eslintrc.js
files.
Feb 07 - Feb 13, 2022
Plugins / Languages and Environments
- AssemblyScript - Rules for enforcing restrictions on TypeScript toward AssemblyScript compliance.
Tools / Testing Tools
- eslint-interactive (⭐339) - The CLI tool to fix huge number of ESLint errors.
Jan 17 - Jan 23, 2022
Tools / Testing Tools
- eslint-remote-tester (⭐118) - CLI tool for testing given ESlint rules against multiple repositories at once.
Nov 01 - Nov 07, 2021
Plugins / Testing Tools
- TestCafe-Community (⭐4) - TestCafe linting rules with env globals (fork from TestCafe globals (⭐15)).
Globals / Testing Tools
- TestCafe globals (⭐15) -
fixture
&test
globals for TestCafe.
Sep 13 - Sep 19, 2021
Tools / Testing Tools
- eslint-dashboard (⭐19) - Interactive ESLint workflow that lives in your terminal.
Sep 06 - Sep 12, 2021
Formatters / Testing Tools
- SARIF - Generate a results in a SARIF format so it can be imported into tools like GitHub Advanced Security.
Jul 19 - Jul 25, 2021
Installation and Setup / Testing Tools
- Lintier (⭐19) - CLI to quickly scaffold an ESLint & Prettier setup in a TypeScript project.
Jul 12 - Jul 18, 2021
Plugins / Frameworks
- Custom Elements (⭐57) - Rules by GitHub for Custom Elements.
Jun 28 - Jul 04, 2021
Plugins / Code Quality
- SonarJS (⭐1.2k) - Rules detecting bugs and suspicious patterns.
May 24 - May 30, 2021
Tools / Testing Tools
- editor-info (⭐6) - Detect whether one is within an editor/IDE and which type, allowing one to tweak ESLint configuration accordingly.
Apr 12 - Apr 18, 2021
Plugins / Security
- pii (⭐8) - 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.
Feb 22 - Feb 28, 2021
Plugins / Misc
- Diff (⭐164) - Run ESLint on your changed lines only. Also supports CI!
Feb 15 - Feb 21, 2021
Plugins / Languages and Environments
- JSON
- JSON (⭐196) - Lint your JSON files.
- JSON, package.json (⭐41) - Lint, format, and auto-fix your JSON files. Sort your
package.json
. - JSON with Comments (⭐180) - ESLint plugin for JSON, JSONC and JSON5.
- JSON Schema (⭐67) - Validates data defined in JavaScript, JSON, YAML and TOML using JSON Schema Validator.
Feb 01 - Feb 07, 2021
Configs / Other Prominent Configs (100 stars or so)
- Auto (⭐396) - Automatically configure ESLint based on your project's dependencies.
Configs / Other Configs
- Adjunct (⭐50) - A reasonable collection of plugins to use alongside your main ESLint configuration.
Plugins / Languages and Environments
- HTML (⭐147) - ESLint plugin for HTML.
- TOML (⭐25) - ESLint plugin for TOML.
Jan 25 - Jan 31, 2021
Plugins / Practices and Specific ES Features
- no-constructor-bind (⭐12) - Encourages use of class properties by reporting use of
this
withbind
or setting state in constructors.
Plugins / Style
- const case - Enforce capitalization of constant primitive literals.
- editorconfig (⭐13) - Derive rules from
.editorconfig
.
Tools / Testing Tools
- generator-eslint (⭐228) - Generate ESLint plugin and rules with Yeoman.
Jan 11 - Jan 17, 2021
Plugins / CSS in JS
- Emotion (⭐17k) - ESLint rules for emotion.
Plugins / Practices and Specific ES Features
- pure (⭐29) - Enforce pure functions (without side effects).
Dec 21 - Dec 27, 2020
Plugins / Languages and Environments
- YAML (⭐108) - ESLint plugin for YAML.
Plugins / Style
- padding (⭐4) - Allows/disallows padding between statements.
Dec 07 - Dec 13, 2020
Plugins / Frameworks
- Ember (⭐257) - Linting rules for Ember.
Nov 16 - Nov 22, 2020
Plugins / Misc
- Woke (⭐31) - Helps catch insensitive words, promoting an inclusive codebase.
Oct 19 - Oct 25, 2020
Plugins / Libraries
- TypeGraphQL (⭐17) - Linting rules for TypeGraphQL, targeted at finding common mistakes.
Oct 12 - Oct 18, 2020
Plugins / Libraries
- GraphQL
- dotansimha/graphql-eslint (⭐779) - Validates, prettifies and checks your GraphQL operations and GraphQL schema for best-practices.
- apollostack/eslint-plugin-graphql (⭐1.2k) - Check your GraphQL query strings against a schema.
Parsers / Testing Tools
- GraphQL (⭐779) - Parser for the GraphQL AST. Includes parser, plugin, processor (for non-graphql files) and rules.
Sep 07 - Sep 13, 2020
Plugins / Languages and Environments
- MDX (⭐258) - ESLint Parser/Plugin for MDX.
Aug 31 - Sep 06, 2020
Plugins / CSS in JS
- CSS-modules (⭐153) - Lint undefined or unused rules for css modules.
- Styled Components
- Better Styled Components (⭐64) - Auto fixable ESlint's rules for styled components.
- styled-components-a11y (⭐141) - A11y for Styled Components.
Jul 20 - Jul 26, 2020
Configs / Configs by Well-Known Companies/Organizations
- Airbnb-babel (⭐3) - Airbnb's ESLint config with Babel Support.
Formatters / Testing Tools
- badger (⭐6) - Make SVG-based badges summarizing ESLint results (e.g., for use on a README).
- git-log (⭐42) - ESLint Formatter featuring Git Author, Date, and Hash.
- github (⭐100) - See ESLint errors and warnings directly in pull requests.
- gitlab - Output ESLint results in the GitLab code quality results.
- mo (⭐121) - Good-lookin' ESLint formatter and also for delightful reading experience.
- summary-chart (⭐12) - Format ESLint output into a bar chart.
Jul 13 - Jul 19, 2020
Plugins / Practices and Specific ES Features
- RegExp (⭐676) - ESLint plugin for finding regexp mistakes and style guide violations.
Jun 29 - Jul 05, 2020
Preconfigured Configs with ESLint Set up / Other Configs
- Node.js Standard Style (⭐6) - Node.js core config.
- Standard (⭐29k) - JavaScript Standard Style.
- Superlint (⭐5) - JavaScript Supermind Style.
- XO (⭐7.6k) - JavaScript happiness style linter ❤️.
- Healthier (⭐84) - Code style agnostic version of Standard, perfect companion to Prettier.
Parsers / Testing Tools
- TypeScript (⭐15k) - A TypeScript parser that produces output compatible with ESLint.
- BrightScript (⭐43) - BrightScript plugin for Roku development. Includes Parser and Rules.
Globals / Testing Tools
- ES and browser globals (⭐364) (originally from ESLint)
Jun 22 - Jun 28, 2020
Configs / Configs by Well-Known Companies/Organizations
- Shopify (⭐461) - Shareable config for Shopify's style guide (⭐253).
Plugins / Code Quality
- Unicorn (⭐4k) - Various awesome ESLint rules.
Plugins / Compatibility
- Compat (⭐3k) - Lint browser compatibility of APIs used (caniuse as an ESLint plugin).
- ecmascript-compat (⭐64) - Disable ECMAScript language features not supported by your browserslist targets.
- es5 (⭐54) - ESLint plugin for ES5 users (forbid ES2015+ usage).
- ie11 (⭐14) - Detect unsupported ES6 features in IE11.
Plugins / Deprecation
- deprecate (⭐81) - Mark functions or modules as deprecated and get lint messages when they are used.
- deprecation (⭐308) - Identifies use of
jsdoc
@deprecated
functions.
- disable (⭐57) - Disable specified plugins using file path patterns and inline comments.
Plugins / Embedded
- HTML (⭐427) - Linting for JavaScript inside of HTML
<script>
tags.
- Markdown (⭐368) - Linting for JavaScript inside of Markdown.
Plugins / Frameworks
- React
- JSX a11y (⭐21) - Accessibility rules on JSX elements.
- React (⭐8.9k) - Linting rules for React and JSX.
- React Hooks (⭐225k) - Linting rules for React Hooks.
- React Native (⭐718) - React Native specific linting rules.
- React-Redux (⭐83) - React-Redux specific linting rules.
- Vue
- VueJS (⭐4.4k) - Plugin for VueJS.
- VueJS Scoped CSS (⭐96) - Plugin for Scoped CSS in VueJS.
Plugins / Languages and Environments
- Coffee (⭐11) - Enables linting CoffeeScript files with, with optional linting rules from the Coffeelint library.
- Flow
- Flow (⭐1.1k) - Flow type linting rules.
- Flow Errors (⭐402) - Run Flow as an ESLint plugin.
- SQL (⭐91) - SQL linting rules for ESLint.
- TypeScript (⭐15k) - Linting rules for TypeScript.
Plugins / Libraries
- Lodash
- Lodash (⭐273) - Lodash specific linting rules.
- Lodash/fp (⭐150) - Lodash/fp specific linting rules.
- Lodash template (⭐17) - Plugin for Lodash template/Underscore template.
- Microtemplates (⭐4) (Used in Lodash and Underscore.js)
Plugins / Misc
- PutOut (⭐680) - an ESLint plugin integrates putout (⭐680) linter into ESLint.
Plugins / Practices and Specific ES Features
- boundaries (⭐474) - Ensures that your architecture boundaries are respected by the elements in your project checking file structure and dependencies.
- Immutable (⭐912) - Disable all mutation in JavaScript.
Plugins / Performance
- Optimize Regex (⭐74) - Optimize regex literals.
- Perf-Standard plugin (⭐22) and Config (⭐3)
Plugins / Testing Tools
- Cypress (⭐695) - Linting rules for Cypress.
- Jest
- Enforcing practices (⭐1.1k) - Linting rules for Jest.
- Enforcing consistent formatting (⭐152) - Formatting rules for Jest.
- Jest-async - Async linting rule for Jest.
- Jest-DOM (⭐354) - Linting rules for Jest-DOM.
Jun 15 - Jun 21, 2020
Plugins / Misc
- Only-Error (⭐15) - Convert all rules to errors.
- Only-Warn (⭐155) - Convert all rules to warnings.
Plugins / Testing Tools
- Testing Library (⭐971) - Linting rules for Testing Library.
Jun 08 - Jun 14, 2020
Plugins / Security
- no-secrets (⭐127) - An eslint plugin that detects potential secrets/credentials.
- no-unsanitized (⭐223) - Checks for
innerHTML
,outerHTML
, etc.
- ScanJS config (⭐88) and plugin (⭐28) - Security-related rules.
- Security (⭐2.2k) - ESLint rules for Node Security.
- xss (⭐67) - Tries to detect XSS issues in codebase before they end up in production.
Jun 01 - Jun 07, 2020
Configs / Configs by Well-Known Companies/Organizations
- Airbnb-typescript (⭐1k) - Airbnb's ESLint config with TypeScript support.
- Wikimedia (⭐28) - Shareable config for Wikimedia's style guide, used by MediaWiki.
Configs / Other Prominent Configs (100 stars or so)
- Canonical (⭐576) - Shareable config for Canonical style guide (⭐18).
- Standard (⭐2.6k) - Shareable config for JavaScript Standard Style (⭐29k).
- XO (⭐266) - Shareable config for XO (⭐7.6k).
Configs / Other Configs
- Ash-Nazg (⭐6) - One config to rule them all!
- Cecilia (⭐6) - ESLint configuration for awesome projects.
- ES (⭐28) - Shareable config for very strict code.
- Hardcore (⭐401) - The most strict (but practical) ESLint config out there.
- Problems (⭐67) - Shareable config that only catches actual problems, and doesn't enforce stylistic preferences.
- Supermind (⭐4) - Shareable config for Supermind style.
Plugins / Libraries
- jQuery (⭐31) - Linting rules for jQuery, including versioned configs for deprecated features.
Plugins / Testing Tools
- AVA (⭐227) - Linting rules for AVA.
- Cucumber (⭐7) - Linting rules for Cucumber.
May 04 - May 10, 2020
Tools / Testing Tools
- es-file-traverse (⭐2) - 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.
Mar 23 - Mar 29, 2020
Plugins / Libraries
- JSDoc (⭐1.1k) - Linting rules for JSDoc comments (including the JavaScript within
@example
).
Plugins / Practices and Specific ES Features
- no-restricted-syntax (⭐4) - Show queried syntax's content in messages.
- sort-keys-fix (⭐95) - Adds fixer for ESLint
sort-keys
rule.
Plugins / Testing Tools
- Chai
- Mocha
- Enforcing practices (⭐276) - Linting rules for Mocha.
- Enforcing manageability (⭐13)
- QUnit (⭐30) - Linting rules for QUnit.
Jan 13 - Jan 19, 2020
Plugins / Practices and Specific ES Features
- functional (⭐754) - ESLint rules to disable mutation and promote fp in JavaScript and TypeScript.
Dec 16 - Dec 22, 2019
Configs / Configs by Well-Known Companies/Organizations
- React App (⭐102k) - Sharable config for React projects.
Plugins / Practices and Specific ES Features
- toplevel (⭐19) - An eslint plugin for disallow side effect at module toplevel.
Dec 02 - Dec 08, 2019
Configs / Configs by Well-Known Companies/Organizations
- Alloy (⭐2.6k) - Progressive ESLint config for your React/Vue/TypeScript projects.
Nov 25 - Dec 01, 2019
Plugins / Frameworks
- AngularJS (⭐618) - Linting rules to adhere to the John Papa's AngularJS Styleguide (⭐24k).
Plugins / Practices and Specific ES Features
- no-inferred-method-name (⭐27) - Custom rule for ESLint that checks for inferred method names within object literals.
Tutorials / Testing Tools
- Lint Like It's 2015 - Article walking through the benefits of using ESLint.
Mar 18 - Mar 24, 2019
Plugins / Practices and Specific ES Features
- array-func (⭐94) - Avoid redundancy when using es2015 array methods and functions.
- arrow functions (⭐305) - ESLint rules to ensure proper arrow function definitions.
- no-loops (⭐123) - It's 2019 and you still use loops?
Mar 11 - Mar 17, 2019
Plugins / Style
- Simple import sort (⭐2k) - Easy autofixable import sorting.
- Switch case (⭐17) - Switch-case-specific linting rules for ESLint.
Plugins / Testing Tools
- Jasmine (⭐95) - Linting rules for Jasmine.
Oct 08 - Oct 14, 2018
Configs / Configs by Well-Known Companies/Organizations
- Airbnb (⭐143k) - Shareable config for Airbnb's style guide (⭐143k).
Plugins / Frameworks
- Backbone (⭐95) - Linting rules for Backbone.
- Hapi (⭐21) - Linting rules for hapi.
Plugins / Libraries
- Mongodb (⭐17) - Mongodb native Node.js driver linting rules.
- Ramda (⭐118) - Ramda specific linting rules.
- RequireJS (⭐29) - Linting rules for RequireJS.
Plugins / Practices and Specific ES Features
- fp (⭐969) - ESLint rules for functional programming.
- new-with-error (⭐25) - Require errors to be thrown using
new
.
- no-use-extend-native (⭐56) - Prevent using extended native objects.
- Promise (⭐909) - Best practices when working with promises.
- this (⭐16) - Write pure functions, don't allow
this
.
Plugins / Style
- filenames (⭐310) - Ensure consistent filenames for your JavaScript files. No longer maintained and does not work with ESlint 9 at all.
Tools / Testing Tools
- eslint-find-rules (⭐201) - Find built-in ESLint rules you don't have in your custom config.
- eslint-index (⭐20) - CLI for finding and managing rules in ESLint config files.
- eslint-multiplexer (⭐7) - Multiplex eslint results and merge results for common files.
- eslint-nibble (⭐760) - Ease into ESLint, by fixing one rule at a time.
- eslint-rule-documentation (⭐30) - Find the url for the documentation of an ESLint rule.
- eslint-watch (⭐193) - Run ESLint with watch mode.
- codacy-eslint (⭐15) - Docker used at Codacy to run ESLint.
- esprint (⭐658) - Run ESLint across multiple threads.
Tutorials / Testing Tools
- Creating an ESLint Plugin - Article walking through the creation of an ESLint rule and plugin.
- 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.
Jun 04 - Jun 10, 2018
Configs / Configs by Well-Known Companies/Organizations
- ESLint (⭐25k) - Contains the ESLint configuration used for projects maintained by the ESLint team.
Jun 19 - Jun 25, 2017
Plugins / Misc
- Notice (⭐26) - An eslint rule that checks the top of files and fixes them too!
Jun 05 - Jun 11, 2017
Configs / Configs by Well-Known Companies/Organizations
- Facebook - Sharable config for Facebook's style guide.