diff --git a/Gruntfile.js b/Gruntfile.js index c59454f567..171c529b71 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -9,6 +9,7 @@ // jshint unused: false var overrides = require('./core/server/overrides'), config = require('./core/server/config'), + utils = require('./core/server/utils'), _ = require('lodash'), chalk = require('chalk'), fs = require('fs-extra'), @@ -219,7 +220,20 @@ var overrides = require('./core/server/overrides'), client: { cmd: 'grunt subgrunt:watch', bg: true, - stdout: true, + stdout: function (chunk) { + // hide certain output to prevent confusion + var filter = [ + /> ghost-admin/, + /^Livereload/, + /^Serving on/ + ].some(function (regexp) { + return regexp.test(chunk); + }); + + if (!filter) { + grunt.log.write(chunk); + } + }, stderr: true } }, @@ -339,7 +353,9 @@ var overrides = require('./core/server/overrides'), }, watch: { - 'core/client': 'shell:ember:watch' + projects: { + 'core/client': ['shell:ember:watch', '--live-reload-base-url="' + utils.url.getSubdir() + '/ghost/"'] + } } } }; diff --git a/core/server/admin/app.js b/core/server/admin/app.js index 76e0473a98..35075162b4 100644 --- a/core/server/admin/app.js +++ b/core/server/admin/app.js @@ -36,6 +36,13 @@ module.exports = function setupAdminApp() { // Service Worker for offline support adminApp.get(/^\/(sw.js|sw-registration.js)$/, require('./serviceworker')); + // Ember CLI's live-reload script + if (config.get('env') === 'development') { + adminApp.get('/ember-cli-live-reload.js', function (req, res) { + res.redirect('http://localhost:4200' + utils.url.getSubdir() + '/ghost/ember-cli-live-reload.js'); + }); + } + // Render error page in case of maintenance adminApp.use(maintenance);