Hi, I have exactly the same conclusion as you - you can check my demo todo app - where the UI is an extension to the app. I'm having React and Mustache renders to demonstrate how the view is totally decoupled from the app logic. It have SSR, both for React and Mustache, Service worker for offline usage. Redux for state management. I'm using typescript.
https://drmzn-todo-app.herokuapp.com/
https://github.com/max0xff/drmzn-todo-app
https://github.com/max0xff/drmzn-todo-app/blob/master/About....
I would love to hear your feedback :)