gulpfile.babel.js (35 lines of code) (raw):
'use strict';
const path = require('path');
const gulp = require('gulp');
const sass = require('gulp-sass');
const browserSync = require('browser-sync');
// -------------------------------------------
// Configuration
// -------------------------------------------
const paths = {
src: path.join(__dirname, 'demo/src'),
dist: path.join(__dirname, 'demo/dist'),
};
const patterns = {
sass: path.join(paths.src, '**/*.scss')
};
gulp.task('sass', function () {
return gulp.src('./demo/src/**/*.scss')
.pipe(sass({
outputStyle: 'compressed',
sourceMap: true
}).on('error', sass.logError))
.pipe(gulp.dest('./demo/dist'));
});
gulp.task('browser-sync', () => {
browserSync.init({
server: './demo',
files: [
'demo/dist/**/*.*',
'demo/index.html'
],
browser: 'google chrome',
port: 3003
});
});
gulp.task('watch', ['sass'], () => {
gulp.watch(patterns.sass, ['sass']);
});
gulp.task('server', ['watch', 'browser-sync']);