Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

    yargspublic

    Yargs

    Build Status Coverage Status NPM version Windows Tests js-standard-style Conventional Commits Slack

    Having problems? want to contribute? join our community slack.

    Yargs be a node.js library fer hearties tryin' ter parse optstrings.

    Yargs helps you build interactive command line tools, by parsing arguments and generating an elegant user interface. It gives you:

    • commands and (grouped) options (my-program.js serve --port=5000).
    • a dynamically generated help menu based on your arguments.
    • bash-completion shortcuts for commands and options.
    • and tons more.

    Installation

    npm i yargs --save

    Simple Example

    #!/usr/bin/env node
    const argv = require('yargs').argv
     
    if (argv.ships > 3 && argv.distance < 53.5) {
      console.log('Plunder more riffiwobbles!')
    } else {
      console.log('Retreat from the xupptumblers!')
    }
    $ ./plunder.js --ships=4 --distance=22
    Plunder more riffiwobbles!
     
    $ ./plunder.js --ships 12 --distance 98.7
    Retreat from the xupptumblers!

    Complex Example

    #!/usr/bin/env node
    require('yargs') // eslint-disable-line
      .command('serve [port]', 'start the server', (yargs) => {
        yargs
          .positional('port', {
            describe: 'port to bind on',
            default: 5000
          })
      }, (argv) => {
        if (argv.verbose) console.info(`start server on :${argv.port}`)
        serve(argv.port)
      })
      .option('verbose', {
        alias: 'v',
        default: false
      })
      .argv

    Run the example above with --help to see the help for the application.

    Table of Contents

    install

    npm i yargs

    Downloadsweekly downloads

    14,748,082

    version

    11.0.0

    license

    MIT

    homepage

    yargs.js.org

    repository

    githubgithub

    last publish

    collaborators

    • avatar
    • avatar
    • avatar