Ranked awesome lists, all in one place
This list is a copy of dustinspecker/awesome-eslint with ranks
Awesome ESLint
A list of awesome ESLint configs, plugins, etc.
If you want to contribute, please read the contribution guidelines.
Contents
- Configs
- Parsers
- Plugins
- Preconfigured Tools with ESLint Set up
- Tools
- Developing for ESLint
- Tutorials
Configs
- Airbnb - Shareable config for Airbnb’s style guide ★72605
- Canonical – Shareable config for Canonical style guide ★12 ⏳1Y
- ESLint - Contains the ESLint configuration used for projects maintained by the ESLint team.
- ES ★9 - Shareable config for very strict code
- Facebook - Sharable config for Facebook’s style guide.
- Google ★822 - Shareable config for the Google style
- Problems ★8 - Shareable config that only catches actual problems, and doesn’t enforce stylistic preferences.
- Shopify - Shareable config for Shopify’s style guide ★162
- Standard - Shareable config for JavaScript Standard Style
- Supermind ★2 - Shareable config for Supermind style
- XO - Shareable config for XO
Parsers
- Babel ★2153 - Use Babel’s parser for linting all Babel features
- TypeScript ★643 - A TypeScript parser that produces output compatible with ESLint
- BrightScript ★22 - BrightScript plugin for Roku development. Includes Parser and Rules
Plugins
Frameworks and Libraries
- Angular - Linting rules to adhere to the John Papa’s Angular Styleguide ★23942
- AVA - Linting rules for AVA
- Backbone ★92 - Linting rules for Backbone
- Chai ★7 - Linting rules for Chai
- Ember - Linting rules for Ember
- Hapi – Linting rules for hapi
- Jasmine ★62 - Linting rules for Jasmine
- Jest ★142 - Linting rules for Jest
- JSDoc ★147 - Linting rules for JSDoc comments
- Lodash ★139 - Lodash specific linting rules
- Lodash/fp ★110 - Lodash/fp specific linting rules
- Lodash template ★1 - Plugin for Lodash template/Underscore template
- Meteor ★97 - Meteor specific linting rules
- Mocha ★179 - Linting rules for Mocha
- Mongodb - Mongodb native nodejs driver linting rules
- Ramda ★68 - Ramda specific linting rules
- React ★4213 - Linting rules for React and JSX
- React Native ★348 - React Native specific linting rules
- RequireJS ★24 - Linting rules for RequireJS
- VueJS ★1484 - Plugin for VueJS
Misc
- Babel ★269 - Adds replacements for built-in rules to include Babel features
- Compat ★1921 - Lint browser compatability of APIs used (caniuse as an ESLint plugin)
- Coffee ★3 - Enables linting CoffeeScript files with, with optional linting rules from the Coffeelint library.
- deprecate ★23 - Mark functions or modules as deprecated and get lint messages when they are used
- disable ★20 - Disable specified plugins using file path patterns and inline comments
- es5 ★22 - ESLint plugin for ES5 users (forbid ES2015+ usage)
- Flow ★839 - Flow type linting rules
- Flow Errors ★374 - Run Flow as an ESLint plugin
- GraphQL - Check your GraphQL query strings against a schema
- HTML ★224 - Linting for JavaScript inside of HTML
<script>
tags - import ★1289 - Linting of ES2015+ import/export syntax, and prevent issues with misspelling of file paths and import names
- JSON ★36 ⏳1Y - Lint your JSON files
- Markdown ★142 - Linting JavaScript in Markdown
- Node ★317 - Linting rules for Node.js (checking importing paths, ES syntax, …)
- Notice ★5 - An eslint rule that checks the top of files and fixes them too!
- Optimize Regex ★22 - Optimize regex literals
- SonarJS ★5 – Rules detecting bugs and suspicious patterns
- SQL ★10 – SQL linting rules for ESLint
- TypeLint - Introduces types, based on existing schemas (Swagger, Redux) and linting access to object properties, preventing
undefined
errors - unicorn ★292 - Various awesome ESLint rules
- ESLint Comments ★57 - Best practices about ESLint directive comments (
/*eslint-disable*/
, etc…) - eslint-plugin-eslint-plugin ★14 - An ESLint plugin for linting ESLint plugins
Practices
- array-func ★8 - Avoid redundancy when using es2015 array methods and functions.
- fp ★466 - ESLint rules for functional programming
- Immutable ★747 - Disable all mutation in JavaScript
- JSX a11y ★1008 - Accessibility rules on JSX elements
- new-with-error ★17 ⏳2Y - Require errors to be thrown using
new
- no-inferred-method-name ★27 ⏳2Y - Custom rule for ESLint that checks for inferred method names within object literals.
- no-loops ★41 - It’s 2017 and you still use loops?
- no-use-extend-native ★27 - Prevent using extended native objects
- Promise ★286 - Best practices when working with promises
- Security ★680 - ESLint rules for Node Security
- this ★5 - Write pure functions, don’t allow
this
- XSS ★15 - Tries to detect XSS issues in codebase before they end up in production
Style
- filenames ★102 - Ensure consistent filenames for your javascript files
Preconfigured Tools with ESLint Set up
- Node.js Standard Style ★3 ⏳1Y - Node.js core config.
- prettier-standard ★400 - Prettier formatter with custom eslint rules allowed
- Standard - JavaScript Standard Style
- Superlint ★0 - JavaScript Supermind Style
- XO - JavaScript happiness style linter ❤️
Tools
- eslint-cli ★40 - This is the
eslint
command that executes a local installed ESLint. - eslint-find-rules ★97 - Find built-in ESLint rules you don’t have in your custom config
- eslint-index ★8 - CLI for finding and managing rules in ESLint config files
- eslint-nibble ★179 - Ease into ESLint, by fixing one rule at a time
- eslint-rule-documentation ★21 - Find the url for the documentation of an ESLint rule
- eslint-watch ★110 - Run ESLint with watch mode
- codacy-eslint ★11 - Docker used at Codacy to run ESLint
- esprint ★290 - Run ESLint across multiple threads
Developing for ESLint
- eslint-docs ★1 - Keep your rule descriptions up-to-date across the repository
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
License
This list is a copy of dustinspecker/awesome-eslint with ranks