{"id":13460340,"url":"https://github.com/dioxuslabs/dioxus","last_synced_at":"2026-01-17T23:26:36.022Z","repository":{"id":36967006,"uuid":"329782568","full_name":"DioxusLabs/dioxus","owner":"DioxusLabs","description":"Fullstack app framework for web, desktop, mobile, and more.","archived":false,"fork":false,"pushed_at":"2025-04-30T22:39:27.000Z","size":41932,"stargazers_count":27171,"open_issues_count":424,"forks_count":1087,"subscribers_count":136,"default_branch":"main","last_synced_at":"2025-04-30T23:29:32.525Z","etag":null,"topics":["android","css","desktop","html","ios","native","react","rust","ssr","ui","virtualdom","wasm","web"],"latest_commit_sha":null,"homepage":"https://dioxuslabs.com","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DioxusLabs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE-APACHE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":"DioxusLabs","open_collective":"dioxus-labs"}},"created_at":"2021-01-15T01:57:26.000Z","updated_at":"2025-04-30T23:15:40.000Z","dependencies_parsed_at":"2023-01-17T09:30:47.621Z","dependency_job_id":"96695f99-fcf3-42c3-b167-28760bc42079","html_url":"https://github.com/DioxusLabs/dioxus","commit_stats":{"total_commits":5034,"total_committers":279,"mean_commits":"18.043010752688172","dds":0.6098529996027016,"last_synced_commit":"21d7916d5605425ce8304fd801419a4dd4a5cb1f"},"previous_names":[],"tags_count":63,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DioxusLabs%2Fdioxus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DioxusLabs%2Fdioxus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DioxusLabs%2Fdioxus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DioxusLabs%2Fdioxus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DioxusLabs","download_url":"https://codeload.github.com/DioxusLabs/dioxus/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252467017,"owners_count":21752486,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","css","desktop","html","ios","native","react","rust","ssr","ui","virtualdom","wasm","web"],"created_at":"2024-07-31T10:00:39.994Z","updated_at":"2026-01-17T23:26:36.011Z","avatar_url":"https://github.com/DioxusLabs.png","language":"Rust","readme":"\u003cp\u003e\n    \u003cp align=\"center\" \u003e\n      \u003c!-- \u003cimg src=\"./notes/header-light-updated.svg#gh-light-mode-only\" \u003e\n      \u003cimg src=\"./notes/header-dark-updated.svg#gh-dark-mode-only\" \u003e --\u003e\n      \u003c!-- \u003ca href=\"https://dioxuslabs.com\"\u003e\n          \u003cimg src=\"./notes/flat-splash.avif\"\u003e\n      \u003c/a\u003e --\u003e\n      \u003cimg src=\"./notes/splash-header-darkmode.svg#gh-dark-mode-only\" style=\"width: 80%; height: auto;\"\u003e\n      \u003cimg src=\"./notes/splash-header.svg#gh-light-mode-only\" style=\"width: 80%; height: auto;\"\u003e\n      \u003cimg src=\"./notes/image-splash.avif\"\u003e\n      \u003cbr\u003e\n    \u003c/p\u003e\n\u003c/p\u003e\n\u003cdiv align=\"center\"\u003e\n  \u003c!-- Crates version --\u003e\n  \u003ca href=\"https://crates.io/crates/dioxus\"\u003e\n    \u003cimg src=\"https://img.shields.io/crates/v/dioxus.svg?style=flat-square\"\n    alt=\"Crates.io version\" /\u003e\n  \u003c/a\u003e\n  \u003c!-- Downloads --\u003e\n  \u003ca href=\"https://crates.io/crates/dioxus\"\u003e\n    \u003cimg src=\"https://img.shields.io/crates/d/dioxus.svg?style=flat-square\"\n      alt=\"Download\" /\u003e\n  \u003c/a\u003e\n  \u003c!-- docs --\u003e\n  \u003ca href=\"https://docs.rs/dioxus\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/docs-latest-blue.svg?style=flat-square\"\n      alt=\"docs.rs docs\" /\u003e\n  \u003c/a\u003e\n  \u003c!-- CI --\u003e\n  \u003ca href=\"https://github.com/jkelleyrtp/dioxus/actions\"\u003e\n    \u003cimg src=\"https://github.com/dioxuslabs/dioxus/actions/workflows/main.yml/badge.svg\"\n      alt=\"CI status\" /\u003e\n  \u003c/a\u003e\n\n  \u003c!--Awesome --\u003e\n  \u003ca href=\"https://dioxuslabs.com/awesome\"\u003e\n    \u003cimg src=\"https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg\" alt=\"Awesome Page\" /\u003e\n  \u003c/a\u003e\n  \u003c!-- Discord --\u003e\n  \u003ca href=\"https://discord.gg/XgGxMSkvUM\"\u003e\n    \u003cimg src=\"https://img.shields.io/discord/899851952891002890.svg?logo=discord\u0026style=flat-square\" alt=\"Discord Link\" /\u003e\n  \u003c/a\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003ch3\u003e\n    \u003ca href=\"https://dioxuslabs.com\"\u003e Website \u003c/a\u003e\n    \u003cspan\u003e | \u003c/span\u003e\n    \u003ca href=\"https://github.com/DioxusLabs/dioxus/tree/main/examples\"\u003e Examples \u003c/a\u003e\n    \u003cspan\u003e | \u003c/span\u003e\n    \u003ca href=\"https://dioxuslabs.com/learn/0.7/tutorial\"\u003e Tutorial \u003c/a\u003e\n    \u003cspan\u003e | \u003c/span\u003e\n    \u003ca href=\"https://github.com/DioxusLabs/dioxus/blob/main/notes/translations/zh-cn/README.md\"\u003e 中文 \u003c/a\u003e\n    \u003cspan\u003e | \u003c/span\u003e\n    \u003ca href=\"https://github.com/DioxusLabs/dioxus/blob/main/notes/translations/pt-br/README.md\"\u003e PT-BR \u003c/a\u003e\n    \u003cspan\u003e | \u003c/span\u003e\n    \u003ca href=\"https://github.com/DioxusLabs/dioxus/blob/main/notes/translations/ja-jp/README.md\"\u003e 日本語 \u003c/a\u003e\n    \u003cspan\u003e | \u003c/span\u003e\n    \u003ca href=\"https://github.com/DioxusLabs/dioxus/blob/main/notes/translations/tr-tr\"\u003e Türkçe \u003c/a\u003e\n    \u003cspan\u003e | \u003c/span\u003e\n    \u003ca href=\"https://github.com/DioxusLabs/dioxus/blob/main/notes/translations/ko-kr\"\u003e 한국어 \u003c/a\u003e\n  \u003c/h3\u003e\n\u003c/div\u003e\n\u003cbr\u003e\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/DioxusLabs/dioxus/releases/tag/v0.7.0\"\u003e✨ Dioxus 0.7 is out!!! ✨\u003c/a\u003e\n\u003c/p\u003e\n\u003cbr\u003e\n\nBuild for web, desktop, and mobile, and more with a single codebase. Zero-config setup, integrated hot-reloading, and signals-based state management. Add backend functionality with Server Functions and bundle with our CLI.\n\n```rust\nfn app() -\u003e Element {\n    let mut count = use_signal(|| 0);\n\n    rsx! {\n        h1 { \"High-Five counter: {count}\" }\n        button { onclick: move |_| count += 1, \"Up high!\" }\n        button { onclick: move |_| count -= 1, \"Down low!\" }\n    }\n}\n```\n\n## ⭐️ Unique features:\n\n- Cross-platform apps in three lines of code (web, desktop, mobile, server, and more)\n- [Ergonomic state management](https://dioxuslabs.com/blog/release-050) combines the best of React, Solid, and Svelte\n- Built-in featureful, type-safe, fullstack web framework\n- Integrated bundler for deploying to the web, macOS, Linux, and Windows\n- Subsecond Rust hot-patching and asset hot-reloading\n- And more! [Take a tour of Dioxus](https://dioxuslabs.com/learn/0.7/).\n\n## Instant hot-reloading\n\nWith one command, `dx serve` and your app is running. Edit your markup, styles, and see changes in milliseconds. Use our experimental `dx serve --hotpatch` to update Rust code in real time.\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/DioxusLabs/screenshots/refs/heads/main/blitz/hotreload-video.webp\"\u003e\n  \u003c!-- \u003cvideo src=\"https://private-user-images.githubusercontent.com/10237910/386919031-6da371d5-3340-46da-84ff-628216851ba6.mov\" width=\"500\"\u003e\u003c/video\u003e --\u003e\n  \u003c!-- \u003cvideo src=\"https://private-user-images.githubusercontent.com/10237910/386919031-6da371d5-3340-46da-84ff-628216851ba6.mov\" width=\"500\"\u003e\u003c/video\u003e --\u003e\n\u003c/div\u003e\n\n## Build Beautiful Apps\n\nDioxus apps are styled with HTML and CSS. Use the built-in TailwindCSS support or load your favorite CSS library. Easily call into native code (objective-c, JNI, Web-Sys) for a perfect native touch.\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"./notes/ebou2.avif\"\u003e\n\u003c/div\u003e\n\n\n\n## Truly fullstack applications\n\nDioxus deeply integrates with [axum](https://github.com/tokio-rs/axum) to provide powerful fullstack capabilities for both clients and servers. Pick from a wide array of built-in batteries like WebSockets, SSE, Streaming, File Upload/Download, Server-Side-Rendering, Forms, Middleware, and Hot-Reload, or go fully custom and integrate your existing axum backend.\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"./notes/fullstack-websockets.avif\" width=\"700\"\u003e\n\u003c/div\u003e\n\n## Experimental Native Renderer\n\nRender using web-sys, webview, server-side-rendering, liveview, or even with our experimental WGPU-based renderer. Embed Dioxus in Bevy, WGPU, or even run on embedded Linux!\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/DioxusLabs/screenshots/refs/heads/main/blitz/native-blitz-wgpu.webp\"\u003e\n\u003c/div\u003e\n\n\n## First-party primitive components\n\nGet started quickly with a complete set of primitives modeled after shadcn/ui and Radix-Primitives.\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"./notes/primitive-components.avif\" width=\"700\"\u003e\n\u003c/div\u003e\n\n## First-class Android and iOS support\n\nDioxus is the fastest way to build native mobile apps with Rust. Simply run `dx serve --platform android` and your app is running in an emulator or on device in seconds. Call directly into JNI and Native APIs.\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"./notes/android_and_ios2.avif\" width=\"500\"\u003e\n\u003c/div\u003e\n\n\n\n## Bundle for web, desktop, and mobile\n\nSimply run `dx bundle` and your app will be built and bundled with maximization optimizations. On the web, take advantage of [`.avif` generation, `.wasm` compression, minification](https://dioxuslabs.com/learn/0.7/tutorial/assets), and more. Build WebApps weighing [less than 50kb](https://github.com/ealmloff/tiny-dioxus/) and desktop/mobile apps less than 5mb.\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"./notes/bundle.gif\"\u003e\n\u003c/div\u003e\n\n\n## Fantastic documentation\n\nWe've put a ton of effort into building clean, readable, and comprehensive documentation. All html elements and listeners are documented with MDN docs, and our Docs runs continuous integration with Dioxus itself to ensure that the docs are always up to date. Check out the [Dioxus website](https://dioxuslabs.com/learn/0.7/) for guides, references, recipes, and more. Fun fact: we use the Dioxus website as a testbed for new Dioxus features - [check it out!](https://github.com/dioxusLabs/docsite)\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"./notes/docs.avif\"\u003e\n\u003c/div\u003e\n\n\n## Modular and Customizable\n\nBuild your own renderer, or use a community renderer like [Freya](http://freyaui.dev). Use our modular components like RSX, VirtualDom, Blitz, Taffy, and Subsecond.\n\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/DioxusLabs/screenshots/refs/heads/main/blitz/freya-todo-example.webp\"\u003e\n\u003c/div\u003e\n\n## Community\n\nDioxus is a community-driven project, with a very active [Discord](https://discord.gg/XgGxMSkvUM) and [GitHub](https://github.com/DioxusLabs/dioxus/issues) community. We're always looking for help, and we're happy to answer questions and help you get started. [Our SDK](https://github.com/DioxusLabs/dioxus-std) is community-run and we even have a [GitHub organization](https://github.com/dioxus-community/) for the best Dioxus crates that receive free upgrades and support.\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"./notes/dioxus-community.avif\"\u003e\n\u003c/div\u003e\n\n## Full-time core team\n\nDioxus has grown from a side project to a small team of fulltime engineers. Thanks to the generous support of FutureWei, Satellite.im, the GitHub Accelerator program, we're able to work on Dioxus full-time. Our long term goal is for Dioxus to become self-sustaining by providing paid high-quality enterprise tools. If your company is interested in adopting Dioxus and would like to work with us, please reach out!\n\n## Supported Platforms\n\n\u003cdiv align=\"center\"\u003e\n  \u003ctable style=\"width:100%\"\u003e\n    \u003ctr\u003e\n      \u003ctd\u003e\n      \u003cb\u003eWeb\u003c/b\u003e\n      \u003c/td\u003e\n      \u003ctd\u003e\n        \u003cul\u003e\n          \u003cli\u003eRender directly to the DOM using WebAssembly\u003c/li\u003e\n          \u003cli\u003ePre-render with SSR and rehydrate on the client\u003c/li\u003e\n          \u003cli\u003eSimple \"hello world\" at about 50kb, comparable to React\u003c/li\u003e\n          \u003cli\u003eBuilt-in dev server and hot reloading for quick iteration\u003c/li\u003e\n        \u003c/ul\u003e\n      \u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n      \u003ctd\u003e\n      \u003cb\u003eDesktop\u003c/b\u003e\n      \u003c/td\u003e\n      \u003ctd\u003e\n        \u003cul\u003e\n          \u003cli\u003eRender using Webview or - experimentally - with WGPU or \u003ca href=\"https://freyaui.dev\"\u003eFreya\u003c/a\u003e (Skia) \u003c/li\u003e\n          \u003cli\u003eZero-config setup. Simply `cargo run` or `dx serve` to build your app \u003c/li\u003e\n          \u003cli\u003eFull support for native system access without IPC \u003c/li\u003e\n          \u003cli\u003eSupports macOS, Linux, and Windows. Portable \u003c3mb binaries \u003c/li\u003e\n        \u003c/ul\u003e\n      \u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n      \u003ctd\u003e\n      \u003cb\u003eMobile\u003c/b\u003e\n      \u003c/td\u003e\n      \u003ctd\u003e\n        \u003cul\u003e\n          \u003cli\u003eRender using Webview or - experimentally - with WGPU or Skia \u003c/li\u003e\n          \u003cli\u003eBuild .ipa and .apk files for iOS and Android \u003c/li\u003e\n          \u003cli\u003eCall directly into Java and Objective-C with minimal overhead\u003c/li\u003e\n          \u003cli\u003eFrom \"hello world\" to running on device in seconds\u003c/li\u003e\n        \u003c/ul\u003e\n      \u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n      \u003ctd\u003e\n      \u003cb\u003eServer-side Rendering\u003c/b\u003e\n      \u003c/td\u003e\n      \u003ctd\u003e\n        \u003cul\u003e\n          \u003cli\u003eSuspense, hydration, and server-side rendering\u003c/li\u003e\n          \u003cli\u003eQuickly drop in backend functionality with server functions\u003c/li\u003e\n          \u003cli\u003eExtractors, middleware, and routing integrations\u003c/li\u003e\n          \u003cli\u003eStatic-site generation and incremental regeneration\u003c/li\u003e\n        \u003c/ul\u003e\n      \u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/table\u003e\n\u003c/div\u003e\n\n## Running the examples\n\n\u003e The examples in the main branch of this repository target the git version of dioxus and the CLI. If you are looking for examples that work with the latest stable release of dioxus, check out the [0.6 branch](https://github.com/DioxusLabs/dioxus/tree/v0.6/examples).\n\nThe examples in the top level of this repository can be run with:\n\n```sh\ncargo run --example \u003cexample\u003e\n```\n\nHowever, we encourage you to download the dioxus-cli to test out features like hot-reloading. To install the most recent binary CLI, you can use cargo binstall.\n\n```sh\ncargo binstall dioxus-cli@0.7.0 --force\n```\n\nIf this CLI is out-of-date, you can install it directly from git\n\n```sh\ncargo install --git https://github.com/DioxusLabs/dioxus dioxus-cli --locked\n```\n\nWith the CLI, you can also run examples with the web platform. You will need to disable the default desktop feature and enable the web feature with this command:\n\n```sh\ndx serve --example \u003cexample\u003e --platform web -- --no-default-features\n```\n\n## Contributing\n\n- Check out the website [section on contributing](https://dioxuslabs.com/learn/0.7/beyond/contributing).\n- Report issues on our [issue tracker](https://github.com/dioxuslabs/dioxus/issues).\n- [Join](https://discord.gg/XgGxMSkvUM) the discord and ask questions!\n\n\u003ca href=\"https://github.com/dioxuslabs/dioxus/graphs/contributors\"\u003e\n  \u003cimg src=\"https://contrib.rocks/image?repo=dioxuslabs/dioxus\u0026max=30\u0026columns=10\" /\u003e\n\u003c/a\u003e\n\n## License\n\nThis project is licensed under either the [MIT license] or the [Apache-2 License].\n\n[apache-2 license]: https://github.com/DioxusLabs/dioxus/blob/master/LICENSE-APACHE\n[mit license]: https://github.com/DioxusLabs/dioxus/blob/master/LICENSE-MIT\n\nUnless you explicitly state otherwise, any contribution intentionally submitted\nfor inclusion in Dioxus by you, shall be licensed as MIT or Apache-2, without any additional\nterms or conditions.\n","funding_links":["https://github.com/sponsors/DioxusLabs","https://opencollective.com/dioxus-labs"],"categories":["Libraries","Programming","库 Libraries","语言资源库"],"sub_categories":["GUI","Rust 🦀","GUI GUI","rust","Rust"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdioxuslabs%2Fdioxus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdioxuslabs%2Fdioxus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdioxuslabs%2Fdioxus/lists"}