I've been using sveltekit and svelte for over a year now. I'm also waiting for it to be matured enough to beat NextJs in terms of community. But I ...
For further actions, you may consider blocking this person and/or reporting abuse
Hi, wondering if it's possible to simply cache everything rather than just what the user sees. It seems if they install with this sw and then open the app the first time offline, they don't have anything cached. Also, if they navigate to another page or load a font, it fails if offline. My whole app is < 1mb and I'd love to just cache it all on install. Thanks in advance.
Love this article by the way
I've modified Navin's service worker to do just that:
Simply set the
routes
array to a list of all routes you want to cache and add URLs to fonts, external CSS, etc. that you want to cache to thecustomAssets
array.Note that I use a cache-only strategy, so upon updating your app, you'll have to refresh the app twice to see the new content. You can fix this by either employing an instant force refresh (see codyanhorn.tech/blog/pwa-reload-pa...) or notify the user that an update is available (see medium.com/progressive-web-apps/pw...)
Awesome! Thanks : )
No prob! :)
Hi, are we allowed to use the service worker snippet? Under which license does your project stand?
You can use it to your liking
hey good article. i used this setup for a sveltekit app and it works great but i was having issue with subsequent updates. it would never pick up the new deploy because the index.html was cached i believe? i am also using the static prerender sveltekit adapter so possibly that is related. i ended up having to modify app.html for it to detect a change and then it would pick up the new service worker. have you run into this issue?
I use the vercel adapter when deploying. I haven't used ssg with sveltekit yet. But I do have an issue whenever I upgrade the packages. Sveltekit throws module not defined errors if i don't set the version to "next" instead of something like "^1.0.0". Have you joined their discord server?
I was having the same issue, but I modified his script slightly and it worked again. See my comment above :)
I tried to follow your tutorial but I got an error:
RollupError: "timestamp" is not exported by ".svelte-kit/generated/service-worker.js", imported by "src/service-worker.ts".
Do you know anything about this? I'm at a loss as how to fix this.
If you still need an answer, change
timestamp
toversion
. I followed the Svelte docs for service workers. Be sure to changetimestamp
anywhere it appears in your code as well.Navin, used your code but the serviceworker is not being registered. It's giving me a 404 error. I added the serviceworker to src folder, manifest in static as in your code.
Is your code still working after their latest update? In the sveltekit doc, they mentioned that vite register the serviceworker. Is there any configuration for vite registering the service worker?
also a great tool to make manifest.json
app-manifest.firebaseapp.com/
I would think sveltekit would do all this automatically.
I like your firebase articles
Is there a way to route the user to the page they were most recently on when they reopen the app?