/eslint-config

A set of re-usable ESLint configuration for Blockstack PBC projects

Primary LanguageJavaScriptMIT LicenseMIT

@stacks/eslint-config

A set of ESLint configuration and rules for use in Stacks projects.

Installation

yarn add --dev eslint @stacks/eslint-config
# or, with npm
npm install --save-dev eslint @stacks/eslint-config

Then, create or modify your .eslintrc.js file to extend this config:

module.exports = {
  extends: '@stacks/eslint-config',
  parser: '@typescript-eslint/parser',
  parserOptions: {
    tsconfigRootDir: __dirname,
    project: ['./tsconfig.json'],
    ecmaVersion: 2019,
    sourceType: 'module',
  },
};

Finally, modify your package.json file to use our prettier config, which is already installed as a dependency of this package.

{
  "prettier": "@stacks/prettier-config"
}

Overriding rules

This configuration includes a bunch of rules that have become standard in our JavaScript projects. However, if you feel the need to override a rule, you can always do so by simply adding rules to your .eslintrc.js file.

module.exports = {
  extends: ['@stacks/eslint-config'],
  rules: {
    '@typescript-eslint/no-use-before-define': [2],
  },
};