Advantages and disadvantages
The most obvious advantage – and disadvantage – is that client-side composition relies on JavaScript. This leads to performance challenges and accessibility issues. There is nothing here that cannot be improved, but rather things that need to be considered wisely and taken care of.
The web component standard itself is a widely implemented standard that focuses on the basics rather than fancy abstractions. Clearly, this means that changes are likely to never break existing implementations. However, it also means that other frameworks will be placed on top of it and that these frameworks are most likely a more productive basis for development than using Web Components directly.
If we want to really leverage one of the key features of Web Components, namely shadow DOM, we will need a recently updated browser such as Chrome (53+), Firefox (63+), or Edge (79+). By itself that would not be such a big deal, however, since web components provide...