Hosting / React Router
React Router hosting in Europe
Deploy a server-rendered React Router app to European infrastructure from your Git repository. Eurobase (eurobase.dev) builds it and runs it on V8 isolates.
At a glance
| Runs as | V8 isolates |
|---|---|
| Versions | react-router 7.0.0 or later, with Vite 6.1.0 or later |
| Build | @cloudflare/vite-plugin, added during the build |
| Deploys from | GitHub, GitLab.com, self-managed GitLab, Codeberg, Forgejo and Gitea |
| Where it runs | European infrastructure only |
Deploy React Router in Europe
- Push your app to a Git repository.
- Create an account, then create a project from the repository. GitHub connects with the Eurobase app, and other Git hosts with a read-only token and a webhook.
- Eurobase detects React Router. There's no build or start command to set.
- Select Save and Deploy. Your app goes live at
<name>.eurobase.dev. - Connect your own domain from Domains.
A coding agent can do this for you from a GitHub repository: deploy with Claude Code, Codex or Cursor.
Read Getting startedWhat works
- Server rendering, with static assets at the same address.
- Each deployment renders up to 16 pages first. If one fails, the deployment stops and the previous one keeps serving.
- Response caching when your app sends cache headers, with purge by tag or path. See Cache.
- Deploys on every push, rollback from Deployment history, secrets and request logs.
What doesn't work
- There's no starter template, so start from your own repository.
Limits for all apps on V8 isolates:
- Postgres and MySQL drivers that connect over TCP won't work. Use your database's HTTP API.
- Each request gets 30 s of CPU on paid plans, or 50 ms on the Free plan with a 2 s reserve that refills. See Runtime limits.
- An instance has 128 MiB of JavaScript heap, and the bundle can be up to 10 MiB compressed.
eval()andnew Function()don't work during a request.- Commit exactly one lockfile, or the deployment stops.
- On
<name>.eurobase.dev, cookies written by browser code reach your server only with a__Host-js-name. See Cookies in your app. - Images aren't resized on request.
Not available on Eurobase:
- Preview deployments for branches and pull requests.
- Managed Postgres, MySQL or Redis.
- Dockerfile builds.
- Key-value stores and queues for apps on V8 isolates.
Pricing
| Limit | Free | Starter | Pro |
|---|---|---|---|
| Price | €0 / month | €10 / month + VAT | €20 / month + VAT |
| Projects | 2 | 10 | 20 |
| Deployments per day | 20 | 100 | 500 |
| Workers CPU per month | 50 min | 500 min | 1,666⅔ min |
A flat monthly price per workspace, with no charges for usage. Once Workers CPU runs out, apps on V8 isolates stop until the monthly reset. See every limit.
Move an existing React Router app
Other frameworks
Deploy React Router on the Free plan
Create account