Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

eslint-config-mitmaro

mitmaro12ISC5.0.2

mitmaro's personal ESLint configurations

eslint, eslintconfig

readme

eslint-config-mitmaro

NPM version Dependency Status Build Status GitHub license

This package provides MitMaro's shared extensible ESLint config.

Usage

This project provides an interface for generating ESLint configurations.

// .eslintrc.js
const eslintConfig = require('eslint-config-mitmaro');

module.exports = eslintConfig(
    [
        'node',
        'ecmascript-9',
        // other configurations
    ],
    {
        root: true,
        // other base configurations
    },
    {
        // options
    }
);

General Setup

Install this project and it's base dependencies:

npm install --save-dev \
    eslint-config-mitmaro \
    eslint \
    eslint-plugin-filenames \
    eslint-plugin-promise \
    eslint-plugin-security

Babel configuration

Adds support for babel-eslint and the ESLint babel plugin.

Add 'babel' to configurations array and install the required dependencies:

npm install --save-dev babel-eslint eslint-plugin-babel

Typescript configuration

Adds support for @typescript-eslint/parser and the ESLint Typescript Plugin.

Add 'typescript' to configurations array and install the required dependencies:

npm install --save-dev @typescript-eslint/eslint-plugin @typescript-eslint/parser

Chai Expect configuration

Adds support for the ESLint Chai Expect Plugin.

Add 'chai' to configurations array and install the required dependencies:

npm install --save-dev eslint-plugin-chai-expect

ECMAScript 7 configuration

Adds support for ECMAScript 7 features.

Add 'ecmascript-7' to configurations array.

ECMAScript 8 configuration

Adds support for ECMAScript 8 features including previous versions.

Add 'ecmascript-8' to configurations array.

ECMAScript 9 configuration

Adds support for ECMAScript 9 features including previous versions.

Add 'ecmascript-9' to configurations array.

Mocha configuration

Adds support for mocha and adds the ESLint mocha plugin.

Add 'mocha' to configurations array and install the required dependencies:

npm install --save-dev eslint-plugin-mocha

Node.js configuration

Adds support for Node.js and adds the ESLint node plugin.

Add 'node' to configurations array and install the required dependencies:

npm install --save-dev eslint-plugin-node

Console applications configuration

Extends the Node.js configuration to modify rules for console applications.

Add 'console' to configurations array.

React configuration

Adds support for React and adds the ESLint react plugin.

Add 'react' to configurations array and install the required dependencies:

npm install --save-dev eslint-plugin-react

Options

  • react.version to set a custom React version. Default to auto-detect.

JSDoc configuration

Adds support for JSDoc and adds the ESLint jsdoc plugin.

Add 'jsdoc' to configurations array and install the required dependencies:

npm install --save-dev eslint-plugin-jsdoc

Options

  • jsdoc.ignorePrivate - default to true.
  • jsdoc.additionalTagNames - default to and empty array ([]).

Versioning

This project follows as closely as possible Semantic Versioning. A MAJOR change would be caused by including a rule that could cause a passing code base to fail. A MINOR change is a modification or removal of a rule that would not cause existing passing code to fail. A PATCH would be any fix that doesn't cause any changes to rules.

License

This project is released under the ISC license. See LICENSE.

changelog

Change Log

All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning. The format conforms to Keep a Changelog.

[5.0.2] - 2019-07-18

Fixed

  • Base config would not override rules

5.0.1 - 2019-07-12

Fixed

  • React config was not exports

5.0.0 - 2019-06-16

Added

  • Console configuration
  • JSDoc plugin

Changed

  • Drop support for Node < 8.3
  • Drop support for Node 6
  • Functional system to setup configurations
  • Updated to latest rules
  • Updated plugins to the latest versions

4.0.0 - 2018-07-28

Added

Changed

  • Updated to support ESLint 5
  • Updated plugins to the latest versions

3.0.0 - 2017-12-15

Added

Changed

  • Updated to support ESLint 4

2.0.0 - 2016-07-24

Changed

  • Updated to support ESLint 3
  • Set checkLoops to false for rule no-constant-condition
  • Set nestedBinaryExpressions for rule no-extra-parens

1.0.0 - 2016-06-25

Added

  • Initial rule set