Documentation

How ForkDeploy works

The short version of everything: what the platform is, what happens when you push, and where the deeper pages live.

What ForkDeploy is

ForkDeploy is a hosting platform for monorepos. You describe the services in your repo with one small config file, push with git, and the platform builds, wires, and deploys them as a single connected whole. Kubernetes does the heavy lifting underneath, but you never write a manifest.

Project
One monorepo, deployed as a unit. A project owns its services, secrets, and domains.
Service
One running piece of your repo: an API, a frontend, a database, a worker. Built from a Dockerfile or pulled as an image.
Dependency
A declared relationship between services. ForkDeploy uses these to compute the deploy order.
Secret
An encrypted value set once at project level and injected into the services you choose.

What happens when you push

  1. 1

    Read

    ForkDeploy reads forkdeploy.yaml at your repo root and resolves the dependency graph.

  2. 2

    Build

    Each service with a build path gets its container image built from its Dockerfile, in an isolated builder.

  3. 3

    Wire

    Secrets and service URLs are injected as environment variables. Services find each other by stable internal DNS names.

  4. 4

    Roll out

    Services deploy in dependency order. A new version only replaces the old one once it is healthy, so nothing goes dark.

Quick start

The smallest possible project is one file with one service. Drop this at your repo root and connect the repo in the dashboard:

# forkdeploy.yaml
project: my-app

services:
  web:
    build: .
    port: 3000

Ready for more services, dependencies, and secrets? The full reference covers every field.

Go deeper