eslint-config-oval-base

    2.0.5 • Public • Published

    Build Status npm

    eslint-config-oval-base

    Base config for Oval ESlint - no React

    Our default export contains all of our ESLint rules, including ECMAScript 6+. It requires eslint, eslint-plugin-import, @typescript-eslint/eslint-plugin, @typescript-eslint/parser and typescript

    Install

    First install the dependencies:

    yarn add --dev eslint eslint-plugin-import @typescript-eslint/eslint-plugin @typescript-eslint/parser typescript
    

    Then add our config:

    yarn add --dev eslint-config-oval-base
    

    Usage

    eslint-config-oval-base

    Add to your .eslintrc

    {
      "extends": "oval",
      "parser": "@typescript-eslint/parser",
      "parserOptions": {
        "project": "tsconfig.eslint.json"
      }
    }

    Create a new tsconfig.eslint.json files for overrides the include and exclude of your main tsconfig.json, so that ESLint will be able to lint everything without complaining:

    {
      "extends": "./tsconfig.json",
      "exclude": [
        "node_modules"
      ],
      "include": [
        "**/*.js",
        "**/*.ts",
        "**/*.tsx"
      ]
    }
     

    The parserOptions.project issue

    You may wonder why you need to add an extra tsconfig.eslint.json file: this is kinda a problem with some rules that come from @typescript-eslint that need type information during the linting process, this is why you need to add a projectOptions.project to your .eslintrc. At this point ESLint will lint only files specified within the include array of the tsconfig you choose, this actually why you need to create a new tsconfig.eslint.json, extends your main tsconfig for having type information available to ESLint and then just re-include everythin you need to lint.

    More info:

    Develop

    You can run tests with yarn test.

    You can make sure this module lints with itself using yarn lint.

    Install

    npm i eslint-config-oval-base

    DownloadsWeekly Downloads

    40

    Version

    2.0.5

    License

    MIT

    Unpacked Size

    62 kB

    Total Files

    15

    Last publish

    Collaborators

    • sharpedge
    • franceto
    • mtfranchetto