dioxus/README.md
2021-05-19 20:57:19 -04:00

2.8 KiB

🌗🚀 Dioxus

Frontend that scales.

Dioxus is a portable, performant, and ergonomic framework for building cross-platform user experiences in Rust.

//! A complete dioxus web app
use dioxus_web::*;

fn Example(ctx: Context, props: &()) -> DomTree {
    let selection = use_state(ctx, || "...?");

    ctx.render(rsx! {
        div {
            h1 { "Hello, {selection}" }
            button { "?", onclick: move |_| selection.set("world!")}
            button { "?", onclick: move |_| selection.set("Dioxus 🎉")}
        }
    })
};

fn main() {
    dioxus_web::start(Example).block_on();
}

Dioxus can be used to deliver webapps, desktop apps, static pages, liveview apps, Android apps, iOS Apps, and more. At its core, Dioxus is entirely renderer agnostic and has great documentation for creating new renderers for any platform.

Things you'll love ❤️:

  • Ergonomic design
  • Minimal boilerplate
  • Simple build, test, and deploy
  • Support for html! and rsx! templating
  • SSR, WASM, desktop, and mobile support
  • Powerful and simple integrated state management
  • Rust! (enums, static types, modules, efficiency)

Get Started with...

Web Desktop Mobile State Management Docs Tools

Explore

Blog Posts

  • Why we need a stronger typed web
  • Isomorphic webapps in 10 minutes
  • Rust is high level too
  • Eliminating crashes with Rust webapps
  • Tailwind for Dioxus
  • The monoglot startup