@boost/cli

An interactive command line program builder, powered by React and Ink.

Usage no npm install needed!

<script type="module">
  import boostCli from 'https://cdn.skypack.dev/@boost/cli';
</script>

README

CLI - Boost

Build Status npm version npm deps

An interactive command line program builder, powered by React and Ink.

import { Program } from '@boost/cli';
import BuildCommand from './commands/Build';
import CleanCommand from './commands/Clean';

const program = new Program({
    bin: 'boost',
    name: 'Boost',
    version: '1.2.3',
});

program.register(new BuildCommand());
program.register(new CleanCommand());

await program.runAndExit(process.argv);

Features

  • Supports common argument features like commands, options, flags, parameters, and more.
  • Export a stand-alone or command-based CLI program binary.
  • Write declarative commands with decorators, or imperative commands with static properties.
  • Write shorthand proxy commands for small one offs.
  • Renders interface using React and Ink at 16 FPS, or output simple strings.
  • Outputs beautiful help, usage, error, and index menus.
  • Buffers console logs to avoid render tearing.
  • Apply middleware to the argv list, or to the parsed arguments.
  • Customize output colors using Boost-based terminal themes.

Installation

yarn add @boost/cli react

Documentation

CLI example