Skip to content

Instantly share code, notes, and snippets.

@tommymarshall
Created January 11, 2014 22:26
Show Gist options
  • Save tommymarshall/8377820 to your computer and use it in GitHub Desktop.
Save tommymarshall/8377820 to your computer and use it in GitHub Desktop.
// My gulpfile.js
var browserify = require('gulp-browserify');
var compass = require('gulp-compass');
var concat = require('gulp-concat');
var exec = require('child_process').exec;
var gulp = require('gulp');
var lr = require('tiny-lr');
var refresh = require('gulp-livereload');
var server = lr();
var sys = require('sys');
gulp.task('compass', function() {
gulp.src('assets/stylesheets/*.sass')
.pipe(compass({
config_file: 'assets/config.rb'
}))
.pipe(gulp.dest('assets/compiled/css'));
});
gulp.task('markup', function() {
gulp.src(['assets/templates/**'])
.pipe(refresh(server));
});
gulp.task('scripts', function() {
//single entry point to browserify
gulp.src(['assets/javascripts/**'])
.pipe(browserify({
insertGlobals : true,
debug : true
}))
.pipe(concat('application.min.js'))
.pipe(gulp.dest('assets/compiled/javascripts'));
});
gulp.task('refresh', function() {
gulp.src('assets/compiled/javascripts/*.js')
.pipe(refresh(server));
});
gulp.task('lr-server', function() {
server.listen(35729, function(err) {
if(err) return console.log(err);
});
});
gulp.task('default', function() {
gulp.run('lr-server', 'scripts', 'compass');
gulp.watch('*.html', function() {
gulp.run('markup');
});
gulp.watch('assets/javascripts/**', function() {
gulp.run('scripts');
});
gulp.watch('assets/compiled/**', function(){
gulp.run('refresh');
});
gulp.watch('assets/stylesheets/**', function() {
gulp.run('compass');
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment