Skip to content

Deploy

Live in one deploy. Pick how you get there.

Three ways in, all landing in the same place — your whole email stack on your own Cloudflare account. Click a button from your browser, hand it to your coding agent, or own the code from the first commit. Pick the one that fits how you work; you can't pick wrong.

  • no servers to run
  • · SPF · DKIM · DMARC handled
  • · free to self-host
  • · leave any time

Before you start

Four things to have ready.

Check these once and every path below is straightforward. An agent can run tinbox doctor --preflight yourdomain.com before it starts.

  • A Cloudflare account
  • Your domain is an active Cloudflare zone
  • Cloudflare Workers Paid plan
  • Node.js 20 or newer (for the CLI path)
See the complete prerequisites and token scopes →

Three paths, easiest first.

All three do the same thing — provision your account, wire up mail, and put a live inbox on your domain. They differ only in how hands-on you want to be. Most people start with the button.

PathBest if you want…You'll need
1 Deploy to Cloudflarethe fastest way in, no terminala browser + a Cloudflare account
2 Hand it to your agentit set up while you approve each stepClaude Code, Cursor, or any agent with shell access
3 npx tinboxto own the code from the first commita terminal + Node

No terminal required

Deploy straight from your browser.

Who it's for: anyone who wants the fastest way to a working inbox and would rather not touch a command line.

What happens: the Deploy to Cloudflare button clones the project into your GitHub, auto-provisions everything it needs — storage, queues, inbound routing — and deploys it to your account, all from the Cloudflare dashboard. The in-app setup then walks you through attaching your domain and turning on mail. Creating a Cloudflare account takes about five minutes if you don't have one; nothing installs on your machine.

Deploy to Cloudflare

opens the Cloudflare dashboard

Let an agent do it

Paste the prompt; approve as it goes.

Who it's for: you already run Claude Code, Cursor, or another agent with shell access and you'd rather it did the setup than you.

What happens: Tinbox is built to be agent-operable end to end. The prompt points your agent at the canonical runbook, which checks prerequisites, stops for the few decisions only you can make, and hands you to the web app to claim the owner account.

paste into Claude · Cursor · any agent

Deploy Tinbox to my Cloudflare account.
Follow INIT-INSTRUCTIONS.md from
top to bottom; stop for HUMAN STEPs.
Then hand me off to claim the owner account.

Own the code from the first commit

Scaffold it locally, deploy it yourself.

Who it's for: you want the source in your own repo from commit one — to read it, configure it, and reshape it. The developer path, in two commands.

  1. 01

    Run the installer

    Start with your domain. Tinbox scaffolds your own deployment — the engine, worker, companion app, and deploy configuration — then leads you into the resumable setup.

    npx tinbox init yourdomain.com
  2. 02

    Deploy to your account

    tinbox setup provisions everything inside your Cloudflare account — storage, queues, mail routing, and sending — then deploys the worker. It is idempotent and resumable: a re-run picks up where it left off.

    tinbox setup --deploy
  3. 03

    You're live on your domain

    Send and receive on your own domain, on your own account. Read the full guide for DNS specifics and the resume flow.

    ✓ hello@yourdomain.com is live

True of every path

Deliverable from day one.

However you deploy, the mail path is the same. Inbound rides Cloudflare Email Routing; outbound goes through Cloudflare's managed sending pool with SPF, DKIM, and DMARC set up on your zone — the same authenticated path a hosted sender gives you. You're not warming an IP or building reputation from zero; sending rides Cloudflare's managed pool, the way Resend or SES would handle it for you, correct from the first send.

One domain, one deployment, all in your own account. Each organization runs on its own separate resources — never a shared database. See the full architecture →

Rather not?

Not technical? We'll set it up for you.

If deploy scripts and DNS records aren't your thing, we'll handle the whole setup — domain configuration, mail routing, migration from Mailchimp, the works. You get the exact same ownership: it lands on your Cloudflare account, with your data and keys. We just do the wiring.

Tell us what you need →

Yours to leave any time.

Because it's standard email on infrastructure you control, you can export it, mirror it to git, or walk with all of it whenever you like. Start free; buy the lifetime license when you're ready to own the source.

  • free to self-host
  • your own account
  • no lock-in