If you've been living under a rock this week, SvelteKit 3 dropped and the benchmarks are spicy. Spoiler: it's faster than Astro on cold builds. Do not @ me — I ran the numbers on an M4.
The Setup
SvelteKit 3 is runes-first now. No more $: reactive blocks, no more export let props. Everything is $state, $derived, $props. The compiler output is leaner and the dev server boots in under 200ms on my M4.
{`bun create svelte@latest my-app
cd my-app
bun install
bun run dev`}
The Money Pattern
The new +page.svelte route convention is unchanged, but the ergonomics inside are night-and-day. Behold a route file with rune state and a typed loader — this is the entire mental model.
{`
{data.title}
`}
The Catch
The ecosystem is still smaller than Next.js. Half the shadcn-equivalents are community-maintained and the Supabase auth helpers lag behind the Next.js SSR package. If you live in headless Pipedrive-meets-Supabase land, you'll write more glue than you'd expect.
The Verdict
For greenfield content sites and dashboards, SvelteKit 3 is a legitimately better DX than Next 16. The runes finally feel like the React hooks API should have felt in 2019. I'm porting a side project to it this weekend just to feel something. Try it.