diff options
Diffstat (limited to 'runtime/README.md')
-rw-r--r-- | runtime/README.md | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/runtime/README.md b/runtime/README.md new file mode 100644 index 00000000..996daa76 --- /dev/null +++ b/runtime/README.md @@ -0,0 +1,37 @@ +# `iced_native` +[][documentation] +[](https://crates.io/crates/iced_native) +[](https://github.com/iced-rs/iced/blob/master/LICENSE) +[](https://discord.gg/3xZJ65GAhd) + +`iced_native` takes [`iced_core`] and builds a native runtime on top of it, featuring: +- A custom layout engine, greatly inspired by [`druid`] +- Event handling for all the built-in widgets +- A renderer-agnostic API + +To achieve this, it introduces a bunch of reusable interfaces: +- A `Widget` trait, which is used to implement new widgets: from layout requirements to event and drawing logic. +- A bunch of `Renderer` traits, meant to keep the crate renderer-agnostic. +- A `Windowed` trait, leveraging [`raw-window-handle`], which can be implemented by graphical renderers that target _windows_. Window-based shells (like [`iced_winit`]) can use this trait to stay renderer-agnostic. + +<p align="center"> + <img alt="The native target" src="../docs/graphs/native.png" width="80%"> +</p> + +[documentation]: https://docs.rs/iced_native +[`iced_core`]: ../core +[`iced_winit`]: ../winit +[`druid`]: https://github.com/xi-editor/druid +[`raw-window-handle`]: https://github.com/rust-windowing/raw-window-handle + +## Installation +Add `iced_native` as a dependency in your `Cargo.toml`: + +```toml +iced_native = "0.9" +``` + +__Iced moves fast and the `master` branch can contain breaking changes!__ If +you want to learn about a specific release, check out [the release list]. + +[the release list]: https://github.com/iced-rs/iced/releases |