diff --git a/assets/manifest.json b/assets/manifest.json index 5e7f254..e28cc48 100644 --- a/assets/manifest.json +++ b/assets/manifest.json @@ -24,5 +24,8 @@ "modernizr.js": { "bower": ["modernizr"] } + }, + "config": { + "devUrl": "example.dev" } } diff --git a/gulpfile.js b/gulpfile.js index b701c98..06df06b 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -1,11 +1,12 @@ // ## Globals /*global $:true*/ -var $ = require('gulp-load-plugins')(); -var _ = require('lodash'); -var argv = require('yargs').argv; -var gulp = require('gulp'); -var lazypipe = require('lazypipe'); -var merge = require('merge-stream'); +var $ = require('gulp-load-plugins')(); +var _ = require('lodash'); +var argv = require('yargs').argv; +var browserSync = require('browser-sync'); +var gulp = require('gulp'); +var lazypipe = require('lazypipe'); +var merge = require('merge-stream'); // See https://github.com/austinpray/asset-builder var manifest = require('asset-builder')('./assets/manifest.json'); @@ -15,6 +16,9 @@ var manifest = require('asset-builder')('./assets/manifest.json'); // - `path.dist` - Path to the build directory. default: `dist/` var path = manifest.paths; +// `config` - Store arbitrary configuration values here. +var config = manifest.config || {}; + // `globs` - These ultimately end up in their respective `gulp.src`. // - `globs.js` - array of asset-builder js Depenency objects. Example: // ``` @@ -119,7 +123,7 @@ var jsTasks = function(filename) { var writeToManifest = function(directory) { return lazypipe() .pipe(gulp.dest, path.dist + directory) - .pipe($.livereload) + .pipe(browserSync.reload, {stream:true}) .pipe($.rev.manifest, revManifest, { base: path.dist, merge: true @@ -195,12 +199,14 @@ gulp.task('clean', require('del').bind(null, [path.dist])); // ### Watch // `gulp watch` - recompile assets whenever they change gulp.task('watch', function() { - $.livereload.listen(); + browserSync({ + proxy: config.devUrl + }); gulp.watch([path.source + 'styles/**/*'], ['styles']); gulp.watch([path.source + 'scripts/**/*'], ['jshint', 'scripts']); gulp.watch(['bower.json'], ['wiredep']); - gulp.watch('**/*.php').on('change', function(file) { - $.livereload.changed(file.path); + gulp.watch('**/*.php', function() { + browserSync.reload(); }); }); diff --git a/lib/assets.php b/lib/assets.php index 60c50ef..d6fedb0 100644 --- a/lib/assets.php +++ b/lib/assets.php @@ -54,15 +54,6 @@ function assets() { add_filter('script_loader_src', __NAMESPACE__ . '\\jquery_local_fallback', 10, 2); } - /** - * Livereload client - * https://github.com/livereload/livereload-js - */ - if (WP_ENV === 'development') { - wp_register_script('livereload', 'http://localhost:35729/livereload.js?snipver=1', null, false, true); - wp_enqueue_script('livereload'); - } - if (is_single() && comments_open() && get_option('thread_comments')) { wp_enqueue_script('comment-reply'); } diff --git a/package.json b/package.json index 6716046..1d72c38 100644 --- a/package.json +++ b/package.json @@ -27,6 +27,7 @@ }, "devDependencies": { "asset-builder": "~0.3.0", + "browser-sync": "^1.9.1", "del": "^1.1.1", "gulp": "^3.8.10", "gulp-changed": "^1.1.0", @@ -36,7 +37,6 @@ "gulp-imagemin": "^2.0.0", "gulp-jshint": "^1.8.4", "gulp-less": "^2.0.1", - "gulp-livereload": "^3.4.0", "gulp-load-plugins": "^0.8.0", "gulp-pleeease": "^1.1.0", "gulp-plumber": "^0.6.3",