@checkup/cli
TypeScript icon, indicating that this package has built-in type declarations

3.0.1 • Public • Published

@checkup/cli

A CLI that provides health check information about your project.

CI Build Version Downloads/week License

Usage

Install checkup CLI globally:

Using yarn:

$ yarn global add @checkup/cli

Using npm:

$ npm install -g @checkup/cli

Using volta:

$ volta install @checkup/cli

Configuration

First use the config generator to create a config file in your project's directory:

$ checkup generate config

The checkup CLI is now available to run. Use the run command to run Checkup against your project directory:

$ checkup run .

Checkup is designed to be completely configurable via a configuration object.

You can also specify an explicit path to a configuration via the command line, which will override any configurations found in any .checkuprc.* files

$ checkup --config /some/path/to/my/config/.checkuprc

The configuration object has the following properties:

Plugins

Plugins are collections of Checkup tasks that are intended to be configured and run. Conceptually, they're very similar to eslint plugins, which themselves contain a collection of eslint rules to run.

Check out some existing plugins:

Plugins can be authored by anyone, and configured to run for any codebase. Checkup comes with a plugin generator, making it easy to generate the scaffolding needed.

To generate a plugin, run:

$ checkup generate plugin checkup-plugin-foo

To configure plugins, use the plugins key in your configuration file, which contains a list of plugin names.

{
  "plugins": ["checkup-plugin-foo"]
}

Tasks

Tasks are the core primitive that Checkup uses to gather data for the Checkup report.

To generate a task, run the following in the plugin directory you want to add the task to:

$ checkup generate task example-task

Checkup Command (alias checkup run)

checkup run PATH

A CLI that provides health check information about your project

checkup run [paths..] [options]

Options:
      --help             Show help                                        [boolean]
      --version          Show version number                              [boolean]
  -e, --exclude-paths    Paths to exclude from checkup. If paths are provided via
                         command line and via checkup config, command line paths
                         will be used.                                      [array]
  -c, --config-path      Use the configuration found at this path, overriding
                         .checkuprc if present.             [default: ".checkuprc"]
      --config           Use this configuration, overriding .checkuprc if present.
  -d, --cwd              The path referring to the root directory that Checkup will
                         run in                                [default: (default)]
      --category         Runs specific tasks specified by category. Can be used
                         multiple times.                                    [array]
      --group            Runs specific tasks specified by group. Can be used
                         multiple times.                                    [array]
  -t, --task             Runs specific tasks specified by the fully qualified task
                         name in the format pluginName/taskName. Can be used
                         multiple times.                                    [array]
  -f, --format           Use a specific output format          [default: "summary"]
  -o, --output-file      Specify file to write JSON output to.        [default: ""]
  -l, --list-tasks       List all available tasks to run.                 [boolean]
  -p, --plugin-base-dir  The base directory where Checkup will load the plugins
                         from. Defaults to cwd.

See code: src/commands/run.ts

Generate Command

Checkup comes with a few generators to help generate Checkup plugins and tasks.

checkup generate plugin PLUGIN_NAME PATH

Generate a checkup plugin.

checkup generate plugin <name> [options]

Generates a checkup plugin project

Positionals:
  name  Name of the plugin (eg. checkup-plugin-myplugin)   [required] [default: ""]

Options:
      --help      Show help                                               [boolean]
      --version   Show version number                                     [boolean]
  -d, --defaults  Use defaults for every setting                          [boolean]
  -p, --path      The path referring to the directory that the generator will run
                  in                                                 [default: "."]

checkup generate task TASK_NAME PATH

Generate a task within a Checkup plugin.

checkup generate task <name> [options]

Generates a checkup task within a project

Positionals:
  name  Name of the task (foo-task)                        [required] [default: ""]

Options:
      --help      Show help                                               [boolean]
      --version   Show version number                                     [boolean]
  -d, --defaults  Use defaults for every setting                          [boolean]
  -p, --path      The path referring to the directory that the generator will run
                  in                                                 [default: "."]

checkup generate actions ACTION_NAME PATH

Generate a task actions within a Checkup plugin.

checkup generate actions <name> [options]

Generates checkup actions within a project

Positionals:
  name  Name of the actions (foo-task-actions)             [required] [default: ""]

Options:
      --help      Show help                                               [boolean]
      --version   Show version number                                     [boolean]
  -d, --defaults  Use defaults for every setting                          [boolean]
  -p, --path      The path referring to the directory that the generator will run
                  in                                                 [default: "."]

See code: src/commands/generate.ts

Dependents (0)

Package Sidebar

Install

npm i @checkup/cli

Weekly Downloads

89

Version

3.0.1

License

MIT

Unpacked Size

162 kB

Total Files

139

Last publish

Collaborators

  • scalvert
  • rwjblue