#polyhorn #building #variant #macro #rapidly #apps #cross-platform

yoyo-macros

为Yoyo提供的过程宏,将类似CSS的规范转换为实现了Variants特质的类型

7个不稳定版本 (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日

#15 in #rapidly

每月下载量23次
2个crate中使用(通过yoyo

MIT许可证

350KB
8K 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

系统会提示您选择可用的模拟器。

依赖项

~7.5MB
~153K SLoC