Skip to content

MailOnline/eslint-config-mailonline

Repository files navigation

eslint-config-mailonline

NPM version

eslint-config-mailonline is a shared ESLint configuration used by MailOnline. This configuration includes rules for ES6, React, Jest, Lodash, and Webpack.

Prerequisites

  • Node.js v18.18 or higher

Installation

Add eslint-config-mailonline as a development dependency:

For npm users:

npm install eslint-config-mailonline --save-dev

For Yarn users:

yarn add eslint-config-mailonline --dev

Please note that there is no requirement to install stylelint independently in the parent package. This is because it is included as a dependency within this library and will be hoisted to the parent package.

Usage

Create ESLint configuration file (eslint.json) that extends eslint-config-mailonline:

{
  "extends": "mailonline",
}

Extended configs

The package also has separate entry points for some environments. Simply extend from the entry point as described below, either in a folder-specific eslint config, or additionally to the root config, e.g.:

module.exports = {
  "extends": [
    "mailonline",
    "mailonline/jest",
    "mailonline/react"
  ]
};

jest

module.exports = {
  "extends": "mailonline/jest"
};

react

module.exports = {
  "extends": "mailonline/react"
};

lodash

module.exports = {
  "extends": "mailonline/lodash"
};

webpack

module.exports = {
  "extends": "mailonline/webpack"
};

Breaking changes

Any changes to this package that might cause code using it to not validate anymore, will be a semver-major change.