mirror of
https://github.com/danbulant/cushy
synced 2026-05-26 05:12:07 +00:00
27 lines
1.3 KiB
Markdown
27 lines
1.3 KiB
Markdown

|
|
[](https://crates.io/crates/gooey)
|
|
[]($docs$)
|
|
|
|
Gooey is an experimental Graphical User Interface (GUI) crate for the Rust
|
|
programming language. It is built using [`Kludgine`][kludgine], which is powered
|
|
by [`winit`][winit] and [`wgpu`][wgpu]. It is incredibly early in development,
|
|
and is being developed for a game that will hopefully be developed shortly.
|
|
|
|
The [`Widget`][widget] trait is the building block of Gooey: Every user
|
|
interface element implements `Widget`. A full list of built-in widgets can be
|
|
found in the [`gooey::widgets`][widgets] module.
|
|
|
|
Gooey uses a reactive data model. To see [an example][button-example] of how
|
|
reactive data models work, consider this example that displays a button that
|
|
increments its own label:
|
|
|
|
```rust,ignore
|
|
$../examples/button.rs:readme$
|
|
```
|
|
|
|
[widget]: $widget$
|
|
[kludgine]: https://github.com/khonsulabs/kludgine
|
|
[wgpu]: https://github.com/gfx-rs/wgpu
|
|
[winit]: https://github.com/rust-windowing/winit
|
|
[widgets]: $widgets$
|
|
[button-example]: https://github.com/khonsulabs/gooey/tree/$ref-name$/examples/button.rs
|