And the first suggestion for this extra abstraction layer is NextJS, developed by a company with a vested interest to make it hard to run your app on anything else than their own service.
Seems to me that the time is ripe to disrupt frontend development yet again and introduce a simpler stack.