Skip to content

opinionated scaffolder for managing the ESLint configuration for a project

License

Notifications You must be signed in to change notification settings

form8ion/eslint

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

eslint

opinionated scaffolder for managing the ESLint configuration for a project

Node CI Workflow Status Codecov SLSA Level 2

Table of Contents

Features

Scaffolder

  • creates an initial .eslintrc.yml config file for the project
  • extends the base shareable eslint-config package defined by config.scope
  • defines the lint and fix scripts
  • ignores the cache file from the VCS

Lifter

  • ignores linting of paths defined in
    • results.buildDirectory
    • results.eslint.ignore.directories
  • extends configs defined in results.eslint.configs, using the scope of the base config already defined in the .eslintrc.yml

Usage

MIT license npm Try @form8ion/eslint on RunKit node

Installation

$ npm install @form8ion/eslint --save

Example

Import

import {lift, scaffold} from '@form8ion/eslint';

Execute

(async () => {
  await scaffold({projectRoot: process.cwd(), config: {scope: '@foo'}});

  await lift({
    projectRoot: process.cwd(),
    results: {
      eslint: {configs: ['mocha', 'react'], ignore: {directories: []}},
      buildDirectory: 'lib'
    }
  });
})();

Contributing

PRs Welcome Commitizen friendly Conventional Commits semantic-release Renovate

Dependencies

$ nvm install
$ npm install

Verification

$ npm test