slush-react
Version:
A slush generator to scaffold React apps with Fluxxor
56 lines (52 loc) • 1.57 kB
JavaScript
/*
* slush-react
* https://github.com/mmai/slush-react
*
* Copyright (c) 2014, Henri Bourcereau
* Licensed under the MIT license.
*/
;
var gulp = require('gulp'),
install = require('gulp-install'),
conflict = require('gulp-conflict'),
template = require('gulp-template'),
rename = require('gulp-rename'),
_ = require('underscore.string'),
inquirer = require('inquirer');
gulp.task('default', function (done) {
var prompts = [{
type: 'input',
name: 'appName',
message: 'What is the name of your application?',
default: gulp.args.join(' ')
}, {
type: 'input',
name: 'appDescription',
message: 'What is the description for your application?'
}, {
type: 'confirm',
name: 'moveon',
message: 'Continue?'
}];
//Ask
inquirer.prompt(prompts,
function (answers) {
if (!answers.moveon) {
return done();
}
answers.appNameSlug = _.slugify(answers.appName);
gulp.src(__dirname + '/templates/**')
.pipe(template(answers))
.pipe(rename(function (file) {
if (file.basename[0] === '_') {
file.basename = '.' + file.basename.slice(1);
}
}))
.pipe(conflict('./'))
.pipe(gulp.dest('./'))
.pipe(install())
.on('end', function () {
done();
});
});
});