
Svelte 5 released: Major update with Runes, TypeScript support, and performance boost
After an extensive 18-month development period, Svelte 5 has reached a stable release. As a framework for building web user interfaces, Svelte employs a compiler to transform declarative component code, integrating HTML, CSS, and JavaScript, into highly optimized JavaScript. This release marks a significant milestone as the most substantial update in Svelte's history, featuring a complete ground-up rewrite aimed at enhancing app speed, size, and reliability.
Svelte 5 maintains near-complete backward compatibility with its predecessor, Svelte 4, ensuring a seamless transition for most users. This version addresses previous inconsistencies and introduces runes, a new mechanism for declaring reactive state. Unlike other frameworks, Svelte's state interaction remains straightforward, with state variables like count
being simple numbers rather than complex objects or functions.
Runes can now be utilized in .svelte.js
and .svelte.ts
modules, expanding the framework's capability to create reusable reactive logic. Event handlers have been simplified to function as standard props. The previous slot
mechanism has been overhauled, replaced by {#snippet …}
, offering a more robust tool for content passing between components.
Additional improvements include native TypeScript support, eliminating the need for preprocessors, alongside numerous bug fixes and enhancements in performance and scalability. This release promises a more efficient and streamlined development experience for Svelte users.

