# Svelte 3: Rethinking reactivity

DevFeed: [Svelte 3: Rethinking reactivity](<https://devfeed.tech/articles/svelte-3-rethinking-reactivity-3037.md>)

Original publisher: [Read original article](<https://svelte.dev/blog/svelte-3-rethinking-reactivity>)

Author: Rich Harris

Published: 2019-04-22T00:00:00Z

Content type: release

Language: en

Sources: [Svelte blog](<https://devfeed.tech/sources/svelte-blog.md>)

Topics: [Svelte](<https://devfeed.tech/topics/svelte.md>), [Compiler](<https://devfeed.tech/topics/compiler.md>), [Developer experience](<https://devfeed.tech/topics/developer-experience.md>), [Document Object Model (DOM)](<https://devfeed.tech/topics/dom.md>), [Boilerplate](<https://devfeed.tech/topics/boilerplate.md>), [Frameworks](<https://devfeed.tech/topics/frameworks.md>)

Tags: [browser](<https://devfeed.tech/tags/browser.md>), [compiler](<https://devfeed.tech/tags/compiler.md>), [developer-experience](<https://devfeed.tech/tags/developer-experience.md>), [frontend](<https://devfeed.tech/tags/frontend.md>), [generate](<https://devfeed.tech/tags/generate.md>), [performance](<https://devfeed.tech/tags/performance.md>), [react](<https://devfeed.tech/tags/react.md>), [svelte](<https://devfeed.tech/tags/svelte.md>), [vue](<https://devfeed.tech/tags/vue.md>)

## AI overview

Svelte 3 is presented as a major stable release that rethinks reactivity. Its compiler moves work to build time, generating efficient imperative code that updates the DOM directly, while the redesigned approach reduces boilerplate and improves developer experience and application performance.

## Source excerpt

After several months of being just days away, we are over the moon to announce the stable release of Svelte 3. This is a huge release representing hundreds of hours of work by many people in the Svelte community, including invaluable feedback from beta testers who have helped shape the design every step of the way. We think you're going to love it. What is Svelte? Svelte is a component framework -- like React or Vue -- but with an important difference. Traditional frameworks allow you to write declarative state-driven code, but there's a penalty: the browser must do extra work to convert those declarative structures into DOM operations, using techniques like virtual DOM diffing that eat into your frame budget and tax the garbage collector. Instead, Svelte runs at build time, converting your components into highly efficient imperative code that surgically updates the DOM. As a result, you're able to write ambitious applications with excellent performance characteristics. The first version of Svelte was all about testing a hypothesis -- that a purpose-built compiler could generate rock-solid code that delivered a great user experience. The second was a small upgrade that tidied things up a bit. Version 3 is a significant overhaul. Our focus for the last five or six months has been on delivering an outstanding developer experience. It's now possible to write components with significantly less boilerplate than you'll find elsewhere. Try the brand new tutorial and see what we mean -- if you're familiar with other frameworks we think you'll be pleasantly surprised. To make that possible we first needed to rethink the concept at the heart of modern UI frameworks: reactivity. 'Rethinking Reactivity' from You Gotta Love Frontend Code Camp Moving reactivity into the language In old Svelte, you would tell the computer that some state had changed by calling the this.set method: const { const count: anycount } = this.get(); this.set({ count: anycount: const count: anycount + 1 }); T