Comfort is a much better node.js commander solution for sub commands, such as `git xxx` or `npm xxx`
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

NPM version Build Status Dependency Status


Comfort is a much better node.js commander solution for sub commands.

If you have sub commands, such as <my-module> <command>, comfort will be extremely helpful.

Comfort is designed to make your code better organized and of scalability, unlike commander.js.

If you want to create a complicated command tool with heavy arguments overloading, comfort will be your very choice.


Plugin support

A command-line application (cortex for example) and its sub-commands built with comfort are structured much like git(1).

To develop a new sub-command('blah' for example) as a plugin(so you don't want to change the origin repository of cortex), just create a new node.js module, add a value to bin field of the package.json as:

	"bin": {
		"cortex-blah": "bin/xxxxx.js"

Comfort will look for PATH in your env, and search for a plugin command.

Falling love with creating sub-commands

To add a new built-in command('haha' for example), just add a file "haha.js" to the options.command_root directory, DONE!

Powerful argument parser


npm install comfort --save

Getting Started

If you want to figure out how comfort works, well,

Shut up, just show me the code!

and just see the annotations in the files under root directory.

Or, you could execute comfort init command, and see what happened to your new project.