Cloudflare Workers Development for Regulated Sites
When the work has to happen before the origin.
Cloudflare is where code runs closest to the reader, and where a capability can be added to a site without touching the CMS underneath it. That second property is the one most people underuse — and it is why our translation product lives there rather than inside anyone’s platform.
Pare Linguist runs on Cloudflare’s edge in production — translating for Visit Santa Cruz County and Brown University Health. The site you are reading runs on Cloudflare too, with its contact API as an edge function.
Cloudflare is a global edge network with compute, storage, access control and bot defence in front of every request. Most institutions meet it as a CDN and a WAF, and stop there. The interesting part starts when you notice that the edge is a place to put behaviour, not just cache — that a feature can intercept a request, do real work, and answer without the origin ever knowing. For a regulated institution that changes the economics of a change — the thing you wanted to add to your site no longer has to be a project inside your CMS, with its release cycle, its vendor and its risk. It becomes a layer in front. The judgment is knowing which capabilities belong there, because the ones that do not belong become a second system no one can see into.
Our Work with Cloudflare
How the Work Splits
A global edge network with compute (Workers), key-value and object storage at the edge, static hosting and serverless functions (Pages), bot and abuse defence (Turnstile), zero-trust access control, and request- and response-level control over headers, caching and routing.
The judgment about what belongs at the edge and what does not — product engineering on Workers, edge state designed so a stored result is reviewable, integration that leaves the institution’s CMS untouched, and the operational discipline that edge deploys demand, including the failure modes that only appear in production.
A capability the institution can add without a platform migration. Pare Linguist is the proof — translation runs at the edge, close to the reader, so a resident who selects Spanish gets the page without a round trip to the institution’s origin — and the institution’s CMS carries none of it. It is installed as a snippet, works with any platform, and is in production for a county government and a health system.
The work in practice
Cloudflare is the least interesting thing on most sites and one of the most useful places to build. It arrives as a CDN, gets configured once, and is then treated as plumbing. What it also is: somewhere code can run in front of everything else you own — which turns out to be the cheapest place to add a capability to a system you are not allowed to rewrite.
What the edge is actually for
A layer in front, instead of a project inside. Regulated institutions run platforms with release cycles, vendors and change control. Adding a feature to the CMS means entering all three. A capability that lives at the edge intercepts the request, does its work, and answers — so the thing you wanted becomes an installation rather than a migration.
Latency you cannot buy back later. Work done close to the reader is work that never crosses the internet to your origin and back. For anything on the critical path of a page render, that difference is the whole user-facing argument.
State that has to be reviewable. Edge storage is what makes a Worker more than a proxy — but a cache no one can inspect is a liability in a regulated context. The design question is not whether to keep results at the edge; it is whether a person at the institution can read, correct and override what is kept.
And the limits, which matter as much. Workers are not where long jobs, heavy dependencies or anything needing a real database belong. The failure mode of edge enthusiasm is a second system, invisible to the institution’s own monitoring, doing work that should have stayed in the platform.
Pare Linguist, in depth
Our translation product is built on this shape, and it is the clearest example we have of why the edge was the right call.
A resident lands on a county page and selects Spanish. The translation happens at the edge, close to them, and the page returns without a round trip to the institution’s origin — so language access never becomes a performance cost on infrastructure the institution is already paying for. It installs as a lightweight snippet, works with whatever CMS is already there, and requires no rebuild and no duplicated content.
What makes it defensible in a regulated context is the state design. Translations are kept after first generation in a Translation Vault, which buys three things at once: nothing is translated twice, the same English string always produces the same output rather than drifting between requests, and the stored result is a dictionary institutional staff can actually read and edit. Preferred terminology is set once. Strings that must never be translated — business names, addresses, legal language — are protected. When the model gets a term wrong, a person fixes that term, and it stays fixed.
It is in production at Visit Santa Cruz County and Brown University Health, and the product page is Pare Linguist.
Running the site you are reading
This site runs on a Cloudflare Worker serving static assets. The contact form posts to a Function compiled into it, protected by Turnstile, and staging is gated behind Cloudflare Access.
That gives us one hard-won operational point worth passing on, because it costs teams real time: Cloudflare bundles Functions separately from your site build. A syntax error in a Function therefore passes every local check — typecheck, build, tests — and fails only on Cloudflare, where the deploy is marked failed and the previous deployment keeps serving. The site looks fine. Nothing you push reaches it. We lost eight consecutive deploys to a single stray backtick inside a template literal before making our own build run Cloudflare’s Function compiler locally. If you run edge functions, run the platform’s real bundler before you push.
If you are weighing the edge
The question is never “should we use Cloudflare” — you already are. It is which capability is a layer in front and which one belongs in the platform. Translation, access control, bot defence, personalization at the header level, anything that has to be fast and does not need your database: those are edge-shaped. Your content model, your workflow, your system of record: those are not, and moving them there is how organizations end up with two platforms and one of them undocumented.
Practice leadership

Christopher Murray
Founder & CEOChris Murray was an early advocate for content management systems, and has spent two decades on what sits around them. The edge is where a capability can be added without reopening the platform underneath.
