用 Zig 构建桌面应用的工具包,可用 GPU 绘制原生界面,也可嵌入系统 webview 网页。
anomalyco/rune
面向 macOS、Windows、Linux 和 Web 的原生 GPU 渲染 Rust UI 框架,自带渲染器、文本、布局与弹簧动画。
- Star
- 3,536
- Fork
- 100
- 未关闭 Issue
- 21
- 最近提交
- 2小时前
这是什么?
Rune 是一个用 Rust 编写的 UI 框架,使用自研的渲染器、文本排版、布局引擎和弹簧动画在 GPU 上绘制界面,可从同一套 Rust 代码面向 macOS、Windows、Linux 和 Web。界面以返回元素树的 Rust 函数描述,尺寸、填充、圆角、焦点、角色和按压回调等都通过链式调用设置。
每个应用都可以无界面(headless)运行,脚本或编码 Agent 因此能够把一帧渲染成 PNG、导出元素树,并用脚本化输入驱动界面,无需打开窗口即可检查视觉效果。仓库包含示例目录、rune-kit 组件库(如分栏 diff 组件)以及一组 GPU 视觉特效。
项目目前处于预发布阶段,作为依赖引入时建议锁定 dev 分支的某个 git revision。
核心功能
- 01基于自研渲染器、文本、布局与弹簧动画,在 GPU 上原生绘制界面。
- 02同一套 Rust 代码支持 macOS、Windows、Linux 和 Web。
- 03无界面模式可输出 PNG 并导出元素树用于检查。
- 04支持脚本化输入,便于测试或由 Agent 驱动界面。
- 05提供 rune-kit 组件库和 GPU 视觉特效。
适用场景
- 用 Rust 构建跨平台桌面或 Web 应用,并使用自定义 GPU 界面。
- 让编码 Agent 在没有显示器的环境中构建并验证 UI。
- 通过渲染 PNG 进行自动化视觉回归检查。
- 使用弹簧动画原型化带动效的界面。
快速上手
- 1
将 Rune 以 git 依赖方式添加,并固定到 dev 的某个修订版本
rune = { git = "https://github.com/anomalyco/rune", rev = "<dev rev>" } - 2
从 hello 示例开始,并阅读 crate 文档
使用前须知
- Rune 处于预发布阶段,可能出现破坏性变更。
- 由于没有已发布的 crate 版本,必须固定 git 修订版本。
收录于专题
标签
常见问题
- rune 是什么?
- 面向 macOS、Windows、Linux 和 Web 的原生 GPU 渲染 Rust UI 框架,自带渲染器、文本、布局与弹簧动画。 Rune 是一个用 Rust 编写的 UI 框架,使用自研的渲染器、文本排版、布局引擎和弹簧动画在 GPU 上绘制界面,可从同一套 Rust 代码面向 macOS、Windows、Linux 和 Web。界面以返回元素树的 Rust 函数描述,尺寸、填充、圆角、焦点、角色和按压回调等都通过链式调用设置。
- rune 可以免费使用吗?用的什么许可证?
- rune 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- rune 还在维护吗?
- 活跃维护中。rune 最近一次提交是在 2026年11月7日。
- rune 适合用来做什么?
- 用 Rust 构建跨平台桌面或 Web 应用,并使用自定义 GPU 界面。 让编码 Agent 在没有显示器的环境中构建并验证 UI。 通过渲染 PNG 进行自动化视觉回归检查。 使用弹簧动画原型化带动效的界面。
- rune 怎么安装和运行?
- 将 Rune 以 git 依赖方式添加,并固定到 dev 的某个修订版本: rune = { git = "https://github.com/anomalyco/rune", rev = "<dev rev>" } 从 hello 示例开始,并阅读 crate 文档
- 在哪里获取 rune?
- 源代码和安装说明在 GitHub 上:https://github.com/anomalyco/rune
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
基于 Rust 的应用与游戏开发框架,提供 GPU 加速的 UI 运行时和可实时编辑的界面 DSL,支持原生与 Web 平台。
基于 Avalonia 架构移植到 Rust 的跨平台 UI 框架,支持样式属性系统、数据绑定、XAML 与多种主题。
开源 Python GUI 框架,一套代码即可部署到桌面、移动和嵌入式平台。
Zed GPUI Rust UI 框架的性能优化分支,支持增量渲染与原生窗口合成。
基于 Rust 与 GPUI 构建的原生 Redis / Valkey 图形客户端,支持 GPU 渲染,可流畅浏览海量键。