DEV Community

Cover image for Building with Svelte - all you need to know before you start
Nimrod Kramer for

Posted on • Updated on • Originally published at

Building with Svelte - all you need to know before you start

TL;DR - unlike established component-based frameworks such as React, Angular, or Vue, with Svelte you can take building user interfaces to the next level. Many devs are interested in learning about building with Svelte and we’d love to help you kick start! Here is a hand-picked list of some valuable resources to assist you to get started with Svelte.

Why Svelte?

There's a good reason why Svelte is gaining popularity among frontend developers lately. I made a brief of the major advantages that are agreed by many developers who tried building with Svelte and lived to tell their story.

What’s the benefit?

  • Instead of doing most of the work in the browser, Svelte does its work when you build the app and it compiles it to efficient vanilla JavaScript.
  • Reduces the overhead of the JavaScript framework you’re using. By compiling Svelte to vanilla JavaScript improves the code readability, enables re-use and it produces a much faster web app.
  • Svelte does not require declarative, state-driven code, which the browser has to convert into DOM operations. That means you don’t need to use virtual DOM anymore.

What’s the downside?

  • IDE support is not yet comparable to the commonly-used frameworks. It still has a lot of room for improvement. Although there are some good resources online to solve some of the issues, it can be considered as a major disadvantage as of today.
  • Not many Svelte dev tools exist at the moment. It is still a young and growing ecosystem. Keep that in mind. However, that’s a great opportunity to develop some for the Svelte community.
  • Small open-source ecosystem. Like many other frameworks, it takes time to build a large community around a specific framework. Although Svelte has gone a pretty decent way already, there are still not enough open-source contributors. Same here, you can look at it as an opportunity as well.

Want to read more about the pros and cons of building with Svelte?

Resources to get you started

Svelte ecosystem 101 👋🏼

Tutorials 🤓

We don’t want to overwhelm you with tutorials. There are tons of tutorials out there and we picked only the ones that are both practical, comprehensive and user-friendly:

Use Cases and Demos 🚀

Like anything, inspiration is important when starting with something new. Check out some cool projects that are using Svelte. Some of them are in production and some are demo apps:

  • OmniaWrite - A text editor engineered for creative writing. Also on GitHub
  • TypeRunner.js - A simple typing game, which has 2-4 human players compete against each other. The one to first type out the entire block of text wins.
  • Hacker News clone built with Svelte. Also on GitHub.
  • Nomie - Mood and Life Tracker built with Svelte. Also on GitHub.
  • Cool showcase of many other apps made with Svelte

Useful code repositories 💻

Developer Tools 🔧

As we said… not many field-tested developer tools available at the moment. However, this one is quite useful: Svelte DevTools browser extension for Chrome and Firefox

Stay updated about Svelte news 🏄🏻

Did I miss an important resource? Comment below and let me know! 👇🏽

More posts that might be interesting as well delivers the best programming news every new tab. We will rank hundreds of qualified sources for you so that you can hack the future.
Daily Poster

Top comments (6)

torstendittmann profile image
Torsten Dittmann • Edited

Hehe, thanks for mentioning my project OmniaWrite :-)

Developing in Svelte is by far the most refreshing thing!

Also, that you are using plain Javascript, makes you utilize 3rd party libraries way more effective, since you can use nearly any JS library. With frameworks it is a different story.

nimrodkra profile image
Nimrod Kramer

Well deserved :) ✌🏼

jreinhold profile image
Jeppe Reinhold

Nice write-up, thanks!

nimrodkra profile image
Nimrod Kramer

My pleasure! Glad you liked it.

pavelloz profile image
Paweł Kowalski

I would add routify for resources. Very nice router :)

nimrodkra profile image
Nimrod Kramer

Thanks Pawel - added!