A reasonable collection of plugins to use alongside your main ESLint configuration.
Shareable config for Airbnb's style guide.
Airbnb's ESLint config with Babel Support.
Progressive ESLint config for your React/Vue/TypeScript projects.
Anthony's ESLint config preset.
One config to rule them all!
Automatically configure ESLint based on your project's dependencies.
Shareable config for Canonical style guide.
ESLint configuration for awesome projects.
Enforce classic JavaScript featuress in TypeScript codebase by banning excessive keywords.
Contains the ESLint configuration used for projects maintained by the ESLint team.
Sharable config for Facebook's style guide.
Feedzai's shareable config for JavaScript/React projects.
The most strict (but practical) ESLint config out there.
Shareable config that only catches actual problems, and doesn't enforce stylistic preferences.
Comprehensive and highly opinionated Eslint configuration. Typescript oriented.
Shareable config for Shopify's style guide.
Shareable config for JavaScript Standard Style.
Shareable config for Supermind style.
Shareable config for Wikimedia's style guide, used by MediaWiki.
Shareable config for XO.
Make SVG-based badges summarizing ESLint results (e.g., for use on a README).
ESLint Formatter featuring Git Author, Date, and Hash.
See ESLint errors and warnings directly in pull requests.
Output ESLint results in the GitLab code quality results.
A enhanced ESLint formatter.
Good-lookin' ESLint formatter and also for delightful reading experience.
Generate a results in a SARIF format so it can be imported into tools like GitHub Advanced Security.
Format ESLint output into a bar chart.
A curated list of browser globals that commonly cause confusion and are not recommended to use without an explicit window. qualifier.
(originally from ESLint)
`fixture` & `test` globals for TestCafe.
Allows you to lint ALL valid Babel code with the fantastic ESLint.
BrightScript plugin for Roku development. Includes Parser and Rules.
Parser for the GraphQL AST. Includes parser, plugin, processor (for non-graphql files) and rules.
A TypeScript parser that produces output compatible with ESLint.
Misc. rules. of `@mysticatea` without the personal config.
Best practices about ESLint directive comments (`/*eslint-disable*/`, etc.). Properly maintained fork of no longer maintained `eslint-plugin-eslint-comments`.
Use paths from tsconfig and auto fix relative paths to aliases. Observes tsconfig inheritance.
Misc. rules.
Linting rules for Angular (v2+).
Linting rules to adhere to the John Papa's AngularJS Styleguide.
Check your GraphQL query strings against a schema.
Avoid redundancy when using es2015 array methods and functions.
ESLint rules to ensure proper arrow function definitions.
Plugin for Astro components.
Linting rules for AVA.
Adds replacements for built-in rules to include Babel features.
Linting rules for Backbone.
Auto fixable ESlint's rules for styled components.
Ensures that your architecture boundaries are respected by the elements in your project checking file structure and dependencies.
Lint browser compatibility of APIs used (caniuse as an ESLint plugin).
Perf-Standard and
Enforce capitalization of constant primitive literals.
Lint undefined or unused rules for css modules.
Linting rules for Cucumber.
Linting rules for Cypress.
Transforms logical expressions in code to make them easier to understand.
Helps detect dependency tree bloat and redundant polyfills.
Mark functions or modules as deprecated and get lint messages when they are used.
Run ESLint on your changed lines only. Also supports CI!
Disable specified plugins using file path patterns and inline comments.
Validates, prettifies and checks your GraphQL operations and GraphQL schema for best-practices.
Disable ECMAScript language features not supported by your browserslist targets.
Derive rules from `.editorconfig`.
Linting rules for Ember.
ESLint rules for emotion.
Formatting rules for Jest.
Linting rules for Jest.
Linting rules for Mocha.
Disable specific ECMAScript language versions or individual features. Properly maintained fork of no longer maintained `eslint-plugin-es`.
ESLint plugin for ES5 users (forbid ES2015+ usage).
Formatting and stylistic ESLint core rules moved to this project and are maintained by the community.
A custom ESLint plugin that enforces principles of clean, maintainable software design — inspired by Code Complete.
A plugin to preserve original error context when re-throwing exceptions.
An ESLint plugin for linting ESLint plugins.
Lints unhandled functions that might throw errors.
A plugin that helps you to enforce hexagonal architecture best practices.
Enforce good writing style in comments.
Ensure consistent filenames for your JavaScript files. No longer maintained and does not work with ESlint 9 at all.
Flow type linting rules.
Run Flow as an ESLint plugin.
ESLint rules for functional programming.
ESLint rules to disable mutation and promote fp in JavaScript and TypeScript.
Misc. rules from GitHub.
Linting rules for hapi.
Linting for JavaScript inside of HTML `` tags.
ESLint plugin for HTML.
Detect unsupported ES6 features in IE11.
Disable all mutation in JavaScript.
Linting of ES2015+ import/export syntax, and prevent issues with misspelling of file paths and import names.
Linting of ES2015+ import/export syntax, and prevent issues with misspelling of file paths and import names. Lightweight fork of `eslint-plugin-import`, but which breaks backwards compatibility.
Linting rules for Jasmine.
Async linting rule for Jest.
Linting rules for Jest-DOM.
Linting rules for jQuery, including versioned configs for deprecated features.
Linting rules for JSDoc comments (including the JavaScript within `@example`).
Lint your JSON files.
Validates data defined in JavaScript, JSON, YAML and TOML using JSON Schema Validator.
ESLint plugin for JSON, JSONC and JSON5.
Lint, format, and auto-fix your JSON files. Sort your `package.json`.
Accessibility rules on JSX elements.
Lodash specific linting rules.
Plugin for Lodash template/Underscore template.
Lodash/fp specific linting rules.
Linting for JavaScript inside of Markdown.
ESLint plugin related to Math object and Number.
ESLint Parser/Plugin for MDX.
Meteor specific linting rules for ESLint.
(Used in Lodash and Underscore.js)
Miscellaneous rules including rules for creating custom checks and wrapping (modifying) third-party rules.
Mongodb native Node.js driver linting rules.
Additional ESLint's rules for Node.js. Properly maintained fork of no longer maintained `eslint-plugin-node`.
Require errors to be thrown using `new`.
Lints against expressions like `Math.max(...args)` that can lead to a stack overflow for large arrays.
Prevents leaking comments into production if bundler is not used and stops developers from commenting out old lines of code.
Encourages use of class properties by reporting use of `this` with `bind` or setting state in constructors.
Custom rule for ESLint that checks for inferred method names within object literals.
It's 2019 and you still use loops?
Show queried syntax's content in messages.
An eslint plugin that detects potential secrets/credentials.
Checks for `innerHTML`, `outerHTML`, etc.
Prevent using extended native objects.
An eslint rule that checks the top of files and fixes them too!
Convert all rules to errors.
Convert all rules to warnings.
Optimize regex literals.
Allows/disallows padding between statements.
Use paths from tsconfig/jsconfig and auto fix relative paths to aliases.
Sort objects, imports, TypeScript types, enums, JSX props, etc.
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.
Linting rules for Playwright.
Perf-Standard and
Best practices when working with promises.
Enforce pure functions (without side effects).
an ESLint plugin integrates putout linter into ESLint.
Linting rules for QUnit.
Ramda specific linting rules.
Linting rules for React and JSX.
Linting rules for React Hooks.
React Native specific linting rules.
Improve HMR experience when using Vite.
React-Redux specific linting rules.
ESLint plugin for finding possible ReDoS vulnerabilities.
ESLint plugin for finding possible ReDoS vulnerabilities.
ESLint plugin for finding regexp mistakes and style guide violations.
Linting rules for RequireJS.
ESLint rules for Node Security.
Easy autofixable import sorting.
Linting rules for Solid and JSX.
Rules detecting bugs and suspicious patterns.
Adds fixer for ESLint `sort-keys` rule.
Sorts imports and splits 'multiple' imports into single line imports.
SQL linting rules for ESLint.
A11y for Styled Components.
Linting rules for Svelte v3 Components.
Switch-case-specific linting rules for ESLint.
Linting rules for Tailwind CSS classnames.
TestCafe linting rules with env globals (fork from TestCafe globals).
Linting rules for Testing Library.
Write pure functions, don't allow `this`.
ESLint plugin for TOML.
An eslint plugin for disallow side effect at module toplevel.
Linting rules for TypeGraphQL, targeted at finding common mistakes.
Introduces types, based on existing schemas (Swagger, Redux) and linting access to object properties, preventing `undefined` errors.
Linting rules for TypeScript.
Various awesome ESLint rules.
An ESLint plugin for enforcing CSS property ordering in vanilla-extract CSS styles.
Plugin for VueJS.
Plugin for Scoped CSS in VueJS.
Helps catch insensitive words, promoting an inclusive codebase.
Tries to detect XSS issues in codebase before they end up in production.
ESLint plugin for YAML.
Prettier config for ESlint maintained by Prettier team.
Node.js core config.
JavaScript Standard Style.
JavaScript Supermind Style.
JavaScript happiness style linter ❤️.
Docker used at Codacy to run ESLint.
Detect whether one is within an editor/IDE and which type, allowing one to tweak ESLint configuration accordingly.
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.
Interactive ESLint workflow that lives in your terminal.
Find built-in ESLint rules you don't have in your custom config.
CLI for finding and managing rules in ESLint config files.
The CLI tool to fix huge number of ESLint errors.
Multiplex eslint results and merge results for common files.
Ease into ESLint, by fixing one rule at a time.
An eslint plugin for incremental rule adoption, when `--fix` and codemods don't cut it.
CLI tool for testing given ESlint rules against multiple repositories at once.
Find the url for the documentation of an ESLint rule.
Run ESLint with watch mode.
Run ESLint across multiple threads.
Generate ESLint
Article walking through the creation of an ESLint rule and plugin.
Quick intro article on ESLint.
Article walking through the benefits of using ESLint.
Article about creating rules that require scope analysis.