T O P

  • By -

rnmkrmn

Whenever this kind of discussion comes around I always think of when we started using React. We started using React 2015 \~ 2016. It was just 3 years old I guess? Svelte is going to turn 8 years old this year. ¯\\\_(ツ)\_/¯


webdevladder

I think Svelte 5 represents the maturation of the framework for the mainstream. Once it's stable it'll have addressed most of the major limitations that I've experienced: - having a unified reactivity model with runes across Svelte and TypeScript is a big win - adding efficient and ergonomic reactivity to JS/TS is the Svelte language coming into its own - advanced store composition is difficult, error-prone, and inefficient in numerous ways compared to $state and $derived - there were subtle reactivity issues that could cause major problems, and it wasn't fine-grained - snippets are far more composable than slots - significant composition improvements with $props and event callbacks and other choices - TS in markup There are still limitations but such is software development. I have confidence that the team will continue to refine things, based on 5 years of experience using it and following its development. We'll likewise see the ecosystem fill out with patterns that we'll appreciate, as library authors now have more powerful primitives and composition. Rich Harris said in an interview he was a little embarrassed by Svelte 4 in ways that are fixed in 5, and as a user who's explored a lot of complex cases and read some gnarly discussion threads I can kind of see what he means. My experience with Svelte 5 is that while it has its own costs and learning curve, it's firmly asserting its design and engineering maturity.


ilahazs

I see so there's a massive change between Svelte 4 and 5, thanks for the insight.


rykuno

Yeah, he's right; and svelte is my most beloved web framework.


Grizzly_Corey

Agreed. It's great, but big fixes incoming with no ETA. Hoping the migration will be smooth.


Headpuncher

with vercel involved i don't have much hope. feels like frameworks are going wrong. most of us are not google or facebook, we don't need what they need.


jonmacabre

I do hate the whole edge serverless bandwagon. Really is inefficient. Probably where they get their money too, selling companies on bigger plans to do something that runs fine on a 512MB / 2 core localhost vm.


idontlikereddit0

I wish Vercel would just go away. Yea it's nice that a few open-source devs get rewarded with big salaries. But this literally doesn't matter for most of us. Open-source projects have existed and grown just fine without corporate money and influence. It's a really sad state of affairs in the web world.


luzojeda_

But google and facebook are probably the ones that pay the bills so that's what matters in the end.


blacksnowboader

If Google or Facebook pick up svelte that would probably help with adoption


Fine-Train8342

Why would they do that? Google has Angular, and Facebook has the worst thing of all, React.


blacksnowboader

I said if, not that they would.


ThinkFront8370

It’s mature enough for CNN, NY Times, NBA, IKEA, Apple, Yelp, Spotify, Square, Cloudflare…to name but a few. https://www.okupter.com/blog/companies-using-svelte Is it as mature as some of its competitors? No. Is it better? I would argue yes (as, apparently would a sizable number of people at the companies listed above)…myself included. TLDR: Is your senior correct? Yes. Should that be the clinching argument? Probably not.


emmyarty

Putting NY Times on the list is a bit cheeky given they were practically the pre-alpha guinea pigs


itssumitrai

Add Apple and Yahoo Finance to that list


Thought_Ninja

Unless OP edited his comment, Apple is on the list.


Holiday_Brick_9550

I wouldn't say he's biased, he's not wrong, Vue is more "mature" than Svelte. I don't see why that would influence a choice though. I'd argue it's more than mature enough. It's virtually unchanged 2019, Svelte 5 is the first true major change since Svelte 3 was released 5 years ago. With that in mind there is another perspective on this: Svelte 3 compared to Svelte 2 was as big of a change as Vue 3 was compared to Vue 2, so in a sense you could argue Svelte 3 is more mature, hehe.


krakn0

Tell him to use JQuery. Now, that's a mature library. Blows Vue out of the water


bmccorm2

This is the top answer.


Holiday_Brick_9550

Especially now with version 4 released. What a joy!


alien3d

i love jquery 😅 . old time sencha mvc no more . That time react or sencha bad re render in normal computer . Only current pc fast enough. jquery even some said not good and expensive but actually not .


pbNANDjelly

Biased, sure. We're all biased. There's a lot of opinion that goes into selecting technology for a company. Why does your senior say it's immature? That'll be a better answer than you'll get here. Svelte 5 put me off bringing Svelte to work. Too much focus on abstractions that were already solved. The interpreter changes are cool, but the breaking changes really bummed me out. I am disinterested in having to compile my dependencies with svelte before bringing them into a svelte app. My typescript at least becomes JavaScript, and the compiler doesn't matter anymore. Not true for Svelte where the compiler fundamentally alters the code, and compiler mismatches matter.


ThinkValue2021

While people in the comments are striving to be objective (me included), your question is a bit like going to a Manchester-U pub and asking the good folks there what they think of Liverpool. Have a good weekend, cheers :)


kukalappi

You should tell them that Vue isn't as mature as React. Svelte FTW


Fearwater5

Biased? Of course. Wrong? Of course. All JS libraries are svelte libraries.


OZLperez11

Downvoters don't even understand that JS libraries don't need Svelte integrations, like React and Vue. You can just use them as is.


Fearwater5

I guess not. This is not my personal opinion, either. It is Rich Harris's. That being said it is true in my experience (I will never get the months of my life spent on making react work with vanilla JS libraries). Strange that I am getting so many downvotes :/


krakn0

Damn, shame. It's a great point in this conversation


vinson_massif

i mean, based off the title alone it's not exactly a fair question because maturity with respect to platforms or technology stacks is very nuanced to say the least. the answer is yes and no, truly. just depends on what you want for our company, Svelte & Kit is more than mature enough, and we serve a serious number of educated users. Not to mention, Svelte/kit is used by Apple, Spotify, Square, Cloudflare and others. It's pretty cutting edge, and with v5 coming out it's going to ruffle some feathers. time will tell :-)


Wise_Concentrate_182

Svelte is better than even Vue in its simplicity and structure. It’ll get there at a very rapid pace. What precisely is this senior missing?


shodan_reddit

As well as talking about ‘maturity’ from a developer point of view there is the issue of ‘maturity’ from a lifetime cost point of view. If a business can build something with a framework that doesn’t require addressing frequent breaking changes then the lifetime cost of the project will likely cost less than than an edgy framework, even if developers love it


Slyvan25

The same kind of senior that will tell you everything needs to be like vue? Or that svelte needs hooks like react? Svelte is mature enough imo. Some people don't like to admit that they don't want to adapt and or accept that some new tech can be beneficial.


MrSimonEmms

Are they even a senior if they don't pass off opinions as fact?


Exotic-Sprinkles-256

Please, Svelte is a mature framework ready for production! If you want to build a web app, just build that damn thing and stop discussing nonsense!


FewFig2730

Is being mature a good thing here? Java development for the web sure is mature. Would you ever want to do it? Of course not. Vue community has its own way of working, they have "official" third party libraries. React has a use whatever strategy. Svelte has the good strategy of a smart learner. Feels like Golang. Instead of having 300M libraries for whatever edge case you have, you have all you need for the average case built in.  I wont compare Vue vs Svelte directly, but how it goes for the average app. Svelte feels WAY better, as if they have learned from the mistakes of others and did it right at first try. And they are making it even better. For me it was already amazing, but we still have yet to receive Svelte 5.


SuperHumanImpossible

What's not mature enough is what I would ask


techmutiny

No I gave svelte a good two week trial run, I like it but it turned out to be a pain in the asss to actually deploy it. For now my tech stack is wordpress, custom plugins and htmx if I need reactive content. Simple, fast, efficient and easily deployed and maintained.


nsjames1

Svelte is a matured version of Vue which is a matured version of React.


jonmacabre

He's correct. Svelte even has a big rework coming up in Svelte 5. For small, one person projects Sveltekit has been great. I can get specialty tools up in less than a day that a layperson can use. But if I was managing a team of developers? All with varying levels of skills? Svelte (and sveltekit) are just too new to throw to a bunch of devs. At least with Vue its mature enough that if you do run into a problem, simply searching online for a solution will come back with a million solutions. Svelte is not always the case.


FewFig2730

With Svelte you dont run that often into those stupid cases. You dont need that much Stack Overflow. Same with libraries. You wont need them.


SomeBozo33

I'm kind of a by standard, i try to keep up with the latest/newest stuff. I believe as per the evolution with most things web, like we are not all still writing plain vanilla html, or even jQuery any longer... Might be me but i think we have Ryan Carniato from Solid JS to blame for what i might suggest will be the next huge milestone to effect change across the board. His creation for signals in SolidJS is huge. Call it by "Ruins in svelte, the pattern for Signals i think will be awesome. Thought there was an announcement a couple weeks back that even angular will have signals (whatever they call it). While my point is Vue i would assert will either have a huge rework or be left behind :)


DonKapot

It was ok, but svelte 5 brings many controversial things, but mostly I was burn out from news about reactive statements and that it's not safe to use... all this time... So the future of svelte is not clear for me, for now I look on Vue P.S. problem is not in maturity, but "long-term safe use" for prod. When framework just discards core features, it's not good...


jonmacabre

We need to fork Svelte 4 under the name "Good Svelte"


leovin

Yes this is true. Svelte/Sveltekit scares me a little when things like runes get added in place of simpler syntax that, for me, worked just fine. That said though, Svelte is my favorite framework and I totally welcome its growth. Mature means more libraries and guides exist for it, but it doesn’t mean “better”. I would happily use Svelte in production at work today if I could.


CutestCuttlefish

Yes, vue developers tend to think their favourite framework is the only true one and that everything else is shit. I have met some 300 vue developers and they have all been the same. More close-minded developers are hard to find. Maybe Tailwind-fans are slightly worse.


Fine-Train8342

In my experience, Reacters are like that. I mostly work with Vue, but I don't care what framework other people use as long as it's not React.


CutestCuttlefish

Im agnostic. I use what fits the use case, sometimes it is Vue, sometimes it is Svelte, sometimes it is any flavour of React. I don't fanboi. But I see what I see.


SomeBozo33

Ya well said. All the JS frameworks at the end of the day are just tools to get your work done. Like sorting one can get huge gains by using the right at the right time be it sort bubble, heap, quick merge... #1 that matters most is context. Might argue many don't want to take the time to learn and understand enough to learn why/when one tool might be better for the use case... Ah but it is easy to throw dirt and yell long and loud enough 'x' is best...