|
|
5 years ago | |
|---|---|---|
| .. | ||
| .circleci | 5 years ago | |
| .vscode | 5 years ago | |
| lib | 5 years ago | |
| .editorconfig | 5 years ago | |
| .eslintignore | 5 years ago | |
| .eslintrc.js | 5 years ago | |
| .gitattributes | 5 years ago | |
| .huskyrc.js | 5 years ago | |
| .prettierignore | 5 years ago | |
| CHANGELOG.md | 5 years ago | |
| CONTRIBUTING.md | 5 years ago | |
| DEVELOPING.md | 5 years ago | |
| LICENSE | 5 years ago | |
| MAINTAINING.md | 5 years ago | |
| README.md | 5 years ago | |
| base.js | 5 years ago | |
| index.js | 5 years ago | |
| lint-staged.config.js | 5 years ago | |
| package.json | 5 years ago | |
| prettier.config.js | 5 years ago | |
| renovate.json | 5 years ago | |
| tsconfig.json | 5 years ago | |
README.md
eslint-config-airbnb-typescript
Airbnb's ESLint config with TypeScript support
Works with both JS and TS files.
I use eslint-config-airbnb (with React support)
Install dependencies. ESLint plugins must also be installed.
npm install eslint-config-airbnb-typescript \
eslint-plugin-import@^2.20.1 \
eslint-plugin-jsx-a11y@^6.2.3 \
eslint-plugin-react@^7.19.0 \
eslint-plugin-react-hooks@^2.5.0 \
@typescript-eslint/eslint-plugin@^3.1.0 \
--save-dev
Within your ESLint config file:
module.exports = {
extends: ['airbnb-typescript'],
parserOptions: {
project: './tsconfig.json',
},
};
Alter your eslint command to include ts and tsx files:
eslint --ext .js,.jsx,.ts,.tsx ./
I use eslint-config-airbnb-base (no React support)
Install dependencies. ESLint plugins must also be installed.
npm install eslint-config-airbnb-typescript \
eslint-plugin-import@^2.20.1 \
@typescript-eslint/eslint-plugin@^3.1.0 \
--save-dev
Within your ESLint config file:
module.exports = {
extends: ['airbnb-typescript/base'],
parserOptions: {
project: './tsconfig.json',
},
};
Alter your eslint command to include ts and tsx files:
eslint --ext .js,.jsx,.ts,.tsx ./
I wish this config would support [...]
The goal of eslint-config-airbnb-typescript is decorate eslint-config-airbnb with TypeScript support. All rules and settings are identical. It's a drop-in replacement for eslint-config-airbnb, including linting for JavaScript files.
It's recommended to alter your ESLint config for additional functionality. Here's an example:
{
"extends": [
"airbnb-typescript",
"airbnb/hooks",
"plugin:@typescript-eslint/recommended",
"plugin:@typescript-eslint/recommended-requiring-type-checking"
],
}
My personal ESLint config file with support for Jest, Promises, and Prettier can be found in create-exposed-app.
Additional Documentation
Credits
Authored and maintained by Matt Turnbull (iamturns.com / @iamturns)
To all contributors (if you exist) - thank you!
License
Open source licensed as MIT.