Skip to content

Instantly share code, notes, and snippets.

@VivienLN
Created December 3, 2015 09:14
Show Gist options
  • Save VivienLN/b57aaa90247b271a62ab to your computer and use it in GitHub Desktop.
Save VivienLN/b57aaa90247b271a62ab to your computer and use it in GitHub Desktop.
My gulpfile.js
// Config
var config = {
css: {
src: './src/css/*.scss',
bin: './bin/css/'
},
js: {
src: './src/js/*.js',
bin: './bin/js/'
},
img: {
src: './src/img/*.{png,jpg,jpeg,gif,svg}',
bin: './bin/img/'
}
};
// ----------
var gulp = require('gulp');
var concat = require('gulp-concat');
var sass = require('gulp-sass');
var autoPrefixer = require('gulp-autoprefixer');
var minifyCss = require('gulp-minify-css');
var jshint = require('gulp-jshint');
var uglify = require('gulp-uglify');
var imagemin = require('gulp-imagemin');
/* --------------------------------------
SASS
-------------------------------------- */
gulp.task('css', function()
{
return gulp.src(config.css.src)
.pipe(sass())
.pipe(concat('styles.min.css'))
.pipe(autoPrefixer())
.pipe(minifyCss())
.pipe(gulp.dest(config.css.bin));
});
/* --------------------------------------
JS
-------------------------------------- */
gulp.task('js', function()
{
return gulp.src(config.js.src)
.pipe(jshint())
.pipe(jshint.reporter('default'))
.pipe(concat('scripts.min.js'))
.pipe(uglify())
.pipe(gulp.dest(config.js.bin));
});
/* --------------------------------------
JS
-------------------------------------- */
gulp.task('img', function () {
return gulp.src(config.img.src)
.pipe(imagemin())
.pipe(gulp.dest(config.img.bin));
});
/* --------------------------------------
Watch
-------------------------------------- */
gulp.task('watch', function()
{
gulp.watch(config.css.src, ['css']);
gulp.watch(config.js.src, ['js']);
gulp.watch(config.img.src, ['img']);
});
gulp.task('default', ['watch']);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment