• 请不要在回答技术问题时复制粘贴 AI 生成的内容
bnpysse
V2EX  ›  程序员

刚写了套桌面应用的代码

  •  
  •   bnpysse · 2 days ago via Android · 990 views
    https://github.com/bnpysse/erth_assistant ,请大家品鉴。😄

    ERTH Assistant 🪐

    License Version Architecture



    ERTH Assistant 是一款拥有“极客灵魂”的跨平台桌面应用。它脱胎于《全栈极客开发图鉴》( The Full-Stack Geek's Guide ),展示了如何通过异构双核架构与前端零 JS 约束,打造一个极速、安全的下一代个人信息管理( PIM )与 AI 代理中枢。



    ✨ 核心亮点 (Core Features)

    ⚡️ 异构双核架构:前端基于 ElectroBun 极速渲染,后端基于 Python Robyn 强力驱动,彻底抛弃传统重型 Electron 框架。

    🛡️ 前端零 JS 宪法:完全采用 HTMX 进行局部超媒体 DOM 交互,界面由原生 HTML + Tailwind CSS 锻造,杜绝前端状态机混乱。

    🧠 本地大语言模型 (LLM):通过离线挂载 Ollama 模型,将 AI 算力留在本地,实现断网可用与极致隐私保护。

    💾 分布式边缘数据库:采用 Turso (libSQL) 作为底层数据库,搭配 SQLModel 强类型约束,构建极速边缘数据流。

    🪄 幽灵面板交互:注入 macOS 原生 Cocoa 框架,实现系统级全局快捷键唤醒与沉浸式毛玻璃悬浮视窗。

    🧩 动态热插拔插件:系统级安全沙箱隔离,支持 Python 插件的动态挂载,业务扩展无需重新编译。

    📦 全平台降维分发:利用 GitHub Actions 实现一键跨平台交叉编译( Windows / macOS / Linux ),生成开箱即用的 .app 、.exe 与二进制包。

    🚀 极速体验 (Quick Start)

    如果你不想配置开发环境,可以直接前往 Releases 页面 下载对应操作系统的免安装独立包,双击即可运行。



    🛠️ 开发指南 (Development)

    本项目适合作为深入学习现代跨端开发架构的超级模板。



    环境准备

    安装 Bun 运行时 (推荐 v1.1+)

    安装 UV (极速 Python 包管理器)



    确保拥有 Python 3.11+ 环境

    本地启动

    # 1. 克隆代码库

    git clone https://github.com/bnpysse/erth_assistant.git

    cd erth_assistant



    跨平台打包封存

    我们在仓库内为您准备了跨平台的自动封存脚本:



    Mac/Linux: 进入 src-app/backend ,运行 bash build_backend.sh

    Windows: 进入 src-app/backend ,运行 .\build_backend.ps1

    随后进入 src-app/frontend 执行 bunx electrobun build 即可完成最终的桌面端组装。



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

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



    📄 许可证 (License)

    本项目基于 MIT License 开源,您可以自由地使用、修改和分发。



    # 2. 启动前端与主进程

    cd src-app/frontend

    bun install

    bun run dev



    # 注意:ElectroBun 的开发模式会自动拉起后端的 Python 进程,无需手动启动后端。
    4 replies    2026-06-05 00:16:14 +08:00
    Cheez
        1
    Cheez  
    PRO
       1 day ago
    AI 味道太重了。可以尝试着用自己的话介绍一下。
    bnpysse
        2
    bnpysse  
    OP
       20h 17m ago via Android
    @Cheez 哈哈,全靠 AI 自吹自擂了。
    不过,我的想法,我觉得还是有一定可取之处的。

    比如我不行学 MacOS 开发的那套框架,可是有 MacOS 的开发需求怎么办呢?
    于是就选了 ElectroBun ,这个东西足够精悍,完全可以满足需要。

    那么后台我就选了当前评价最快的 Robyn ,处理前端需求。

    数据库用了 Turso ,Turso 的最大特点就是断网状态下自动保存在本地端,待网络恢复后,自动同步。这是 Turso 自身的最大卖点,觉得速度还行。

    HTMX 的选择也是不行再弄 React/Vue 等等,那些东西太庞杂了,等你能够熟练掌握了,可能有过时了。

    还不如用最简单的 HTMX ,本来我的界面就不复杂,仅供抛砖引玉之用。

    希望大家积极参与讨论,评测。

    谢谢❤️
    jaoyina
        3
    jaoyina  
       17h 31m ago
    @bnpysse

    能管理些什么啊,搞个截图看看吗?
    bnpysse
        4
    bnpysse  
    OP
       6h 18m ago via Android
    主要是想体现我搞的这个框架是可行的,我们可以不用去搞 React/Vue ,也可以写出高质量的代码。
    就是把自己使用过程中的遇到的一些问题,还有应用过程写了一下。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1049 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 837ms · UTC 22:34 · PVG 06:34 · LAX 15:34 · JFK 18:34
    ♥ Do have faith in what you're doing.