redox-os / orbtk
- понедельник, 9 декабря 2019 г. в 00:24:17
Rust
The Rust UI-Toolkit.
The Orbital Widget Toolkit is a multi platform (G)UI toolkit for building scalable user interfaces with the programming language Rust. It's based on the Entity Component System Pattern and provides a functional-reactive like API.
The main goals of OrbTk are speed, ease of use, and being cross platform.
To include OrbTk in your project, just add the dependency
line to your Cargo.toml file:
orbtk = "0.3.1-alpha1"
To use the latest development version of OrbTk, just add the dependency
line to your Cargo.toml file:
orbtk = { git = "https://github.com/redox-os/orbtk.git", branch = "develop" }
use orbtk::prelude::*;
fn main() {
Application::new()
.window(|ctx| {
Window::create()
.title("OrbTk - minimal example")
.position((100.0, 100.0))
.size(420.0, 730.0)
.child(TextBlock::create().text("OrbTk").build(ctx))
.build(ctx)
})
.run();
}You can find examples in the examples/ directory.
You can start the widgets example by executing the following command:
cargo run --example widgets --release
OrbTk has also an integrated debug tools. If you want to show the bounds of all widgets (also non visual widgets) and want to see a debug print of the whole widget
tree you could run the examples as follows:
cargo run --example widgets --release --features debug
To run the examples on as browser, electron or cordova app you have to install
cargo install -f cargo-node
Before you could use cargo node you have to install npm version 6.9.0. It is included in the Node.js version 10.16.3. You could download it from https://nodejs.org/dist/v10.16.3/.
Rust's cargo is presumed. All other dependencies of cargo node will be installed automatic.
You can start the widgets example by executing the following command:
cargo node run --target browser --example widgets
cargo node run --target electron --example widgets
cargo node run --target android --example widgets
You can build and run the latest documentation by executing the following command:
cargo doc --no-deps --open
If you want to help bring OrbTk further or you have feedback check our issues https://github.com/redox-os/orbtk/issues. You could also discuss with us about OrbTk on the Redox chat https://redox-os.org/community/ (join the orbital channel).
Licensed under MIT license (LICENSE).