#cloudflare
Workers, D1, Pages, R2 and the rest of the Cloudflare platform.
2026
What Cloudflare can still do to us
Decision recordWe moved TipBop and TyreStack to Cloudflare in a day and made it the default for everything. This is the case against that, from our own standard: five ways it fails, the limits we accepted, and four conditions that would send us back.
Postgres to D1, with the rollback timed first
Deep diveD1 has no interactive transactions, and TipBop's payouts relied on them. How we moved a tipping app in beta off Postgres in a day: a lease row for the locks, one schema for 37 migrations, and a rollback we timed before we needed it.
The outage that moved us to Cloudflare
Decision recordAt 06:02 a Google Cloud zone stopped answering and took two products, both still in beta, with it. Our own review said stay and pay for high availability. By 15:45 we had left anyway. Here is the reasoning, and the objections to it.
ZooLog is on Cloudflare from the first commit
Decision recordTwo days in, the keeper app runs on Workers, D1, Queues and R2, with no other backend behind it. That was the easy decision. The hard one is what happens when a keeper logs a feed where the phone has no signal.