shareable configuration for ESLint

Downloads in past


045.0.119 days ago3 years agoMinified + gzip package size for @form8ion/eslint-config in KB


shareable configuration for ESLint

!Node CI Workflow Statusgithub-actions-ci-badgegithub-actions-ci-link

Table of Contents

Extending under your own scope
* [Installation](#installation)
* [Extend from the file exported as `main` in your config package](#extend-from-the-file-exported-as-main-in-your-config-package)
* [Example configs that extend this one](#example-configs-that-extend-this-one)
For projects in the form8ion organization
* [Installation](#installation-1)
* [Add to the project config](#add-to-the-project-config)
Dependencies Verification


Lint rules can be controversial, but I believe they should be extensive and strict. I think that consistency is more valuable in a codebase than personal preference, especially when those preferences differ between team members and even individual members at different times.
Because of this, the Airbnb base config is extended as the as the base ruleset of this config. It is not extended because of agreeing with all of the rules, but because it defines an extensive ruleset in a strict way. Rules are overridden from there, both to make some more strict and to make some enforce a different convention.


!npmnpm-badgenpm-link !MIT licenselicense-badgelicense-link !nodenode-badge

Extending under your own scope

Extending this config allows you to use this config as a base for your own config, enabling you to define further rules or override some defined in this config.
It is recommended to create your own config early rather than using this one directly even if you do not define any overrides at first. That way, your projects will already depend on your custom config when you decide to define custom rules later.


$ npm install @form8ion/eslint-config --save-prod

Extend from the file exported as main in your config package

Note that you can use the shorthand version of the config name
module.exports = {extends: '@form8ion'};

Example configs that extend this one

For projects in the form8ion organization


$ npm install @form8ion/eslint-config --save-dev

Add to the project config

Such as in an .eslintrc.yml
extends: '@form8ion'


!Conventional Commitscommit-convention-badgecommit-convention-link !Commitizen friendlycommitizen-badgecommitizen-link !semantic-releasesemantic-release-badgesemantic-release-link !PRs WelcomePRs-badgePRs-link Renovate


$ nvm install
$ npm install


$ npm test

Related Projects