meow is the easiest way to write command line apps for Node.js.

### Typical settings

    const cli = require('meow')(`
      Usage: appname [options]

      Options:
            --lang LANG    set the language

      Other options:
        -h, --help         show usage information
        -v, --version      print version info and exit
    `, {
      string: ['lang'],
      boolean: ['help', 'version'],
      alias: { h: 'help', v: 'version' }
    })

`string` and `boolean` lets meow/minimist know which flags expect arguments (`string`) and which don’t (`boolean`).

### Using the result

    cli.flags   // { lang: 'en' }
    cli.input   // []

Yes, flags are automatically camelCased!

### Lesser-used settings

    meow(`...`, {
      // Default values if flags are not specified
      default: { lang: 'en' },

      // allow using -- to stop processing flags
      '--': true,

      // Populate `_` with first non-option
      stopEarly: true,

      // Invoked on unknown param
      unknown: function () { ... }
    })

Also see minimist.

0 Comments for this cheatsheet. Write yours!