-
Notifications
You must be signed in to change notification settings - Fork 273
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement PWA extension #1685
Comments
Currently @ItayZiv and myself are investigating this. Lots of research necessary. We can use this issue to write down development notes. |
Reference regarding caching for offline: https://www.simicart.com/blog/pwa-offline/ Possibly need to display splash screen while the PWA caches the site. |
The biggest problem would be the cache size, the entire website currently is a bit over 100MB. The other problem would be having the script to register the service worker on each page (might need a small sphinx extension) |
Yeah. I definitely think we need a sphinx extension. Ideally this can scale past frc-docs and we can have the extension automatically generate the manifest.json and inject the service work into the pages (with config overrides). We can do something quick and dirty for now inside the frc-docs repo for development, and then scale it into a sphinx extension later. |
On size, if we switch from [source or responsive] to just webps, remove all the downloads, and minify the html (which I thought we already did), the whole package should come down to ~45mb which is just under the PWA limit of 50-52 MB, so pushing it. To decrease service worker storage even more, all images can be stored in Indexeddb and be fetched on page load. |
@TheTripleV the 50mb limit only applies on iOS < 13. After that, it's half of available storage. We are just moving forward without the concern of storage for now. If it's easier, we just don't support iOS < 13. |
It would be totally awesome and cool to create an extension that turns Sphinx websites into PWA for offline use on mobile devices.
Basically, we should automatically add the necessary resources to our
manifest.json
. Then generate the relative metadata in the meta data of the various pages on the site.The text was updated successfully, but these errors were encountered: