Build project
Watch for changes
Clean destination folder
Type: Object
Required
Type: String
Required
Source directory
Type: String
Required
Destination directory
Type: Object
Required
List of types
Type: String
Required
Filter souce relative config.src
Type: String
Default: ''
Destination folder relative config.dest
Type: Array
Default: empty pipe
List of pipes
Type: Array of String
Required
First is name of npm module, Following are arguments
See config.types[type].pipe
Uses when minify
is true
Type: String
Array of String
Default: config.dest
Argument for del
Type: String
Default: gulp-simple-
Prefix for gulp tasks
Type: Boolean
Default: false
Enable minify. See config.types[type].minify
Type: Function
Default: () => {}
watch.on('change')
callback
Type: Boolean
Default: true
Enable incremental watch
Type: Object
Object after parse
Type: Array
Pipes, generated in build
Add to your project gulpfile.js
:
const gulp = require('gulp');
const gulpSimple = require('gulp-simple')
const runSequence = require('run-sequence');
const minimist = require('minimist');
gulpSimple.minify = minimist(process.argv.slice(2)).release;
gulpSimple.init({
src: 'source',
dest: 'build',
types: [
css: {
src: 'css/**/*.css',
dest: 'css',
pipe: [
[ "gulp-autoprefixer", "last 2 versions" ]
,
minify: [
[ "gulp-cssnano" ]
]
},
less: {
src: '**/*.less',
dest: 'css',
pipe: [
[ "gulp-less" ],
[ "gulp-autoprefixer", "last 2 versions" ]
],
minify: [
[ "gulp-cssnano" ]
]
},
js: {
src: '**/*.js',
dest: 'js',
minify: [
[ "gulp-uglify" ]
]
}
],
clean: [ 'build/**', '!build', '!build/uploads' ]
});
gulp.task('default', callback => runSequence(
'gulp-simple-clean',
'gulp-simple-build',
callback
));
gulp.task('watch', callback => runSequence(
'gulp-simple-clean',
'gulp-simple-build',
'gulp-simple-watch',
callback
));