Joining Cloudflare: Deno Team to Expand Workers Self-Hosting

Joining Cloudflare: Deno Team to Expand Workers Self-Hosting
A server-room aisle with rows of enclosed racks and equipment.
On this page

Joining Cloudflare, the Deno team plans to combine its celld project with the company’s workerd runtime. The teams say they want to make self-hosting applications built with the Workers programming model easier to operate across machines.

The announcement brings together work on a JavaScript runtime and a system designed for distributed services. Deno creator Ryan Dahl said developers still have to assemble infrastructure around a runtime, including ways to distribute computation, coordinate state, store data and scale applications.

Dahl traced the idea to an IRC server he introduced in a Berlin warehouse while presenting Node.js. The demonstration used 500 lines of JavaScript and showed how asynchronous networking could simplify server software. He said the example stayed with him because it ran on one server and one thread, while a larger chat system would need channels shared across multiple machines.

Blue-lit server racks in a data center
Blue-lit server racks in a data center. Illustrative stock photo via Pexels.

Cloudflare’s Durable Objects gave Dahl a model for that kind of application. Each object acts like an individually addressable small server with its own relational database. Its JavaScript runs on a single thread, it can handle WebSockets, and its local SQLite database can be accessed synchronously.

In Dahl’s example, an application could assign one Durable Object to each chat channel. That arrangement divides the data and WebSocket connections by channel. The same abstraction can support other services, including queues, key-value storage, workflow execution and Git storage, according to the source.

Joining Cloudflare to Make Workers Easier to Self-Host

Running this model outside Cloudflare remains difficult. The workerd runtime is open source, but its Durable Objects support has been limited to a single instance. Dahl said he wanted a distributed version that could place IRC channels across machines while handling placement, routing and durable storage.

He started celld to address that need. The project was designed as one Rust binary with object storage as its only external service dependency. Operators would manage multiple celld instances and one object-storage bucket, while an application could use compute, relational databases, queues and real-time communication.

Dahl said the Deno team is joining Cloudflare to bring celld and workerd together. For the Deno team, joining Cloudflare places that work within the company’s runtime project. Cloudflare says Ryan Dahl and Bert Belder will lead a new effort to make self-hosted workerd a first-class supported way to build and run applications using the Workers model. The work will involve merging code and ideas from celld back into workerd.

The announcement describes a plan, not a finished distributed release. Cloudflare says it expects to share more about the work in the coming months. Developers can already try self-hosting celld or workerd, but the announcement does not describe a completed combined system or its deployment requirements.

Cloudflare also addressed the concern that applications built for Workers could be difficult to move to another provider. The company says workerd is the same open-source runtime it uses in production, rather than a separate implementation. It says some former customers have used workerd to migrate away from its hosted service.

Cloudflare said it released workerd intending for people to use it in production, but acknowledged that few have done so. Its post attributes that gap partly to a limited ecosystem of adjacent services and tools. The company said it had released the runtime and hoped the community would adapt it to different environments.

Durable Objects are another obstacle to self-hosting at scale. Cloudflare said workerd implements them in a single-instance form suitable for local testing, but that arrangement cannot scale across machines. Its own production routing system was designed for hundreds of locations and relies on outside services and operational support that self-hosters may not want.

Cloudflare said celld was designed for self-hosting and scalability, and that its teams had wanted to build a similar option. The company described Dahl and the Deno team as having experience creating developer tools around a self-hosted runtime. That experience is part of the stated reason for joining Cloudflare on the project.

The partnership follows the Deno team’s release of celld in August. Cloudflare said it welcomed the project because it offered an open-source approach to running Workers and Durable Objects beyond Cloudflare. The company characterized open source as an escape route for customers, and said that openness had helped customers consider using Workers in the first place.

The practical next step is the joint work led by Dahl and Belder. Cloudflare says they will make self-hosting workerd a supported option and bring celld’s code and ideas into the runtime. The announcement leaves the timing and final architecture open, while pointing developers who want to start today toward self-hosting celld or workerd. Read the announcement from Cloudflare for the teams’ account.

The project also sits within wider conversations about hosting and developer platforms. Readers can compare that context with AI platform interfaces, hosting performance standards and Cloudflare’s work on event streams.