10.0.1 • Published 9 months ago

@form8ion/eslint-config-extender v10.0.1

Weekly downloads
100
License
MIT
Repository
github
Last release
9 months ago

eslint-config-extender

shareable ESLint config scaffolder for extending another config

Codecov Node CI Workflow Status SLSA Level 2

Table of Contents

Usage

MIT license npm Try @form8ion/eslint-config-extender on RunKit node

Installation

$ npm install @form8ion/eslint-config-extender --save-prod

Example

Import

const {packageManagers} = await import('@form8ion/javascript-core');
const githubPlugin = await import('@form8ion/github');
const {questionNames: projectQuestionNames} = await import('@form8ion/project');
const javascriptPlugin = await import('@form8ion/javascript');
const {scaffold, extendEslintConfig} = await import('./lib/index.mjs');

Execute

Scaffolder Plugin
(async () => {
  await scaffold({
    projectRoot: process.cwd(),
    projectName: 'eslint-config-foo',
    scope: 'bar'
  });
})();
High-Level Scaffolder
(async () => {
  await extendEslintConfig(
    {
      decisions: {
        [projectQuestionNames.PROJECT_NAME]: 'eslint-config-foo',
        [projectQuestionNames.DESCRIPTION]: 'a description of the project',
        [projectQuestionNames.VISIBILITY]: 'Public',
        [projectQuestionNames.LICENSE]: 'MIT',
        [projectQuestionNames.COPYRIGHT_HOLDER]: 'John Smith',
        [projectQuestionNames.COPYRIGHT_YEAR]: '2022',
        [projectQuestionNames.GIT_REPO]: true,
        [projectQuestionNames.REPO_HOST]: 'GitHub',
        [projectQuestionNames.REPO_OWNER]: 'org-name',
        [javascriptPlugin.questionNames.AUTHOR_NAME]: 'John Smith',
        [javascriptPlugin.questionNames.AUTHOR_EMAIL]: 'john@smith.org',
        [javascriptPlugin.questionNames.AUTHOR_URL]: 'https://smith.org',
        [javascriptPlugin.questionNames.SCOPE]: 'org-name',
        [javascriptPlugin.questionNames.PACKAGE_MANAGER]: packageManagers.NPM,
        [javascriptPlugin.questionNames.NODE_VERSION_CATEGORY]: 'LTS',
        [javascriptPlugin.questionNames.CI_SERVICE]: 'Other',
        [javascriptPlugin.questionNames.PROVIDE_EXAMPLE]: false
      },
      plugins: {vcsHosts: {GitHub: githubPlugin}}
    },
    decisions => ({
      ...javascriptPlugin,
      scaffold: options => javascriptPlugin.scaffold({
        ...options,
        decisions,
        configs: {},
        plugins: {unitTestFrameworks: {}}
      })
    })
  );
})();

Contributing

PRs Welcome Conventional Commits Commitizen friendly semantic-release Renovate

Dependencies

$ nvm install
$ npm install

Verification

$ npm test
10.0.1

9 months ago

10.0.0

9 months ago

10.0.0-beta.1

9 months ago

9.0.0-beta.2

10 months ago

9.0.0-beta.1

10 months ago

9.0.0

10 months ago

8.1.2

1 year ago

8.1.1

1 year ago

8.1.0

2 years ago

8.0.3

2 years ago

8.0.2

2 years ago

7.0.1

2 years ago

8.0.1

2 years ago

8.0.0

2 years ago

7.0.0

2 years ago

6.1.0

2 years ago

6.0.2

2 years ago

6.0.1

3 years ago

6.0.0

3 years ago

5.0.2

3 years ago

4.0.1

3 years ago

4.0.0

3 years ago

4.0.2

3 years ago

5.0.1

3 years ago

5.0.0

3 years ago

3.1.2

3 years ago

3.1.1

3 years ago

3.1.0

3 years ago

3.0.1

3 years ago

3.0.0

3 years ago

2.0.0-alpha.1

3 years ago

2.0.0-alpha.2

3 years ago

2.0.1

3 years ago

2.0.0

3 years ago

1.1.19

3 years ago

1.1.18

3 years ago

1.1.17

3 years ago

1.1.16

4 years ago

1.1.15

4 years ago

1.1.14

4 years ago

1.1.13

4 years ago

1.1.12

4 years ago

1.1.11

4 years ago

1.1.10

4 years ago

1.1.9

4 years ago

1.1.8

4 years ago

1.1.7

4 years ago

1.1.6

4 years ago

1.1.5

4 years ago

1.1.4

4 years ago

1.1.3

4 years ago

1.1.2

4 years ago

1.1.1

4 years ago

1.1.0

5 years ago

1.1.0-beta.5

5 years ago

1.1.0-beta.4

5 years ago

1.1.0-beta.2

5 years ago

1.1.0-beta.3

5 years ago

1.1.0-beta.1

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago

1.0.0-alpha.6

5 years ago

1.0.0-alpha.5

5 years ago

1.0.0-alpha.4

5 years ago

1.0.0-alpha.3

5 years ago

1.0.0-alpha.2

5 years ago

1.0.0-alpha.1

5 years ago