React, Flux, GraphQL, Hack, HHVM...? All of this and more!
Svelte is a new way to build UIs on the web. While this may sound like it's been done many times before, Svelte has a different approach. Instead of pushing the complexity of the UI generation and maintenance in form of browser abstractions, Svelte works completely at compile time.
The key difference to React is that there is absolutely no trace of Svelte sent to the browser. Each time users need to download the whole abstraction library of React for drawing the UI. This may seem like insignificant overhead, but unlike native built-in browser functionality - downloading and initializing causes a delay.
The Svelte implementation of TodoMVC weighs 3.6kb zipped. For comparison, React plus ReactDOM without any app code weighs about 45kb zipped. It takes about 10x as long for the browser just to evaluate React as it does for Svelte to be up and running with an interactive TodoMVC.
- Introducing Svelte: Frameworks without the framework
React itself has already grown to be a truly multi-target platform with React as a server side rendering engine and React Native, but for developers just targeting the browser the added complexity being added in React Fiber can be an overhead without few returns. Svelte is also currently not talking too much about routing, state management and other necessities for building single page apps.Tweet