Closed MarArMar closed 7 months ago
Resumability is not something you simply 'add', nor does it come without significant trade-offs which we do not want.
Qwik's marketing depends on convincing you that hydration is the thing standing between you and a usable app. It's not. Most of the time, what's blocking the main thread during startup is all the third party crap that gets added to many websites.
There is room for faster hydration. Svelte 5 makes some progress in this direction, with more planned. But in the meantime, I ask you to actually measure your app's performance (both lab data and RUM) — you will likely find that hydration is not in fact a problem. And as was explained in the linked discussion, if it is then the solution is to use progressive enhancement, which you should be doing anyway for anything critical.
Ok thank you for the explanation
Great to know Svelte 5 makes hydration faster
Describe the problem
Sveltekit, like most JS frameworks, blocks initial user actions during hydration
https://github.com/sveltejs/kit/discussions/11836
This causes real user frustration and issues as mentioned in the examples
Resumability
A framework, Quik, apparently solved that problem with a concept called Resumability
https://qwik.dev/docs/concepts/resumable/
Partial Hydration
There is another solution called Partial Hydration that might be also great and is apparenlty implemented by Astro :
https://docs.astro.build/en/concepts/islands/
Basically selectively hydrate components
It might be a good alternative especially if we can select maybe the components we want to be hydrated fast
Describe the proposed solution
Add Resumability mechanism to Sveltekit
Alternatives considered
Importance
would make my life easier