Telephony with an edge-native control plane
The PBX with a
control plane on the edge.
cf-pbx is a multi-tenant phone system with a twist: its entire control plane — dashboard, config, APIs, even the live-call view — runs on Cloudflare Workers, with nothing to provision or scale. FreeSWITCH still handles the actual call audio on a media node; the edge runs everything around it.
A modern edge control plane, a proven telephony engine
Everything around the call — config, auth, routing logic, live state — behaves like a modern web app: globally distributed, scale-free, instant. FreeSWITCH does the heavy lifting on the call itself.
Edge control plane
Config, auth and APIs run on Cloudflare Workers across 300+ cities — no origin server to scale, patch or wake. Zero cold starts.
Truly multi-tenant
Every customer is an isolated FreeSWITCH domain with its own extensions, trunks and routing. One platform, hard walls between tenants.
Config as data, in D1
Your whole phone system is data in Cloudflare D1. Every deploy is rendered and validated before it ever touches a media node.
Real-time at the edge
Live calls and CDRs stream into Durable Objects, so the dashboard shows what's happening on the phones right now — not five minutes ago.
Encrypted by default
SIP over TLS, SRTP media, carrier credentials AES-encrypted at rest. Trunk secrets never sit in plaintext anywhere.
Batteries included
Voicemail with push alerts, IVR menus, ring groups, business hours and click-to-dial — all managed from a single dashboard.
So… what does "cloud-native" actually mean here?
Honest version: the parts that can live on the edge, do. The dashboard, the APIs, your whole configuration and the live-call view run as code on Cloudflare's global network — nothing to provision, patch or scale. The calls themselves still need a real media server, and that's FreeSWITCH on a node we operate. So no, it isn't magic and there's still a box somewhere — but everything around the call is genuinely cloud-native.
How it works
Cloudflare Workers control plane
The dashboard, APIs and config logic run as Workers — globally distributed, instantly available, nothing to provision. D1 holds the source of truth.
Validated, atomic deploys
Press deploy and your config is rendered, checked and shipped to a media node over a private channel. Bad config is caught before it reaches a phone.
FreeSWITCH media nodes
Battle-tested FreeSWITCH carries the actual audio — SIP, codecs, recording, voicemail — while the edge stays in charge of everything around it.
Get in touch
Want a tenant on the platform, a demo, or just curious how it's put together? Drop a line below — it goes straight to my phone.
No tracking, no newsletter. Spam-protected by Cloudflare Turnstile — see Cloudflare's Privacy Policy and Turnstile Privacy Addendum.