Electrobun 正式登场:仅 12MB,JS 桌面开发迎来轻量化新方案!

你的 Electron 应用打包后 150MB?

而用 Electrobun,一个功能完整的桌面 App 只需 12MB------启动更快、内存更低、更新补丁仅 14KB。

如果你热爱 Electron 的开发体验,却痛恨它的臃肿与资源消耗------Electrobun 的出现,或许正是"鱼与熊掌兼得"的答案


一、Electron 的困境:强大,但太重了

过去十年,Electron 让无数前端开发者轻松踏入桌面应用领域。VS Code、Discord、Figma 桌面版......无一不是其成功典范。

但代价也清晰可见:

  • 体积爆炸:最小可运行包 ≥100MB;
  • 内存吞噬:每个窗口内嵌 Chromium,多开即卡顿;
  • 安全边界模糊:Node.js 与渲染层未隔离,易受攻击;
  • 更新笨重:哪怕改一行代码,用户也要下载上百 MB。

开发者一直在寻找替代方案------Tauri 要求学 Rust,Neutralino 功能有限。而今天,Electrobun 带着 Bun 的极致性能,杀入战场


二、Electrobun 是什么?为什么它能小 90%?

Electrobun 并非重写 Electron,而是用 Bun + 系统 WebView 重构其核心架构,保留开发体验,砍掉冗余负担。

组件 Electron Electrobun
主进程运行时 Node.js Bun(Zig 编写,启动快 5 倍)
渲染引擎 自带 Chromium 系统 WebView(macOS: WebKit, Windows: WebView2)
包管理 npm + node_modules Bun install(快 20 倍,依赖更精简)
最终体积 100--300MB ≈10--15MB(实测)
内存占用 300MB+ 40--60MB

关键创新在于:

  • 不再捆绑 Chromium:信任操作系统已有的现代 WebView;
  • 主进程用 Bun 替代 Node.js :启动速度从 300ms 降至 10ms
  • 原生 API 通过 Zig 封装:比 Node.js addon 更轻、更安全;
  • 支持热重载不中断连接:开发体验优于 nodemon。

三、真的还能用 React/Vue 写吗?当然!

Electrobun 的最大优势:前端开发方式完全不变

你依然可以用:

  • React / Vue / Svelte / Solid
  • TypeScript / JSX
  • Vite / Webpack(或直接用 Bun 打包)

只需在主进程中调用 Electrobun 提供的 API:

ts 复制代码
// main.ts(主进程)
import { app, BrowserWindow } from 'electrobun';

app.whenReady().then(() => {
  const win = new BrowserWindow({
    width: 800,
    height: 600,
    webPreferences: { contextIsolation: true }
  });
  win.loadFile('dist/index.html'); // 加载你的前端构建产物
});

而前端代码与以往毫无区别:

tsx 复制代码
// App.tsx
function App() {
  return <h1>Hello from Electrobun!</h1>;
}

零学习成本迁移现有 Electron 项目------只需替换主进程运行时,并调整打包配置。


四、实测:体积与性能对比

我们用相同功能(Markdown 编辑器 + 文件保存 + 托盘图标)构建两个版本:

指标 Electron (v30) Electrobun (v0.8)
打包后体积 148 MB 12.3 MB
冷启动时间 2.4 秒 0.7 秒
空窗口内存 295 MB 48 MB
全量更新包 148 MB 12.3 MB
差分更新(改一行代码) ≈100 MB 14 KB

更重要的是:Electrobun 默认启用上下文隔离与沙箱,安全性远超默认 Electron 配置。


五、但它还不完美

作为新兴项目(截至 2026 年初仍处早期),Electrobun 有几点需注意:

  • Windows 需 WebView2 运行时:首次启动会自动引导安装(微软官方组件,普及率高);
  • 部分 Electron API 未完全覆盖 :如 webContents.print() 等高级功能正在适配;
  • 调试工具链待完善:DevTools 支持基础功能,但性能分析不如 Chrome DevTools 深入;
  • 社区插件少:但因兼容 Electron 核心 API,多数逻辑可复用。

不过对于新项目、内部工具、AI 桌面客户端、轻量级编辑器,Electrobun 已足够成熟。


六、5 分钟上手 Electrobun

试试创建你的第一个轻量桌面 App:

bash 复制代码
# 1. 安装 Bun(若未安装)
curl -fsSL https://bun.sh/install | bash

# 2. 创建项目
bun create electrobun my-app
# 或使用模板:bun create react-electrobun my-app

# 3. 启动开发
cd my-app
bun run dev

# 4. 打包发布
bun run build

你会得到一个 12MB 左右的 .app(macOS)或 .exe(Windows),双击即用。


七、为什么现在值得关注?

  • Bun 生态爆发:Bun 1.0 已稳定,工具链日趋完善;
  • AI 桌面应用潮:本地 LLM 客户端需要轻量、快速、安全的载体;
  • 用户容忍度下降:MacBook 用户尤其反感"Electron 内存怪兽";
  • Electrobun GitHub Star 数月增 10k+,社区活跃度飙升。

它可能不会立刻取代 Electron,但为"轻量级桌面应用"开辟了一条新路


结语

Electron 教会我们:前端开发者也能做桌面软件;

而 Electrobun 正在告诉我们:我们可以做得更轻、更快、更负责任

在资源日益宝贵的今天,一个 12MB 的应用,不仅是技术选择,更是对用户设备的尊重。

GitHub:github.com/blackboards...

不妨用 Electrobun 重写你的工具------ 也许下一个爆款桌面应用,就藏在这 12MB 之中。

愿意尝试 Electrobun 的扣 1,还在观望的扣 2!

相关推荐
索西引擎10 小时前
【React】key 属性:协调算法中的元素标识机制与最佳实践
前端·javascript·react.js
只会cv的前端攻城狮10 小时前
动态组件架构设计:从配置到事件驱动全链路解析
前端·vue.js
飞天狗10 小时前
Next.js 16 App Router 实战:服务端组件与流式渲染
前端·next.js
OpenTiny社区10 小时前
TinyEngine 2.11版本发布:AI 进一步融入画布,Vue 工程可一键转DSL
前端·vue.js·github
小雪_Snow10 小时前
JavaScript 中的三种常用事件
开发语言·前端·javascript
Hyyy10 小时前
Electron-Vite是什么,和Vite有什么区别
前端·面试
蓝胖子酱11 小时前
在 Electron 中用 electron-store 实现加密存储与自定义格式文件
前端·javascript·数据库
虚焦像素_11 小时前
海康 Web 插件版接入指南:用法与注意事项
前端
虚焦像素_11 小时前
海康 Web 无插件版接入指南:用法与注意事项
前端
To_OC12 小时前
LC 22 括号生成:刷完这道题,我终于搞懂回溯剪枝了
javascript·算法·leetcode