Repolode
anomalyco

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. 1

    将 Rune 以 git 依赖方式添加,并固定到 dev 的某个修订版本

    rune = { git = "https://github.com/anomalyco/rune", rev = "<dev rev>" }
  2. 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 数据每日更新。

相关项目