base-target
v0.1.1
Published
Plugin that adds support for defining declarative `target` configurations that directly map to functional tasks.
Downloads
10
Maintainers
Readme
base-target
Plugin that adds support for defining declarative target
configurations that directly map to functional tasks.
You might also be interested in expand-target.
Install
Install with npm:
$ npm install --save base-target
Usage
Can be used with gulp or any supporting base application.
var target = require('base-target');
var each = require('base-files-each');
var Base = require('base-app');
var app = new Base();
app.use(target());
app.use(each());
// create a "target" configuration
var site = app.target('site', {
options: {
data: {
site: { title: 'My Blog' }
}
},
src: 'templates/*.hbs',
dest: 'site',
});
// build the target
app.task('default', function(cb) {
app.each(site, cb);
});
See the expand-target library for additional information and API documentation.
API
.isTarget
Returns true if the given value is a valid Target
.
Params
val
{any}returns
{Boolean}
Example
app.isTarget('foo');
//=> false
var Target = require('expand-target');
var target = new Target();
app.isTarget(target);
//=> true
.target
Get target name
from app.targets
, or set target name
with the given config
.
Params
name
{String|Object|Function}config
{Object|Fucntion}returns
{Object}: Returns the app instance when setting a target, or the target instance when getting a target.
Example
app.target('foo', {
options: {},
files: {
src: ['*'],
dest: 'foo'
}
});
// or
var target = app.target('foo');
.setTarget
Add target name
to app.targets
.
Params
name
{String}config
{Object|Function}
Example
app.addTarget('foo', {
options: {},
files: {
src: ['*'],
dest: 'foo'
}
});
.getTarget
Get target name
from app.targets
, or return a normalized instance of Target
if an object or function is passed.
Params
name
{String}options
{Object}
Example
var target = app.getTarget('foo');
// or create an instance of `Target` using the given object
var target = app.getTarget({
options: {},
files: {
src: ['*'],
dest: 'foo'
}
});
app.Target
Get or set the Target
constructor. Exposed as a getter/setter to allow it to be customized before or after instantiation.
Example
// set
app.Target = require('expand-target'); // or something custom
// get
var target = new app.Target();
Compatibility
This plugin can be used with base, or any of the following base applications:
- assemble: Get the rocks out of your socks! Assemble makes you fast at creating web projects… more | homepage
- generate: Command line tool and developer framework for scaffolding out new GitHub projects. Generate offers the… more | homepage
- update: Be scalable! Update is a new, open source developer framework and CLI for automating updates… more | homepage
- verb: Documentation generator for GitHub projects. Verb is extremely powerful, easy to use, and is used… more | homepage
About
Related projects
- base-boilerplate: Plugin that adds support for generating project files from a declarative boilerplate configuration. | homepage
- base-scaffold: Base plugin that adds support for generating files from a declarative scaffold configuration. | homepage
Contributing
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
Building docs
(This document was generated by verb-generate-readme (a verb generator), please don't edit the readme directly. Any changes to the readme must be made in .verb.md.)
To generate the readme and API documentation with verb:
$ npm install -g verb verb-generate-readme && verb
Running tests
Install dev dependencies:
$ npm install -d && npm test
Author
Jon Schlinkert
License
Copyright © 2016, Jon Schlinkert. Released under the MIT license.
This file was generated by verb, v0.9.0, on July 18, 2016.