探索未来UI构建新可能:Ribir框架
2024-05-23 13:38:16作者:宣海椒Queenly
在数字世界的广阔领域中,高效、灵活的用户界面(UI)开发工具是开发者们不可或缺的武器。而今天,我们向您推荐一个全新的框架——Ribir,它将改变您对跨平台UI构建的认知。
项目介绍
Ribir,这是一个以现代原生/WASM交叉平台用户界面应用程序为目标的框架。采用非侵入式和声明性设计,让开发者可以专注于数据结构、逻辑与API的设计,而无需担忧UI层面的细节。通过其独特的理念和技术,Ribir能够帮助您轻松打造出响应式且高效的用户界面。
技术分析
Ribir的核心原则包括:
- 非注入和非侵入:与您的数据结构API直接交互,不需要为UI进行预先设计。这意味着您的现有逻辑不会被破坏,也不需要引入额外的对象。
- 声明式编程:UI是对数据状态的描述,这些描述会自动响应数据变化。一旦定义了数据,描述就会持续反映数据的状态。
- 纯粹的组件化:通过小部件构建UI,没有基础对象,只有当你使用某个特性时,如
margin,才会组合出对应的Margin小部件,真正做到“按需付费”。
Ribir采用基于Rust语法扩展的声明性语言,使得与Rust的交互变得自然流畅。不仅如此,Ribir还支持自定义小部件实现,只需要实现相应的traits,并且可以通过Template trait来指定子节点模板。
应用场景
Ribir适用于各种跨平台的应用程序开发,无论是桌面应用、移动应用还是未来的Web应用。由于其依赖性较少,拓展到其他平台相对容易。此外,其强大的定制主题功能,使得创建符合品牌风格的UI变得更加简单。丰富的官方小部件库,也极大地提升了开发效率。
项目特点
- 一次编写,多处运行:Ribir可编译成原生代码用于桌面和移动平台,以及WASM用于Web(尚在开发中)。
- Rust语法扩展的声明式语言:UI描述无缝融入Rust,使得代码更易读、易维护。
- 便捷的自定义小部件系统:只需实现特定trait,即可创建自己的小部件,同时支持子节点模板。
- 强大定制主题:全应用或部分子树级别的主题设置,涵盖色彩、图标、动画等方方面面。
- 无副作用的动画机制:动画不影响数据,仅影响视觉效果,支持任何渲染小部件。
- 可替换的渲染后端:内置GPU渲染后端(基于wgpu),未来还将提供CPU软渲染选项。
支持平台
当前已支持Linux、Windows和macOS,iOS和Android及Web平台的开发正在积极推进中。
加入我们
欢迎加入Ribir社区,无论您是新手还是老手,都可以贡献一份力量,从改进文档、增加测试覆盖率到修复bug或实现新功能,Ribir期待您的参与!
感谢与灵感来源
Ribir深受Flutter和QML等框架的启发,感谢所有贡献者们的辛勤付出,让我们一起打造更好的跨平台UI开发体验。
许可证
Ribir遵循 MIT 许可协议,详情参见LICENSE文件。
登录后查看全文
热门项目推荐
相关项目推荐
ERNIE-4.5-VL-28B-A3B-ThinkingERNIE-4.5-VL-28B-A3B-Thinking 是 ERNIE-4.5-VL-28B-A3B 架构的重大升级,通过中期大规模视觉-语言推理数据训练,显著提升了模型的表征能力和模态对齐,实现了多模态推理能力的突破性飞跃Python00
Kimi-K2-ThinkingKimi K2 Thinking 是最新、性能最强的开源思维模型。从 Kimi K2 开始,我们将其打造为能够逐步推理并动态调用工具的思维智能体。通过显著提升多步推理深度,并在 200–300 次连续调用中保持稳定的工具使用能力,它在 Humanity's Last Exam (HLE)、BrowseComp 等基准测试中树立了新的技术标杆。同时,K2 Thinking 是原生 INT4 量化模型,具备 256k 上下文窗口,实现了推理延迟和 GPU 内存占用的无损降低。Python00
MiniMax-M2MiniMax-M2是MiniMaxAI开源的高效MoE模型,2300亿总参数中仅激活100亿,却在编码和智能体任务上表现卓越。它支持多文件编辑、终端操作和复杂工具链调用Python00
Spark-Prover-X1-7BSpark-Prover 是由科大讯飞团队开发的专用大型语言模型,专为 Lean4 中的自动定理证明而设计。该模型采用创新的三阶段训练策略,显著增强了形式化推理能力,在同等规模的开源模型中实现了最先进的性能。Python00
MiniCPM-V-4_5MiniCPM-V 4.5 是 MiniCPM-V 系列中最新且功能最强的模型。该模型基于 Qwen3-8B 和 SigLIP2-400M 构建,总参数量为 80 亿。与之前的 MiniCPM-V 和 MiniCPM-o 模型相比,它在性能上有显著提升,并引入了新的实用功能Python00
Spark-Formalizer-X1-7BSpark-Formalizer 是由科大讯飞团队开发的专用大型语言模型,专注于数学自动形式化任务。该模型擅长将自然语言数学问题转化为精确的 Lean4 形式化语句,在形式化语句生成方面达到了业界领先水平。Python00
GOT-OCR-2.0-hf阶跃星辰StepFun推出的GOT-OCR-2.0-hf是一款强大的多语言OCR开源模型,支持从普通文档到复杂场景的文字识别。它能精准处理表格、图表、数学公式、几何图形甚至乐谱等特殊内容,输出结果可通过第三方工具渲染成多种格式。模型支持1024×1024高分辨率输入,具备多页批量处理、动态分块识别和交互式区域选择等创新功能,用户可通过坐标或颜色指定识别区域。基于Apache 2.0协议开源,提供Hugging Face演示和完整代码,适用于学术研究到工业应用的广泛场景,为OCR领域带来突破性解决方案。00
项目优选
收起
deepin linux kernel
C
24
7
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
321
2.74 K
仓颉编译器源码及 cjdb 调试工具。
C++
124
851
Ascend Extension for PyTorch
Python
157
179
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
641
251
TorchAir 支持用户基于PyTorch框架和torch_npu插件在昇腾NPU上使用图模式进行推理。
Python
244
86
暂无简介
Dart
610
136
React Native鸿蒙化仓库
JavaScript
239
311
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
1.03 K
470
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
364
3.04 K