{"library":"minargs","title":"Minargs - Minimal Argument Parser","description":"minargs is a JavaScript argument parser designed for minimal configuration and assumptions. Currently at version 2.1.0, it provides a barebones approach to parsing command-line arguments without built-in usage messages, validation, type coercion, or strictness. Its core philosophy is to 'Bring Your Own Usage™️' and 'Bring Your Own Validation™️', making it highly flexible but requiring more boilerplate for complex applications. It maintains zero runtime dependencies and aims for consistent results, returning a structured object containing `args`, `positionals`, `remainder`, and `argv` for fine-grained control over parsed input. This library is suitable for projects where developers prefer explicit control over argument processing rather than relying on opinionated, feature-rich parsers, and requires Node.js versions `^12.13.0 || ^14.15.0 || >=16`.","language":"javascript","status":"active","last_verified":"Sun Apr 19","install":{"commands":["npm install minargs"],"cli":null},"imports":["import { minargs } from 'minargs';","const { minargs } = require('minargs');","import type { ParsedArgs } from 'minargs';"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"#!/usr/bin/env node\n\n// basic.js\nconst { minargs } = require('minargs');\n\n// Simulate the arguments that would typically follow 'node script.js'\n// For example, running from the command line: `node basic.js - --foo=bar -- --baz`\nconst mockArgs = ['-', '--foo=bar', '--', '--baz'];\n\n// Parse the simulated arguments. In a real script, minargs() without arguments\n// would parse process.argv directly, slicing off the first two elements.\nconst { args, positionals, remainder, argv } = minargs(mockArgs);\n\nconsole.log('Parsed Arguments:');\nconsole.log('  args:', args);\nconsole.log('  positionals:', positionals);\nconsole.log('  remainder:', remainder);\nconsole.log('  argv (detailed parse data):', argv);\n\n/* Expected output for minargs(['-', '--foo=bar', '--', '--baz']):\nParsed Arguments:\n  args: { foo: [ 'bar' ] }\n  positionals: [ '-' ]\n  remainder: [ '--baz' ]\n  argv (detailed parse data): [\n    { index: 0, type: 'positional', value: '-' },\n    { index: 1, type: 'argument', value: { name: 'foo', value: 'bar' } },\n    { index: 2, type: 'bare_delimiter', value: '--' },\n    { index: 3, type: 'positional', value: '--baz' }\n  ]\n*/\nprocess.exit(0);\n","lang":"javascript","description":"Demonstrates basic argument parsing using `minargs`, showing how it separates named arguments, positional values, and a 'remainder' array after a bare `--` delimiter.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}