env:
  node: true
  mocha: true

parserOptions:
  ecmaVersion: 8

extends: 'eslint:recommended'

rules:
  # Possible Errors
  no-console: "off"
  no-empty: "off"

  # Best Practices
  curly: "error"
  dot-notation: "error"
  eqeqeq: "error"
  no-return-assign: "error"
  no-proto: "error"
  no-case-declarations: "off"

  # Strict Mode
  strict: ["error", "global"]

  # Variables

  # Stylistic Issues
  camelcase: "error"
  comma-dangle: ["error", "never"]
  comma-spacing: "error"
  indent: ["error", 2]
  key-spacing: "error"
  linebreak-style: ["error", "unix"]
  new-cap: "error"
  quotes: ["error", "single"]
  semi: ["error", "always"]
  space-unary-ops: "error"

  # ECMAScript 6
  no-var: "error"

  # Node.js
  callback-return: "error"
