Electron
开源跨平台桌面应用框架,把 Chromium 和 Node.js 打包进应用,用前端技术栈写 Windows、macOS、Linux 程序,主进程 API 可调窗口、菜单和通知,适合手里有现成 Web 项目、想再包一层做成桌面客户端的团队。
Electron 是一个用网页技术写桌面程序的框架。它把 Chromium 渲染引擎和 Node.js 运行时一起打包进你的应用,于是前端开发者不用另学一套原生开发,就能做出在 macOS、Windows、Linux 上运行的桌面软件。VS Code、Slack、Discord、Figma、Notion、Obsidian 这些常见客户端都是用它做的。
主要功能
框架提供主进程 API,用来调系统窗口、应用菜单、对话框和通知;autoUpdater 模块配合 Squirrel 给 macOS 和 Windows 用户推送新版本;crashReporter 收集 JavaScript 和原生崩溃数据,可以接第三方服务,也能自建 Crashpad 服务器。打包方面,社区工具能生成 .dmg、.msi、.rpm 等安装包,官方还支持上架 Mac App Store、Microsoft Store 和 Snap Store。
前端这边不设限制,React、Vue、Angular、TypeScript、Tailwind CSS 都能直接用,npm 生态里的包随便挑,也可以写原生扩展。官方另配了 Electron Forge 做脚手架和发布,Electron Fiddle 用来跑小段实验代码,保存成 GitHub Gist 后别人打开链接就能试。
适合谁
手里有现成 Web 项目、想再包一层做成桌面客户端的团队;需要一套代码同时覆盖三个桌面系统的独立开发者;以及想用前端技术栈做工具类软件的人。如果只是要一个轻量小工具,或者对安装包体积和内存占用很敏感,Electron 打包出来的程序会偏重。
费用与限制
项目本身开源,归 OpenJS 基金会,代码在 GitHub 上,用 npm 安装即可,不需要注册账号。页面当前列出的稳定版是 Electron 45.2.3,对应 Node 24.22.2 和 Chromium 156.0.8078.80,另有预发布和每日构建通道。文档和界面以英文为主,提供中文在内的多语言切换。