An ESLint shareable config for TypeScript that is based on eslint-config-standard and has TypeScript specific rules from @typescript-eslint/eslint-plugin.
npm install --save-dev eslint@6 eslint-plugin-standard@4 eslint-plugin-promise@4 eslint-plugin-import@2 eslint-plugin-node@9 @typescript-eslint/eslint-plugin@2 eslint-config-standard-with-typescript
Yes, I know it is a large number of packages. This is due to a known limitation in ESLint.
This long list of dependencies includes:
- ESLint
- Peer dependencies of eslint-config-standard
- @typescript-eslint/eslint-plugin; ESLint rules for TypeScript.
Here is an example .eslintrc.json
:
{
"extends": "standard-with-typescript",
"parserOptions": {
"project": "./tsconfig.json"
}
}
Note: Please read some important instructions regarding the project
option here.
There are some more parserOptions
you might care about.
Make sure you read about the --ext
command line option. And here is a feature request for specifying extensions in the config.
Example command line usage:
npx eslint --ext .js,.ts .