Getting startedpm2 · nginx · native Postgres

Setup on aDigitalOcean droplet

A few guided steps from a bare Ubuntu droplet to Backflip live on your domain, over HTTPS. Fill in your variables once and copy the commands — they run from the repo root on your own machine.

Full reference: devops.md in the repo

Step 1 of 9

Get a droplet

You need a fresh Ubuntu droplet to deploy to. Create one on DigitalOcean, note its IP, and come back — everything else happens from your machine.

ImageUbuntu LTS (24.04 or newer), plain image, no marketplace app.
Sizethe cheapest 512 MB droplet is enough to start: provisioning adds 2 GB of swap, and the build-locally deploy keeps heavy work off the droplet. Pick 2 GB+ if you'd rather build on the droplet itself.
Authenticationchoose SSH key and add your public key during creation. No key yet? Generate one below first.
After creationcopy the droplet's public IP; it's the first variable in the next step.
Point your domain at itadd a DNS Arecord for the domain you'll use, directed at the droplet's IP, right after creation. Let's Encrypt verifies domain ownership over HTTP, so until DNS resolves to this droplet the provisioning step can't issue the TLS certificate and the site won't be reachable at your domain. If DNS is on DigitalOcean: Networking → Domains → your domain → A record, hostname @(or a subdomain), directed to the droplet. DNS changes take a few minutes to propagate — adding the record now means it's live by the time you provision.

You don't have to run any of this by hand. Fill in the variables as you go and the last step gives you a summary you can paste into Claude Code, running in your clone of the project — it drives the same devops/ scripts for you.

Run on: your machine — any shell

generate an ssh key (skip if you have one)
ssh-keygen -t ed25519 -f ~/.ssh/id_backflip -C "backflip"cat ~/.ssh/id_backflip.pub

Upload the printed .pub contents in the DigitalOcean panel under Settings → Security → SSH keys, then pick that key when creating the droplet. The private half (~/.ssh/id_backflip) stays on your machine — it's the key path variable in the next step.

Referral link — new DigitalOcean accounts get free starting credit, and it supports this project. Already have a droplet? Skip straight to the next step.

1 / 9

These values stay in this browser tab. The page has no server action and makes no network call — your entries and your place in the wizard are kept in this tab’s session storage only, dropped when the tab closes, and passwords are never stored at all. The only thing that leaves is a command you copy yourself.