Skip to content

Instantly share code, notes, and snippets.

@papucho
Created May 8, 2014 21:48
Show Gist options
  • Save papucho/578ea3ff2845de533839 to your computer and use it in GitHub Desktop.
Save papucho/578ea3ff2845de533839 to your computer and use it in GitHub Desktop.
Gulpfile for awesome assets pipeline
var gulp = require('gulp');
var sass = require('gulp-ruby-sass');
var prefix = require('gulp-autoprefixer');
var concat = require('gulp-concat');
var uglify = require('gulp-uglify');
var jade = require('gulp-jade');
// FILES PATHS
var jsSrcDir = ['js/app.js','js/**/*.js','js/*/*/*.js'];
var sassSrcDir = ['css/**/*.sass', 'css/*/*.sass'];
var htmlSrcDir = ['html/**/*.jade'];
gulp.task('html', function(){
return gulp.src(htmlSrcDir)
.pipe(jade())
.pipe(gulp.dest('public'))
});
gulp.task('sass', function(){
return gulp.src('css/app.sass')
.pipe(sass())
.pipe(prefix("last 2 version", "> 1%", "ie 8", "ie 7"))
.pipe(gulp.dest('public/css'))
});
gulp.task('scripts', function() {
return gulp.src(jsSrcDir)
.pipe(concat('app.js'))
.pipe(uglify())
.pipe(gulp.dest('public/js'));
});
gulp.task('watch', function(){
gulp.watch(sassSrcDir, ['sass']);
gulp.watch(jsSrcDir, ['scripts']);
gulp.watch(htmlSrcDir, ['html']);
});
gulp.task('copy', function() {
return gulp.src('resources/**')
.pipe(gulp.dest('public/'));
});
gulp.task('default', ['copy','sass','scripts','html']);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment