Start with JS Standard Style but push towards better readability, git-awareness, and include React, ES6, and FlowType best practices
Start with JS Standard Style but push towards better readability,
git-awareness, vim-usability, and React and ES6 best practices.
For backwards-compatibility to >= v3, use eslint-plugin-tribou@^0.2.0
. To get
the latest rules for a new project, install eslint-plugin-tribou@latest
.
npm install --save-dev \
eslint-config-tribou@^3.0.0 \
babel-eslint@^7.1.0 \
eslint@^3.9.1 \
eslint-config-airbnb@^15.0.1 \
eslint-config-standard@^10.2.1 \
eslint-plugin-flowtype@^2.25.0 \
eslint-plugin-import@^2.1.0 \
eslint-plugin-jsx-a11y@^5.0.3 \
eslint-plugin-promise@^3.3.1 \
eslint-plugin-react@^7.0.1 \
eslint-plugin-standard@^3.0.1
Then add the following to your .eslintrc
:
{
"extends": [
"tribou"
]
}
Or add an .eslintrc.yml
:
extends:
- tribou
# Wow, that was easier... 😉
By default, Flow typing is required for an entire project sinceeslint-plugin-flowtype
will require the \\ @flow
annotation to be set at
the top of every file and subsequently check for all other flow annotation
requirements in that file. This allows new projects to enforce Flow typing on
every file from the start.
If you do not wish to use Flow typing on every file (or at all) in a project,
this config can still enforce all of its other standards (including Flow
linting on files that do have the // @flow
annotation). To disable this
“universal” Flow typing requirement in your .eslintrc
:
{
"extends": [
"tribou"
],
"settings": {
"flowtype": {
"onlyFilesWithFlowAnnotation": true
}
}
}
Or in your .eslintrc.yml
:
extends:
- tribou
settings:
flowtype:
onlyFilesWithFlowAnnotation: true