Package Exports
- base-fs-tree
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (base-fs-tree) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
base-fs-tree

Base plugin for creating file trees using archy. Requires the base-fs plugin, but can also be used as a gulp plugin.
Install
Install with npm:
$ npm install --save base-fs-tree
Usage
var tree = require('base-fs-tree');
gulp plugin example
The following examples will work with base-fs, gulp, verb, assemble, generate, update or any other application that supports vinyl streams.
var tree = require('base-fs-tree');
var gulp = require('gulp');
gulp.task('default', function(cb) {
return gulp.src('some-files/**/*.*')
.pipe(tree.create())
.pipe(gulp.dest('trees'))
});
Get files before they're modified
If you want to create a tree from the original unmodified source file paths, use .capture()
first thing in the stream:
var tree = require('base-fs-tree');
var gulp = require('gulp');
gulp.task('default', function(cb) {
return gulp.src('some-files/**/*.*')
.pipe(tree.capture()) //<= capture files
// gulp plugin pipeline
.pipe(otherPlugins())
.pipe(gulp.dest('dist'))
.pipe(tree.create()) //<= create tree
.pipe(gulp.dest('trees'))
});
Command line tips
You can conditionally generate trees using a command line flag, like --tree
.
var tree = require('base-fs-tree');
var gulp = require('gulp');
var argv = require('yargs-parser')(process.argv.slice(2), {
default: {tree: false}
});
gulp.task('default', function(cb) {
return gulp.src('some-files/**/*.*')
.pipe(tree.create(argv))
.pipe(gulp.dest('trees'))
});
base plugin example
This can also be used as a non-pipeline plugin with base applications. It works by adding .preWrite
middleware and a taskEnd
listener, so that anytime taskEnd
is emitted, a tree will be automatically generates.
This can be useful when you want to automatically generate trees for all tasks in a generate generator, for example.
var tree = require('base-fs-tree');
var vfs = require('base-fs');
var Base = require('base');
var base = new Base();
base.use(vfs());
base.use(tree());
app.task('default', function(cb) {
app.src('some-files/**/*.*')
.pipe(app.dest('trees'))
.on('end', function() {
// emit `taskEnd` with the name of the task
app.emit('taskEnd', 'default');
cb();
});
});
About
Related projects
- base-fs-conflicts: Detect potential file system conflicts and if necessary prompt the user before overwriting files. | homepage
- base-fs: base-methods plugin that adds vinyl-fs methods to your 'base' application for working with the file… more | homepage
- base-task: base plugin that provides a very thin wrapper around https://github.com/doowb/composer for adding task methods to… more | 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-generate-readme, v0.1.30, on August 09, 2016.