<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/what-s-new-in-svelte-august-2026-e9ga4akhq" -->

---
title: What’s new in Svelte: August 2026 | daily.dev
description: The August 2026 Svelte update centers on the first SvelteKit 3 preview releases (next.5 through next.13), introducing new $app/manifest and $app/service-worker...
canonical: https://daily.dev/posts/what-s-new-in-svelte-august-2026-e9ga4akhq
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: What’s new in Svelte: August 2026 | daily.dev
og:description: The August 2026 Svelte update centers on the first SvelteKit 3 preview releases (next.5 through next.13), introducing new $app/manifest and $app/service-worker...
og:url: https://daily.dev/posts/what-s-new-in-svelte-august-2026-e9ga4akhq
og:image: https://api.daily.dev/og/posts/E9gA4AkhQ.png
og:image:alt: What’s new in Svelte: August 2026
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# What’s new in Svelte: August 2026

**[Svelte Blog](https://daily.dev/sources/svelte)** · 8 min read · 74 upvotes · 6 comments

## Summary

The August 2026 Svelte update centers on the first SvelteKit 3 preview releases (next.5 through next.13), introducing new $app/manifest and $app/service-worker modules, shallow routing baked into goto, refreshAll replacing invalidateAll, production sourcemap support, and tracing moved out of experimental. The stable 2.x line adds a submitted property on remote forms and relocates defineEnvVars to a dedicated subpath. Language tools gain zero-config typed props for +error.svelte pages, and the svelte-language-server drops its lodash dependency for faster startup. The community showcase features new apps, UI component libraries, a Rust-based Svelte toolchain (rsvelte), and several SvelteKit-based frameworks.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://svelte.dev/blog/whats-new-in-svelte-august-2026>

## Questions this post answers

### What's new in the SvelteKit 3 preview release?

SvelteKit 3, released as @next preview versions 3.0.0-next.5 through next.13, introduces shallow routing built into goto via a new state option (replacing pushState and replaceState), a consolidated reset option replacing noScroll and keepFocus, new $app/manifest and $app/service-worker modules, production sourcemaps, and stable (non-experimental) tracing.

_daily.dev helps developers preview breaking SvelteKit 3 changes before committing to a major upgrade._

### What replaced invalidateAll in SvelteKit 3?

refreshAll replaces invalidateAll in SvelteKit 3.0.0-next.8, with invalidateAll now deprecated. This is part of a broader set of naming and API changes in the SvelteKit 3 preview, alongside error(status, message, {...}) replacing error(status, {...}) to make error messages mandatory, both introduced as breaking changes ahead of the stable 3.0 release.

_track SvelteKit's evolving API surface on daily.dev before migrating a production app._

### Where did SvelteKit's defineEnvVars move to?

defineEnvVars moved from @sveltejs/kit to the dedicated @sveltejs/kit/env subpath in SvelteKit 2.70.0, giving environment variable helpers their own module location separate from the main kit package.

_developers migrating SvelteKit config imports can follow these path changes via daily.dev._

## Community discussion

Top comments from developers on daily.dev.

**@allinonetools** · 1 upvotes

> Nice update. Removing little bits of friction like typed props and faster language tools makes day-to-day development a lot smoother.

**@jenueldev** · 1 upvotes

> The new deployment-detection hooks may be the most consequential production change: checking data, remote, and form-action responses plus tab focus closes the stale-client gap without every app inventing its own polling. For teams testing the v3 preview, it would be useful to pair that with migration tests around the goto state/reset changes, since shallow-routing and focus behavior can regress in ways a type checker won’t catch.

**@taiwofrancis** · 0 upvotes

> Svelte keeps getting better. 🚀

**@agustinbarrientos** · 0 upvotes

> The new `goto` reset option would be my first accessibility smoke test before a SvelteKit 3 upgrade

**@gaburayondev** · 0 upvotes

> `refreshAll` replacing `invalidateAll` is a genuinely useful distinction — resetting `page.state` on every invalidate always felt like an accident of implementation rather than intentional behavior, especially once shallow routing became common. Curious how the `$app/manifest` module changes the mental model for route-based code splitting once SvelteKit 3 stabilizes. Production sourcemap support graduating out of experimental is overdue too — debugging minified SSR errors has been a pain point for a while.

## Similar posts on daily.dev

- [What’s new in Svelte: July 2026](https://daily.dev/posts/what-s-new-in-svelte-july-2026-yjmmqqvqz) · Svelte Blog · 50 upvotes · 4 comments
- [What’s new in Svelte: March 2026](https://daily.dev/posts/what-s-new-in-svelte-march-2026-vhr0vc2mr) · Svelte Blog · 45 upvotes · 0 comments
- [What’s new in Svelte: September 2026](https://daily.dev/posts/what-s-new-in-svelte-september-2026-tgfowohmb) · Svelte Blog · 42 upvotes · 4 comments

---

Tags: [#webdev](https://daily.dev/tags/webdev), [#javascript](https://daily.dev/tags/javascript), [#svelte](https://daily.dev/tags/svelte), [#sveltekit](https://daily.dev/tags/sveltekit)

[View this post on daily.dev](https://daily.dev/posts/what-s-new-in-svelte-august-2026-e9ga4akhq)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"What’s new in Svelte: August 2026","url":"https://daily.dev/posts/what-s-new-in-svelte-august-2026-e9ga4akhq","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/what-s-new-in-svelte-august-2026-e9ga4akhq"},"datePublished":"2026-07-31T20:22:07.616Z","dateModified":"2026-09-14T07:16:54.242Z","description":"The August 2026 Svelte update centers on the first SvelteKit 3 preview releases (next.5 through next.13), introducing new $app/manifest and $app/service-worker...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/274223837859083e2a690d6d563061d5?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/274223837859083e2a690d6d563061d5?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Svelte Blog","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Svelte Blog","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/28300f110fce4397bb4b78124a45ae29","url":"https://daily.dev/sources/svelte"},"commentCount":6,"discussionUrl":"https://daily.dev/posts/what-s-new-in-svelte-august-2026-e9ga4akhq","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":74},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":6}],"keywords":"webdev,javascript,svelte,sveltekit","timeRequired":"PT8M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Svelte Blog","item":"https://daily.dev/sources/svelte"},{"@type":"ListItem","position":3,"name":"What’s new in Svelte: August 2026"}]}
{"@context":"https://schema.org","@type":"WebPage","@id":"https://daily.dev/posts/what-s-new-in-svelte-august-2026-e9ga4akhq","comment":[{"@type":"Comment","text":"Nice update. Removing little bits of friction like typed props and faster language tools makes day-to-day development a lot smoother.","datePublished":"2026-08-01T03:07:22.515Z","url":"https://daily.dev/posts/E9gA4AkhQ#c-Z75iQK8FQ","author":{"@type":"Person","name":"AllInOneTools","url":"https://daily.dev/allinonetools","image":"https://media.daily.dev/image/upload/s--4ZT8QlF0--/f_auto/v1769790028/avatars/avatar_igzBsWloJeaegzm9bQltZ?_a=BAMAMiiu0"},"interactionStatistic":{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":1}},{"@type":"Comment","text":"The new deployment-detection hooks may be the most consequential production change: checking data, remote, and form-action responses plus tab focus closes the stale-client gap without every app inventing its own polling. For teams testing the v3 preview, it would be useful to pair that with migration tests around the goto state/reset changes, since shallow-routing and focus behavior can regress in ways a type checker won’t catch.","datePublished":"2026-08-01T07:08:02.059Z","url":"https://daily.dev/posts/E9gA4AkhQ#c-OYxD3jzeo","author":{"@type":"Person","name":"Jenuel Oras Ganawed","url":"https://daily.dev/jenueldev","image":"https://media.daily.dev/image/upload/s--BadmiNyj--/f_auto/v1787625077/avatars/avatar_JJtZr4Sjm?_a=BAMAMicg0"},"interactionStatistic":{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":1}},{"@type":"Comment","text":"Svelte keeps getting better. 🚀","datePublished":"2026-08-02T13:35:03.646Z","url":"https://daily.dev/posts/E9gA4AkhQ#c-oTRX7hXbh","author":{"@type":"Person","name":"Taiwo Francis Oguntade","url":"https://daily.dev/taiwofrancis","image":"https://media.daily.dev/image/upload/s--px3_Pvo4--/f_auto/v1785515368/avatars/avatar_FStpm3ZejUD3qGlEeoOUS?_a=BAMAMicg0"}},{"@type":"Comment","text":"The new goto reset option would be my first accessibility smoke test before a SvelteKit 3 upgrade","datePublished":"2026-08-07T18:35:37.325Z","url":"https://daily.dev/posts/E9gA4AkhQ#c-zYnnmNYO9","author":{"@type":"Person","name":"Agustin Barrientos","url":"https://daily.dev/agustinbarrientos","image":"https://media.daily.dev/image/upload/s--5ayxQnqn--/f_auto/v1788281802/avatars/avatar_wQYYVe5Tbj0NJ7C7qPoa8?_a=BAMAMicg0"}},{"@type":"Comment","text":"refreshAll replacing invalidateAll is a genuinely useful distinction — resetting page.state on every invalidate always felt like an accident of implementation rather than intentional behavior, especially once shallow routing became common. Curious how the $app/manifest module changes the mental model for route-based code splitting once SvelteKit 3 stabilizes. Production sourcemap support graduating out of experimental is overdue too — debugging minified SSR errors has been a pain point for a while.","datePublished":"2026-08-01T07:24:14.338Z","url":"https://daily.dev/posts/E9gA4AkhQ#c-s7hFpbPpS","author":{"@type":"Person","name":"Gabu Rayon Dev","url":"https://daily.dev/gaburayondev","image":"https://media.daily.dev/image/upload/s--5hPC52y_--/f_auto/v1773412842/avatars/avatar_8fkdziGASnSSBES6c4Ml9?_a=BAMAMiiu0"}}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/what-s-new-in-svelte-august-2026-e9ga4akhq#faq","mainEntity":[{"@type":"Question","name":"What's new in the SvelteKit 3 preview release?","acceptedAnswer":{"@type":"Answer","text":"SvelteKit 3, released as @next preview versions 3.0.0-next.5 through next.13, introduces shallow routing built into goto via a new state option (replacing pushState and replaceState), a consolidated reset option replacing noScroll and keepFocus, new $app/manifest and $app/service-worker modules, production sourcemaps, and stable (non-experimental) tracing. daily.dev helps developers preview breaking SvelteKit 3 changes before committing to a major upgrade."}},{"@type":"Question","name":"What replaced invalidateAll in SvelteKit 3?","acceptedAnswer":{"@type":"Answer","text":"refreshAll replaces invalidateAll in SvelteKit 3.0.0-next.8, with invalidateAll now deprecated. This is part of a broader set of naming and API changes in the SvelteKit 3 preview, alongside error(status, message, {...}) replacing error(status, {...}) to make error messages mandatory, both introduced as breaking changes ahead of the stable 3.0 release. track SvelteKit's evolving API surface on daily.dev before migrating a production app."}},{"@type":"Question","name":"Where did SvelteKit's defineEnvVars move to?","acceptedAnswer":{"@type":"Answer","text":"defineEnvVars moved from @sveltejs/kit to the dedicated @sveltejs/kit/env subpath in SvelteKit 2.70.0, giving environment variable helpers their own module location separate from the main kit package. developers migrating SvelteKit config imports can follow these path changes via daily.dev."}}]}
```

