eslint-config-ecliptic
v2.0.0
Published
Ecliptic's ESLint config, following our styleguide
Downloads
1,643
Maintainers
Readme
eslint-config-ecliptic
This ESLint config extends Airbnb's config.
Differences from Airbnb
Variables
no-unused-vars
- reset back to the ESLint default, no optionsno-use-before-define
- changed to a warning, added the "nofunc" option
Best Practices
dot-location
- require the dot to be on the same line as the propertyno-unused-expressions
- allow the use of expressions in statement position
Style
camelcase
- always require camelcase for propertiesobject-curly-spacing
- return to the default of 'never'no-unexpected-multiline
- prevent problems when not using semicolonspadded-blocks
- disable this rulesemi
- this is the big one - never use semicolons!
React
react/jsx-boolean-value
- require values for boolean JSX attributesreact/jsx-closing-bracket-location
- the closing bracket should be after propsreact/jsx-sort-prop-types
- require propTypes to be sorted alphabeticallyreact/jsx-sort-props
- require props to be sorted alphabetically
Usage
We export two ESLint configurations for your usage.
eslint-config-ecliptic
Our default export contains all of our ESLint rules, including EcmaScript 6+
and React. It requires eslint
, babel-eslint
, and eslint-plugin-react
.
npm install --save-dev eslint-config-ecliptic babel-eslint eslint-plugin-react eslint
- add
"extends": "ecliptic"
to your .eslintrc
eslint-config-ecliptic/base
Lints ES6+ but does not lint React. Requires eslint
and babel-eslint
.
npm install --save-dev eslint-config-ecliptic babel-eslint eslint
- add
"extends": "ecliptic/base"
to your .eslintrc
Changelog
1.6.0
- change
react/jsx-closing-bracket-location
to 'after-props'
1.5.0
- return
object-curly-spacing
to the default of 'never'
1.4.0
- remove
indent
andreact/jsx-quotes
because they match airbnb now
1.3.0
- allow the use of expressions in statement position
1.2.0
- no more displayName on React components
1.1.0
- no more semicolons!
- fix a typo in the base config
1.0.0
- switch to modular rules files, following eslint-config-airbnb's example
- define only what has changed, rather than defining everything