2.2.1 • Published 6 years ago

eslint-config-111studio v2.2.1

Weekly downloads
5
License
MIT
Repository
github
Last release
6 years ago

#Javascript

##Install To start linting your code, please make sure you have an ESLINT plugin install on your IDE. When starting a new react / react-native or node project create a .eslinrc file with the following content :

{
    "extends": "111studio"
}

Then install eslint dependencies running the following command:

yarn add --dev eslint-config-111studio

##Browser Compatibility checks The config uses Eslint Plugin Compat with the following target :

settings: {
   targets: ['chrome >= 50', 'firefox', 'edge', 'safari', 'ie']
}

##ES6 Use as much ES6 as possible. ##ES7 You may use ES7 parsingly for:

###Decorators

class Person {
  @cantEnum
  get kidCount() { return this.children.length; }
}

function cantEnum(target, name, descriptor) {
  descriptor.enumerable = false;
  return descriptor;
}

###Object spread properties

let info = {fname, lname, ...rest};

info; // { fname: "Hemanth", lname: "HM", location: "Earth", type: "Human" }

DO NOT USE ANY OTHER ES7 FEATURES YET

###ESLINT Rules

####Default ESLINT rules

####Stylistic rules

  • Indents using spaces.
  • Indents size is set to 2.
  • Switch - Case indents are set to 1.
  • Semi colon: YES
  • Single quotes only
  • camelCase variables only

####ES6 Rules

  • prefer-template: require template literals instead of string concatenation
  • no-var: require let or const instead of var

####React - JSX rules

##TODO

  • Specify flow type annotation style.
  • Specify indentation for ternary operator in JSX expressions.