-
Notifications
You must be signed in to change notification settings - Fork 0
Guide Home
A textbook for building apps with ROSACE. Concepts, paired with real code you can run.
ROSACE is a Rust framework for building native-feeling apps — desktop, web, iOS, and Android — from one codebase. You describe your UI declaratively, wire it to reactive state, and the framework handles rendering, layout, input, and platform differences.
This guide teaches you to build with ROSACE. If you want to understand how the framework works inside (to contribute to it), read the Architecture book instead.
- Write your first app and run it
- Components and state — the two ideas the whole framework is built on
- Lay out UI with the widget set
- Handle interaction (buttons, gestures, forms, text input)
- Navigate between screens
- Theme your app (and adapt per platform automatically)
- Animate, persist data, talk to the network
- Ship to desktop, web, and mobile with the
rscCLI - Use hot reload for a fast dev loop
Every chapter pairs a concept with runnable code. Start at the top — Getting Started — and go in order the first time; later, jump around. Each chapter ends with a pointer into the Architecture book if you want to know why it works that way.
See the sidebar for the full table of contents.
use rosace::prelude::*;
struct Hello;
impl Component for Hello {
fn build(&self, _ctx: &mut Context) -> Element {
Scaffold::new(
Column::new()
.padding(EdgeInsets::all(24.0))
.child(Text::new("Hello, ROSACE")),
)
.into_element()
}
}
fn main() {
App::new().title("Hello").size(400, 300).launch(Hello);
}That's a complete app. The next chapters unpack every line.