用 JavaScript、HTML、CSS 构建跨平台桌面应用的框架,基于 Chromium + Node.js,MIT 协议,12 万+ stars。桌面应用框架事实标准,VSCode、Discord、Slack、Figma(部分模块)等知名应用基于它构建。
核心特性
- Chromium 内置:每个应用打包自带完整 Chromium 渲染引擎,跨平台渲染行为高度一致,代价是体积通常 100MB+
- Node.js 主进程:主进程运行 Node.js,可直接使用 npm 生态的所有包,无需额外绑定层
- 多进程架构:主进程(Main Process)负责原生能力和窗口管理,渲染进程(Renderer Process)跑页面,通过 IPC(
ipcMain/ipcRenderer)通信 - 成熟生态:官方打包工具 Electron Forge / electron-builder,自动更新、代码签名、notarization 等发布链路方案齐全
- 多语言文档与庞大社区:长期维护,插件、脚手架、调试工具链非常丰富
快速开始
npm install electron --save-dev
npx create-electron-app my-app
cd my-app
npm start与 Electrobun 的定位差异
Electrobun 是 Electron 的轻量替代方案,两者定位对比见 electrobun 的「与 Electron 的定位差异」章节:核心区别是 Electron 内置固定版本 Chromium(体积大、行为一致),Electrobun 默认用系统原生 webview(体积小、需兼容多种引擎版本)。
选型简单判断:
- 要最强生态、最一致的跨平台渲染行为、团队已熟悉 Node.js → Electron
- 要最小体积、增量更新友好、能接受 Bun 生态和相对新的项目 → Electrobun
相关
- electrobun — Electron 的 Bun 驱动轻量替代方案,体积和更新包更小
- README — Electron 应用依赖管理常用 npm