SvelteKit 3 arrives with cleaner configs and standard imports

SvelteKit 3 arrives with cleaner configs and standard imports

SvelteKit 3 is out, trading framework-specific quirks for web standards and lighter boilerplate.

The Svelte team released SvelteKit 3.0, the latest major version of its official web app framework. The release focuses on polish and cleanup: project configuration moves to vite.config.ts, and the $lib alias shifts to #lib using standard Node subpath imports. The update also brings improved error handling, easier environment variables, and less service worker boilerplate.

Why it matters: It strips out long-standing framework friction without changing your mental model. You get better type safety and cleaner integration with standard tooling while keeping the framework familiar.

Know this: You can upgrade existing codebases by running npx sv migrate sveltekit-3 --tasks all --confirm, which migrates what it can and flags remaining tasks on a TODO list. For new projects, use npx sv create my-new-app. Note that remote functions are not ready yet—they remain experimental and require Async Svelte.

More polish for your app now, and birthday cake at Svelte Summit in Ljubljana this November.