Python framework for building web, desktop and mobile apps with a Flutter-based UI, no frontend experience needed.
DioxusLabs/dioxus
A Rust framework for building web, desktop, and mobile apps from a single codebase, with React-like components and signals.
Open-source alternative to:React Native
Electron
- Stars
- 39,451
- Forks
- 1,938
- Open issues
- 850
- Last commit
- 4 days ago
What is it?
Dioxus is a Rust framework for building user interfaces that run on the web, desktop, iOS, Android, and on the server. Components are written with an RSX macro that resembles HTML, and styling uses ordinary HTML and CSS. State is managed with signals, and a built-in CLI (dx) provides a dev server with hot reloading and bundling for deployment.
For full-stack apps, Dioxus integrates with the axum web framework and offers server functions, server-side rendering, hydration, WebSockets, SSE, streaming, file upload and download, and middleware. Rendering targets include the DOM via WebAssembly, system webviews, server-side rendering, liveview, and an experimental WGPU-based renderer. Native APIs can be called through JNI on Android and Objective-C on Apple platforms.
The project also includes first-party primitive components modeled after shadcn/ui and Radix Primitives, and the dx CLI can build .ipa and .apk files for mobile.
Key features
- 01Write one Rust codebase that targets web, desktop, iOS, and Android.
- 02Hot reloading for markup and styles, plus experimental hot-patching of Rust code.
- 03Signals-based state management with a React-like component model.
- 04Full-stack support with axum integration, server functions, and SSR with hydration.
- 05Built-in dx CLI for dev servers, bundling, and building mobile packages.
Use cases
- Building a Rust-based web app that also needs a desktop build from the same code.
- Creating native-feeling mobile apps in Rust that call into platform APIs.
- Writing a full-stack Rust application with a server backend built on axum.
- Prototyping UI components with HTML and CSS while keeping logic in Rust.
Quick start
- 1
Install the Dioxus CLI from git with cargo
cargo install --git https://github.com/DioxusLabs/dioxus dioxus-cli --locked - 2
Run an example from the repository root
cargo run --example <example> - 3
Serve an example with hot-reloading in the web platform
dx serve --example <example> --platform web -- --no-default-features
Things to know
- Examples on the main branch target the git version, not the latest stable release; use the 0.6 branch for stable examples.
- Some headline features, such as hot-patching with dx serve --hotpatch and the WGPU renderer, are marked experimental.
Topics
FAQ
- What is dioxus?
- A Rust framework for building web, desktop, and mobile apps from a single codebase, with React-like components and signals. Dioxus is a Rust framework for building user interfaces that run on the web, desktop, iOS, Android, and on the server. Components are written with an RSX macro that resembles HTML, and styling uses ordinary HTML and CSS. State is managed with signals, and a built-in CLI (dx) provides a dev server with hot reloading and bundling for deployment.
- Is dioxus free to use? What license does it have?
- dioxus is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is dioxus still maintained?
- Actively maintained. The last commit to dioxus was on Oct 17, 2026.
- What can I use dioxus for?
- Building a Rust-based web app that also needs a desktop build from the same code. Creating native-feeling mobile apps in Rust that call into platform APIs. Writing a full-stack Rust application with a server backend built on axum. Prototyping UI components with HTML and CSS while keeping logic in Rust.
- How do I install dioxus?
- Install the Dioxus CLI from git with cargo: cargo install --git https://github.com/DioxusLabs/dioxus dioxus-cli --locked Run an example from the repository root: cargo run --example <example> Serve an example with hot-reloading in the web platform: dx serve --example <example> --platform web -- --no-default-features
- Where can I get dioxus?
- The source code and installation instructions are on GitHub: https://github.com/DioxusLabs/dioxus
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Google's open-source SDK for building natively compiled mobile, web, and desktop apps from a single Dart codebase.
Open-source, privacy-first analytics for mobile, desktop and web apps, offered as an alternative to Firebase and Google Analytics.
A Vue.js framework for building SPAs, SSR/SSG sites, PWAs, browser extensions, mobile and Electron apps from one codebase.
React Native for Web: a library that lets React Native components and APIs render in web browsers through React DOM.
A JavaScript styling library from Facebook for defining optimized, atomic CSS styles in user interfaces.