-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgulpfile.js
More file actions
58 lines (52 loc) · 1.72 KB
/
gulpfile.js
File metadata and controls
58 lines (52 loc) · 1.72 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
var gulp = require('gulp'),
sass = require('gulp-sass'),
watch = require('gulp-watch'),
jshint = require('gulp-jshint'),
rename = require('gulp-rename'),
concat = require('gulp-concat'),
notify = require('gulp-notify'),
embedlr = require('gulp-embedlr'),
livereload = require('gulp-livereload'),
lr = require('tiny-lr'),
lrserver = lr(),
fs = require('fs'),
requirejs = require('requirejs'),
http = require('http'),
errorhandler = require('errorhandler'),
morgan = require('morgan'),
express = require('express');
//////////////////////////////
//// Settings
//////////////////////////////
var livereloadport = 35729,
serverport = 8000;
//////////////////////////////
//// Default
//////////////////////////////
gulp.task('default', ['watch', 'styles', 'serve']);
gulp.task('serve', function () {
var app = express();
app.use(express.static(__dirname));
app.use(morgan()); // logger
app.use(errorhandler()); // error handler
app.listen(serverport, function () {
console.log('Started server on: ' + serverport);
livereload.listen(livereloadport, function () {
console.log('Started livereload server on: ' + livereloadport);
});
});
});
gulp.task('watch', function () {
gulp.watch(['app/scss/**/*'], ['styles']);
gulp.watch(['app/js/**/*']).on('change', livereload.changed);
gulp.watch(['app/partials/**/*']).on('change', livereload.changed);
gulp.watch(['index.html']).on('change', livereload.changed); // adding watch to the main index.html
});
gulp.task('styles', function () {
return gulp.src(['app/scss/**/*'])
.pipe(sass())
.pipe(concat('app.css'))
.pipe(gulp.dest('app/css/'))
.pipe(livereload())
.pipe(notify({ message: 'Styles task complete' }));
});