6 个版本

0.2.1 2024 年 4 月 27 日
0.2.0 2024 年 4 月 27 日
0.1.3 2023 年 8 月 27 日

#927GUI


用于 freya

MIT 许可证

1MB
21K SLoC

Freya 🦀

Freya logo

Discord Server Github Sponsors codecov

网站 | 夜间文档 | 稳定文档 | 书籍 | Discord

Freya 是由 🧬 Dioxus 和 🎨 Skia 驱动的 Rust 原生 GUI 库。

⚠️ 目前还在开发中,不适合用于生产,但您可以尝试使用它!如果您有任何问题或问题,可以加入 Discord 服务器。



fn app() -> Element {
    let mut count = use_signal(|| 0);

    rsx!(
        rect {
            height: "20%",
            width: "100%",
            background: "rgb(233, 196, 106)",
            padding: "12",
            color: "rgb(20, 33, 61)",
            label { 
                font_size: "20", 
                "Number is: {count}"
            }
        }
        rect {
            height: "80%",
            width: "100%",
            background: "rgb(168, 218, 220)",
            color: "black",
            padding: "12",
            onclick: move |_| count += 1,
            label { "Click to increase!" }
        }
    )
}

Freya Demo

赞助商 🤗

感谢我的赞助商支持这个项目! 😄

Alberto Mendezandar1an

想要试试吗? 🤔

⚠️ 首先,查看 环境设置

克隆此仓库并运行

cargo run --example counter

您也可以尝试 freya-template

用法 📜

将 Freya 和 Dioxus 添加为依赖项

freya = "0.2"
dioxus = { version = "0.4", features = ["macro", "hooks"], default-features = false }

功能 ✨

  • ⛏️ 内置 组件(按钮、滚动视图、开关等)
  • 🚇 内置 钩子 库(动画、文本编辑等)
  • 🔍 内置 Devtools 面板(实验性 ⚠️)
  • 🧰 内置组件的 无头测试 运行器
  • 🎨 主题 支持(目前不可扩展 ⚠️)
  • 🛩️ 跨平台(Windows、Linux、MacOS)
  • 🖼️ SKSL 着色器 支持
  • 🔄️ Dioxus 热重载 支持
  • 📒 多行 文本编辑(实验性 ⚠️)
  • 🦾 基本的支持 无障碍(实验性 ⚠️)
  • 🧩 与 dioxus-sdk 和其他 Dioxus 无渲染器库兼容

目标 😁

  • 高性能和低内存使用
  • 良好的开发体验
  • 跨平台支持
  • 良好的无障碍支持
  • 有用的测试 API
  • 有用且可扩展的组件和钩子

状态 ⌚

您可以通过查看 问题 了解哪些功能已实现,哪些尚未实现。

MIT 许可证

依赖项

~22–60MB
~1M SLoC