From bc593ba4ef690a91898825db0863f969fb244a4b Mon Sep 17 00:00:00 2001 From: Jonathan Kelley Date: Wed, 25 Jun 2025 13:25:56 -0700 Subject: [PATCH] update readme with some new features for 0.7 --- README.md | 35 ++++++++++++++++++++++++++++++-- notes/primitive-components.avif | Bin 0 -> 27154 bytes 2 files changed, 33 insertions(+), 2 deletions(-) create mode 100644 notes/primitive-components.avif diff --git a/README.md b/README.md index b4fb66b92..671eadbc8 100644 --- a/README.md +++ b/README.md @@ -86,13 +86,14 @@ fn app() -> Element { - Cross-platform apps in three lines of code (web, desktop, mobile, server, and more) - [Ergonomic state management](https://dioxuslabs.com/blog/release-050) combines the best of React, Solid, and Svelte -- Type-safe Routing and server functions to leverage Rust's powerful compile-time guarantees +- Built-in featureful, type-safe, fullstack web framework - Integrated bundler for deploying to the web, macOS, Linux, and Windows +- Subsecond Rust hot-patching and asset hot-reloading - And more! [Take a tour of Dioxus](https://dioxuslabs.com/learn/0.6/). ## Instant hot-reloading -With one command, `dx serve` and your app is running. Edit your markup and styles and see the results in real time. +With one command, `dx serve` and your app is running. Edit your markup, styles, and even Rust code and see changes in milliseconds.
@@ -100,6 +101,36 @@ With one command, `dx serve` and your app is running. Edit your markup and style
+## A pragmatic and productive fullstack web framework + +Directly call your backend from your frontend with our built-in type-safe RPC using [`server_fn`](http://crates.io/crates/server_fn). Supports streaming, suspense, bundle splitting, websockets, and more. + +```rust +fn app() -> Element { + let mut fortune = use_signal(|| "Fetch a fortune!"); + rsx! { + h1 { "{fortune}" } + button { + onclick: move |_| async move { + fortune.set(fetch_fortune().await.unwrap()); + } + } + } +} + +#[server] +async fn fetch_fortune() -> ServerFnResult { + "Dioxus is super productive!".to_string() +} +``` + +## First-party primitive components + +Get started quickly with a complete set of primitives modeled after ShadCN and Radix-Primitives. + +
+ +
## First-class Android and iOS support diff --git a/notes/primitive-components.avif b/notes/primitive-components.avif new file mode 100644 index 0000000000000000000000000000000000000000..f4b18d9e60f953e865e6ba0ed460722b38d0b489 GIT binary patch literal 27154 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 E0U)(JegFUf literal 0 HcmV?d00001