Skip to content

Electrobun

Framework for building small, fast desktop apps in TypeScript, with updates and a native CLI.

Stars
13k
Forks
379
Licence
MIT
Language
Zig
Last update
7 days ago
Type
Framework

What it is

Electrobun is a framework for building cross-platform desktop applications, where the app logic is written in TypeScript. It aims to provide the pieces needed to build, update, and ship a desktop app in one workflow, using Bun as the default JavaScript runtime and a native CLI called Hutch. The README says it produces self-extracting bundles and binary-patch updates to keep downloads small.

  • Build a desktop app with TypeScript for the main process and webview UI
  • Ship small self-extracting app bundles using the system webview
  • Send incremental updates using binary patches with a compressed full download as fallback
  • Create a desktop app with a native GPU surface using the bundleWGPU option described in the README

Great for

  • Developers who already write TypeScript and want to build a desktop app without learning a new UI language
  • Teams that want a single workflow covering building, updating, and distributing a desktop app
  • Developers interested in small app bundles and small update patches
  • Developers who want to use Bun for the main process of a desktop app

Not ideal for

  • People who need a mature, long-established desktop framework with years of production history, since the README does not document that track record
  • Projects that require a fixed, pinned Chromium on every platform without considering the bundle size trade-off, since bundling Chromium increases file size
  • Users who only want to run an existing app rather than build one
Step-by-step guide: how to use ElectrobunInstall, first run, examples, tips and FAQs

How to get it

  1. 1

    Install with a package manager

    You'll need: Bun, npm, or the Hutch install script (the README shows bunx, npx, or curl-based install)

    Install Hutch on macOS or Linux

    curl -fsSL https://hutch.blackboard.sh/hutch/install.sh | sh

    Install Hutch on Windows PowerShell

    & ([scriptblock]::Create((irm https://hutch.blackboard.sh/hutch/install.ps1)))

    Open the template picker

    hutch electrobun init

    Start with Bun instead

    bunx electrobun init
  2. 2

    Run it

    • Install Hutch with the command for your operating system, restarting the terminal if hutch is not found
    • Run hutch electrobun init and choose a template
    • Follow the Quick Start guide on the project website to run the app
  3. 3

    Get the most out of it

    • Use the hutch.config.ts file to choose npm, Bun, pnpm, Yarn, or a custom executable for package operations
    • Enable bundleCEF if you want a bundled, pinned Chromium instead of smaller files, as the README describes
    • Use the electrobun-webview and electrobun-wgpu HTML elements to combine isolated webviews and GPU surfaces
    • Review the Hutch guide for project configuration and version management

Downloads

Strengths

  • Lets you write the main process and webviews in TypeScript, with typed RPC between processes according to the README
  • Focuses on small bundles and small updates using compression and binary patching
  • Offers a single CLI (Hutch) for project setup, toolchains, and version management

Trade-offs

  • Some features, such as the Cottontail runtime, are described as experimental
  • The README says Electrobun's platform layer uses Zig, Objective-C, and C++, so contributors may need familiarity with those languages to debug deeper issues
  • Its documentation lives on an external site; the README itself is truncated and gives limited detail on setup beyond the first steps

How it compares

ProjectStarsTypeLevelUpdatedBest for
electrobun (this)13kFrameworkintermediate7 days agoDevelopers who already write TypeScript and want to build a desktop app without learning a new UI language
electron124kFrameworkintermediate4 days agoWeb developers who want to ship a desktop app using skills they already have
wails36.9kFrameworkintermediate4 days agoGo programmers who want a desktop app with a web-style interface

Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.