Socket
Socket
Sign inDemoInstall

clipanion

Package Overview
Dependencies
7
Maintainers
1
Versions
83
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    clipanion


Version published
Weekly downloads
1.6M
increased by2.9%
Maintainers
1
Created
Weekly downloads
 

Package description

What is clipanion?

The clipanion npm package is a powerful library for building command-line interfaces (CLIs) in Node.js. It provides a rich set of features for defining commands, parsing arguments, validating input, and generating help messages.

What are clipanion's main functionalities?

Command Definition

Clipanion allows you to define commands as classes, which can then be registered with a CLI instance. Each command can have its own execute method that contains the logic to be run when the command is invoked.

class MyCommand extends Command {
  execute() {
    console.log('Command executed!');
  }
}

const cli = new Cli();
cli.register(MyCommand);
cli.runExit(process.argv.slice(2));

Argument Parsing

Clipanion provides a declarative way to define command arguments using class properties. These arguments are automatically parsed and made available within the command's execute method.

class MyCommand extends Command {
  myArgument = Option.String();

  execute() {
    console.log(`Argument value: ${this.myArgument}`);
  }
}

const cli = new Cli();
cli.register(MyCommand);
cli.runExit(process.argv.slice(2));

Input Validation

Clipanion includes built-in validation for command arguments. You can specify whether an argument is required, and Clipanion will automatically enforce this when the command is run.

class MyCommand extends Command {
  myArgument = Option.String({ required: true });

  execute() {
    console.log(`Argument value: ${this.myArgument}`);
  }
}

const cli = new Cli();
cli.register(MyCommand);
cli.runExit(process.argv.slice(2));

Help Generation

Clipanion can automatically generate help messages for your commands. You can provide descriptions, detailed information, and usage examples that will be displayed when the help command is invoked.

class MyCommand extends Command {
  static usage = Command.Usage({
    description: 'My command description',
    details: 'Detailed information about my command',
    examples: [['Example usage', 'my-cli my-command']]
  });

  execute() {
    console.log('Command executed!');
  }
}

const cli = new Cli();
cli.register(MyCommand);
cli.runExit(process.argv.slice(2));

Other packages similar to clipanion

FAQs

Last updated on 12 Jul 2019

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc