Neopolitan Pizza Maker

    eslint-config-daun

    2.0.0 • Public • Published

    ESLint and Prettier Setup

    ESLint and prettier rules for my personal projects.

    Installation

    Install eslint and this module in your project's devDependencies:

    npm install --save-dev eslint eslint-config-daun

    Usage

    Extend the main config from your .eslintrc.js:

    module.exports = {
      extends: 'daun',
      rules: {
        // your overrides
      }
    }

    Other configs

    This config also exposes a few other configs that can be pulled in as needed.

    You can use them standalone:

    module.exports = {
      extends: 'daun/<config-name>',
    }

    Or in combination with the base config (recommended):

    module.exports = {
      extends: ['daun', 'daun/<config-name>'],
    }

    Peer dependencies

    We need to patch ESLint to recognize the associated plugins without having to install them as local dependencies. See this bug for details.

    Add this to the top of your .eslintrc.js:

    // Patch ESLint module resolution to find shared configs' plugins
    require('eslint-config-daun/eslint-patch/module-resolution')
    
    module.exports = {
      extends: ['daun']
    }
    • babel-module: babel-plugin-module-resolver for the import plugin to work with the module-resolver babel plugin (eslint-plugin-import and eslint-import-resolver-babel-module)
    • jest: jest testing framework
    • vue: Vue JS library (eslint-plugin-react)
    • webpack: Webpack for the import plugin to work with webpack overloaded imports/requires (eslint-plugin-import, eslint-import-resolver-alias and eslint-import-resolver-webpack)

    Things to know

    • The default config uses babel-eslint to support stage features that ESLint doesn't support and it opts to use the eslint-plugin-babel rules over the ESLint rules to support rules for these features as well.
    • All plugins needed for rules used by these configs are dependencies of this module so you don't have to install anything on your own.
    • The default config actually is composed of several configurations and you can use those individually. These are the configs it's using: possible-errors.js, best-practices.js, stylistic.js, es6/index.js, and import/index.js. Also, the es6 and import configs each have a possible-errors.js, best-practices.js, and stylistic.js which they are composed of as well.

    Example of customized config

    module.exports = {
      extends: [
        'daun/possible-errors',
        'daun/best-practices',
        'daun/es6/possible-errors',
        'daun/import',
        'daun/jest',
        'daun/vue'
      ],
      rules: {
        /* custom rules */
      }
    }

    Install

    npm i eslint-config-daun

    DownloadsWeekly Downloads

    2

    Version

    2.0.0

    License

    MIT

    Unpacked Size

    25.1 kB

    Total Files

    31

    Last publish

    Collaborators

    • daun