For years, Svelte and its meta-framework SvelteKit have quietly been among the best options for building full-stack TypeScript applications on the web. SvelteKit offers excellent performance with far less boilerplate than most React-based frameworks. Even so, it still hasn’t gained the same traction: Next.js remains the default choice for many new projects, driven by mindshare, hiring inertia, and the gravitational pull of the React ecosystem. In this post, I want to explore why SvelteKit is great and why I think it deserves more attention.

Simplicity

Svelte apps typically require less code than their React or Vue counterparts. State can be declared with let framework = $state(“React”), then updated directly with framework = “Svelte”. Need an input to keep state in sync? Add bind:value={firstName} and you’re done, no onChange={handleChange} ceremony needed. See a

side-by-side comparison

for more examples. It feels intuitive, and it helps you ship the same features with less code.

Performance

Most React developers have experienced accidental re-renders that quietly drag performance down. Svelte’s signal-based reactivity avoids that class of problem by updating only the DOM that actually changed. The result is better performance as apps grow, without constantly reaching for useMemo() or useCallback() to keep things fast.

SvelteKit also ships less JavaScript to the browser thanks to its compiler-first approach, which helps it post excellent

Core Web Vitals

numbers, right alongside Astro, one of the strongest performers in the static site space.

Ecosystem

React has the largest ecosystem of libraries and tools, but Svelte’s ecosystem is growing rapidly and thanks to the ability to use vanilla TypeScript, can easily integrate with many existing libraries. All the tools you’d need to build a modern web app are available:

Why Isn’t Svelte More Popular?

React is the default, the safe choice with a wider ecosystem and more job opportunities. AI-driven devlopment is also likely to favour React (although I’ve seen it misuse useEffect() more than once). Svelte’s simplicity and performance benefits may not be enough to overcome the inertia of the React ecosystem, especially for larger teams and projects that require a lot of third-party libraries.

But then again, if it’s good enough for Apple , maybe it’s good enough for you?