@innocells/eslint-config
InnoCells's ESLint config, following our styleguide
Last updated 4 months ago by jlpiedrahita .
MIT · Repository · Bugs · Original npm · Tarball
$ cnpm install @innocells/eslint-config 
SYNC missed versions from official npm registry.

eslint-config-innocells

InnoCells's ESLint shared config which extends Airbnb's overriding some rules adapting them to our preferences.

Why

ESLint has become an indispensable tool in our development workflow (along Prettier), it help us catch those pesky bugs ASAP, enforce code conventions and keep our projects consistent.

This package aims to ease the configuration of new projects and keep a single source of truth for all those conventions.

This is the place where to discuss existing rules or apply new ones, so if you want to participate (as you should!) open a Github issue.

Install

This config depends on eslint, eslint-plugin-import, eslint-plugin-react and eslint-plugin-jsx-a11y as peerDependencies, so make sure to install them before install the configuration, otherwise npm will complaint about unmet peer dependencies:

To learn more about why they are required as peerDependencies and not just dependencies see here.

npm install --save-dev eslint
npm install --save-dev eslint-plugin-import
npm install --save-dev eslint-plugin-react
npm install --save-dev eslint-plugin-jsx-a11y

Then:

npm install --save-dev @innocells/eslint-config

Or all at once:

npm i -D @innocells/eslint-config eslint eslint-plugin-import eslint-plugin-react eslint-plugin-jsx-a11y

Usage

In your .eslintrc.js file just extend eslint-config-innocells:

module.exports = {
  extends: '@innocells/eslint-config'
};

Or more concisely:

module.exports = {
  extends: '@innocells'
};

VoilĂ ! this will tell ESLint to apply our set of custom rules.

Configurations

This package export two ESLint configurations:

eslint-config-innocells

The base configuration, this config doesn't include any React rules, so is primary intended to be used in backend (Node.js) projects:

module.exports = {
  extends: '@innocells',
  rules: {
    // project specific overrides
  }
};

eslint-config-innocells/react

React configuration, includes all the rules in the base config plus React specific ones. For usage in React and React Native projects:

module.exports = {
  extends: '@innocells/eslint-config/react',
  rules: {
    // project specific overrides
  }
};

TODO

  • [ ] summary of Airbnb rules
  • [ ] summary of overridden rules
Downloads
Today 0
This Week 0
This Month 9
Last Day 0
Last Week 0
Last Month 10
Dependencies (1)
Dev Dependencies (0)
None
Dependents (0)
None

Copyright 2014 - 2016 © taobao.org |