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
- index.js: base configuration
- server.js: special rules for code on the server
- browser.js: special rules for code on the browser
- esnext.js: special rules for es6 code
- mocha.js: special rules for the moch test framework
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.