List.community

Awesome ESLint Awesome

eslint

A list of awesome ESLint configs, plugins, etc.

If you want to contribute, please read the contribution guidelines.

Contents

Configs

Parsers

  • Babel2k 163 - Use Babel's parser for linting all Babel features
  • TypeScript948 81 - A TypeScript parser that produces output compatible with ESLint

Plugins

Frameworks and Libraries

  • Angular609 139 - Linting rules to adhere to the John Papa's Angular Styleguide19k 4k
  • AVA59 13 - Linting rules for AVA
  • Backbone138 17 - Linting rules for Backbone
  • Chai - Linting rules for Chai
  • Ember94 31 - Linting rules for Ember
  • Hapi13 2 – Linting rules for hapi
  • Jasmine48 35 - Linting rules for Jasmine
  • Jest78 17 - Linting rules for Jest
  • JSDoc110 24 - Linting rules for JSDoc comments
  • Lodash115 38 - Lodash specific linting rules
  • Lodash/fp88 13 - Lodash/fp specific linting rules
  • Meteor99 17 - Meteor specific linting rules
  • Mocha161 49 - Linting rules for Mocha
  • Mongodb - Mongodb native nodejs driver linting rules
  • Ramda31 2 - Ramda specific linting rules
  • React4k 1k - Linting rules for React and JSX
  • React Native253 35 - React Native specific linting rules
  • RequireJS21 16 - Linting rules for RequireJS
  • VueJS937 84 - Plugin for VueJS

Misc

  • Babel255 58 - Adds replacements for built-in rules to include Babel features
  • Compat2k 50 - Lint browser compatability of APIs used (caniuse as an ESLint plugin)
  • Coffee - Enables linting CoffeeScript files with, with optional linting rules from the Coffeelint library.
  • deprecate - Mark functions or modules as deprecated and get lint messages when they are used
  • disable14 4 - Disable specified plugins using file path patterns and inline comments
  • es516 3 - ESLint plugin for ES5 users (forbid ES2015+ usage)
  • Flow657 84 - Flow type linting rules
  • Flow Errors373 32 - Run Flow as an ESLint plugin
  • GraphQL200 16 - Check your GraphQL query strings against a schema
  • HTML163 43 - Linting for JavaScript inside of HTML tags
  • import1k 409 - Linting of ES2015+ import/export syntax, and prevent issues with misspelling of file paths and import names
  • JSON20 4 - Lint your JSON files
  • Markdown128 22 - Linting JavaScript in Markdown
  • Node187 26 - Linting rules for Node.js (checking importing paths, ES syntax, ...)
  • Notice - An eslint rule that checks the top of files and fixes them too!
  • Optimize Regex9 5 - Optimize regex literals
  • SQL – SQL linting rules for ESLint
  • TypeLint113 4 - Introduces types, based on existing schemas (Swagger, Redux) and linting access to object properties, preventing undefined errors
  • unicorn179 34 - Various awesome ESLint rules
  • ESLint Comments17 6 - Best practices about ESLint directive comments (/*eslint-disable*/, etc...)
  • eslint-plugin-eslint-plugin3 4 - An ESLint plugin for linting ESLint plugins

Practices

  • array-func - Avoid redundancy when using es2015 array methods and functions.
  • fp222 7 - ESLint rules for functional programming
  • Immutable669 23 - Disable all mutation in JavaScript
  • JSX a11y828 152 - Accessibility rules on JSX elements
  • new-with-error - Require errors to be thrown using new
  • no-inferred-method-name28 3 - Custom rule for ESLint that checks for inferred method names within object literals.
  • no-loops - It's 2017 and you still use loops?
  • no-use-extend-native23 4 - Prevent using extended native objects
  • Promise155 37 - Best practices when working with promises
  • Security469 17 - ESLint rules for Node Security
  • this - Write pure functions, don't allow this
  • XSS7 2 - Tries to detect XSS issues in codebase before they end up in production

Style

  • filenames110 16 - Ensure consistent filenames for your javascript files

Preconfigured Tools with ESLint Set up

Tools

Developing for ESLint

  • eslint-docs - Keep your rule descriptions up-to-date across the repository

Tutorials

License

CC0