I would use express (or whatever else you would like) to set up initial request handling and statically serve the React app itself. Then, once you have gone thru the "gateway" to the individual React app that you're trying to access, use React.Router to handle navigation within that individual React app. This way, you can use multiple, separate React apps on different pages in your app, but still have React handle the front-end navigation through the individual app itself. As an added bonus, I believe that loopback and Express play pretty well together, so there shouldn't be much of an issue there. If you're going to be doing much more Node work in the future, Express is good to know. It is as near standard as it gets for Node app frameworks.