Is there a good solution to rendering something like a react app to a static page? I feel like there are a lot of pages that don't really need client-side html rendering, but they have it because react is a good solution for modular web content.
Probably not what you're after, but load the page in Chrome, open
the Inspector, and copy the entire HTML out. (Which will be a different HTML than the empty stub that "View Source" gives you.)
You could automate it with Selenium (headless Chrome). I think Googlebot does something similar?
This outputs static HTML that gets hydrated on the client (as opposed to server rendering the HTML and then hydrating it on the client), which I don’t think what was being asked.
I think what the OP was asking was more along the lines of partial hydration (where only parts of the DOM are hydrated by React/other framework) or no hydration (no JavaScript is loaded at all).