Skip to content

Instantly share code, notes, and snippets.

@daveaspinall
Created August 14, 2014 08:48
Show Gist options
  • Save daveaspinall/474bd9ed83a4c5037f43 to your computer and use it in GitHub Desktop.
Save daveaspinall/474bd9ed83a4c5037f43 to your computer and use it in GitHub Desktop.
Gulpfile
var gulp = require('gulp');
var sass = require('gulp-ruby-sass');
var uncss = require('gulp-uncss');
var livereload = require('gulp-livereload');
var notify = require('gulp-notify');
var zip = require('gulp-zip');
var lr = require('tiny-lr');
var server = lr();
var premailer = require('gulp-premailer');
var gutil = require('gulp-util');
gulp.task('styles', function () {
return gulp.src('./sass/*.scss')
.pipe(sass({
sourcemap: ((typeof gutil.env.fast == 'undefined')) ? true : false,
style: 'compressed'
}))
.on('error', function (err) { console.log(err.message); })
.pipe(gulp.dest('./css/'))
.pipe(livereload(server))
.pipe(notify({message: 'SASS compiled'}));
});
gulp.task('premailer', ['styles'], function () {
gulp.src('./index.html')
.pipe(premailer())
.pipe(gulp.dest('./dist/'))
.pipe(notify({message: 'Premailer built'}));
});
gulp.task('package', ['premailer'], function () {
gulp.src('./css/**/*')
.pipe(gulp.dest('./dist/css'));
gulp.src('./img/**/*')
.pipe(gulp.dest('./dist/img'));
gulp.src('./index.html')
.pipe(gulp.dest('./dist/'));
return gulp.src('./dist/**/*')
.pipe(zip('mailer.zip'))
.pipe(gulp.dest('./build/'))
.pipe(notify({message: 'Package built'}));
});
gulp.task('watch', ['styles'], function() {
server.listen(35729, function (err) {
if (err) {
throw err;
}
});
gulp.watch('./sass/**/*.scss', ['styles']);
gulp.watch('./index.html', function(file){
gulp.src(file.path)
.pipe(livereload(server));
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment