Skip to content

ESLint configuration file for TypeScript projects

Notifications You must be signed in to change notification settings

amarlankri/eslint-config

 
 

Repository files navigation

Algoan Logo

Algoan ESLint config

Algoan ESLint configuration shared for NodeJS projects written in TypeScript and using prettier. It is the ESLint equivalent for @yelloan/tslint rules.

Installation

First, install this module running:

npm install @algoan/eslint-config --save-dev

Then, create a .eslintrc.json file:

{
  "extends": "@algoan/eslint-config"
}

Usage

In your package.json file, add a script:

{
  "lint": "eslint src/**/**.ts"
}

TSLint To ESLint Report

Using the tsling-to-eslint-config script:

8 ESLint rules behave differently from their TSLint counterparts:
  * @typescript-eslint/no-unused-expressions:
    - The TSLint optional config "allow-new" is the default ESLint behavior and will no longer be ignored.
  * prefer-arrow/prefer-arrow-functions:
    - ESLint does not support allowing named functions defined with the function keyword.
  * camelcase:
    - Leading undescores in variable names will now be ignored.
  * no-underscore-dangle:
    - Leading and trailing underscores (_) on identifiers will now be ignored.
  * no-redeclare:
    - ESLint does not support check-parameters.
  * @typescript-eslint/no-unused-vars:
    - Please read the following article as the rule behaviour may change on the short term: https://github.com/typescript-eslint/typescript-eslint/issues/1856
  * @typescript-eslint/strict-boolean-expressions:
    - String, number, enum, and mixed union types are now forbidden.
  * class-methods-use-this:
    - allow-public methods will no longer be ignored.

15 rules are not known by tslint-to-eslint-config to have ESLint equivalents:
  * tslint-to-eslint-config does not know the ESLint equivalent for TSLint's "completed-docs".
  * tslint-to-eslint-config does not know the ESLint equivalent for TSLint's "encoding".
  * tslint-to-eslint-config does not know the ESLint equivalent for TSLint's "match-default-export-name".
  * tslint-to-eslint-config does not know the ESLint equivalent for TSLint's "no-dynamic-delete".
  * tslint-to-eslint-config does not know the ESLint equivalent for TSLint's "no-inferred-empty-object-type".
  * tslint-to-eslint-config does not know the ESLint equivalent for TSLint's "no-mergeable-namespace".
  * tslint-to-eslint-config does not know the ESLint equivalent for TSLint's "no-unnecessary-callback-wrapper".
  * tslint-to-eslint-config does not know the ESLint equivalent for TSLint's "no-unsafe-any".
  * tslint-to-eslint-config does not know the ESLint equivalent for TSLint's "prefer-conditional-expression".
  * tslint-to-eslint-config does not know the ESLint equivalent for TSLint's "prefer-method-signature".
  * tslint-to-eslint-config does not know the ESLint equivalent for TSLint's "prefer-switch".
  * tslint-to-eslint-config does not know the ESLint equivalent for TSLint's "return-undefined".
  * tslint-to-eslint-config does not know the ESLint equivalent for TSLint's "strict-type-predicates".
  * tslint-to-eslint-config does not know the ESLint equivalent for TSLint's "switch-final-break".
  * tslint-to-eslint-config does not know the ESLint equivalent for TSLint's "typedef".

About

ESLint configuration file for TypeScript projects

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%