eslint-config-vast
ESLint shareable config Vast's JavaScript coding standards
This config can be used for linting server-side and client-side JavaScript.
If you are using React, extend this config with eslint-config-vast-react to add support for React's specific JSX syntax, and to add additional checks for React, JSX, and accessibility.
Installation
npm install eslint-config-vast --save-dev
Usage
For Node.js environment (ES6):
Create .eslintrc
file in the root of your project with the following settings:
"extends": "eslint-config-vast" "rules": // Your overrides...
For browser environment with ES6/ES7/ES8 to ES5 transpiler:
Create an additional .eslintrc
file in a client-side code folder (e.g. client/.eslintrc
) with the following settings:
"env": "browser": true "parserOptions": "sourceType": "module" "ecmaVersion": 8 "globals": "GLOBAL1": false "GLOBAL2": false
For browser environment without ES6/ES7/ES8 to ES5 transpiler:
Create an additional .eslintrc
file in a client-side code folder (e.g. client/.eslintrc
) with the following settings:
"env": "browser": true "es6": false "globals": "GLOBAL1": false "GLOBAL2": false "rules": // Disable es6-related rules for es5 environment "object-shorthand": 0 "prefer-arrow-callback": 0 "prefer-template": 0 "prefer-spread": 0 "prefer-rest-params": 0
Setting up ESLint
If you haven’t already set up ESLint on your project, run:
npm install eslint --save-dev
Add scripts to package.json
(remember to change paths):
"scripts":
Run npm run lint:js
to lint the code.
Run npm run lint:js:fix
to automatically fix as many issues as possible. Another way to autoformat the code is with the editor plugin, such as ESLint-Formatter for Sublime Text.
To add a Git pre-commit hook for ESLint, run:
npm install pre-commit --save-dev
...and add this to package.json
:
"pre-commit":
Tip: For real-time linting in your text editor, see ESLint integrations for editors. In order to use this config in editor, you'll have to install ESLint and all dependencies globally (with -g
flag).
Tip: You can create a personal configuration file in your home directory (~/.eslintrc
), it will only be used if no other configuration files are found. See Configuration Cascading and Hierarchy.
Related
- eslint-config-vast-react for React
Other configs
- eslint-config-standard for JavaScript Standard Style Guide
- eslint-config-airbnb-base for Airbnb JavaScript Style Guide
- eslint-config-xo for XO ESLint-based linter
License
MIT © 2016 Vast.com, Inc.