Skip to content

shinnn's ESLint config for both client-side and Node.js-based projects

License

Notifications You must be signed in to change notification settings

shinnn/eslint-config

Repository files navigation

@shinnn/eslint-config

npm version Build Status codecov

shinnn's ESLint sharable config

Features

Installation

Install eslint and this package with npm.

npm install --save-dev eslint @shinnn/eslint-config

Then add the following configuration to your project's package.json.

"eslintConfig": {
  "extends": "@shinnn"
}

Optional setups

babel-eslint utilization

When babel-eslint is installed, this config automatically uses it as a parser. There is no need to add "parser": "babel-eslint" to the package.json explicitly.

npm install --save-dev babel-eslint

babel-eslint lets ESLint parse experimental ECMAScript syntax the default parser doesn't support, for example class fields and BigInt.

Svelte support

When eslint-plugin-svelte3 is installed, this config also makes ESLint validate .svelte files.

npm install --save-dev eslint-plugin-svelte3

CLI

# No need to explicitly add `--cache`, `--cache-location`, `--ext`, `--fix` and `--format` flags
$ eslint .

API

const {CLIEngine} = require('eslint');

const cli = new CLIEngine({
  // For programmatic usage via API and build tool integrations like Webpack eslint-loader,
  // options for example `fix: true` and `cache: true` are still needed to set them explicitly.
});
cli.executeOnText('var foo=true;'); //=> {results: [ ... ], errorCount: ... }

License

ISC License © 2017 - 2019 Watanabe Shinnosuke