SvelteKit 3 reaches release candidate with Vite-based config and #lib imports
The RC marks the start of wider testing, while the migration path is already laid out for existing apps.
SvelteKit 3 has entered release candidate testing, and the update is notable for moving configuration into Vite and replacing the long-standing $lib alias with Node-style #lib imports. For teams adopting it, the migration path is already documented through the new CLI command, and the framework now requires Svelte 5 plus Vite 8 with Rolldown for builds. The release also tightens error handling, changes shallow routing to use goto with shallow: true, and graduates explicit environment variables from experimental status with optional Standard Schema validation. A stable release is expected if the RC does not uncover blocking issues, while remote functions remain experimental behind a flag.
Why it matters
For teams on SvelteKit, the shape of the upgrade is now clearer: config moves into vite.config.ts, $lib gives way to #lib, and the framework now depends on Svelte 5 and Vite 8. That means the next step is not just a version bump but a coordinated migration with a documented command and a different import and build setup. Remote functions are still behind a flag, so the change is mostly about getting apps onto the new core before stable release.
Keep or strike?
Does this story matter, or is it hype? Mark it before you see what everyone else did.
Sources
- InfoQ