@anexia/eslint-config-marine
Typescript ESLint shareable config
Install
npm i -D @anexia/eslint-config-marine
additionally (if not already in place), you will need @typescript-eslint/parser
and @typescript-eslint/eslint-plugin
npm i -D @typescript-eslint/parser @typescript-eslint/eslint-plugin
Usage
Add the ESLint config to your package.json
:
{
"name": "my-project",
...
"eslintConfig": {
"extends": "@anexia/eslint-config-marine"
}
}
Or to eslintrc.js
or eslintrc.json
:
{
"extends": "@anexia/eslint-config-marine"
}
Targets
If you are developing with Javascript consider adding:
{
"extends": "@anexia/eslint-config-marine",
"env": {
"browser": true
}
}
or use the platform specific configs for Node.js:
{
"extends": "@anexia/eslint-config-marine/node"
}
or React:
{
"extends": "@anexia/eslint-config-marine/react"
}
or any other JSX:
{
"extends": "@anexia/eslint-config-marine/jsx"
}
or Vue.js:
{
"extends": "@anexia/eslint-config-marine/vue"
}
Using the Vue extended config will require you to additionally install eslint-plugin-vue
and babel-eslint
npm i -D babel-eslint eslint-plugin-vue
or Angular:
{
"extends": "@anexia/eslint-config-marine/angular"
}
Using the Angular extended config will require you to additionally install @angular-eslint/builder
, @angular-eslint/eslint-plugin
, @angular-eslint/eslint-plugin-template
, @angular-eslint/template-parser
, @typescript-eslint/tslint
and codelyzer
npm i -D @typescript-eslint/tslint codelyzer @angular-eslint/builder @angular-eslint/eslint-plugin @angular-eslint/eslint-plugin-template @angular-eslint/template-parser
Prettier usage
If you want to apply your own .prettierrc
rules with support for disabling the correct rules, just add /prettier
before the target name.
Also make sure you install prettier
, eslint-plugin-prettier
and eslint-config-prettier
for this to work.
npm i -D prettier eslint-plugin-prettier eslint-config-prettier
{
"extends": "@anexia/eslint-config-marine/prettier"
}
{
"extends": "@anexia/eslint-config-marine/prettier/node"
}
or React:
{
"extends": "@anexia/eslint-config-marine/prettier/react"
}
or any other JSX:
{
"extends": "@anexia/eslint-config-marine/prettier/jsx"
}
or Vue.js:
{
"extends": "@anexia/eslint-config-marine/prettier/vue"
}
or Angular:
{
"extends": "@anexia/eslint-config-marine/prettier/angular"
}