The big challenge with using the platform in my experience is that we have spent north of a decade now trying to make the web into an operating system rather than a document system.
Web components really do well at a small scale, being able to craft a custom input in roughly the same way a browser engineer does is a nice super power.
If I want my entire site to be one big JS application, though, web components don't easily scale there.
I don't like frameworks like react and am happy to have a site or app that is mostly server rendered HTML with a bit of custom JS and web components to fill in the interactive parts. That seems to not be many devs' cup of tea though so they tend to reach for client-side frameworks that turn everything on the page into JSX rendered on the client dynamically.