Deploy
Node.js hosting,
without the server admin.Deploy any Node.js app or API straight from a GitHub repo. SelfHost auto-detects the build, ships it onto a server we provision and maintain, and keeps it healthy with auto-deploy on push, PR previews, and SSL. The control of your own Node server, with none of the upkeep.
Why rent a VPS and babysit Node, when you can SelfHost it?
What you get
Your Node app, in production.
On a server you control.
Whether it is an Express API, a NestJS backend, a Fastify service, or a plain Node worker, SelfHost builds it from your repo and runs it on a dedicated server. No Dockerfile required, though you can bring one, no reverse proxy to wire up, no OS to patch. Add a database and a domain and you are live.
Deploy in 5 steps
From zero to live.
No server to set up.
From a GitHub repo to a live Node service in a few steps, with the server handled for you.
Create a Project
Give it a name and SelfHost provisions a dedicated server for you in a couple of minutes. No cloud or region wrangling.
Connect your Node repo
Connect the GitHub App or paste a public repo URL, then pick the branch to deploy. Enable auto-deploy on push so every commit ships.
Let the build pack detect Node
Nixpacks detects Node from your package.json and runs your install and build scripts. Set the start command, port, and base directory if your repo needs it, or bring your own Dockerfile.
Set environment variables
Add your secrets and config, or paste a .env to import in bulk. They are wired into every build and deploy.
Add a database and a domain
Drop in a PostgreSQL, Redis, MySQL, or MongoDB database, point a custom domain, and HTTPS goes live automatically.
Environment variables
Configure it
in minutes.
Most Node apps need a few variables. SelfHost wires them into the build:
Paste a .env to import in bulk, or set keys one by one. Values are wired into every build and deploy.
Key variables
What you get
Node.js, the easy way.
On a server you control.
Express, NestJS, Fastify, Koa, Hapi, or a plain Node script. If it runs on Node, it deploys here.
Every push to your branch builds and ships, with PR preview environments, one-click rollback, and streaming logs.
Your app runs on a dedicated server with live CPU, memory, and connection metrics, not a shared black box.
Add PostgreSQL, Redis, MySQL, or MongoDB to the same project, or attach a dedicated managed PostgreSQL instance.
Add your domain, verify DNS, and HTTPS is provisioned and renewed automatically.
Billed by the hour against prepaid credits, from about $0.02/hr, and paused at a zero balance.
One server, many services
A Node API rarely runs alone. Put your API, a frontend, a worker, and their databases on the same project server, billed as one server, not a service-by-service meter.