Skip to content

React Router hosting

React Router hosting.

Deploy a React Router app in framework mode, or a Remix app. With server rendering, Lahyer runs it as a Node.js server. With ssr: false, it serves the build as a single-page app.

Deploy your project
SSROn a Node.js server
SPA modessr: false, served as static files
PreviewsA URL for every pull request

What Lahyer does with it

How React Router builds and runs.

Lahyer fills these in from your repository. Change anything that does not fit in the project's build settings.

How Lahyer builds and runs React Router
Detected from@react-router/dev or @remix-run/dev in your dependencies
Installnpm, pnpm, Yarn or Bun, chosen from your packageManager field or lockfile
BuildYour build script, or react-router build
Runs asA Node.js server from build/. With ssr: false, static files from build/client/ with an index.html fallback
Node.js20 or 22, read from .nvmrc, .node-version or engines.node (22 by default)

React Router documentation

Your first deploy

Three steps
to a live URL.

Connect the repository.

Import it from GitHub or GitLab. Lahyer reads your config to see whether server rendering is on.

Keep server rendering, or switch it off.

Loaders and actions run on the server Lahyer starts. Set ssr: false in react-router.config.ts for a static single-page app.

Push and ship.

Every push deploys, pull requests get preview URLs, and you can roll back without rebuilding.

A few useful answers

Before you begin.

Do loaders and actions work?

Yes, with server rendering. They run on the Node.js server Lahyer starts.

Is Remix supported?

Yes. Projects that use @remix-run/dev are detected and deployed the same way as React Router framework mode.

Will my app sleep on the free plan?

Server apps on Free sleep when idle and start again on the next request, which can take a moment. Pro keeps one production app always on.