Skip to content

Instantly share code, notes, and snippets.

@timvandijck
Created August 25, 2015 11:17
Show Gist options
  • Save timvandijck/a53c7840a7ea8788f910 to your computer and use it in GitHub Desktop.
Save timvandijck/a53c7840a7ea8788f910 to your computer and use it in GitHub Desktop.
Gulp Example file.
var gulp = require('gulp'),
sass = require('gulp-sass')
notify = require("gulp-notify")
concatCss = require("gulp-concat-css")
concat = require('gulp-concat')
bower = require('gulp-bower')
compass = require('gulp-for-compass')
runSequence = require('run-sequence');
gulp.task('compass', function () {
gulp.src('./app/assets/public/sass/*.scss')
.pipe(compass({
sassDir: './app/assets/public/sass',
cssDir: './public/assets/public/css',
force: true
}).on('error', swallowError));
});
gulp.task('combine-css', function() {
gulp.src([
'./vendor/bower_components/owl-carousel/owl-carousel/owl.carousel.css',
'./vendor/bower_components/owl-carousel/owl-carousel/owl.theme.css',
'./vendor/bower_components/chartist/dist/chartist.min.css'
])
.pipe(concat('vendor.css'))
.pipe(gulp.dest('./public/assets/public/css'));
});
gulp.task('compile-css', function() {
runSequence('compass', 'combine-css');
});
gulp.task('scripts', function() {
return gulp.src([
'./vendor/bower_components/modernizr/modernizr.js',
'./vendor/bower_components/jquery/dist/jquery.min.js',
'./vendor/bower_components/jquery-validation/dist/jquery.validate.js',
'./vendor/bower_components/jquery-steps/build/jquery.steps.min.js',
'./vendor/bower_components/owl-carousel/owl-carousel/owl.carousel.js',
'./vendor/bower_components/chartist/dist/chartist.min.js',
'./vendor/bower_components/masonry/dist/masonry.pkgd.js',
'./vendor/bower_components/masonry-ordered/js/jquery.masonry.ordered.js',
'./app/assets/public/scripts/svg.js',
'./app/assets/public/scripts/share.js',
'./app/assets/public/scripts/menu.js',
'./app/assets/public/scripts/wishesForm.js',
'./app/assets/public/scripts/carousel.js',
'./app/assets/public/scripts/factsFigures.js',
'./app/assets/public/scripts/webshop.js',
'./app/assets/public/scripts/forms.js'
])
.pipe(concat('application.js'))
.pipe(gulp.dest('./public/assets/public/scripts'));
});
gulp.task('copy-files', function() {
gulp.src('./vendor/bower_components/fontawesome/fonts/*').pipe(gulp.dest('./public/assets/public/fonts'));
gulp.src('./vendor/bower_components/owl-carousel/owl-carousel/owl.carousel.css').pipe(gulp.dest('./public/assets/public/css/'));
gulp.src('./vendor/bower_components/ckeditor/*').pipe(gulp.dest('./public/assets/ckeditor'));
gulp.src('./app/assets/public/images/**').pipe(gulp.dest('./public/assets/public/images'));
});
gulp.task('build', ['compile-css', 'scripts', 'copy-files']);
gulp.task('watch', function() {
gulp.watch('app/assets/public/sass/*.scss', ['compile-css']);
gulp.watch('app/assets/public/sass/**/*.scss', ['compile-css']);
gulp.watch('app/assets/public/scripts/*', ['scripts']);
gulp.watch('app/assets/public/images/**', ['copy-files']);
});
gulp.task('default', ['build', 'watch'], function() {});
// Prevent Gulp from stopping when an error ocurs.
function swallowError (error) {
console.log(error.toString());
this.emit('end');
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment