Tech
[分享创造] 做了一个无 WebView 的桌面 GUI 框架 Wabou(SolidJS + Rust + Vello)
项目地址: https://github.com/SunDoge/wabou
背景
当前 Rust GUI 开发现状:Tauri 带着浏览器内核,环境碎片化严重、内存重;纯 Rust GUI ( Iced/egui )省资源,但写复杂状态和联动极其痛苦,还没有 HMR 。
因此我在尝试一个折中路线:界面用 SolidJS 写,底层的布局和渲染完全交给 Rust 原生,不嵌浏览器。
架构与原理
没有 DOM ,也没有 HTML/CSS 引擎。分工很简单:
[SolidJS 2 (TSX) + 业务逻辑]
↓
(QuickJS)
↓ 二进制 Mutation 协议(微任务末尾批量推送)
================================
Rust 原生运行时
- 布局:Taffy (Flexbox/Grid)
- 排版:Parley
- 绘制:Vello Hybrid / wgpu
- 窗口:Winit
逻辑层:跑在内嵌的 QuickJS 里。Solid 的细粒度 ...
Read the full discussion on V2EX
This article was aggregated from V2EX. Click to join the conversation.
View on V2EX