A uniform foundation for unobtrusive (ASCII art in) cli apps.
Why? Some of us are not only programmers but also part-time artist. So am I. This is good. However, to limit myself a bit to a straight look of my CLI apps, I've created ascli based on the thought of not making things too fancy but still looking good. So, basically, this package is meant to be used by me but if you like my interpretation of unobtrusiveness and ease-of-use ... You are welcome!
npm install ascli
var cli = require"ascli""myAppName";clibannerascliappNamegreenbold "v1.0.0 by Foo Bar <firstname.lastname@example.org>";cli.log"Hello!";cli.info"World!";cli.warn"of";cli.error"ascli.";// If it worked:cliok"It worked!" /* optional exit code */ 0;// If it didn't:clifail"Nope, sorry." /* optional exit code */ 1;
By default ascli uses a modified version of the straight ASCII alphabet. If you don't like it, you are free to replace it:
cliuse"/path/to/my/alphabet.json";// orvar myAlphabet = ;cliusemyAlphabet;
alphabet/ directory for an example.
ascli automatically looks up and translates ANSI terminal colors applied to the title string. For that it depends on
colour.js which is also exposed as a property of the ascli namespace:
cli.colors. Also means: You don't need another ANSI terminal colors dependency.
cli.log etc. indents all console output by one space just because it looks better with the banner.
opt.js will be pre-run on the
cli namespace and also exposed as
clinode // Node executablecliscript // Executed scriptcliopt // Options as a hashcliargv // Remaining non-option arguments
Apache License, Version 2.0