JSPM

@kdujs/eslint-config-typescript

11.0.0-rc.0
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • 0
  • Score
    100M100P100Q20001F
  • License MIT

eslint-config-typescript for kdu-cli

Package Exports

  • @kdujs/eslint-config-typescript
  • @kdujs/eslint-config-typescript/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@kdujs/eslint-config-typescript) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

@kdujs/eslint-config-typescript

eslint-config-typescript for Kdu

See @typescript-eslint/eslint-plugin for available rules.

This config is specifically designed to be used by @kdujs/cli & create-kdu setups and is not meant for outside use (it can be used but some adaptations on the user side might be needed - for details see the config file).

A part of its design is that this config may implicitly depend on other parts of @kdujs/cli/create-kdu setups, such as eslint-plugin-kdu being extended in the same resulting config.

Installation

In order to work around a known limitation in ESLint, we recommend you to use this package alongside @rushstack/eslint-patch, so that you don't have to install too many dependencies:

npm add --dev @kdujs/eslint-config-typescript @rushstack/eslint-patch

Usage

This package comes with 2 rulesets.

@kdujs/eslint-config-typescript

This ruleset is the base configuration for Kdu-TypeScript projects. Besides setting the parser and plugin options, it also turns off several conflicting rules in the eslint:recommended ruleset. So when used alongside other sharable configs, this config should be placed at the end of the extends array.

An example .eslintrc.cjs:

/* eslint-env node */
require("@rushstack/eslint-patch/modern-module-resolution")

module.exports = {
  extends: [
    'eslint:recommended',
    'plugin:kdu/kdu3-essential',
    '@kdujs/eslint-config-typescript'
  ]
}

@kdujs/eslint-config-typescript/recommended

This is extended from the @typescript-eslint/recommended ruleset, which is an opinionated ruleset. See the original documentation for more information.

Some of its rules, however, might conflict with prettier. So when used alongside other sharable configs, this config should be placed after all other configs except for the one from @kdujs/eslint-config-prettier or eslint-plugin-prettier in the extends array.

An example .eslintrc.cjs:

/* eslint-env node */
require("@rushstack/eslint-patch/modern-module-resolution")

module.exports = {
  extends: [
    'plugin:kdu/kdu3-essential',
    '@kdujs/eslint-config-typescript/recommended',
    '@kdujs/eslint-config-prettier'
  ]
}