Skip to content

Commit c608fdf

Browse files
author
Emmanouil Konstantinidis
committed
Gulp & Watchify
1 parent b675f2e commit c608fdf

File tree

2 files changed

+23
-16
lines changed

2 files changed

+23
-16
lines changed

gulpfile.js

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,18 @@
1-
var browserify = require('browserify');
1+
var assign = require('lodash.assign');
22
var babelify = require('babelify');
3+
var browserify = require('browserify');
4+
var buffer = require('vinyl-buffer');
35
var gulp = require('gulp');
46
var gutil = require('gulp-util');
57
var sass = require('gulp-sass');
68
var source = require('vinyl-source-stream');
9+
var uglify = require('gulp-uglify');
710
var watchify = require('watchify');
811

912
var options = {
1013
browserifyOpts: {
11-
entries: ['./src/js/app.js'],
12-
debug: true,
13-
14-
cache: {},
15-
packageCache: {},
16-
fullPaths: true
14+
entries: './src/js/app.js',
15+
debug: true
1716
},
1817
jsDest: 'dist/js'
1918
};
@@ -25,24 +24,29 @@ gulp.task('build:js', function () {
2524
.transform(babelify)
2625
.bundle()
2726
.pipe(source('app.js'))
27+
.pipe(buffer())
28+
.pipe(uglify())
2829
.pipe(gulp.dest(options.jsDest));
2930
});
3031

3132
gulp.task('watch:js', function () {
32-
var watcher = bundler
33-
.plugin(watchify, {ignoreWatch: ['**/node_modules/**']})
34-
.transform(babelify);
33+
var watcherOpts = assign({}, watchify.args, options.browserifyOpts);
34+
var watcher = watchify(browserify(watcherOpts)).transform(babelify);
3535

3636
function bundle() {
37-
return watcher.bundle()
37+
return watcher
38+
.bundle()
3839
// log errors if they happen
3940
.on('error', gutil.log.bind(gutil, 'Browserify Error'))
4041
.pipe(source('app.js'))
42+
.pipe(buffer())
4143
.pipe(gulp.dest(options.jsDest));
42-
};
44+
}
4345

4446
watcher.on('update', bundle); // on any dep update, runs the bundler
4547
watcher.on('log', gutil.log); // output build logs to terminal
48+
49+
return bundle();
4650
});
4751

4852
gulp.task('build:scss', function () {

package.json

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -89,17 +89,20 @@
8989
"eslint": "=2.9.0",
9090
"eslint-plugin-react": "=5.1.1",
9191
"gulp": "=3.9.1",
92-
"gulp-sass": "^2.3.1",
93-
"gulp-util": "^3.0.7",
92+
"gulp-sass": "=2.3.1",
93+
"gulp-uglify": "=1.5.3",
94+
"gulp-util": "=3.0.7",
9495
"istanbul": "=1.0.0-alpha.2",
9596
"jsdom": "=9.0.0",
97+
"lodash.assign": "=4.0.9",
9698
"mocha": "=2.4.5",
9799
"nock": "=8.0.0",
98100
"redux-mock-store": "=1.0.2",
99101
"sass-lint": "=1.7.0",
100102
"sinon": "=1.17.4",
101103
"sinon-chai": "=2.8.0",
102-
"vinyl-source-stream": "^1.1.0",
103-
"watchify": "^3.7.0"
104+
"vinyl-buffer": "=1.0.0",
105+
"vinyl-source-stream": "=1.1.0",
106+
"watchify": "=3.7.0"
104107
}
105108
}

0 commit comments

Comments
 (0)