pargs 
A wrapper for node’s built-in util.parseArgs with helpful features added.
Usage
#!/usr/bin/env node
import pargs from 'pargs';
const {
help,
positionals,
values,
errors, // a mutable string array; push to it and pargs will include your error messages.
name, // if subcommands are used
tokens,
} = await pargs(import.meta.filename, options);
// do extra validation here
await help(); // to handle `--help` and print the help text if needed, or to print errors and exit
Help
Help text is automatically read from a help.txt file adjacent to import.meta.filename.
await an invocation of the help function returned from the pargs call to handle --help and print the help text if needed, or to print errors and exit.
Options
See the node.js parseArgs documentation for some context.
strict: can not be set tofalse- strictness all the way.allowNegative: can not be set tofalse.args: can not provide; pargs always usesprocess.cwd()- this may be added in the future, though.options.type: in addition to'boolean'and'string','enum': when provided, achoicesstring array is also required.allowPositionals: in addition to a boolean, or an integer representing the maximum number of allowed positional arguments.minPositionals: an integer representing the minimum required number of positional arguments.subcommands: if provided, must be an object. Keys are the subcommand names (eg, innpm ls,lsis the subcommand), and values are the configuration options for each subcommand - as if they were a top-level invocation.
Install
``
npm install --save pargs
License
MIT
Thanks
Thanks to @ibakaidov for donating the pargs package name!
