Skip to content
master
Switch branches/tags
Code

Latest commit

… TypeScript project.

Lintier is a CLI to automate setting up an ESLint & Prettier setup in a TypeScript project.  It provides options to install the airbnb styleguide, stylelint for linting styles, and lint-staged for linting pre-commit. Lintier installs the dependencies, creates the config files, and adds linting scripts to a project's package.json file.  Here's a gif:

![](https://github.com/josh-stillman/lintier/blob/main/lintier.gif?raw=true)

I also added a section for installation and setup for this bullet point.  It didn't seem to fit in with the other tools in the "tools" section.  

Thanks for your consideration!  Please let me know if you have any questions.
-Josh
267fe25

Git stats

Files

Permalink
Failed to load latest commit information.

Awesome ESLint Awesome

eslint

A list of awesome ESLint configs, plugins, etc.

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

Contents

Configs

Configs by Well-Known Companies/Organizations

Other Prominent Configs (100 stars or so)

Other Configs

  • Adjunct - A reasonable collection of plugins to use alongside your main ESLint configuration.
  • Ash-Nazg - One config to rule them all!
  • Cecilia - ESLint configuration for awesome projects.
  • ES - Shareable config for very strict code.
  • Hardcore - The most strict (but practical) ESLint config out there.
  • Problems - Shareable config that only catches actual problems, and doesn't enforce stylistic preferences.
  • Supermind - Shareable config for Supermind style.

Preconfigured Configs with ESLint Set up

Plugins

Code Quality

  • SonarJS - Rules detecting bugs and suspicious patterns.
  • Unicorn - Various awesome ESLint rules.

Compatiblity

  • Compat - Lint browser compatibility of APIs used (caniuse as an ESLint plugin).
  • ecmascript-compat - Disable ECMAScript language features not supported by your browserslist targets.
  • es - Disable specific ECMAScript language versions or individual features.
  • es5 - ESLint plugin for ES5 users (forbid ES2015+ usage).
  • ie11 - Detect unsupported ES6 features in IE11.

CSS in JS

Deprecation

  • deprecate - Mark functions or modules as deprecated and get lint messages when they are used.
  • deprecation - Identifies use of jsdoc @deprecated functions.
  • disable - Disable specified plugins using file path patterns and inline comments.

Embedded

  • HTML - Linting for JavaScript inside of HTML <script> tags.
  • Markdown - Linting for JavaScript inside of Markdown.

Frameworks

Languages

  • Coffee - Enables linting CoffeeScript files with, with optional linting rules from the Coffeelint library.
  • ES5
    • Babel - Adds replacements for built-in rules to include Babel features.
    • import - Linting of ES2015+ import/export syntax, and prevent issues with misspelling of file paths and import names.
  • Flow
    • Flow - Flow type linting rules.
    • Flow Errors - Run Flow as an ESLint plugin.
  • HTML - ESLint plugin for HTML.
  • JSON
    • JSON - Lint your JSON files.
    • JSON, package.json - Lint, format, and auto-fix your JSON files. Sort your package.json.
    • JSON with Comments - ESLint plugin for JSON, JSONC and JSON5.
    • JSON Schema - Validates data defined in JavaScript, JSON, YAML and TOML using JSON Schema Validator.
  • MDX - ESLint Parser/Plugin for MDX.
  • Node - Additional ESLint's rules for Node.js.
  • SQL - SQL linting rules for ESLint.
  • TOML - ESLint plugin for TOML.
  • TypeScript - Linting rules for TypeScript.
  • YAML - ESLint plugin for YAML.

Libraries

  • GraphQL
  • TypeGraphQL - Linting rules for TypeGraphQL, targeted at finding common mistakes.
  • jQuery - Linting rules for jQuery, including versioned configs for deprecated features.
  • JSDoc - Linting rules for JSDoc comments (including the JavaScript within @example).
  • Lodash
  • Mongodb - Mongodb native Node.js driver linting rules.
  • Ramda - Ramda specific linting rules.
  • RequireJS - Linting rules for RequireJS.

Misc

Practices

  • array-func - Avoid redundancy when using es2015 array methods and functions.
  • arrow functions - ESLint rules to ensure proper arrow function definitions.
  • boundaries - Ensures that your architecture boundaries are respected by the elements in your project checking file structure and dependencies.
  • fp - ESLint rules for functional programming.
  • functional - ESLint rules to disable mutation and promote fp in JavaScript and TypeScript.
  • Immutable - Disable all mutation in JavaScript.
  • new-with-error - Require errors to be thrown using new.
  • no-constructor-bind - Encourages use of class properties by reporting use of this with bind or setting state in constructors.
  • no-inferred-method-name - Custom rule for ESLint that checks for inferred method names within object literals.
  • no-loops - It's 2019 and you still use loops?
  • no-restricted-syntax - Show queried syntax's content in messages.
  • no-use-extend-native - Prevent using extended native objects.
  • Promise - Best practices when working with promises.
  • pure - Enforce pure functions (without side effects).
  • RegExp - ESLint plugin for finding regexp mistakes and style guide violations.
  • sort-keys-fix - Adds fixer for ESLint sort-keys rule.
  • this - Write pure functions, don't allow this.
  • toplevel - An eslint plugin for disallow side effect at module toplevel.

Performance

  • clean-regex - JavaScript regex linter that aims to help write better regular expressions by pointing out errors and suggesting improvements.
  • DOM
  • Optimize Regex - Optimize regex literals.
  • Perf-Standard plugin and Config

Security

  • no-secrets - An eslint plugin that detects potential secrets/credentials.
  • no-unsanitized - Checks for innerHTML, outerHTML, etc.
  • pii - 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.
  • ScanJS config and plugin - Security-related rules.
  • Security - ESLint rules for Node Security.
  • xss - Tries to detect XSS issues in codebase before they end up in production.

Style

Testing Tools

Parsers

  • Babel - Use Babel's parser for linting all Babel features.
  • TypeScript - A TypeScript parser that produces output compatible with ESLint.
  • BrightScript - BrightScript plugin for Roku development. Includes Parser and Rules.
  • GraphQL - Parser for the GraphQL AST. Includes parser, plugin, processor (for non-graphql files) and rules.

Formatters

  • badger - Make SVG-based badges summarizing ESLint results (e.g., for use on a README).
  • git-log - ESLint Formatter featuring Git Author, Date, and Hash.
  • github - See ESLint errors and warnings directly in pull requests.
  • gitlab - Output ESLint results in the GitLab code quality results.
  • mo - Good-lookin' ESLint formatter and also for delightful reading experience.
  • summary-chart - Format ESLint output into a bar chart.

Globals

Tools

  • es-file-traverse - 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.
  • eslint-cli - This is the eslint command that executes a local installed ESLint.
  • eslint-find-rules - Find built-in ESLint rules you don't have in your custom config.
  • eslint-index - CLI for finding and managing rules in ESLint config files.
  • eslint-multiplexer - Multiplex eslint results and merge results for common files.
  • eslint-nibble - Ease into ESLint, by fixing one rule at a time.
  • eslint-rule-documentation - Find the url for the documentation of an ESLint rule.
  • eslint-watch - Run ESLint with watch mode.
  • codacy-eslint - Docker used at Codacy to run ESLint.
  • esprint - Run ESLint across multiple threads.
  • generator-eslint - Generate ESLint plugin and rules with Yeoman.
  • editor-info - Detect whether one is within an editor/IDE and which type, allowing one to tweak ESLint configuration accordingly.

Developing for ESLint

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

Tutorials

Installation and Setup

  • Lintier - CLI to quickly scaffold an ESLint & Prettier setup in a TypeScript project.

About

A list of awesome ESLint plugins, configs, etc.

Topics

Resources

License

Releases

No releases published

Packages

No packages published