I’ve seen a lot of hate for them in recent times, and that kinda worries me.
Interesting topic. To give some context: https://www.youtube.com/watch?v=UrS61kn4gKI
And to answer your question: Yes, the Vaadin Components (Components | Vaadin Docs) are Web Components (reference: Web Components Intro | Integrating Web Components | Creating UI | Flow | Vaadin Docs).
that’s exactly what triggered me to ask
For a user of Vaadin, that’s an implementation detail, something you don’t need to worry about. The standards aren’t going anywhere, so in that sense web components are a safe bet, just as implementing a web app using HTML, CSS, and JavaScript is.
That said, do you have any specific concerns regarding web components?
I watched that video like week ago or so. There are some in-accuracies there, although I rate the creator of the video one of the better frontend developers out there.
For example you can use slots with web-components, you can use part selector with css, and in web component implementation you can set a string to inner html, if your really want to have html content in your property.
I.e. you can do this
By doing this
And it seemed to be one of the things the author of the video very much liked to do. Well, it is totally other thing whether it is good to thing to do, especially as in my simple example I am not bothering to use DOMPurify to sanitize it. But that it is another discussion.
There are naturally some good points in the video. 3rd party libraries surely are free to evolve faster and more flexible manner than standards.
And yes, we use Polymer and Lit in Vaadin to make our life easier with web components.
Interesting thoughts, thank you for sharing!
To me it seems, that this is likely one of the bigger concerns in the video. From the perspective of a developer that is using Vaadin, I don’t feel uncomfortable with this.
Nicely said, and I would also agree on that.
Yes. It has been long time struggle to find things that can stand the challenge of the business application life cycles. Something that is hip and tandy today can last only couple of years, i.e. it may be deprecated just in time a large scale business application project has reached first production deployment phase. And then it should be still maintained next 10 or so years. It is very hard.
E.g. we have now taken React as part of our tool chain. I guess we believe that it will be around for some time, so it makes sense to make such bet. Note, even with Hilla, even when you use React, ouyr components still are web components implemented with Polymer under the hood. So web components vs. React discussion is not that they are mutually exclusive. In Hilla they are friendly together.