🔧 阿川の電商水電行
Shopify 顧問、維護與客製化
💡
小任務 / 單次支援方案
單次處理 Shopify 修正/微調
⭐️
維護方案
每月 Shopify 技術支援 + 小修改 + 諮詢
🚀
專案建置
Shopify 功能導入、培訓 + 分階段交付

Electron 淘汰!新的桌面端框架 更強大、更輕量化

桌面應用開發中,Electron 與 Tauri 的「兩難」困境長期困擾開發者:Electron 生態成熟、上手簡單(會網頁開發即可),但打包體積臃腫(Hello World 應用超過 100MB)、運行耗內存;Tauri 輕量安全(調用系統原生 WebView),但需掌握 Rust 語言,對純前端開發者門檻較高。

近期香港開源專案 Electrobun v1 版本正式發布,精準解決這一痛點,其口號恰如其分:「終於有一個介於 Electron 的臃腫和 Tauri 的複雜之間,感覺剛剛好的東西了。」

一、什麼是 Electrobun?

Electrobun 是一款基於 TypeScript 构建的跨平台桌面應用框架,核心優勢是兼顧「Electron 的開發便捷性」與「Tauri 的輕量特性」,主打超快速度、超小體積,無需開發者編寫 Rust 或 C++ 代碼。

二、核心架構解析

  • 主進程(Main Process) :基於 Bun 運行時,依托 Bun 的極速特性,保障主進程高性能運行;
  • 渲染進程(Renderer) :複用系統原生 WebView(macOS 用 WebKit、Windows 用 WebView2),無需額外打包瀏覽器內核;
  • 原生綁定:採用 Zig 語言編寫,憑藉 Zig 的高性能的現代化特性,筑牢底層支撐。

這套架構讓 Electrobun 實現驚人突破——打包後應用體積僅約 12MB。

三、核心亮點

1. 極致輕量,告別臃腫

區別於 Electron 打包完整 Chromium 瀏覽器和 Node.js(佔用大量空間),Electrobun 複用系統 WebView,直接節省 80MB+ 空間;搭配更輕量、啟動更快的 Bun 運行時,最終生成自解壓可執行文件,體積控制在 12MB 左右。

2. 增量更新,體驗無感

內置基於 bsdiff 的差分更新機制,若不涉及底層運行時變更,用戶更新僅需下載約 14KB 的補丁文件,大幅提升更新效率,實現近乎無感的更新體驗。

3. 全鏈路 TypeScript,開發高效

這是 Electrobun 區別於 Tauri 的核心優勢:主進程邏輯、UI 界面(支持 React、Vue、Svelte 等)均可用 TypeScript 編寫,無需接觸其他語言。同時內置類型安全 RPC,主進程定義的函數,渲染進程調用時 IDE 會自動提示參數與返回值類型,兼顧開發效率與代碼質量。

4. 底層可靠,性能出眾

底層採用 Zig 語言處理原生綁定,Zig 的高性能特性為 Electrobun 提供了堅實的底層保障,即便開發者僅編寫 TypeScript,也能獲得出色的運行性能。

四、快速上手

Electrobun 上手門檻低於 Electron(依托 Bun 開箱即用),僅需一條命令即可創建模板專案:

npx electrobun init

目錄結構簡潔直觀,主要包含 src/main(主進程代碼)和 src/web(前端代碼)兩部分。

五、客觀評價:並非「銀彈」,但足夠實用

Electrobun 雖優勢突出,但作為 v1 階段的「新生兒」,仍有局限性:

  • 生態成熟度不足:相較於 Electron 十多年 的積累,Electrobun 插件、文檔較少,遇到問題可能需要查閱源碼排查;
  • 瀏覽器兼容性差異:依賴系統 WebView,不同版本操作系統的網頁渲染可能存在細微差異(與 Tauri 面臨相同問題),而 Electron 打包固定 Chromium,可保證渲染一致性;
  • Bun 穩定性待驗證:強依賴 Bun 運行時,Bun 雖發展迅猛,但邊緣場景下的穩定性仍需時間檢驗。

六、總結

Electrobun 為前端開發者提供了 Electron 與 Tauri 之外的第三種選擇,適配不同開發需求:

  • 複雜企業級巨型應用(如 VS Code):優先選 Electron,生態成熟更穩妥;
  • 追求極致性能與安全,且團隊具備 Rust 能力:首選 Tauri;
  • 快速開發小而美工具應用,不想忍受 Electron 臃腫、不願學習 Rust:Electrobun 是最優選擇。

它並非完美的終極答案,但無疑是桌面應用開發向「更輕、更快、更簡單」邁進的重要一步。

參考資料

Electrobun GitHub: github.com/blackboards…


原文出處:https://juejin.cn/post/7612205707502911514


精選技術文章翻譯,幫助開發者持續吸收新知。

共有 0 則留言


精選技術文章翻譯,幫助開發者持續吸收新知。
🏆 本月排行榜
🥇
站長阿川
📝26   💬2  
753
🥈
我愛JS
💬5  
16
評分標準:發文×10 + 留言×3 + 獲讚×5 + 點讚×1 + 瀏覽數÷10
本數據每小時更新一次
🔧 阿川の電商水電行
Shopify 顧問、維護與客製化
💡
小任務 / 單次支援方案
單次處理 Shopify 修正/微調
⭐️
維護方案
每月 Shopify 技術支援 + 小修改 + 諮詢
🚀
專案建置
Shopify 功能導入、培訓 + 分階段交付