Usage & Features

CLI Wizard

Automate project setup and migration using the @eienjs/eslint-config interactive CLI tool.

@eienjs/eslint-config ships with a built-in CLI wizard that automates setting up ESLint in new or existing projects.

Running the Wizard

Execute the CLI directly from your package manager:

pnpm dlx @eienjs/eslint-config@latest
If an eslint.config.js file already exists in the current working directory, the wizard will exit immediately to avoid overwriting your existing configuration.

What the Wizard Does

When executed, the wizard runs through the following stages:

Checks Git working tree status

Verifies whether there are uncommitted changes in the repository and asks for confirmation before modifying files.

Prompts for frameworks and extras

Lets you select one or more frameworks (vue, astro, adonisjs, nuxt) and optional utilities (formatter).

Updates package.json

Adds @eienjs/eslint-config, eslint, and any required peer dependencies for your selected frameworks and formatters to devDependencies:

  • adonisjs: @adonisjs/eslint-plugin
  • nuxt: @nuxt/eslint-plugin
  • astro: eslint-plugin-astro, astro-eslint-parser
  • formatter: eslint-plugin-format (plus prettier-plugin-astro when astro is selected)

Generates eslint.config.js (or .mjs)

Creates eslint.config.js if "type": "module" is set in package.json, or eslint.config.mjs otherwise. If a legacy .eslintignore file exists, its ignore and unignore globs are automatically migrated into the ignores array. It also lists any legacy ESLint or Prettier config files that you can safely delete.

Configures .vscode/settings.json

Creates or updates .vscode/settings.json so VS Code uses ESLint as the default formatter across all supported file types.

CLI Options

You can pass flags to customize the CLI behavior or skip interactive prompts:

OptionAliasDescription
--yes-ySkip interactive prompts and use default values (or set SKIP_PROMPT=1).
--template <template>-tSpecify framework template(s): vue, adonisjs, astro, nuxt.
--extra <extra>-eEnable extra utilities: formatter.
--help-hDisplay CLI help message.
--version-vDisplay CLI version number.

Examples

Run non-interactively with default settings:

pnpm dlx @eienjs/eslint-config@latest --yes

Pre-select extra utilities:

pnpm dlx @eienjs/eslint-config@latest --extra formatter

After the wizard finishes, install the newly added dependencies and run ESLint:

pnpm install
pnpm eslint --fix