桌面应用开发代码实战指南

2026-06-03阅读 0热度 0
桌面应用

刚写了套桌面应用的代码

最近团队在推进一个有意思的项目,今天总算把核心代码推向公开了。https://github.com/bnpysse/erth_assistant,欢迎感兴趣的同行们来品鉴一下源码和架构思路。 项目名为 ERTH Assistant,定位是一款带有“极客灵魂”的跨平台桌面应用。它的诞生脱胎于《全栈极客开发图鉴》,某种程度上,它也是那本书的实战落地——完整展示了如何通过异构双核架构与前端零 JS 约束,打造一个既快又安全的个人信息管理(PIM)与 AI 袋里中枢。

核心亮点

架构方面,项目采用了异构双核设计。前端由 ElectroBun 负责极速渲染,后端则依靠 Python Robyn 强力驱动。这意味着,我们彻底告别了传统的重型 Electron 框架,从底层就甩开了不少历史包袱。 前端部分,我们坚持“零 JS 宪法”。整个界面交互完全由 HTMX 进行局部超媒体 DOM 更新,界面本身由原生 HTML 加上 Tailwind CSS 锻造而成。这意味着前端状态机的混乱局面在这里被彻底杜绝,代码逻辑清晰了不少。 AI 能力的部分,我们选择了一条更务实的路——本地大语言模型(LLM)。通过离线挂载 Ollama 模型,所有 AI 算力都留在用户本地。断网可用,而且在隐私保护上,可以说是做到了极致。 数据层则依托分布式边缘数据库 Turso(基于 libSQL),配合 SQLModel 的强类型约束,构建起一条极速的边缘数据流。在这方面,性能表现是实打实的。 交互上有个亮点值得一提:幽灵面板。项目注入了 macOS 原生 Cocoa 框架,直接实现了系统级的全局快捷键唤醒,搭配沉浸式毛玻璃悬浮视窗,使用体验相当顺滑。 扩展性上,系统内置了动态热插拔插件机制。通过系统级安全沙箱隔离,支持 Python 插件的动态挂载。业务的扩展再也不用重新编译整个项目了,对开发者相当友好。 最后是分发环节。我们借助 GitHub Actions 实现了全平台降维分发,一键跨平台交叉编译(Windows / macOS / Linux),直接生成开箱即用的 .app、.exe 与二进制包。

极速体验

如果不想折腾开发环境,可以直接去 Releases 页面下载对应操作系统的免安装独立包。双击即运行,没有任何多余的步骤。

开发指南

这个项目非常适合作为深入学习现代跨端开发架构的超级模板。 环境准备方面,需要先安装 Bun 运行时(推荐 v1.1+),以及 UV 这个极速 Python 包管理器。当然,还需要确保有 Python 3.11+ 的环境。 本地启动的流程也比较简洁:克隆代码库后,进入 src-app/frontend 目录执行 bun install,然后运行 bun run dev 即可。需要注意的是,ElectroBun 的开发模式会自动拉起后端的 Python 进程,所以不需要手动去启动后端,这一点相当省心。 跨平台打包封存,仓库内已经准备好了自动脚本。Mac/Linux 用户进入 src-app/backend 运行 bash build_backend.sh,Windows 用户则运行 .build_backend.ps1。完成后,进入 src-app/frontend 执行 bunx electrobun build,就能完成最终的桌面端组装。

关于《全栈极客开发图鉴》

这个项目的架构推演、踩坑记录以及背后的设计哲学,全部完整记录在《全栈极客开发图鉴》一书中。代码库中的每一个分支和 Tag,都对应着书稿里步步为营的战术演进。

许可证

项目基于 MIT License 开源。可以自由使用、修改和分发。
免责声明

本网站新闻资讯均来自公开渠道,力求准确但不保证绝对无误,内容观点仅代表作者本人,与本站无关。若涉及侵权,请联系我们处理。本站保留对声明的修改权,最终解释权归本站所有。

相关阅读

更多
欢迎回来 登录或注册后,可保存提示词和历史记录
登录后可同步收藏、历史记录和常用模板
注册即表示同意服务条款与隐私政策