Skip to content
This repository has been archived by the owner on Dec 8, 2019. It is now read-only.

EvgenyOrekhov/eslint-config-hardcore-fp

Repository files navigation

Deprecated in favor of eslint-config-hardcore and its additional hardcore/fp config

How to migrate to eslint-config-hardcore

{
-    "extends": ["hardcore-fp"]
+    "extends": ["hardcore", "hardcore/fp"]
}

Hardcore ESLint Shareable Config for functional programming

Travis CI build status

About

Shareable Configs are designed to work with the extends feature of .eslintrc files.

This config extends the hardcore config and adds rules from eslint-plugin-fp.

This config is designed to be compatible with Douglas Crockford's JSLint.

Rules Total Enabled
ESLint 264 241
eslint-plugin-promise 14 11
eslint-plugin-security 13 12
eslint-plugin-import 40 32
eslint-plugin-unicorn 43 36
eslint-plugin-array-func 6 6
eslint-plugin-optimize-regex 1 1
eslint-plugin-sonarjs 25 24
eslint-plugin-fp 17 15
Total 423 378

Usage

First run this:

npm install eslint-config-hardcore-fp --save-dev

Then, add "extends": "hardcore-fp" to your .eslintrc file and specify your environments:

{
    "extends": "hardcore-fp",
    "env": {
        "node": true,
        "browser": true
    }
}

Note: We omitted the eslint-config- prefix since it is automatically assumed by ESLint.

You can override settings from the shareable config by adding them directly into your .eslintrc file:

{
    "extends": "hardcore-fp",
    "env": {
        "node": true,
        "browser": true
    },
    "rules": {
        "no-console": "off"
    }
}

License

MIT