Matt Hunzinger 205d8e9070 Add argument to use_callback (#2774) 11 tháng trước cách đây
..
assets c113d96bbe fix: Update logos and custom assets example (#960) 2 năm trước cách đây
app.rs 23dfe39bdf desktop app saves window position fix (#2730) 11 tháng trước cách đây
assets.rs 88af3e7eff Hotreloading of `for/if/body`, formatted strings, literals, component props, nested rsx, light CLI rewrite, cli TUI (#2258) 11 tháng trước cách đây
config.rs 810f8bbfb8 Feat: `always_on_top` CLI Setting (#2715) 11 tháng trước cách đây
desktop_context.rs 9167cd9dec fix most typos, add crate-ci/typos to CI (#2653) 11 tháng trước cách đây
document.rs bd484842bd Fix playwright tests (#2695) 11 tháng trước cách đây
edits.rs 74352f2f61 Fix desktop effect race condition (#2313) 1 năm trước cách đây
element.rs 460b70e0f0 Add access to the Element attributes related to scrolling (#2338) 1 năm trước cách đây
event_handlers.rs 94b17cc8ca Fix non tokio builds for desktop 1 năm trước cách đây
events.rs 624e58bd78 native file drop 1 năm trước cách đây
file_upload.rs 69d7098d0e feat (desktop): upgrade from wry 37 to 41 (#2618) 11 tháng trước cách đây
hooks.rs 205d8e9070 Add argument to use_callback (#2774) 11 tháng trước cách đây
index.html 2e9737ef57 Clean up and document the protocol handler 1 năm trước cách đây
ipc.rs 88af3e7eff Hotreloading of `for/if/body`, formatted strings, literals, component props, nested rsx, light CLI rewrite, cli TUI (#2258) 11 tháng trước cách đây
launch.rs a09548d80e Remove implicit optional dependency features (#2512) 1 năm trước cách đây
lib.rs 0cbcef735f Pre-release 0.6.0-alpha.0 (#2755) 11 tháng trước cách đây
menubar.rs 46b0eeb12c Implement the "Toggle Developer Tools" menu item in desktop (#2198) 1 năm trước cách đây
mobile_shortcut.rs 4b2e426958 clippy, and don't hash invisible files for ts generation 1 năm trước cách đây
protocol.rs df8c7e1872 don't print the asset path on desktop (#2748) 11 tháng trước cách đây
query.rs cbeda0af76 Refactor and fix eval channels (#2302) 1 năm trước cách đây
readme.md 36f67bd5e2 update 0.4 doc links to 0.5 1 năm trước cách đây
shortcut.rs 9167cd9dec fix most typos, add crate-ci/typos to CI (#2653) 11 tháng trước cách đây
waker.rs 4b2e426958 clippy, and don't hash invisible files for ts generation 1 năm trước cách đây
webview.rs 1dcfc44c23 prevent the reload shortcut on windows (#2654) 11 tháng trước cách đây

readme.md

Dioxus Desktop Renderer

Render the Dioxus VirtualDom using the platform's native WebView implementation.

Desktop

One of Dioxus' flagship features is the ability to quickly build a native desktop app that looks and feels the same across platforms. Apps built with Dioxus are typically <5mb in size and use existing system resources, so they won't hog extreme amounts of RAM or memory.

Dioxus Desktop is built off Tauri. Right now there aren't any Dioxus abstractions over the menubar, handling, etc, so you'll want to leverage Tauri - mostly Wry and Tao directly. An upcoming release of Dioxus-Desktop will include components and hooks for notifications, global shortcuts, menubar, etc.

Getting Set up

Getting Set up with Dioxus-Desktop is quite easy. Make sure you have Rust and Cargo installed, and then create a new project:

$ cargo new --bin demo
$ cd app

Add Dioxus and the desktop renderer feature:

$ cargo add dioxus
$ cargo add dioxus-desktop

Edit your main.rs:

// main.rs
use dioxus::prelude::*;

fn main() {
    dioxus_desktop::launch(app);
}

fn app() -> Element {
    rsx!{
        div {
            "hello world!"
        }
    })
}

To configure the webview, menubar, and other important desktop-specific features, checkout out some of the launch configuration in the API reference.

Future Steps

Make sure to read the Dioxus Guide if you already haven't!