这个项目能做什么
Iced 是一个专注于简洁性和类型安全的 Rust 跨平台 GUI 库,灵感来自 Elm 和 The Elm Architecture。它为构建原生桌面和 Web 应用提供了开箱即用的 API。
主要特性包括:简单易用的 API;类型安全的响应式编程模型;对 Windows、macOS、Linux 和 Web 的跨平台支持;响应式布局;内置组件(如文本输入框和可滚动区域);自定义组件支持;带有性能指标和时间旅行功能的调试工具;以及使用 futures 对异步操作的一流支持。
其生态系统采用模块化设计,拆分为可复用的部分:一个与渲染器无关的原生运行时,可与现有系统集成;两个内置渲染器,分别基于 wgpu(支持 Vulkan、Metal 和 DX12)和 tiny-skia(软件回退方案);以及一个窗口化外壳。
遵循 The Elm Architecture,应用程序围绕四个概念构建:State(应用状态)、Messages(用户交互或事件)、View 逻辑(将状态显示为产生消息的组件)和 Update 逻辑(对消息作出反应并更新状态)。README 中包含一个完整的计数器示例,演示了这一模式。
Iced 最初是为了将 Elm 的简洁性引入 2D 游戏库而创建的,其核心于 2019 年 5 月实现。此后,它已发展为一个面向最终用户的 GUI 库,同时保持生态系统的模块化。该项目目前仍处于实验性软件阶段,并提供路线图和问题跟踪器。开发工作由 Kraken.com 的 Cryptowatch 团队赞助。
评论
0 评分人数达到10人后显示
登录后参与讨论。