MoonBit 原生即时模式 GUI 引擎

零外部依赖、微秒级帧管线,面向 WebAssembly 与 Canvas 2D 的高性能即时渲染内核。

CAD 矩阵画板实时运行预览

核心工程特性

抛弃虚拟 DOM 与双向绑定,用纯函数与即时布局构筑现代界面。

IMMEDIATE MODE

即时模式架构

每帧重绘、状态就地声明。无虚拟 DOM 树比对与垃圾回收抖动,界面逻辑即业务数据,代码结构极其扁平清爽。

MICROSECOND KERNEL

微秒级帧管线

视口自适应空间剔除与图元合并,百万级逻辑节点画板下帧内核计算耗时仅 0.1ms,稳定跑满 60 FPS 刷新率。

NATIVE RUNTIME

纯粹原生与多后端

基于 MoonBit 原生代数数据类型构建,不绑定特定浏览器 API,可轻松适配 WebAssembly、Canvas 2D 及跨平台原生桌面。

声明式语法,所见即所得

在即时模式下,界面组件没有复杂的生命周期回调,每一行声明直接对应当帧的绘制与事件命中。

窗口容器、按钮、滑块、网格排列等常见控件均具备统一的布局流,极易嵌入至任何复杂的 CAD 画布与游戏引擎。

let ctx = @core.UIContext::new() fn render_frame() -> @draw.DrawList { ctx.begin_frame(input) ctx.window("属性面板", fn(ui) { ui.label("控制参数") let (val, _) = ui.slider(zoom, min=0.1, max=5.0) if ui.button("重置视图", shortcut="⌘R", primary=true).clicked { reset_camera() } }) ctx.end_frame() }
在 MoonBit 项目中快速引入依赖
支持 MoonBit 最新版本包管理规范
moon add ling71671/moon-egui