We update our ember.js app and backend API constantly. Sometimes twice a day. So we need an approach to silently update client-side app, so user won’t notice that.
My current idea is:
- notify client-side about new version available (long-poll/web-socket)
- client-side use iframe/web-worker to download new version as background activity
- when any router transition happens stop it, copy URL and reinit page with that URL (
window.location = URL). Since scripts already cached at previous step transition should be smooth
At a first glance properly designed ember-app should work that way, but I’m not sure. How do you think guys?