feat: make base rules stricter & closer to semistandard (#10)

This removes all exceptions from `semistandard` we had in place, except
for `camelcase: off`. This step had already been taken in some of our
repos (e.g. `cordova-js`, `cordova-common`) before.

`camelcase` stays disabled for now as enabling & enforcing it would have
the potential of creating many conflicts with existing work in progress.
1 file changed
tree: c9188c7ffd1095de8c9f57d05226d7adeb4eb586
  1. .github/
  2. lib/
  3. spec/
  4. .asf.yaml
  5. .eslintrc.yml
  6. .gitignore
  7. .npmignore
  8. browser-tests.js
  9. browser.js
  10. index.js
  11. LICENSE
  12. node-tests.js
  13. node.js
  14. package-lock.json
  15. package.json
  16. README.md
  17. RELEASENOTES.md
README.md

@cordova/eslint-config

This repository centralizes the ESLint configuration used for Cordova's development.

Installation

@cordova/eslint-config comes with all plugins configs and even eslint itself. So all you need to do to get started is:

npm i -D @cordova/eslint-config

Usage

# In package.json
{
  "scripts": {
    "lint": "eslint ."
  }
}
# In .eslintrc.yml
root: true

extends: '@cordova/eslint-config/node'

overrides:

- files: [spec/**/*.js]
  extends: '@cordova/eslint-config/node-tests'

- files: [cordova-js-src/**/*.js]
  extends: '@cordova/eslint-config/browser'

Reference

This package exposes the following shareable ESLint configurations:

@cordova/eslint-config/node (or simply @cordova)

For linting scripts intended to be run with Node.js.

@cordova/eslint-config/node-tests

For linting Jasmine tests of Cordova's Node.js scripts.

@cordova/eslint-config/browser

For linting cordova-style CommonJS modules intended to be run in the browser (before they are bundled).

@cordova/eslint-config/browser-tests

For linting Jasmine tests of Cordova's browser code.