I'd use RUM for HTML templating and rendering, because it has nice support for server-side rendering that can hook up later to a React component, or simply revert to plain old HTML, and thus work in Clojure and ClojureScript.
I'd use React with ClojureScript and RUM on the client side for fancier JS components if needed.
I might try Datomic Cloud for my server side persistent state and Datascript for my client side transient state.
And I think I'd give a go to reitit for routing and http-kit as my html client/server. Feel like the speed of reitit might be worth it, also it now supports ring and pedestal, and has nice support for Swagger using Clojure Spec. http-kit gives me a Clojure only HTML client/server which I like.