Non-intrusively build apps

A declarative, purely composed GUI library for building cross-platform applications. It's lightweight and powerful.

Non-intrusive programming model
The UI directly operates data, and data modifications directly drive UI updates, without any intermediate layers and concepts.

Multi-platforms
Consistent experience across multiple platforms, and easy to expand to new platforms.

Declarative syntax and easy to interact
Ribir can interact well with Rust, making your code both a clear view description and a powerful logical expression.

Point-to-point view update strategy
Compile time generates updates logic of view, no general diff or patch algorithm.

Developer friendly
- Compose your widgets safely using types.
- Just use Rust, without any dependencies.
- Progressive concepts and pay for overhead only when used.
- Stateful and stateless can be converted to each other.
Trusted by

Frequently Asked Questions
The core framework of Ribir is in a basically stable state, and the API and syntax will be iterated with a cautious attitude. Although the widget library already has many available widgets, it is still in a very rough state, and there will be major changes in each version.