Skip to content

Instantly share code, notes, and snippets.

@graymic
Last active August 29, 2015 14:07
Show Gist options
  • Save graymic/ca60660829efa287aaee to your computer and use it in GitHub Desktop.
Save graymic/ca60660829efa287aaee to your computer and use it in GitHub Desktop.
Example Gulpfile - Foundation5, SASS, Laravel5
var gulp = require('gulp'),
sass = require('gulp-sass'),
minify = require('gulp-minify-css'),
concat = require('gulp-concat'),
uglify = require('gulp-uglify'),
rename = require('gulp-rename'),
notify = require('gulp-notify'),
growl = require('gulp-notify-growl'),
phpunit = require('gulp-phpunit'),
prefix = require('gulp-autoprefixer'),
livereload = require('gulp-livereload'),
lr = require('tiny-lr')
server = lr();
var paths = {
'dev': {
'scss': './resources/assets/scss/',
'js': './resources/assets/js/',
'vendor': './resources/assets/vendor/'
},
'production': {
'css': './public/assets/css/',
'js': './public/assets/js/'
}
};
gulp.task('css', function() {
return gulp.src(paths.dev.scss+'*.scss')
.pipe(sass({
includePaths: [paths.dev.scss, paths.dev.vendor+'/foundation/scss']
}))
.pipe(prefix(
"last 1 version", "> 1%", "ie 8", "ie 7"
))
.pipe(gulp.dest(paths.production.css))
.pipe(minify({keepSpecialComments:0}))
.pipe(rename({suffix: '.min'}))
.pipe(gulp.dest(paths.production.css))
.pipe(livereload(server));
});
gulp.task('js', function(){
return gulp.src([
paths.dev.vendor+'foundation/js/vendor/jquery.js',
paths.dev.vendor+'foundation/js/vendor/fastclick.js',
paths.dev.vendor+'foundation/js/foundation.min.js',
paths.dev.js+'*.js'
])
.pipe(gulp.dest(paths.production.js))
.pipe(concat('app.min.js'))
.pipe(uglify())
.pipe(gulp.dest(paths.production.js));
});
gulp.task('watch', function(event) {
gulp.watch(paths.dev.scss+'*.scss', ['sass']);
gulp.watch(paths.dev.js+'*.js', ['js']);
});
gulp.task('default', ['css', 'js']);
{
"name": "Example Laravel Project",
"version": "0.0.0",
"description": "",
"main": "Gulpfile.js",
"keywords": ["Gulp", "Laravel"],
"author": "Graymic",
"devDependencies": {
"gulp": "^3.8.8",
"gulp-less": "^1.3.6",
"gulp-sass": "^1.0.0",
"gulp-minify-css": "^0.3.10",
"gulp-concat": "^2.4.1",
"gulp-uglify": "^1.0.1",
"gulp-rename": "^1.2.0",
"gulp-phpunit": "^0.6.3",
"gulp-notify-growl": "^1.0.2",
"gulp-notify": "^1.8.0",
"gulp-watch": "~0.5.3",
"gulp-autoprefixer": "0.0.6",
"gulp-minify-css": "~0.3.0",
"gulp-imagemin": "~0.1.5",
"tiny-lr": "0.0.5",
"gulp-livereload": "~1.2.0",
"gulp-plumber": "~0.5.6",
"tiny-lr": "0.0.5"
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment