1.0.1 • Published 1 year ago

export-to-cli v1.0.1

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

Export to CLI

Exports a function or an entire module to CLI

Usage

Just add one line of code to your module:

// export to CLI
require.main === module && require('export-to-cli').exportModule(myModule)

Now you can execute functions from myModule directly from CLI!

Example

Consider the following module from a file called person.js:

class Person {

    greeting(name, age) {
        var str = `${name} is ${age} years old`
        return str;
    }

    foo() {
        return 'bar'
    }
}

module.exports = Person

// export to CLI
require.main === module && require('export-to-cli').exportModule(Person)

Results

You can run functions from person.js in CLI:

$ node person.js greeting --age 12 --name "John Smith"

Output:

Jonh Smith is 12 years old

If you run without arguments:

$ node person.js

You shall get a default message:

Usage: person.js <function> [--argname1 value1 --argname2 value2...]

Required Arguments:
  function  Function name from the module to invoke.
            One of:
            -   greeting(name, age)
            -   foo()

Options:
  --version  Show version number                           [boolean]
  --help     Show help                                     [boolean]

Error: function is a required argument

Final note

Of course, you can continue using person.js as usual:

// another-file.js
const Person = require("./person.js")
var person = new Person()
var x = person.foo()
1.0.1

1 year ago

1.0.0

1 year ago