yargs

yargs the modern, pirate-themed successor to optimist.

  • Owner: yargs/yargs
  • Platform:
  • License:: MIT License
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

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

Description :

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

Stable version:

npm i yargs

Bleeding edge version with the most recent features:

npm i yargs@next

Usage :

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',
    type: 'boolean',
    description: 'Run with verbose logging'
  })
  .argv

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

TypeScript

yargs has type definitions at @types/yargs.

npm i @types/yargs --save-dev

See usage examples in docs.

Webpack

See usage examples of yargs with webpack in docs.

Community :

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

Documentation :

Table of Contents

Main metrics

Overview
Name With Owneryargs/yargs
Primary LanguageJavaScript
Program languageJavaScript (Language Count: 3)
Platform
License:MIT License
所有者活动
Created At2013-11-07 17:25:51
Pushed At2025-05-27 14:27:08
Last Commit At
Release Count222
Last Release Namev18.0.0 (Posted on )
First Release Name0.2.7 (Posted on )
用户参与
Stargazers Count11.3k
Watchers Count79
Fork Count1k
Commits Count1.8k
Has Issues Enabled
Issues Count1288
Issue Open Count290
Pull Requests Count885
Pull Requests Open Count0
Pull Requests Close Count266
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private