Skip to content

HabitRPG/eslint-config

Repository files navigation

habitrpg-eslint-config

Shared linting configuration for HabitRPG, Inc projects.

Version 6

  • index.js: link to node.js configuration
  • node.js: configuration for server side and Node.js projects
  • vue.js: configuration for Vue.js projects
  • mocha.js: configuration for Mocha test files

A set of reusable ESLint rules based on Airbnb JavaScript Style Guide() {.

Information about installation and usage can be found at http://eslint.org/docs/developer-guide/shareable-configs.

node

{
  "extends": "habitrpg/node",
  "rules": {
    "locally-overriden-rule": 1
  }
}

vue

For usage see https://github.com/vuejs/eslint-plugin-vue. Right now all reccomended rules are enabled.

{
  "extends": "habitrpg/vue",
  "rules": {
    "locally-overriden-rule": 1
  }
}

Version 4

Consuming

Install the module

npm i -D habitrpg-eslint-config

In your project's .eslintrc:

default

{
  "extends": "habitrpg",
  "rules": {
    "locally-overriden-rule": 1
  }
}

browser/browserify

{
  "extends": "habitrpg/browser",
  "rules": {
    "locally-overriden-rule": 1
  }
}

mocha

Note: The mocha config requires you to install eslint-plugin-mocha

npm install -D eslint-plugin-mocha eslint-config-habitrpg
{
  "extends": "habitrpg/mocha",
  "rules": {
    "locally-overriden-rule": 1
  }
}

esnext

This version is meant to be used with code written in ES6+ (babel is ok). It will currently parse code according to ecmaScript version 7.


You can specify a .eslintrc for a subdirectory to change the rules that are enforced. For instance, in a node project you could extend from habitrpg/server at the top-level, habitrpg/mocha in your test/.eslintrc and habitrpg/browser at the browser-files/.eslintrc level.