5 ms·
Now that it’s been around for some time, what’s the general thought on it? Anyone use it then go back to the traditional frameworks? Anyone love it and still t
by skellera 6y ago
Now that it’s been around for some time, what’s the general thought on it?
Anyone use it then go back to the traditional frameworks? Anyone love it and still think it’s the next big thing?
- troquerre 6y agoI wouldn’t use it for big commercial projects because the ecosystem isn’t very big (ie I wouldn’t build a b2b saas app with it) but for small projects and side projects it’s great.
- nikivi 6y agoHaven't used it personally yet but this recent podcast episode with Rich Harris & Evan You had many interesting thoughts on state of web dev & svelte https://undefined.fm/radio/vue-vs-svelte-with-evan-you-and-rich-harris https://undefined.fm/radio/vue-vs-svelte-with-evan-you-and-r...
- erokar 6y agoWe've switched to Svelte for new projects at work, from React. It feels like a significant improvement, especially regarding unnecessary complexity and verbosity. The UI component libraries for Svelte are still lacking in maturity, that's the one drawback I can think of.
- vanderZwan 6y ago> It feels like a significant improvement, especially regarding unnecessary complexity and verbosity. > The UI component libraries for Svelte are still lacking in maturity The typical counterargument usually made at this point would be "those two points are related" (to paraphrase Bjarne Stroustrup: "every ship gets barnacles as it ages"). So let's anticipate that: do you have any reasons to believe that Svelte will avoid adding accidental complexity/verbosity to it as it/the surrounding ecosystem matures, and if so, how do you think that will be mitigated?
- throwaway894345 6y ago> to paraphrase Bjarne Stroustrup: "every ship gets barnacles as it ages" Enough time has passed to firmly conclude that Stroustrup was wrong on that point. Other languages have withstood the test of time better than C++<11 and C++>=11 has dramatically improved the language by copying features from those other languages. C++'s issues were poor design choices, not simply some "maturity" force that causes a language to accumulate incoherent features.
- TehShrike 6y ago> do you have any reasons to believe that Svelte will avoid adding accidental complexity/verbosity The maintainers are very paranoid about adding complexity, and are not being funded by large corporations paying for features to get added.
- SubGenius 6y agoI really like it. Replaced Vue with Svelte and things have been great so far. Smaller bundles, and much lighter components. Built-in state management is very handy. The initial pages are Go templates which are hydrated with Svelte components. It took a bit of trial and error to get the flow right so that I don't have to write double the code. I don't know if it's the next big thing or not but it works really well for me.
- IceWreck 6y ago> The initial pages are Go templates which are hydrated with Svelte components. It took a bit of trial and error to get the flow right so that I don't have to write double the code. What is the advantage of doing this over using http.FileServer to serve html which imports your svelte generated javascript directly ? Are you using Svelte in a part of your application instead of the entire application?
- SubGenius 6y agoI wanted the initial render to be fast, and Go templates really shine there. Since the site has a lot of moving parts, there are many components that get hydrated depending on the page. For instance, this page (https://gurlic.com https://gurlic.com) is generated by Go, but the actions such as like/dislike/share/respond are hydrated by their respective Svelte components. If you scroll all the way down, new posts are fetched and rendered with Svelte components too, and the great bit is that I can use the same action (like/dislike/etc) components there. Maybe there's a better way to do it, but I like writing smaller components that can replace initial server-rendered HTML, and can then be imported into larger components.
- edoceo 6y agoI like this way too
- throwaway894345 6y agoThat's a really neat site. Is it open source (can I peruse the source code)?
- StevenWaterman 6y agoDefinitely still in the camp of thinking it's the next big thing. In my experience, Svelte does a great job of just getting out of the way and letting you start coding. The ecosystem isn't there yet, and I probably wouldn't try to use it in a work project. For my personal projects though, I use it for everything front-end. More than that - I've stopped making desktop apps and just default to using svelte instead. Happy to answer any specific questions you've got! Bottom line - given the opportunity, I will use Svelte.
- throwaway894345 6y agoI'm not a frontend developer, but absent svelte, the next easiest thing to develop is a full on desktop application (easier than some other frontend web framework)?
- svachalek 6y agoI haven't done Svelte but in general I find native is easier than web UI. The tools and libraries just did more for you 20 years ago than any web framework does today. Web frameworks (Svelte included) just keep reinventing the wheel without giving you a second one. I'm a web developer and I like the power and flexibility it has compared to native GUI development but I think a big problem is we now have an entire generation that doesn't even know what they're missing.
- throwaway894345 6y agoThat's interesting. I've done a lot of Qt and GTK development, but it was always a pretty miserable experience. Notably, GTK builds on GObject, which is just a bunch of hacks to emulate object-oriented programming in C to no discernible benefit. Similarly, Qt was (presumably still is?) its own language atop C++, and you needed a special compiler to compile it into vanilla C++. Additionally, because C and C++ build systems are so very terrible (no standard tooling, no dependency management at all, certainly no reproducibility, etc etc), managing projects in these languages was utterly terrible (nowadays I understand that CMake has built-in support for Qt, which speaks to the sadness of the build ecosystem that the build tool has to have first-class knowledge about individual libraries and frameworks). Of course, there were bindings, but bindings never adequately masked the complexity of the frameworks, and with respect to memory management you now had to understand in detail how these frameworks' memory management conventions integrated with the host language's garbage collector or you would see your Python (or whatever) application segfault. And yes, I tried Vala and Gnome's JavaScript offering and everything else available at the time. I'm guessing that the Windows and MacOS frameworks were less hostile, but it seemed like the web was surely ideal, at least in the last several years. Sure, you had to learn a web framework to build simple applications, but you could at least use a high level language with a reasonably sane package manager (for those who haven't developed in C or C++, it might come as a surprise that JavaScript and NPM are "sane" tools) and a reactive programming model. I guess I'm not sure if my expectations for web development are too high or if GTK and Qt are especially bad representatives of native development.
- rawoke083600 6y agoSwitched from Angular9 about 6 months ago. Never coding a js-app without Svelte. Sooo much simpler and stupidly fast !
- RivieraKid 6y agoI think this is the next leap in web UI development on the same level as jQuery, React and Vue. I've used React, HyperApp and Flutter and Svelte (with Tailwind for CSS) is in my opinion clearly superior. But I also know someone who thinks Flutter is better.
- momento 6y agoI am using Tailwind for the first time and really stuggle with the long class strings. I imagine i'll get used to it with time.
- earthboundkid 6y agoHaving used Tailwind on two projects now, I do find that the class strings are "write only". One tip that helps is to write the classes from "outside in," e.g. first the margin, then the border, then padding, then properties affecting the inside of the element…
- smrq 6y agoHaving inherited a Tailwind project, I agree that the class strings are write-only.
- earthboundkid 6y agoTBF, regular CSS is also "write only". At least with Tailwind, there's CSS purge to try to delete some it before it gets into production.
- shallowthought 6y agoHere's my general thought, in a year we will all be singing the praises of something else, and my fellow webdevs will continue to mistake "different" for "better".
- madeofpalk 6y agoOP was asking for actual substantive thoughts, not just this one point being regurgitated over and over again. Svelte has been around for "a while" and seems to be hanging around and people are enjoying it. I'm still really comfortable with React, and would love to know how people have found the transition between the two and how Svelte compares.
- ulisesrmzroche 6y agoShallow thought indeed.
- _jesseb 6y agoI recently gave it a try and it generally feels nice starting out, but I started running into rough edges pretty quickly, enough that I don't think I would want to build a large app using it. Main complaint is how it handles styles, it does not allow you to apply styles to the edge of a component without doing one of several workarounds, all of which have downsides. Means it's very hard to create a set of generic styled components and then apply layout to them using a parent, which makes it a bit of a pain to reuse things, which is kinda the point of component based libraries. I also get the feeling that the Svelte maintainers do not particularly care what the community wants and are building what they want, which is totally cool, but unfortunately I disagree with a lot of their choices so I guess it's not for me.
- dfrsol 6y agoUntil they solve https://svelte.dev/faq#how-do-i-test-svelte-apps https://svelte.dev/faq#how-do-i-test-svelte-apps and the ecosystem matures a little (Sapper -> svelte) I wouldn't recommend using it for any production applications. I do currently use it for PoCs since it's easy to spin up and be productive quickly.
- enumjorge 6y agoAs someone who’s been recently doing front-end dev work full-time the question below it is also a little triggering. “Is there a router?” Not an official one but they list like 6 alternatives, two of which are apparently “very similar”. The JS ecosystem’s penchant for giving you small components that you have to choose individually and then glue together can get a little exhausting. Hopefully the library whose approach you prefer has decent documentation, keeps up with changes to svelte, doesn’t get abandoned, etc. Edit: apparently Sapper is a Next.js like framework that provides all the components you need for svelte in one package. Someone else said on this thread it’s eventually getting deprecated by the svelte team’s own thing called SvelteKit. Not ideal, but at least they’re working on something more integrated.
- Can_Not 6y agoThey also don't have an answer for error handling. You can't catch them with Sentry, you can't catch then to handle them, and when they happen your app just freezes.
- TehShrike 6y agoThis is inaccurate – Sentry works fine in my Svelte apps, and general error-handling is no different than in any other JS environment
- Can_Not 6y agoI didn't see any updates to the issue with lots of people complaining about svelte halting unrecoverably on errors instead of allowing error handling (thus also reporting), so no, Sentry isn't working fine in Svelte.
- davidwparker 6y agoI used it for my summer "Covid" project: https://www.listenaddict.com/ https://www.listenaddict.com/ I love it and will slowly be replacing my React/Vue/(old angularJS) projects with it. The nice thing is, you can read the entire docs and just follow the interactive tutorial in a few hours and get up to speed incredibly fast.
- jamauro 6y agoLove it. Ported a project to it recently and will be using in all projects going forward.
- andrew-dc 6y agoStill in the next big thing camp myself, also. Of course, there are the noted drawbacks, but for our use case: putting a library of UI components across a handful of app stacks (.NET, asp, Angular, etc) - Svelte is the solution. We have faced the usual wild west frontier situations where nobody really had an answer for something we wanted to do, but we have worked out solutions without a huge deal of frustration. And it's important to mention that the development and maintenance experience of Svelte is very pleasant.
- yawnxyz 6y agoI've been converting my massive Vue 2 application to smaller "micro front-ends" written in Svelte/Sapper. For some reason I just feel it's faster to write in Svelte than it is in Vue 3, and these are all in production. But we're a tiny startup and I'm the only developer so...