cli-options-parser

1.0.0 • Public • Published

Welcome to cli-options-parser 👋

Version Documentation Maintenance License: MIT Twitter: wildhogsm

Parser command line options into an object. Uses --key value1 -k value2 syntax.

🏠 Homepage

Install

npm install cli-options-parser

Usage

Your CLI App:

// cli-app.js
import cliToObject from 'cli-options-parser';

const obj = cliToObject();

console.log('⚠️  This is what we got:');
Object.entries(obj).forEach(([key, value]) =>
  console.log(`${key.replace(/^-{1,2}/, '')}: ${value}`)
);

Command line prompt:

/path/to/cli-app.js --name John --age 23 --is-adult

# cliToObject returns { '--name': 'John', '--age': '23', '--isAdult': true }
# cli-app.js prints:
# ⚠️  This is what we got:
# name: John
# age: 23
# is-adult: true

Import the cliToObject() function from cli-options-parser. Call it and store the returned result in a variable. What it will do is read process.argv and return the options in an object as key-value pairs. Keys without values are assigned the value of true.

Syntax

Keys are preceeded with a double dash -- and can optionally be followed by a value. If no value is followed, then the value of true is assigned. For example:

  • --name John produces { '--name': 'John' }
  • --is-engineer produces { '--is-engineer': true }

Optionally you can use short-hand one-letter keys preceeded with a single dash -. The same rules apply. For example:

  • -n John produces { '-n': 'John' }
  • -h produces { '-h': true }

Run tests

npm run test

Author

👤 Dmitry Kostyuk

🤝 Contributing

Contributions, issues and feature requests are welcome!
Feel free to check issues page. You can also take a look at the contributing guide.

Show your support

Give a ⭐️ if this project helped you!

📝 License

Copyright © 2023 Dmitry Kostyuk.
This project is MIT licensed.


This README was generated with ❤️ by readme-md-generator

Package Sidebar

Install

npm i cli-options-parser

Weekly Downloads

0

Version

1.0.0

License

MIT

Unpacked Size

30.4 kB

Total Files

9

Last publish

Collaborators

  • wildhog