Deno Desktop

1080 points · 388 comments on HN · read original →

Points and comments are a snapshot, not live.

Deno 2.9 will ship a command to bundle TypeScript projects into native desktop apps.

`deno desktop` compiles a Deno project into a self-contained binary per platform, bundling code, the Deno runtime, and a web rendering engine. It uses the OS webview by default for small binaries, with an optional bundled Chromium (CEF) backend. The command auto-detects frameworks like Next.js, Astro, and Fresh, running the production server or a dev server with hot module replacement. Communication between backend and UI uses in-process bindings instead of IPC. Cross-compilation from one machine is supported. Built-in auto-update uses binary diffs and rollback on failed launches.

What commenters are saying

Commenters largely see the project as a smart addition that could influence platform choice, noting the small footprint and cross-platform support as an alternative to Electron or Tauri. A debate emerges over web tech as a UI toolkit: some argue it lacks native OS integration and consistency, while others counter that OS-level consistency has deteriorated and cross-platform consistency matters more. Several point out that the comparison page shows savings of roughly 40–150 MB depending on backend. One commenter mentions Blitz (DioxusLabs/blitz) as a similar RUST-based approach that uses HTML/CSS without a JS runtime.

Some commenters defend Electron for its ease of creating uniform UIs across systems, while others argue it often results in poor accessibility and bloat. Tauri is cited as a lighter alternative that reuses the system WebView, producing binaries in the kilobyte range.