SolidJS

No wrapper. Just the tag.

Solid's JSX compiles to real DOM operations, so <connectly-webchat> is simply created and never diffed. Of the four, Solid is the closest fit to a custom element.