Perfective ESLint Config for Angular
@perfective/eslint-config-angular provides
a shareable ESLint configuration
that is used for the development of the @perfective Angular packages.
This package is based on the
@perfective/eslint-config package.
@perfective/eslint-config-angular uses the following ESLint plugins:
Setup
- Require
@perfective/eslint-config-angular and its peer dependencies as dev dependencies:
npm install --save-dev \
@perfective/eslint-config-angular \
@angular-eslint/eslint-plugin \
@angular-eslint/eslint-plugin-template \
@angular-eslint/template-parser \
@typescript-eslint/eslint-plugin \
@typescript-eslint/eslint-plugin-tslint \
@typescript-eslint/parser \
eslint \
eslint-import-resolver-typescript \
eslint-plugin-array-func \
eslint-plugin-cypress \
eslint-plugin-deprecation \
eslint-plugin-eslint-comments \
eslint-plugin-import \
eslint-plugin-jest \
eslint-plugin-jest-dom \
eslint-plugin-jest-formatting \
eslint-plugin-jsdoc \
eslint-plugin-node \
eslint-plugin-prefer-arrow \
eslint-plugin-promise \
eslint-plugin-rxjs \
eslint-plugin-rxjs-angular \
eslint-plugin-simple-import-sort \
eslint-plugin-sonarjs \
eslint-plugin-testing-library \
eslint-plugin-unicorn \
tslint \
codelyzer
- Require the configuration in your root
.eslintrc.js or .eslintrc.json.
{
"extends": [
"@perfective/eslint-config-angular"
]
}
- Use a separate
.eslintrc.html.js to lint Angular templates.
module.exports = {
extends: ['@perfective/eslint-config-angular/template'],
}
Run eslint --config .eslintrc.html.js --no-eslintrc . to lint Angular templates.
TSLint
While the @angular-eslint/eslint-plugin is
still in active development,
Codelyzer is used to increase the quality coverage.
It's based on the deprecated TSLint.
TSLint rules are executed using the
ESLint Plugin TSLint.
Read the full documentation
in the repository.