I’ve had some success with using puppeteer server-side to render react + canvas to render image for VR display - you could use that only as a non-interactive XR/VR surface unfortunately. The react-babylonjs library supports then declaratively putting that image on a 3D gui plane. I made a game in React and when I wanted VR then I had to rethink everything - I put all UI into 3D planes using GUI declaratively and it worked out, but I didn’t have all the niceties like Semantic UI or custom controls/css.
I suspect that you are after an interactive one and you would need to look at html to canvas for that - I’m not aware of any advances in that area. I think if you asked separately about rendering html to webgl that the solution working backwards from there would turn out to not be the hard part