You can even avoid a shadow DOM or vDOM entirely and differentially render using the DOM itself:
https://github.com/WebReflection/domdiff
https://github.com/WebReflection/uhtml
The JS framework benchmark shows these two are among the top performers.
Mainly because I prefer working with my own code to working with other people's. Another advantage is reducing the amount of new information I have to learn (which with the whole vanilla HTML5 stack is already vast), but maybe I'm hopelessly out of date.
Thanks for the insights though, I wasn't aware they were doing all of that.
The problem here is - if you need to bring in other developers. Finding react/vue devs, or devs w/ htmx, alpinejs, etc - it's going to be super easy to onboard, a custom framework you built yourself - not so much. Maybe it's easy, maybe it isn't but you will have to train new devs who work on your stuff, where otherwise you could save time/money by not having to train on things, plus is your framework well tested using jest or other testing frameworks? There could be lots of bugs that some of the bigger more established frameworks have already worked out, and especially security issues.
Right now my favorite stack is laravel + alpinejs + livewire + filamentphp (admin dashboard) -- i can prottype in a week what used to take 3 months.
Writing my own, or better yet, staying away from JS altogether, has resulted in more stable, maintainable and profitable software.
There are lighter-weight shadow dom frameworks out there (than Vue/React/Angular) so why would you want to write one yourself?