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

https://github.com/doowb/base-list


https://github.com/doowb/base-list

Last synced: 12 months ago
JSON representation

Awesome Lists containing this project

README

          

# base-list [![NPM version](https://img.shields.io/npm/v/base-list.svg)](https://www.npmjs.com/package/base-list) [![Build Status](https://img.shields.io/travis/doowb/base-list.svg)](https://travis-ci.org/doowb/base-list)

> base-runner plugin that prompts the user to choose from a list of registered applications and their available tasks.

## Install
Install with [npm](https://www.npmjs.com/):

```sh
$ npm i base-list --save
```

## Usage

```js
var list = require('base-list');
app.use(list());
```

## API

### [.baseListPlugin](index.js#L26)

Build grouped lists of tasks.

**Params**

* `prop` **{String}**: e.g. `generators`
* `options` **{String}**: Additional options to control output styling
* `options.appColor` **{String}**: Color to use when displaying the app names.
* `options.taskColor` **{String}**: Color to use when displaying task names.
* `options.depColor` **{String}**: Color to use when displaying task dependencies.
* `options.appMsg` **{String}**: Message to display for the app name. This is a template that may contain `:name` where the app name should be. (defaults to ":name")
* `options.taskMsg` **{String}**: Message to display for the task name. This is a template that may contain `:name` and `:deps` where the task name and the task depdencies should be. (defaults to ":name :deps")

### [displayTasks](index.js#L57)
Display the application hierarchy of apps and tasks in a formatted tree.

**Example**

```js
app.displayTasks()
```

### [chooseTasks](index.js#L78)
Present a multiple choice list of apps and tasks to run. Return results from a user making choices.

**Params**

* `cb` **{Function}**: Callback function that will return any errors or the results of the user choices.

**Example**

```js
app.chooseTasks(function(err, results) {
if (err) return console.error(err);
console.log(results);
});
```

## Related projects
* [base-methods](https://www.npmjs.com/package/base-methods): base-methods is the foundation for creating modular, unit testable and highly pluggable node.js applications, starting… [more](https://www.npmjs.com/package/base-methods) | [homepage](https://github.com/jonschlinkert/base-methods)
* [base-runner](https://www.npmjs.com/package/base-runner): Orchestrate multiple instances of base-methods at once. | [homepage](https://github.com/jonschlinkert/base-runner)
* [base-tree](https://www.npmjs.com/package/base-tree): Add a tree method to generate a hierarchical tree structure representing nested applications and child… [more](https://www.npmjs.com/package/base-tree) | [homepage](https://github.com/doowb/base-tree)
* [use](https://www.npmjs.com/package/use): Easily add plugin support to your node.js application. | [homepage](https://github.com/jonschlinkert/use)

## Running tests
Install dev dependencies:

```sh
$ npm i -d && npm test
```

## Contributing
Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/doowb/base-list/issues/new).

## Author
**Brian Woodward**

+ [github/doowb](https://github.com/doowb)
+ [twitter/doowb](http://twitter.com/doowb)

## License
Copyright © 2016 [Brian Woodward](https://github.com/doowb)
Released under the MIT license.

***

_This file was generated by [verb](https://github.com/verbose/verb) on January 14, 2016._