In just a few hours I'm giving a talk on SvelteKit at THAT Conference WI. Here's the talk title and abstract:
Building Efficient, Resilient Web Apps With SvelteKit
Building web apps with all the modern best practices can be complicated. Not only do you want your app to be efficient and load data quickly and intelligently, you also want it to be resilient and stay upright > regardless of your users’ device or network.
Enter SvelteKit, a modern web framework built on top of the best-in-class Svelte JS component framework. Not only does it help you move fast with a minimal-boilerplate and fun developer experience, it also gives you the tools to provide an efficient, resilient user experience.
This talk will move beyond the basics and show how to use SvelteKit’s powerful toolkit to handle more advanced scenarios:
- preloading and streaming data for lightning-fast navigations
- sharing data between multiple routes by loading data in the layout
- avoiding “data waterfalls” that make your users wait for no good reason
- progressively enhanced forms
- customizing SvelteKit’s enhanced forms to implement optimistic UI
- using advanced Svelte store patterns to efficiently update data instead of over-fetching
We’ll use a music collection demo app to showcase these ideas, so that they’re tied to concrete examples instead of being purely theoretical.
The talk will not be recorded, but I've linked my slides and other resources below. I might transcribe a written version of this talk at a later date.
My slides were created using Slidev. You can find the source on my GitHub and the live version deployed to Vercel.
As part of the talk, I briefly showed a music library demo app (a.k.a. "Sveltunes"). The code for that app is also on GitHub, though it's not currently deployed anywhere because auth is mocked out and the "DB" is just an in-memory object.
If you want to learn more about Svelte and SvelteKit, I recommend the following resources:
Want to find out when I post a new article? Follow me on Mastodon
or subscribe to my RSS feed
. I also have an email newsletter
that I'll send out when I post something new, along with anything else I find interesting.