Neverending Perpetual Motion

    commander-version

    3.0.0 • Public • Published

    commander-version

    npm typescript GitHub stars Twitter Follow

    A wrapper for Commander that automatically sets the version based on your package.json.

    Installation

    yarn add commander-version
    npm install commander-version

    API

    Default

    Note: also capitalizes 'help' and 'version' descriptions by default.

    To set the version, import program the same as you would for Commander, just pass __dirname or import.meta.url:

    import { program } from "commander-version";
    
    program(__dirname) // Use `import.meta.url` for ESM
      .name("my-program")
      .description("...")
      // ...
      .parse();

    This creates a new Command rather than using the global Command, which can cause issues.

    Flags and Description

    You can also add flags or descriptions the same as with program.version():

    Note: the default flags are set to "-v --version" to be inline with other programs, such as Node.js.

    import { program } from "commander-version";
    
    // To set flags back to the Commander default of "-V --version", for example:
    
    program(__dirname, "-V --version", "custom version description")
      .name("my-program")
      .description("...")
      // ...
      .parse();

    Types

    For creating types, the Commander namespace can also be imported:

    import commander from "commander-version";
    
    type MyType = commander.Command;

    Commander

    For convenience, Commander and createCommand can also be used without setting the version:

    import commander, { createCommand } from "commander-version";
    
    new commander.Command("my-command")
      .description("...")
      // ...
    
    const myCommand = createCommand("my-command")
      .description("...")
      // ...

    Dependenciesdependencies


    Dev DependenciesDavid


    License license

    MIT

    Related Packages

    Install

    npm i commander-version

    DownloadsWeekly Downloads

    236

    Version

    3.0.0

    License

    MIT

    Unpacked Size

    7.43 kB

    Total Files

    6

    Last publish

    Collaborators

    • bconnorwhite