Created
July 6, 2017 10:47
-
-
Save lefuturiste/f4dfcc832210428638791f3ee2bf4f03 to your computer and use it in GitHub Desktop.
For the people who use gulp. (sass compilation, js compilation)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Gulp file for lefuturiste developement | |
* Usage: | |
* Compile sass => gulp sass (with bourdon) | |
* Compile js => gulp concat-scripts | |
* Minify js => gulp minify-scripts | |
*/ | |
/** | |
* CONFIG VAR: | |
*/ | |
/** | |
* Source directory of sass | |
*/ | |
var sass_src_dir = "src/sass" | |
/** | |
* Output directory of sass | |
*/ | |
var sass_dest_dir = "public/dist/css" | |
/** | |
* Output style of sass | |
* Type: String Default: nested Values: nested, expanded, compact, compressed | |
* https://github.com/sass/node-sass#outputstyle | |
*/ | |
var sass_output_style = "compressed" | |
/** | |
* Source directory of js scripts | |
*/ | |
var scripts_src_dir = "src/js/*.js" | |
/** | |
* Output directory of scripts | |
*/ | |
var scripts_dest_dir = "public/dist/js" | |
/** | |
* Require dependencies | |
*/ | |
var gulp = require('gulp'); | |
var sass = require('gulp-sass'); | |
var bulkSass = require('gulp-sass-glob-import'); | |
var concat = require('gulp-concat'); | |
var rename = require('gulp-rename'); | |
var minify = require('gulp-minify'); | |
/** | |
* gulp sass | |
*/ | |
gulp.task('sass', function () { | |
return gulp.src(sass_src_dir + '/**.scss') | |
.pipe(bulkSass()) | |
.pipe(sass({ | |
includePaths: require('node-bourbon').includePaths, | |
outputStyle: sass_output_style | |
}).on('error', sass.logError)) | |
.pipe(gulp.dest(sass_dest_dir)); | |
}); | |
/** | |
* gulp sass:watch | |
*/ | |
gulp.task('sass:watch', function () { | |
gulp.watch('src/sass/**/*.scss', ['sass']); | |
}); | |
/** | |
* gulp concat-scripts | |
*/ | |
gulp.task('concat-scripts', function () { | |
return gulp.src([ | |
scripts_src_dir | |
]) | |
.pipe(concat('app.js')) | |
.pipe(gulp.dest(scripts_dest_dir)) | |
.pipe(gulp.dest(scripts_dest_dir)); | |
}); | |
/** | |
* gulp minify-scripts | |
*/ | |
gulp.task('minify-scripts', function () { | |
gulp.src(scripts_dest_dir + '/app.js') | |
.pipe(minify({ | |
ext: { | |
src: '.js', | |
min: '.min.js' | |
} | |
})) | |
.pipe(gulp.dest(scripts_dest_dir)) | |
}); | |
/** | |
* [deprecated] gulp scripts | |
*/ | |
gulp.task('scripts', ['concat-scripts', 'minify-scripts']); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment