zacacollier / eslint-plugin-tribou

Start with JS Standard Style but push towards better readability, git-awareness, vim-usability, and React and ES6 best practices

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

eslint-plugin-tribou

npm version Build Status Project Status: Active - The project has reached a stable, usable state and is being actively developed. bitHound Code

Start with JS Standard Style but push towards better readability, git-awareness, vim-usability, and React and ES6 best practices.

Quick Start

NOTE: If you're migrating from eslint-config-tribou and want to maintain compatibility, see the Legacy Configuration.

yarn add --dev \
    eslint-plugin-tribou \
    babel-eslint \
    eslint

Then add the following to your .eslintrc:

{
  "extends": [
    "plugin:tribou/recommended"
  ],
  "plugins": [
    "tribou"
  ]
}

Or add an .eslintrc.yml:

extends:
  - plugin:tribou/recommended

plugins:
  - tribou

# Wow, that was easier... 😉

By default, Flow typing is required for an entire project since eslint-plugin-flowtype will require the \\ @flow annotation to be set at the top of every file and subsequently check for all other flow annotation requirements in that file. This allows new projects to enforce Flow typing on every file from the start.

If you do not wish to use Flow typing on every file (or at all) in a project, this config can still enforce all of its other standards (including Flow linting on files that do have the // @flow annotation). To disable this "universal" Flow typing requirement in your .eslintrc:

{
  ...
  "settings": {
    "flowtype": {
      "onlyFilesWithFlowAnnotation": true
    }
  }
}

Or in your .eslintrc.yml:

...
settings:
  flowtype:
    onlyFilesWithFlowAnnotation: true

Legacy Configuration

In order to apply the rules equivalent to eslint-config-tribou@^3.0.0, install v0.2.0 instead:

yarn add --dev \
    eslint-plugin-tribou@^0.2.0 \
    babel-eslint@^7.2.3 \
    eslint@^3.19.0

About

Start with JS Standard Style but push towards better readability, git-awareness, vim-usability, and React and ES6 best practices

License:MIT License


Languages

Language:JavaScript 100.0%Language:Shell 0.0%Language:CSS 0.0%