Implement Offline PWA Support #1704
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What is PWA?
Progressive Web Applications (PWAs) are the fancy technology sponsored by Mozilla and Google several years ago that encouraged web based native style applications. This allows websites to be turned into fully offline capable applications with notification support.
Why?
Franky, it's super cool and enables a couple of benefits for us:
Important Usage Information
As of currently, consider any development on this early alpha and extremely unstable. Expect that this application will drain massive amounts of your device's battery life. Expect this application to download resources infinitely and destroying your data cap. This is confusing stuff.
TODO
This is a biggy, the offline feature doesn't fully work because its now required to have a fetch caching strategy in-placeThis currently is working but needs to replacedonelocalStorage
withindexDB
sql style database. Safari only supports >50MB via indexedDB. This is going to drastically extend the database logic.We also have a couple offloaded scripts that we could store locally, I think it's mathjax and jquery.