Skip to content

Instantly share code, notes, and snippets.

@thecooldaniel
Created July 20, 2017 02:51
Show Gist options
  • Save thecooldaniel/23e196f27710ffea254b142e3897d40a to your computer and use it in GitHub Desktop.
Save thecooldaniel/23e196f27710ffea254b142e3897d40a to your computer and use it in GitHub Desktop.
var gulp = require('gulp');
var sass = require('gulp-sass');
var sourceMaps = require('gulp-sourcemaps');
var autoprefixer = require('gulp-autoprefixer');
var browserSync = require('browser-sync').create();
var concat = require('gulp-concat');
var foundation = 'node_modules/foundation-sites/';
autoprefixer({
browsers: ['last 2 versions', 'ie >= 9', 'and_chr >= 2.3']
});
gulp.task('build:sass', function(){
gulp.src('src/app/scss/style.scss')
.pipe(sourceMaps.init())
.pipe(sass({includePaths: [foundation+'scss', 'src/app/scss']}))
.pipe(sourceMaps.write('.'))
.pipe(gulp.dest('src/app/css'))
.pipe(browserSync.reload({
stream: true
}));
});
gulp.task('build:prefix', function(){
gulp.src('src/app/css/style.css')
.pipe(autoprefixer({
browsers: ['last 2 versions', 'ie >= 9', 'and_chr >= 2.3'],
cascade: false
}))
.pipe(gulp.dest('src/app/css'));
});
gulp.task('build:js', function(){
gulp.src([
foundation+'dist/js/plugins/foundation.core.min.js',
foundation+'dist/js/plugins/foundation.util.mediaQuery.min.js',
foundation+'dist/js/plugins/foundation.abide.min.js',
'src/app/js/scripts.js'
])
.pipe(concat('all.js'))
.pipe(gulp.dest('src/app/js'))
.pipe(browserSync.reload({
stream: true
}));
});
gulp.task('build', ['build:sass', 'build:prefix', 'build:js']);
gulp.task('watch', ['browserSync', 'build'], function(){
gulp.watch('src/app/scss/*.scss', ['build:sass','build:prefix']);
gulp.watch('src/app/*.html', browserSync.reload);
gulp.watch('src/app/js/scripts.js', ['build:js']);
// .pipe(browserSync.reload({
// stream: true
// }));
});
gulp.task('browserSync', function(){
browserSync.init({
server: {
baseDir: 'src/app'
}
})
})
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment