A high-performance and borrow-checker friendly framework for declarative programming in Rust. This crate provides a generic library that lets you define reactive components (also known as composables).
Features
- Declarative scenes and UI for Bevy
- Efficient and borrow-checker friendly state management: Manage state with components and hooks, all using zero-cost smart pointers
- Generic core for custom backends
use *;
Borrowing
Composables can borrow from their ancestors, as well as state.
use *;
Installation
To add this crate to your project:
cargo add actuate --features full
For more feature flags, see the crate documentation for features.
Inspiration
This crate is inspired by Xilem and uses a similar approach to type-safe reactivity. The main difference with this crate is the concept of scopes, components store their state in their own scope and updates to that scope re-render the component.
State management is inspired by React and Dioxus.
Previous implementations were in Concoct but were never very compatible with lifetimes.