Forge is an Electron alternative using Deno and native WebViews.
Smaller bundles. Faster startup. Stronger security.
curl -fsSL https://forge-deno.com/install.sh | sh Everything you need to build modern desktop applications
Rust-powered runtime with system WebViews. No Chromium bloat. Apps start instantly.
Write your entire app in TypeScript. Full type support with Deno runtime.
Explicit permission model. Apps declare exactly what they need. Sandboxed by default.
Build for macOS, Windows, and Linux from a single codebase. Native look and feel.
Use React, Vue, Svelte, or vanilla JS. Your choice, your workflow.
~15MB app bundles vs Electron's 150MB+. 10x smaller, faster downloads.
Build desktop apps with the same code you already know
// Your app's entry point
import { openWindow, windowEvents } from "host:ui";
import { readTextFile } from "host:fs";
// Open a window with native WebView
const win = await openWindow({
url: "app://index.html",
title: "My Forge App",
width: 900,
height: 600,
});
// Listen for events from your UI
for await (const event of windowEvents()) {
if (event.channel === "load-file") {
const content = await readTextFile(event.payload);
win.send("file-loaded", content);
}
} <script>
// Send messages to Deno runtime
window.host.send("load-file", "/path/to/file");
// Receive responses
window.host.on("file-loaded", (content) => {
document.getElementById("editor").value = content;
});
</script>
<textarea id="editor"></textarea> See how Forge compares to the industry standard
* Benchmarks are approximate and may vary based on app complexity and system configuration.
From zero to desktop app in four commands
curl -fsSL https://forge-deno.com/install.sh | sh forge init my-app cd my-app && forge dev . forge build . && forge bundle .