A set of default eslint configurations from Formidable.
A composable set of ESLint configurations.
Install this config package and ESLint:
$ npm install --save-dev email@example.com eslint-config-formidable
This package includes the following complete and ready to use configurations:
formidable- ES6 config
formidable/configurations/off- Disable all rules (ESLint's default at 1.0.0+)
formidable/configurations/es5-browser- ES5 + browser
formidable/configurations/es5-node- ES5 + node < 4.x
formidable/configurations/es5-test- ES5 + test
formidable/configurations/es5- ES5 config
formidable/configurations/es6-browser- ES6 + browser
formidable/configurations/es6-node- ES6 + node 4.x
formidable/configurations/es6-react-test- ES6 + react + test
formidable/configurations/es6-react- ES6 + react
formidable/configurations/es6-test- ES6 + test
formidable/configurations/es6- ES6 config
- Any config (
- Any React config (
- Any ES-next config (
--- "extends": - "formidable"
--- "extends": - "formidable/configurations/es6-browser"
ESLint configuration is broken apart in
./rules containing ESLint's rules and rules for specific ESLint plugins. The full set of ESLint rules (
./rules/eslint) are broken into categories that mirror ESLint's documentation. Under each rule type there are sets of configuration as well as an
off.js file which turns off every rule in the category.
--- "extends": - "formidable/rules/eslint/best-practices/on", - "formidable/rules/eslint/es6/off" - "formidable/rules/eslint/node/off" "env": "phantom": true
Due to an issue with ESLint, config extension cannot be called from a globally installed (
npm install -g eslint) eslint. It can however be run properly using eslint installed directly to your package's
node_modules. This can be done by either calling it directly (
./node_modules/.bin/eslint .) or from within an npm script since they automatically check local
node_modules first. This will be tracked in issue .
This package tracks config in the following versions:
This project defines a huge number of very contentious config variables. In order to prevent issues/PRs from being eternal bikeshedding pits of doom we would like to ask that you simply upvote or downvote a rule. If you need to explain something please use concrete and reproducible evidence or statistics. Please try not to post assertions of preference, authority, aesthetic beauty (it's in the eye of the beholder), minimal key presses, cognitive load or any other subjective measures of code style.
And A Special Thanks To
- for all the amazing work on
- for painstakingly formatting all of ESLint's rules into JSON in
- for sharing all of their config in
- for sharing their styleguide
- for the
Work With Us
We partner with our clients to build all manner of digital products. Wherever you are in your product lifecycle, from concept to launch, our team of design and engineering experts will ensure you meet your web or mobile app's goals.