Deploy every app to your own servers.
Set up servers and ship Laravel, Next.js, Node, Python and static sites with zero downtime. Already running live sites? Connect that server too, without breaking a thing.
$ git push origin main
[myforge] Deploying shop.example.com (laravel) from main
[myforge] Commit 8f3c2a1 Add checkout page
[myforge] composer install ·········· done
[myforge] npm run build ·············· done
[myforge] php artisan migrate ········ done
[myforge] Activating release 20261002093001
✓ Deployed in 38s with zero downtime
Ship whatever your team builds with
- Laravel
- PHP
- Next.js
- React
- Vue
- Node.js
- Python
- Django
- Static sites
Everything you need to ship
All the server work, none of the 2am SSH sessions.
Provision in minutes
Point us at a fresh Ubuntu server. We install Nginx, PHP, Node, Python, MySQL, Postgres or Redis, so you never SSH in and type apt again.
Zero-downtime deploys
Each deploy builds a fresh release next to the live one and switches over in a single step. A failed build never reaches your users.
One-click rollback
Shipped a bug? Go back to the previous release in seconds. We keep the last few releases ready on disk.
Free SSL, automatically
Let’s Encrypt certificates for every domain and alias, renewed in the background, with HTTP redirected to HTTPS.
Secure by default
Firewall, fail2ban, automatic security updates and a dedicated deploy user. Databases listen on localhost only.
Built for teams
Invite your team, share servers and sites, and see who deployed what and when.
Already have servers?
Bring the servers your live sites already run on.
Most tools only work on a blank server. We can connect to a server that has years of live sites on it and leave every one of them running.
-
01
Inspect
A read-only scan finds every site, stack, worker, cron job, open port and expiring certificate. Nothing on the server changes, and your .env files are never read.
-
02
Adopt
We add a deploy user and an SSH key, and that’s all. No package upgrades. Nginx, PHP, your databases and the firewall are left exactly as they are.
-
03
Import, one site at a time
Watch a site or deploy to it in place. We back up its config, .env and database first, and refuse to overwrite hotfixes made on the server.
-
Ready to import
shop.example.com
Laravel · PHP 8.2 · www-data
-
Ready to import
api.example.com
Node.js · pm2 · port 3000
-
Watch only
blog.example.com
Static · Apache · no git
shop.example.com has 1 file edited directly on the server
Port 3306 is open to the internet
How it works
From a blank server to production in three steps.
Connect a server
Add any Ubuntu server by IP. We set it up with the stacks you choose.
STACKS=php,node DATABASE=postgres REDIS=yes
Create a site
Choose a domain, a repository and a stack. We write the Nginx config and the .env, and create the database.
SITE=app.example.com SITE_TYPE=nextjs REPO_URL=git@github.com:acme/app
Push to deploy
Every push to your branch builds a new release and switches over with zero downtime.
# .myforge/build.sh (optional) npm ci npm run build
Pricing
Simple pricing. Your servers, your bill.
Pay your hosting provider for the servers, and us for the tooling. No per-site fees.
Starter
For a side project or trying MyForge out.
$0 forever
- 1 server
- 3 sites
- 3 team members
- Zero-downtime deploys
- Free HTTPS
- Deploy on git push
Pro
For freelancers and small teams shipping several apps.
$19 per month
or ₦15,000 / month with Paystack
- 5 servers
- Unlimited sites
- 5 team members
- Adopt existing servers
- Email and Slack alerts
- Audit log
Business
For agencies and companies running production at scale.
$49 per month
or ₦39,000 / month with Paystack
- Unlimited servers
- Unlimited sites
- Unlimited team members
- Server monitoring and alerts
- Priority support
Questions, answered
Do you host my apps?
No. Your apps run on your own servers, at whichever provider you choose. We connect over SSH to set them up and deploy. Your code and data stay on your servers, and you keep full root access.
Can I use a server that already has live sites?
Yes. Run the read-only inspection, adopt the server, then import sites one by one. Nothing changes until you choose to manage a site, and every import starts with a backup.
Which stacks are supported?
Laravel and plain PHP, static sites built with React, Vue or Vite, Next.js, Node.js servers, and Python apps including Django. Add a .myforge/build.sh file to your repository to customise any build.
What happens if a deploy fails?
On servers we set up, the live release keeps serving traffic and the failed build is thrown away. On imported sites, you get a clear error and a one-command rollback.
Which servers can I connect?
Any Ubuntu 22.04 or 24.04 server you can SSH into, at DigitalOcean, Hetzner, AWS, Vultr, Linode or on bare metal. Creating servers straight from your provider’s API is coming soon.
Your next deploy could be your easiest one yet.
Connect your first server in under five minutes. No credit card needed.
Create your free account