A few seconds.


parse arguments with recursive contexts


parse arguments with recursive contexts using minimist

testling badge

build status

This module is useful if you need to pass arguments into a piece of code without coordinating ahead of time with the main program, like with a plugin system.


var subarg = require('subarg');
var argv = subarg(process.argv.slice(2));

Contexts are denoted with square brackets:

$ node example/show.js rawr --beep [ boop -a 3 ] -n4 --robots [ -x 8 -y 6 ]
{ _: [ 'rawr' ],
  beep: { _: [ 'boop' ], a: 3 },
  n: 4,
  robots: { _: [], x: 8, y: 6 } }


var subarg = require('subarg')

var argv = subarg(args, opts)

Parse the arguments array args, passing opts to minimist.

An opening [ in the args array creates a new context and a ] closes a context. Contexts may be nested.


With npm do:

npm install subarg



Pincer is a project which aims to provide best library discovery tools for developers. We're growing day by day. We have only npm platform for now but we will add the others as much as we can.