This seems like a good place to plug my own library, solarite:
https://eric-frost.github.io/solarite/
I was also tired of the "all or nothing" of other libraries. Just let me import a js file and then make a class that's a web component. I don't want to setup a whole dang build environment.
With Solarite you just write the markup as a javascript template, change your data however, and then call render(), where it only updates the DOM that should change.
And you can use the component as a tag in your server-rendered page.