CommanderJSX

CommanderJSX

Command-line Arguments Parser with JSX support

NPM Dependency CI & CD

NPM

Example

index.tsx

import { Command, createCommand } from 'commander-jsx';

Command.execute(
<Command
name="git"
version="2.10.0"
parameters="[command] [options]"
description="Distributed Version Control system"
>
<Command
name="remote"
description='Manage the set of repositories ("remotes") whose branches you track'
>
<Command
name="add"
description="Adds a remote named <name> for the repository at <url>"
options={{
tree: {
shortcut: 't',
parameters: '<branch>',
pattern: /^\w+$/,
description: 'Branch tree'
}
}}
executor={({ tree }, name, url) => console.log(tree, name, url)}
/>
</Command>
</Command>,
process.argv.slice(2)
);

tsconfig.json

{
"compilerOptions": {
"module": "CommonJS",
"moduleResolution": "Node",
"jsx": "react",
"jsxFactory": "createCommand",
"target": "ES2017",
"outDir": "dist/"
}
}

Then, run git help in your terminal, it'll outputs:

git [command] [options]

Distributed Version Control system

Options:
  -h, --help       show Help information
  -v, --version    show Version number

Commands:
  help    [command]  show Help information
  remote             Manage the set of repositories ("remotes") whose branches you track

Generated using TypeDoc