Deno 2.9 Ships 'deno desktop' to Build Native Apps From Web Frameworks Without Electron
Deno 2.9, released June 25, adds an experimental deno desktop command that compiles web projects into single-binary native apps using the OS webview by default.
Overview
Deno 2.9, released on June 25, 2026, introduces deno desktop, an experimental command that turns web projects into native, single-binary desktop applications. According to the Deno blog, the tool takes a script or a web framework project and “produces a native, self-contained desktop application where the UI runs in a webview, your logic runs in Deno, and the whole thing compiles down to a single distributable binary.”
The release follows Deno 2.8, which shipped earlier in June with new subcommands and faster npm installs. Deno 2.9 also extends the runtime’s effort to court developers migrating off other JavaScript toolchains.
What deno desktop does
The command auto-detects a range of web frameworks. Per the Deno blog, it works with “Next.js, Astro, Fresh, Remix, Nuxt, SvelteKit, SolidStart, TanStack Start, and Vite SSR” projects.
Its most distinctive design choice is to lean on the operating system’s existing web engine rather than bundling a browser. By default the UI renders using the platform webview — “WebView2 on Windows, WebKit on macOS and Linux,” the Deno blog states. Developers who need identical rendering across platforms can opt into a build that “bundles Chromium through the Chromium Embedded Framework,” at the cost of a larger binary.
The trade-off is size. The Register, which tested the feature, reported that a compiled macOS application using the native WebView measured around 68.5MB, while the Chromium Embedded Framework version reached 308.9MB. The outlet noted that “the native WebView is used by default, rather than bundling the Chromium Embedded Framework (CEF). The advantage is much smaller applications.”
That positioning is an implicit response to Electron. The Register observed that there are “plenty of existing options for building desktop applications with web technology, including the popular Electron used by many well-known applications but sometimes disliked for its high resource usage.”
Easier migration onto Deno
Deno 2.9 also targets developers coming from other package managers. The Deno blog says deno install “now reads npm, pnpm, yarn, and Bun lockfiles directly,” lowering the friction of switching an existing project onto the runtime.
Startup is faster, too. A hello-world program “now cold-starts in about half the time it took in 2.8 (34ms down to 17ms),” according to the Deno blog. The release also advances Deno’s Node.js compatibility target to Node.js 26.
Other additions in 2.9 include support for importing CSS files as constructable stylesheets via import attributes, built-in snapshot testing and parameterized tests through Deno.test.each, and smaller deno compile --bundle output — a lodash hello-world dropped from 11.6 MB to 1.5 MB, the Deno blog reports.
What we don’t know
deno desktop is labeled experimental in 2.9, and Deno has not given a timeline for stabilizing it. Real-world rough edges are already visible: The Register found that while the feature “looks well thought-out,” it is “not yet stable,” and noted issues such as the window close button not working in macOS using WebView. How the tool performs across a wider set of frameworks and platforms, and whether it can meaningfully erode Electron’s footprint among shipping applications, remains to be seen.