Comments (3)
I love this! 🐈
I really like how similar in approach this could be for Android / iOS wrappers as well. Will start spec as part of the "Hello World" SOW.
from webmaker-android.
Another advantage is this architecture makes it possible for us to do A/B testing more easily -- e.g. different starter templates, and see which perform better.
from webmaker-android.
After talking with some folks about this I started to shy away from the idea of loading and storing all assets from a remote bundle in IndexedDB. Couple issues that I ran into with the initial approach:
- IndexedDB does not work in webworkers (yet) (https://bugzilla.mozilla.org/show_bug.cgi?id=701634)
- Streaming blobs to IndexedDB via XHR doesn't work as you would hope, so we would need to build a buffering / queuing system which would consume memory overhead.
- Monkey patching streaming blobs from IndexedDB on each asset load feels like mad science (aka FUN!) but also like mad science (aka BUGGY!).
My proposal is to leverage the existing appcache
infrastructure and simply use IndexedDB to store / track the state of updates. Updates themselves (which I'm calling "bundles") are just versioned hosted apps that the loader application downloads in the background via an iframe. Once the appcache API returns as ready, the loader application will mark it for release upon next process start. An inter-frame communication abstraction would handle exposure of privileged APIs.
Tracking here:
https://github.com/mozillafordevelopment/beaker
from webmaker-android.
Related Issues (20)
- Update minimum required NPM version
- [MIGRATED] react loader-mixin needs to be required explicitly for npm 3+ HOT 1
- missing npm start script HOT 3
- remove config folder
- [MIGRATED] Update documentation to include the use of webmaker-core HOT 3
- [MIGRATED] Able to set title longer than maximum HOT 8
- [MIGRATED] QA/Testing scripts HOT 3
- [MIGRATED] Share links should open Android app immediately when possible HOT 8
- [MIGRATED] Add `npm run build` to gradle HOT 6
- Alias `npm start` to `npm run build` HOT 5
- [MIGRATED] Feedback on Webmaker from Bangladesh -- July 2015 HOT 2
- [MIGRATED] SSL Certificate Error HOT 1
- [MIGRATED] Update placeholder text on sign-in to include email HOT 3
- [MIGRATED] Display project title in header HOT 2
- [MIGRATED] Sharing on whatsapp - the project does not come as a link HOT 3
- [MIGRATED] Standardize the naming convention for issue tags HOT 1
- [MIGRATED] Google Play Store translations are wrong HOT 2
- [MIGRATED] feedback from a UX expert in Africa HOT 3
- PLEASE READ: DO NOT FILE ISSUES HERE HOT 4
- Nexus 6P cannot take pictures HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from webmaker-android.