React hosting guide

React Router hosting

React Router can power a client-side app or a full framework app. Hosting should follow the mode your project actually uses.

Recommended starting point: Cloudflare Workers for React Router framework deployments

What matters most

A client-side React Router app can deploy as static assets, but nested URLs need either SPA fallback or generated static pages.

A framework-mode React Router app may use loaders, actions, and server rendering, so it needs a runtime that supports the adapter you choose.

For SEO-sensitive content, prefer generated HTML pages or server rendering instead of relying entirely on client-side route hydration.

Deployment steps

  1. Confirm whether the project is client-only or framework-mode React Router.
  2. Choose real 404s for content sites and SPA fallback only for app-style surfaces.
  3. Test direct visits to nested route URLs after production build.
  4. Verify loader/action behavior in the deployed runtime before changing DNS.

Related React hosting guides