eslint-config-airbnb
This package provides Airbnb's .eslintrc as an extensible shared config.
Usage
We export three ESLint configurations for your usage.
eslint-config-airbnb
Our default export contains all of our ESLint rules, including EcmaScript 6+
and React. It requires eslint
and eslint-plugin-react
.
npm install --save-dev eslint-config-airbnb eslint-plugin-react eslint
- add
"extends": "airbnb"
to your .eslintrc
eslint-config-airbnb/base
Lints ES6+ but does not lint React. Requires eslint
.
npm install --save-dev eslint-config-airbnb eslint
- add
"extends": "airbnb/base"
to your .eslintrc
eslint-config-airbnb/legacy
Lints ES5 and below. Only requires eslint
.
npm install --save-dev eslint-config-airbnb eslint
- add
"extends": "airbnb/legacy"
to your .eslintrc
See Airbnb's Javascript styleguide and the ESlint config docs for more information.
Improving this config
Consider adding test cases if you're making complicated rules changes, like anything involving regexes. Perhaps in a distant future, we could use literate programming to structure our README as test cases for our .eslintrc?
You can run tests with npm test
.
You can make sure this module lints with itself using npm run lint
.
Changelog
1.0.0
- require
eslint
v1.0.0
or higher - removes
babel-eslint
dependency
0.1.1
- remove id-length rule (#569)
- enable
no-mixed-spaces-and-tabs
(#539) - enable
no-const-assign
(#560) - enable
space-before-keywords
(#554)
0.1.0
- switch to modular rules files courtesy the eslint-config-default project and @taion. PR
- export
eslint-config-airbnb/legacy
for ES5-only users.eslint-config-airbnb/legacy
does not require thebabel-eslint
parser. PR
0.0.9
- add rule no-undef
- add rule id-length
0.0.8
- now has a changelog
- now is modular (see instructions above for with react and without react versions)