@ianwremmel/eslint-plugin-ianwremmel

[![license](https://img.shields.io/github/license/ianwremmel/eslint-plugin-ianwremmel)](https://github.com/ianwremmel/eslint-plugin-ianwremmel/blob/master/LICENSE) [![standard-readme compliant](https://img.shields.io/badge/readme%20style-standard-brightgr

Usage no npm install needed!

<script type="module">
  import ianwremmelEslintPluginIanwremmel from 'https://cdn.skypack.dev/@ianwremmel/eslint-plugin-ianwremmel';
</script>

README

eslint-plugin-ianwremmel (@ianwremmel/eslint-plugin-ianwremmel)

license standard-readme compliant npm (scoped) npm

Dependabot badge dependencies Status devDependencies Status semantic-release

CircleCI

ianwremmel's ESLint preferences for various project types

This is a set of shareable ESLint configs bundled into a single plugin for easier maintenance and publication.

Table of Contents

Install

npm install --save-dev @ianwremmel/eslint-plugin-ianwremmel

ESLint doesn't support plugins in shareable configs, so you'll need to run the following script (borrowed from airbnb) to install the requisite peerDependencies.

(
  export PKG=@ianwremmel/eslint-plugin-ianwremmel
  npm info "$PKG@latest" peerDependencies --json \
    | command sed 's/[\{\},]//g ; s/: /@/g' \
    | xargs npm install --save-dev "$PKG@latest"
)

Usage

  • node: node scripts

    extends:
        - 'plugin:@ianwremmel/ianwremmel/node'
    
  • modern: in browsers via transpilation (be it webpack, webpacker, babel, or typescript)

    extends:
        - 'plugin:@ianwremmel/ianwremmel/modern'
    
  • legacy: for browsers without transpilation or polyfills

    extends:
        - 'plugin:@ianwremmel/ianwremmel/legacy'
    
  • universal: for libraries that'll run in browsers or node. transpilation in browser is assumed

    extends:
        - 'plugin:@ianwremmel/ianwremmel/universal'
    
  • common: use as a base when none of the others will do

    extends:
        - 'plugin:@ianwremmel/ianwremmel/common'
    
  • typescript: use with modern or universal as appropriate

    extends:
        - 'plugin:@ianwremmel/ianwremmel/typescript'
    

Maintainer

Ian Remmel

Contribute

PRs generally accepted, but ruleset changes will require a detailed justification. Please open issues before proposing changes of more than a line or two.

License

MIT © Ian W. Remmel 2018 until at least now