An open API service indexing awesome lists of open source software.

https://github.com/lasalefamine/runnable-exports

Run your exports as command line arguments
https://github.com/lasalefamine/runnable-exports

exports module runnable runnable-exports

Last synced: about 2 months ago
JSON representation

Run your exports as command line arguments

Awesome Lists containing this project

README

          

# runnable-exports
[![Build Status](https://travis-ci.com/emurphy-9/runnable-exports.svg?branch=master)](https://travis-ci.com/emurphy-9/runnable-exports) [![Coverage Status](https://coveralls.io/repos/github/emurphy-9/runnable-exports/badge.svg?branch=master)](https://coveralls.io/github/emurphy-9/runnable-exports?branch=master)
> Run your `exports` as command line arguments

If you want to easily create a command line tool from a file and a bunch of exported functions.

## Install

$ yarn add runnable-exports

## Usage
```javascript
// your-file.js
const runnableExports = require('runnable-exports')
module.exports.awesome = ...args => {
console.log('Awesome', args)
}
runnableExports()
```
And simply

$ node your-file.js awesome and nice arguments

Output

Awesome ['and', 'nice', 'arguments']

### ***ObjectArgs***
```javascript
// your-file.js
const runnableExports = require('runnable-exports')
module.exports.awesome = args => {
console.log('Awesome', args)
}
runnableExports()
```

Under the hood [yargs](https://www.npmjs.com/package/yargs) is used, so you can pass easily also `objectArgs` like so

$ node your-file.js awesome --nice

Output

Awesome {nice: true}

> NOTE: the module accepts both types of args, the object args will be the first arg passed to the called function, all other args will follow from this

## Test

> XO and AVA

$ yarn test

## Related

This is a fork of [make-runnable](https://github.com/super-cache-money/make-runnable)

## License

MIT © LasaleFamine