The Deno team has recently released Deno 2.9, a platform designed for standalone execution of server and desktop applications in JavaScript and TypeScript. This platform uses the V8 engine, which is also employed in Chromium-based browsers. Developed by Ryan Dahl, the creator of Node.js, Deno aims to provide a more secure environment and eliminate conceptual errors present in Node.js architecture. To enhance security, the V8 engine is written in Rust, and the Tokio platform is utilized to process requests in a non-blocking manner. The project’s code is distributed under the MIT license, with builds available for Linux, Windows, and macOS.
One of the key features of Deno 2.9 is the introduction of experimental tools such as Deno Desktop. This tool enables users to create custom applications with a graphical interface using web technologies, similar to the Electron platform. Application logic and interface can be defined in JavaScript or TypeScript using standard web frameworks, and the operation is structured using a browser engine. The application is delivered as a self-contained executable file and offers a user experience similar to traditional programs with a graphical interface.
Two backends have been developed to work with Deno Desktop – one that utilizes the WebView provided by the operating system and another integrated with the CEF (Chromium Embedded Framework). The WebView-based backend leverages the system browser engine (WebView2 on Windows and WebKit on macOS and Linux) to reduce the size of executable files. On the other hand, the CEF backend ensures consistent interface rendering across Linux, macOS, and Windows platforms but at the expense of larger file sizes. The average executable file size using the WebView backend is estimated to be 40 MB, while the CEF backend results in a size of around 150 MB.