What’s new in Svelte: September 2026
New SvelteMap methods in Svelte 5.57, more SvelteKit 3 iteration and sv 1.0 previews SvelteKit 3 migrations
This month, Svelte 5.57 shipped with new SvelteMap methods and a few quality-of-life additions while SvelteKit 3 got closer to the finish line with its Release Candidate.
The sv CLI also got a new ai-tools add-on that replaces the old mcp one, and sv@next now ships a task-based sveltekit-3 migration for existing apps.
Let’s dive a bit deeper!
What’s new in Svelte
SvelteMapnow hasgetOrInsertandgetOrInsertComputedmethods for the common “read or initialize” pattern (5.57.0, Docs, #18728)createContextnow returns a thirdhasfunction so you can check whether a context has been set without triggering thegeterror (5.57.0, Docs, #18472)<select>now supports thedefaultValueattribute, so the select reverts to that value on form reset (5.57.0, #18591)svelte/servernow exports theRenderOutput,SyncRenderOutput,CspandSha256Sourcetypes for typing server render output and CSP sources (5.57.0, #18648)
For the full list of patches and bug fixes, see the Svelte CHANGELOG.
What’s new in SvelteKit 3’s RC
Prereleases have kept rolling on the @next line this month, adding a few more features and refining the surface:
- Enhanced cross-page form actions now navigate to the action page on success and failure, matching native form behavior (3.0.0-next.17, breaking, #16684)
- Adapter Vite plugins can now be split into
preandpostgroups so adapters can run transforms at the right point in the pipeline (3.0.0-next.18, breaking, #16711) - Files with
+prefixes are now ignored during routing if their names containtest,specorstories, so colocated tests don’t accidentally become routes (3.0.0-next.19, #16715) - Development-server response logging is now nicer to read and routes through Vite’s logger so it respects
logLevelandcustomLogger(3.0.0-next.20/25, #16744, #16858) defineParamsand the associated types have moved to@sveltejs/kit/params(3.0.0-next.19, breaking, #16716)+server.jsfiles can now export aQUERYHTTP method handler (3.0.0-next.24, #16782)- The
preloadfilter for fonts now receives the project-relative sourcefilenameso you can filter by directory or component (3.0.0-next.24, #16443) - Adapters can call the new
applyReroutehelper for split serverless function deployments (3.0.0-next.25, #16665)
For the meantime, all of the SvelteKit 3 docs live on next.svelte.dev, and the full changelog is on the version-3 branch. The stable 2.x line kept moving too with three patch releases (2.70.1, 2.70.2, 2.70.3) - see the SvelteKit CHANGELOGs for the details.
What’s new in the Svelte CLI and Language Tools
- The
mcpadd-on has been replaced with a broaderai-toolsadd-on that can set up the Svelte plugin (Claude Code, opencode) or pick individual tools (MCP server, skills, sub-agents) per client (sv@0.17.0, Docs, #1050) @sveltejs/sv-utilspicks upisKit3,resolveLibPrefixandlibSubpathImportshelpers so add-ons can transparently handle SvelteKit 2 and 3 (sv-utils@0.3.3, #1199)sv migratehas been reworked to prepare for the SvelteKit 3 migration - it now lists tasks, ships asveltekit-3task that bumps dependencies and rewrites$libto#lib, adds an$app/statetask, delegates the older migrations tosvelte-migrate@1, and creates a list of changes a developer or agent should resolve if they cannot be migrated automatically (sv@1.0.0-next.0, Docs, #1138, #1241, #1249)- Newly created projects use
#lib(Node subpath imports) instead of$lib, matching SvelteKit 3 (sv@1.0.0-next.0, #1185) - Community add-ons no longer require a scoped package name (sv@1.0.0-next.4, #1216)
- The
experimentaladd-on is now scoped to enabling experimental features, and theversionsoption value was renamed tokit-3(sv@1.0.0-next.0, breaking, #1241, #1185) - Vite plugin gets a
dynamicCompileOptionsargument for the current Vite environment, useful when you want to compile differently for the client, server or SSR environment (vite-plugin-svelte@7.3.0, #1386) svelte2tsxandsvelte-checklearn about SvelteKit 3’s flattened config structure so the type generation and diagnostics keep working through the migration (svelte-check@4.7.6/svelte2tsx@0.7.61/svelte-language-server@0.18.4, #3104, #3106)
Want to dive deeper? Check out the Svelte CLI, language-tools and ai-tools releases.
Community Showcase
Apps & Sites built with Svelte
- EdenText is a fully local open-source word processor for
.odtand.docxdocuments that runs entirely in the browser or as a PWA - Kraa.io is a minimal-interface text editor and publishing platform where you can instantly make your writing public
- Note by Note is a browser extension for musicians that transposes, slows down and removes vocals from YouTube videos in real time (GitHub)
- Roomy is an AT Protocol-based Discord alternative for group chats in the Atmosphere
- Taxing Wages is a salary tax calculator for 32 OECD countries built on the OECD’s taxing wages data
Learning Resources
This Week in Svelte
To Read
- Tested SvelteKit on Cloudflare. Oooooh boy... is a write-up on porting a full app to SvelteKit + Cloudflare Workers + KV + D1 + Hyperdrive + Better Auth and coming away impressed
Libraries, Tools & Components
UI Components and Design Systems
- Svelte DataTables Components is a free collection of 16 data-table components and 11 pre-built table blocks on top of TanStack Table v9, installable via the shadcn-svelte CLI
- Svelte Fancy Components is a port of Fancy Components with 14 unique text and media effects like Scramble In, Letter Swap and Pixel Trail
- SVAR Svelte Calendar and Kanban add event calendar and Kanban board components to the SVAR Svelte library, both with drag and drop, filtering and iCal import/export
- MUKADE UI is a terminal-style UI component library
- Material Svelte is a Material Design 3-inspired UI library
- Beautiful UI Svelte is a port of a set of React AI-app components
Animations and Icons
- morphicons is an icon library where any stroke icon morphs into any other with a single prop change
- Amicro SV is a port of Amicro, a curated library of micro-interaction and transition components
- loadersz is a framework-agnostic loader library with 70 canvas-based motion states, exposed as a custom element with typed entry points for React, Vue and Svelte
Frameworks and Dev Tools
- ogygia brings SSR islands to SvelteKit, from Svelte contributor Puru VJ
- TanStack Table v9 shipped stable with its first Svelte-native adapter that connects directly to runes, plus Svelte-specific docs and a shadcn-svelte example
- Wait0 is a dynamic cache with SWR warmup and sitemap discovery for SvelteKit that serves pages instantly and revalidates in the background
That’s it for this month! Let us know if we missed anything on Reddit or Discord.
Until next time 👋🏼!