Crates.io | ribir_builtin |
lib.rs | ribir_builtin |
version | 0.1.0 |
source | src |
created_at | 2023-02-26 05:50:22.996561 |
updated_at | 2024-03-26 11:33:27.339154 |
description | Ribir is a framework for building modern native/wasm cross-platform user interface applications. |
homepage | https://ribir.org |
repository | https://github.com/RibirX/Ribir/algo/macros/builtin |
max_upload_size | |
id | 794862 |
size | 5,863 |
Use Rust to build multi-platform applications from a single codebase.
Ribir is a Rust GUI framework that helps you build beautiful and native multi-platform applications from a single codebase.
Experience a novel approach to UI development that's directly based on your data structure APIs. Any data mutation will trigger a precise UI update. Your focus should be on designing your data structure and its APIs. Then, you can describe your data's UI without intruding on its logic.
A simple example of a counter:
|
![]() |
More Examples
Compose
, from other widgets composition.Render
, implement your layout and paint anything you want.ComposeChild
, control the compose logic between parent and child widgets and specify the template of child widgets.Platform | Support situation |
---|---|
Linux | ✅ |
Windows | ✅ |
macOS | ✅ |
iOS | 🚧 Not yet |
Android | 🚧 Not yet |
Web | 🚧 Not yet |
If you like Ribir, give our repo a ⭐ STAR ⬆️ and WATCH 👀 our repository to stay updated with the latest developments!
Every encouragement and feedback can support us to go further.
The pipe/watch may easily introduce a cycle reference, which will cause a memory leak if you do not manually unsubscribe. We'll resolve this issue in v0.2.0.
In most cases, the framework will be able to avoid cycle reference automatically. Documentation will be updated to explain how to avoid cycle reference in the rest cases, and we will provide an API to help developers resolve it.
For a complete list of known issues, please see Issues.
We are grateful to the community for contributing bug fixes and improvements.
😎 New to Ribir?
Start learning about the framework by helping us improve our documentation. Feel free to open a new "Documentation" issue. We are also very welcome:
For more information please read:
🤔 Confused about something?
Feel free to go to Discussions and open a new "Q&A" to get help from contributors. Often questions lead to improvements to the ergonomics of the framework, better documentation, and even new features!
😱 Found a bug?
Please report all bugs! We are happy to help support developers fix the bugs they find if they are interested and have the time.
This project exists thanks to all the people who contributed:
We also found inspiration from the following frameworks:
Ribir is MIT-licensed