eslint-config-roboleary-base

My base JS ESLint config that extends eslint-config-airbnb-base.

Usage no npm install needed!

<script type="module">
  import eslintConfigRobolearyBase from 'https://cdn.skypack.dev/eslint-config-roboleary-base';
</script>

README

eslint-config-roboleary-base

My base config for linting JavaScript.

This extends the eslint-config-airbnb-base config to gives a core collection of rules with some modifications.

Rules changed

  • no-unused-vars: Aimed at eliminating unused variables, functions, and function parameters. Set to "warn".
  • no-console: Disallow the use of console. Set to "off".
  • func-names: Require or disallow named function expressions. Set to "off".
  • no-use-before-define: Disallow early use of variables or functions that are possible through hoisting. Set to "off".
  • prefer-const: This rule is aimed at flagging variables that are declared using let keyword, but never reassigned after the initial assignment. Set to "off".
  • radix: When using the parseInt() function it is common to omit the second argument, the radix, and let the function try to determine from the first argument what type of number it is. Set to "off",
  • no-plusplus: Because the unary ++ and -- operators are subject to automatic semicolon insertion, differences in whitespace can change semantics of source code. Set to allow for loops with the { "allowForLoopAfterthoughts": true } option. .
  • no-return-assign: Disallow assignments in return statements unless they are enclosed in parentheses coz they confusing!

Usage

  1. Install this package and ESLint as devDependencies with the command npm i --save-dev eslint eslint-config-roboleary-base.

  2. Create an eslint config file in the root of your project directory e.g. .eslintrc.json. Add the following:

    {
      "extends": ["eslint-config-roboleary-base"]
    }
    

    Alternatively, you can put a reference to the config in your package.json under the property eslintConfig.

  3. You can add scripts to your package.json to lint, fix, and format your code from the command-line.

    {
        "scripts": {
            "lint": "npx eslint .",
            "lint:fix": "npm run lint -- --fix",
        },
    }
    

Other related configs

If you want to use these rules in other stacks or environments, you can try: