BuildNot yet confirmed elsewhere1 publisher3 min readPublished
Deno's move to Cloudflare sets an April 2027 shutdown for Deno Deploy
Deno Deploy shuts down around April 2027 under Ryan Dahl's plan to move the whole Deno team to Cloudflare, a dev.to migration guide reports. Hosted apps must move by then; teams self-hosting Deno get a longer deadline set by the end of security releases.
The Engineer · Build desk

What happened
- Paying Deno Deploy customers get migration support to Cloudflare Workers before the service goes dark.
- Deno runtime development ends in one year, after which monthly bug-fix and security releases continue for another year and then stop.
- JSR, the JavaScript registry, keeps operating, with its infrastructure moving to Cloudflare.
- Cloudflare plans to integrate rusty_v8 into workerd, the runtime that powers Workers.
- Dahl describes a new project, celld, as building scaling into the Workers programming model instead of leaving it to autoscalers.
Why it matters
- cost Porting effort for a Deploy app scales with how much of its Deno KV use is transactional, since that part moves to a different storage model.
- capability Route handlers carry over with their logic intact, so teams can port and test the HTTP layer early while the storage redesign is still open.
- exposure Teams that self-host Deno take on their own security patching, or depend on a fork, once Deno's maintenance releases end.
- decision Choosing a platform other than Workers means moving away from the codebase where Deno's own engineers will now be working.
The two dates bind different teams. Deno Deploy is a hosted service, so apps still on it stop serving when it goes dark around April 2027 [2]. The runtime stays open source [5]. A self-hosted Deno process keeps running after the company stops working on it; it just stops getting patches. Counting from the October 9, 2026 announcement [20], the guide's one-year end for runtime development lands around October 2027 [21]. If the extra year of maintenance releases runs from that point, the last security fix ships around October 2028 [22]. After that, self-hosted users rely on a community fork; the guide says one is possible [5].
The hard deadline belongs to Deploy customers. The guide's porting map puts little of their work in the HTTP layer. Its author says every Deploy app they have seen uses Deno.serve, state in Deno KV, and sometimes a cron [12]. Deno.serve() becomes an `async fetch(request, env, ctx)` method on a default export, because Workers are event-driven and have no server to start [13]. In the guide's example the routing body is identical on both sides and only the wrapper changes [13]. Deno.cron() becomes a Cron Trigger declared in the Wrangler file and run by a `scheduled` handler [15]. Static files go into the assets config, where Wrangler serves the directory and falls through to the Worker for API routes [17].
npm dependencies come down to one value. Workers turn on `nodejs_compat` by default for compatibility dates of 2026-08-04 or later, according to Cloudflare's compatibility flags docs as the guide cites them, so imports of Node built-ins run without extra flags [16].
State is where the port stops being mechanical. Six months [2] is enough to swap a server wrapper and less generous for a storage redesign under live traffic. The guide calls the Deno KV replacement the one real design decision: Workers KV for simple reads, Durable Object storage when the app needs transactions [14].
We'd take the guide as an accurate list of API equivalents and an untested account of behaviour under load. Its author says they checked every API detail against Deno's and Cloudflare's documentation and has not run a Deno Deploy app in production [18].
Cloudflare's own direction points the same way for stateful code. The Deno team is joining the Workers and Durable Objects teams [9]. According to the guide, Dahl writes that Durable Objects offer a mix that suits agent harnesses especially well: cheap serverless compute, persistent state, WebSocket support and a high-level JavaScript API [10]. The guide's author concludes that the destination is Durable Objects, not a standalone Deno runtime competing with Node [11]. We think that makes Workers with Durable Objects the default target for Deploy apps that hold transactional state. Its checklist still asks whether to migrate at all [19].
What to watch
- A community fork of the Deno runtime that commits to security releases after the company's maintenance window closes.
- An exact Deno Deploy shutdown date and the terms of migration support for paying customers.
- What celld ships as, and whether workerd with rusty_v8 runs Deno-style APIs.
Clarity's read
What the record supports and how the coverage leans. The claims behind it follow.
Reality
- Evidence45
- Adoption
- Insufficient
- Hype gap+10
- Incentives
- Insufficient
- Confidence40
Claim ledger
Ranked by verification strength, evidence, and original report placement.
- [1]
On October 9, Ryan Dahl announced that the entire Deno team is joining Cloudflare.
- [2]
Deno Deploy shuts down in six months; the service goes dark around April 2027.
- [3]
Paying Deno Deploy customers get migration support to Cloudflare Workers.
- [4]
Deno runtime development ends in one year; monthly releases with bug fixes and security updates continue for another year, then stop.
- [5]
Deno stays open source, so a community fork is possible, but the company behind it is moving on.
- [6]
JSR, the JavaScript registry, continues operating, with its infrastructure moving to Cloudflare.
- [7]
rusty_v8 survives, and Cloudflare plans to integrate it into workerd, the runtime that powers Workers.
- [8]
Dahl describes a project called celld as building on the Cloudflare Workers programming model so that scaling is part of the programming model itself rather than something bolted on with autoscalers.
- [9]
The Deno team will combine forces with the Workers and Durable Objects teams.
- [10]
Dahl writes that Durable Objects bring together capabilities particularly useful for agent harnesses: inexpensive serverless execution, persistent state, WebSockets, and a high-level JavaScript interface.
- [11]
The guide's author argues the destination is Durable Objects, not a standalone Deno runtime competing with Node.
- [12]
Every Deno Deploy app the author has seen uses a server started with Deno.serve, some state in Deno KV, and maybe a cron.
- [13]
Deno.serve() becomes a Worker fetch handler (export default { async fetch(request, env, ctx) }); Workers are event-driven so there is no server to start, and route handling logic ports almost line for line, with only the wrapper changing in the guide's example.
- [14]
Deno KV becomes Workers KV for simple reads, or Durable Object storage when transactions are needed; the author calls this the one real design decision in the migration.
- [15]
Deno.cron() becomes a Cron Trigger configured in the Wrangler file with a scheduled handler.
- [16]
Workers enable Node.js compatibility (nodejs_compat) by default for compatibility dates of 2026-08-04 or later, per Cloudflare's compatibility flags docs, so code that imports Node built-ins runs without extra flags.
- [17]
Static files move into the assets config; Wrangler serves a static directory and falls through to the Worker for API routes.
- [18]
The author verified every API detail against Deno's and Cloudflare's official documentation and has not personally operated a Deno Deploy app in production.
- [19]
The guide includes a decision checklist for whether to migrate at all.
- [20]
The announcement was made on October 9, 2026.
- [21]
Deno runtime development ends around October 2027.
- [22]
If the extra year of maintenance releases runs from the end of development, the last bug-fix and security release ships around October 2028.
Sources
1 independent publisher whose own reporting we read for this story.
- dev.toDeno Deploy Shuts Down in Six Months. Here Is the Migration Path to Cloudflare Workers.
1 article · October 10, 2026
Topics and entities
Follow any of these and your For You feed starts watching them — no settings page required.
Topics
- Edge computingFollow
- JavaScript runtimesFollow
- Serverless PlatformsFollow
- Service shutdowns and migrationsFollow