8 个不稳定版本 (3 个破坏性更新)

0.4.1 2020 年 12 月 3 日
0.4.0 2020 年 12 月 2 日
0.3.2 2020 年 10 月 20 日
0.2.0 2020 年 10 月 10 日
0.1.1 2020 年 9 月 25 日

#772 in GUI

每月 24 次下载
用于 taxi

MIT 许可证

415KB
10K SLoC

Polyhorn

一个用于快速在 Rust 中构建跨平台应用程序的库 🦀。

Polyhorn 是一个用于构建用户界面的 Rust 库。对于熟悉 React 或 React Native 的用户,这个库在目的上非常相似。

它还附带自己的命令行界面,可以轻松启动新项目以及构建和运行现有项目。

口语上,两者都被称为 Polyhorn。


🚧 警告: Polyhorn 仍然是一个非常处于开发中的项目,这意味着在其官方发布之前,可能会出现许多破坏性更改和缺失的功能(对此表示歉意)。


入门

安装

Polyhorn 的安装简单快捷,只需几秒钟。如果您是 Rust 新手,您还需要按照以下步骤 1 安装 Rust。如果您已经使用 Rust,您可以直接跳过步骤 1,并按照步骤 2 安装 Polyhorn。

  1. 如果您尚未安装 Rust,请使用 rustup 安装 Rust。

    $ curl -sSf https://sh.rustup.rs | sh
    
  2. 现在,使用 cargo(Rust 提供的包管理器)安装 Polyhorn。

    $ cargo install polyhorn
    

启动项目

从我们的内置模板之一启动新项目非常简单。对于几乎为空的项目,运行

$ polyhorn new hello-world

您可以将 hello-world 替换为您应用程序的名称。请确保它只包含字母数字字符和破折号。

这将生成具有以下结构的目录

hello-world/
├── .gitignore
├── assets
│   └── .gitkeep
└── src
    └── lib.rs

这是 src/lib.rs 的内容

use polyhorn::prelude::*;

#[derive(Default)]
pub struct App {}

impl Component for App {
    fn render(&self, _manager: &mut Manager) -> Element {
        poly!(<Window>
            <View style=!{
                align-items: center;
                justify-content: center;
                background-color: red;
                height: 100%;
            }>
                <Text style=!{ color: white; }>
                    "Welcome to your Polyhorn app!"
                </Text>
            </View>
        </Window>)
    }
}

polyhorn::render!(<App />);

运行项目

在您的命令行中,导航到您的项目。例如,如果您遵循了上面的说明,现在您应该在 hello-world/。然后,确定您要运行的平台。请注意,所有平台都共享相同的代码库,因此您不需要提前规划。

在 iOS 上运行

如果您想在 iOS 模拟器上运行您的应用程序,请运行此命令

$ polyhorn run ios

它将要求您选择可用的模拟器。

依赖关系

~12MB
~257K SLoC