eslint-config-flowics
v13.0.0
Published
ESLint's shareable config for Flowics JavaScript projects
Downloads
65
Readme
#eslint-config-flowics
Common coding conventions for ensuring consistent style across Flowics JavaScript projects
Usage
eslint-config-flowics
exports several configuration, that can be combined with each other:
lib/base
: Rules only from eslint (no plugins). Several style rules & best practiceslib/promises
: requireseslint-plugin-promise
plugin. Promises checks & best practiceslib/react
: requireseslint-plugin-react
plugin. React checks & best practiceslib/flowtype
: requireseslint-plugin-flowtype
plugin. Flowtype checks & best practiceslib/imports
: requireseslint-plugin-import
plugin. Checks imports. Allows to detect if you are importing a symbol that is no exported in the source module. USE IT!lib/tests
: Use it to overridelib/base
to loosen up some rules in tests, and enable env jest & mocha.
To use them, just configure your .eslintrc.json
as:
{
"parser": "babel-eslint",
"extends": [
"flowics/lib/base",
"flowics/lib/promises",
"flowics/lib/react",
"flowics/lib/flowtype",
"flowics/lib/imports",
"flowics/lib/tests",
]
}
Just combine the ones you are interested in.
Old Usage
The old way of using this config is still available (for now), but not recommend.
You have a few presets that include several of the mentioned configs.
lib/frontend
: Composesbase
,promises
,flowtype
,imports
,react
& addsenv: browser
lib/backend
: Composesbase
,promises
,flowtype
,imports
,react
& addsenv: node
Don't use them, it's better to compose the config on your own, so you only add the traits your project uses. (maybe you are not using flowtype or react, or don't care about promises rules)
Installation
Install eslint, the config, and the required plugins
yarn add --dev eslint babel-eslint eslint-config-flowics eslint-config-prettier
Optionally, if you use the imports
config, also do:
yarn add --dev eslint-plugin-import
Optionally, if you use the react
config, also do:
yarn add --dev eslint-plugin-react
Optionally, if you use the promise
config, also do:
yarn add --dev eslint-plugin-promise
Optionally, if you use the flowtype
config, also do:
yarn add --dev eslint-plugin-flowtype
To publish a new version
Run
npm publish
And answer the questions!