1.5.1 • Published 3 years ago
@scitizen/eslint-config v1.5.1
@scitizen/eslint-config
ESLint rules & presets for Scitizen
This set of rules is released open-source for anyone to use. It is meant to be a strict, aerated configuration.
Main features
:white_check_mark: is always installed, :white_medium_square: is optional.
- Languages:
- :white_check_mark: Javascript
- :white_medium_square: Typescript
- :white_medium_square: with rxjs
- Frameworks:
- :white_check_mark: Bare node/browser
- :white_medium_square: Nest
- :white_medium_square: Angular (:information_source: more infos)
- Plugins: (checked are always used)
- :white_check_mark: eslint-plugin-import
- :white_check_mark: eslint-plugin-jsdoc
- :white_check_mark: eslint-plugin-prefer-arrow
- :white_check_mark: eslint-plugin-sort-export-all
- :white_check_mark: eslint-plugin-eslint-comments
- :white_medium_square: @angular-eslint
- :white_medium_square: @typescript-eslint
Configurations quick outline:
- Angular:
@scitizen/eslint-config/angular
@scitizen/eslint-config/angular/jest
- For libs:
@scitizen/eslint-config/angular/lib
@scitizen/eslint-config/angular/lib/jest
- Nest:
@scitizen/eslint-config/nest
- Bare:
- Pure JS:
@scitizen/eslint-config/js
- JS + TS:
@scitizen/eslint-config/ts
- JS + TS + rxjs:
@scitizen/eslint-config/ts-rxjs
- Pure JS:
You can also use configuration fragments from @scitizen/eslint-config/config-fragments/*
. See the directory on GitHub.
Installation & configuration
For any preset, you must at least install base dependencies.
npm install --save-dev @scitizen/eslint-config eslint eslint-plugin-import eslint-plugin-jsdoc eslint-plugin-prefer-arrow eslint-plugin-sort-export-all eslint-plugin-eslint-comments
If you're using Typescript, install also @typescript-eslint
related dependencies.
npm install --save-dev @typescript-eslint/eslint-plugin @typescript-eslint/parser
Angular
npm install --save-dev @scitizen/eslint-config eslint \
eslint-plugin-import eslint-plugin-jsdoc eslint-plugin-prefer-arrow eslint-plugin-sort-export-all eslint-plugin-eslint-comments \
@typescript-eslint/eslint-plugin @typescript-eslint/parser \
@angular-eslint/eslint-plugin @angular-eslint/eslint-plugin-template @angular-eslint/template-parser
Without/other framework
module.exports = {
env: { /* See https://eslint.org/docs/user-guide/configuring#specifying-environments. es2020 is enabled by default */ },
extends: '@scitizen/eslint-config/ts',
parserOptions: {
project: './tsconfig.json',
},
};
module.exports = {
env: { /* See https://eslint.org/docs/user-guide/configuring#specifying-environments. es2020 is enabled by default */ },
extends: '@scitizen/eslint-config/js',
};
Assumed directory structure
*.{j,t}s
: Project configuration files. Light lint rules are applied. It includes.eslintrc.js
.**
index.[jt]s{x,}
: Barrel files, only exporting other source files*.[jt]s{x,}
: Source files*.{spec,test}.[jt]s{x,}
: Unit test files. Configured for jest by default, unless framework use a different test runner__mocks__/**/*.[jt]s{x,}
: Module mocks for unit teststest-utils/**/*.[jt]s{x,}
: Various testing utilities
1.5.1
3 years ago
1.5.0
3 years ago
1.4.6
3 years ago
1.4.7
3 years ago
1.4.5
3 years ago
1.4.4
4 years ago
1.4.3
4 years ago
1.4.2
4 years ago
1.4.1
4 years ago
1.4.0
4 years ago
1.3.1
4 years ago
1.3.0
4 years ago
1.2.0
4 years ago
1.1.1
4 years ago
1.1.0
4 years ago
1.0.4
4 years ago
1.0.3
4 years ago
1.0.2
4 years ago
1.0.1
4 years ago
1.0.0
4 years ago