Skip to content

Instantly share code, notes, and snippets.

@minwe
Created August 23, 2014 05:57
Show Gist options
  • Save minwe/9c8965759d87c65b0b7f to your computer and use it in GitHub Desktop.
Save minwe/9c8965759d87c65b0b7f to your computer and use it in GitHub Desktop.
gulpfile.js
var gulp = require('gulp'),
runSequence = require('run-sequence'),
watch = require('gulp-watch'),
concat = require('gulp-concat'),
imagemin = require('gulp-imagemin'),
less = require('gulp-less'),
prefixer = require('gulp-autoprefixer'),
clean = require('gulp-clean'),
template = require('gulp-template');
var paths = {
src: {
images: 'src/images/**/*',
less: 'src/less',
templates: 'src/templates/**/*',
i18n: 'src/i18n/**/*',
fonts: 'src/fonts/**/*'
},
dist: 'resources'
};
var timestamp = new Date().getTime();
gulp.task('clean', function() {
return gulp.src(paths.dist)
.pipe(clean());
});
gulp.task('less', function () {
return gulp.src(paths.src.less+"/*.less")
.pipe(less({
paths: [ paths.src.less ]
}))
.pipe(prefixer('last 2 versions', 'ie 9'))
.pipe(template({timestamp: timestamp}))
.pipe(concat("main.css"))
.pipe(gulp.dest(paths.dist+'/styles'));
});
gulp.task('images', function() {
return gulp.src(paths.src.images)
.pipe(imagemin({optimizationLevel: 5}))
.pipe(gulp.dest(paths.dist+'/images'));
});
gulp.task('templates', function() {
return gulp.src(paths.src.templates)
.pipe(template({timestamp: timestamp}))
.pipe(gulp.dest(paths.dist+'/templates'));
});
gulp.task('fonts', function() {
return gulp.src(paths.src.fonts)
.pipe(gulp.dest(paths.dist+'/fonts'));
})
gulp.task('i18n', function() {
return gulp.src(paths.src.i18n)
.pipe(gulp.dest(paths.dist+'/i18n'));
})
gulp.task('default', function(callback) {
runSequence('clean',
['less', 'templates', 'images', 'fonts', 'i18n'],
callback);
});
gulp.task('watch', function () {
gulp.watch(paths.src.less+'/**/*.less', ['default']);
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment