Git-to-production PaaS·v2.3 out now

Push to main.
It's deployed.

Connect a GitHub repo, we detect the framework, build a container, and serve it from our Frankfurt region — with auto SSL, zero-config scaling, and preview URLs for pull requests on Pro.

Start deployingRead the docs
Free dev instance No credit card PR previews on Pro
acme-web · dpl_9fxz2h · productionlive
02.115sdetectDetected Next.js 14.2.5 · turbo monorepo
https://acme-web-9fxz2h.buildfyio.com47s
Build succeeded
47s · fra1 · $0.0008
Auto-detects 40+ frameworks
Next.jsNuxtSvelteKitAstroRemixViteDjangoFastAPIRailsLaravelGoNode.jsDocker
Primitives

The platform is the
product. No ops needed.

Git-native
Push to main, we build and deploy. On Pro, every pull request gets a preview URL with automatic teardown.
Zero-config
We detect Next.js, Nuxt, Django, Rails, Laravel, Go, any Dockerfile. No YAML to hand-write.
Frankfurt today, more regions planned
Every app runs in our Frankfurt region (fra1) behind an edge router with auto-TLS. Additional regions are on the roadmap and will be selectable per project.
Auto SSL
Let's Encrypt + ACME on every domain. Apex, wildcard, custom — wired up in under 60 seconds.
Real-time metrics
CPU, memory, request latency, cold starts, error rates. No extra agent, no extra cost.
Scale on demand
CPU-based horizontal autoscaling between the replica bounds you set: 1 replica on Hobby, up to 20 per app on Team, custom on Enterprise. Paid plans meter runtime per hour past the included hours.
How it works

Four steps.
No surprises.

Every step is inspectable. You see the build, the logs, the environment — not a black box.

01
Connect your repo
GitHub today (GitLab and Bitbucket are coming soon). Pick the repo, pick the branch — we read the rest.
02
We detect the stack
Framework, build command, start command, port, env. You confirm or edit. Usually you don't.
03
Build in a container
Isolated Docker image, cached layers, your secrets injected. Logs stream live.
04
Deployed to the edge
Rolling release, health check, zero-downtime cutover. SSL auto-issued. Served from Frankfurt, usually live in under a minute.
Regions

1 region live. More on the way.
Every app runs in Frankfurt today; 8 more regions are planned.

LIVE REGION
Frankfurtfra1
ROADMAP
8 planned regions · pick yours when they land
Frankfurt
fra1 · Germany · EU
Live
Istanbul
ist1 · Turkey
Planned
London
lhr1 · United Kingdom
Planned
Washington
iad1 · US-East
Planned
San Francisco
sfo1 · US-West
Planned
São Paulo
gru1 · Brazil
Planned
Singapore
sin1 · Asia-Pacific
Planned
Tokyo
nrt1 · Japan
Planned
Sydney
syd1 · Australia
Planned

Planned regions are a roadmap, not a promise of dates. The region picker in a project's settings lists the same set and marks what is live.

Config as code

Commit the deploy,
or don't.

Drop a buildfyio.yaml in your repo for reproducible, reviewable deploys — or skip it and we'll infer everything. Either way, your build is a signed, cached Docker layer.

YAML
buildfyio.yaml
Dockerfile
bring your own
Zero config
we auto-detect
buildfyio.yaml
1# buildfyio.yaml (optional — auto-generated if missing)2name: acme-web3framework: nextjs4 5build:6  command: pnpm build7  output: .next8 9deploy:10  region: fra1            # Frankfurt — the only live region today11  instance: basic         # 1 vCPU · 1 GB12  autoscale:13    min: 114    max: 1015    target_cpu: 7016 17env:18  DATABASE_URL: ${secrets.DATABASE_URL}19  NODE_ENV: production20 21domains:22  - acme.com23  - www.acme.com
Ready when you are

Ship your next deploy
in the next 10 minutes.

Start free
No credit card. Free forever for hobby apps.