You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
"The fetch event lets us intercept every network request made by the PWA in the service worker's scope, for both same-origin and cross-origin requests" https://web.dev/learn/pwa/serving/#the-fetch-event
if client lives in a service worker is it possible to stream audio/video uninterrupted due to worker lifetime? No, when needing to open some sort of long standing channel between two peers the client backend would need to give the frontend the details so that it could make that connection on it's own.
Test various limited connectivity use cases to ensure PWA template caches app appropriately
For the most part the app "just worked" offline using the default vite-plugin-pwa service worker. The exception to that was the dynamic config request to kube which failed when offline. Catching that failure allowed the app to work offline.
Other future considerations:
Can we cache the config request? pwa plugin has an option additionalManifestEntries which seems to map to the workbox precache, but emits a warning when I include the well known config path without a revision https://developer.chrome.com/docs/workbox/modules/workbox-precaching/#explanation-of-the-precache-list I think that means that without it, it will not be predictably updated. Passing in a string removes the warning but the docs say "It's strongly recommended that you use one of Workbox's build tools to generate this precache manifest. Never hardcode revision info into a "hand written" manifest, as precached URLs will not be kept up to date unless the revision info reflects the URL's contents!" These tools seem more intended for caching assets within the application, since the config request lives independent from the application I'm not sure we want to use them to cache the config request. Perhaps if we used our own service worker we could intercept and cache the results of that request based on the current version of the app, however what if kube changes config between versions? Config needs a way to become invalidated
Do we want the service worker to cache other media assets (e.g., images stored in ipfs)?
Understand better and document mechanisms for PWA cache reset when necessary
Using default update mechanisms in the vite-plugin-pwa, once new assets have been deployed, the first reload downloads and installs the new assets and the second reload uses them within the app
Cross-domain service workers
These generally seem to work fine, however stricter browser settings seem to block them (e.g., Brave shields) so that may need to be taken into account when building apps
Add new functionality to app to scan QR codes from mobile devices to join a HALO
Using the app, users can:
transferable streams (https://stackoverflow.com/questions/54766128/can-a-pwa-run-a-webrtc-connection-in-the-background)websocket sterams (https://chromestatus.com/feature/5189728691290112)additionalManifestEntries
which seems to map to the workbox precache, but emits a warning when I include the well known config path without a revision https://developer.chrome.com/docs/workbox/modules/workbox-precaching/#explanation-of-the-precache-list I think that means that without it, it will not be predictably updated. Passing in a string removes the warning but the docs say "It's strongly recommended that you use one of Workbox's build tools to generate this precache manifest. Never hardcode revision info into a "hand written" manifest, as precached URLs will not be kept up to date unless the revision info reflects the URL's contents!" These tools seem more intended for caching assets within the application, since the config request lives independent from the application I'm not sure we want to use them to cache the config request. Perhaps if we used our own service worker we could intercept and cache the results of that request based on the current version of the app, however what if kube changes config between versions? Config needs a way to become invalidatedhalo.dxos.org
Bugs
The text was updated successfully, but these errors were encountered: