/shellflags

create shell command line flags, their parsers, and it's manager easily with predefined object definition

Primary LanguageJavaScript

shellflags

create shell command line flags, their parsers, and it's appropriate manager easily with a predefined object definition

you can find demos here

run npm run demo to run the same demo below


const parseCommandLineArguments = require("shellflags");

// do your data modification here
function handlePort(port) {
  console.log(`Starting server on port: ${port}`);
  // ... your server logic ...
  return port;
}

var prefixDefinitions = [
  { prefix: "-p", handler: "./demos/portHandler" }, // Use string for handler path
  { prefix: "--port", handler: handlePort }, // Use function directly
];

console.log("parseCommandLineArguments(prefixDefinitions): ", parseCommandLineArguments(prefixDefinitions));

// // OUTPUT
// Starting server on port: 3443
// parseCommandLineArguments(prefixDefinitions):  { '-p': '3443' }

function handleOption3(value) {
  console.log("Value handler3: ", value);
  return `Option 3 handled with value: ${value}`;
}

prefixDefinitions = [
  { prefix: '-o1', handler: './demos/handler1.js' },
  { prefix: '---o2', handler: './demos/handler2.js' },
  { prefix: '-o3', handler: handleOption3 },
];

console.log("parseCommandLineArguments(prefixDefinitions): ", parseCommandLineArguments(prefixDefinitions));

// // OUTPUT
// Value handler1:  test
// parseCommandLineArguments(prefixDefinitions):  { 'c': 'test' }