Klemen 292f757d5d SystemTray (#3123) 8 kuukautta sitten
..
assets c113d96bbe fix: Update logos and custom assets example (#960) 2 vuotta sitten
js 519ec9d294 Move the document trait into a separate crate (#3035) 8 kuukautta sitten
ts 519ec9d294 Move the document trait into a separate crate (#3035) 8 kuukautta sitten
android_sync_lock.rs 7ec3453ca3 Fix bundling/path errors, sidecar support, iOS/Android simulator support, asset hotreload fixes, serverfn hotrelad, native tailwind support (#2779) 8 kuukautta sitten
app.rs 292f757d5d SystemTray (#3123) 8 kuukautta sitten
assets.rs f9c2f740c2 Pull out asset handler refactor from https://github.com/DioxusLabs/dioxus/pull/2972 (#3000) 9 kuukautta sitten
config.rs 20d146d9bd Simplify the launch builder (#2967) 8 kuukautta sitten
desktop_context.rs f9c2f740c2 Pull out asset handler refactor from https://github.com/DioxusLabs/dioxus/pull/2972 (#3000) 9 kuukautta sitten
document.rs 519ec9d294 Move the document trait into a separate crate (#3035) 8 kuukautta sitten
edits.rs 7ec3453ca3 Fix bundling/path errors, sidecar support, iOS/Android simulator support, asset hotreload fixes, serverfn hotrelad, native tailwind support (#2779) 8 kuukautta sitten
element.rs 460b70e0f0 Add access to the Element attributes related to scrolling (#2338) 1 vuosi sitten
event_handlers.rs 94b17cc8ca Fix non tokio builds for desktop 1 vuosi sitten
events.rs 2f49a89638 Add the `onresize` event handler to Element (#2479) 10 kuukautta sitten
file_upload.rs cda8bb24f1 Remove native and web features from dioxus-html (#3006) 8 kuukautta sitten
hooks.rs 292f757d5d SystemTray (#3123) 8 kuukautta sitten
index.html 7ec3453ca3 Fix bundling/path errors, sidecar support, iOS/Android simulator support, asset hotreload fixes, serverfn hotrelad, native tailwind support (#2779) 8 kuukautta sitten
ipc.rs 292f757d5d SystemTray (#3123) 8 kuukautta sitten
launch.rs 292f757d5d SystemTray (#3123) 8 kuukautta sitten
lib.rs 292f757d5d SystemTray (#3123) 8 kuukautta sitten
menubar.rs 46b0eeb12c Implement the "Toggle Developer Tools" menu item in desktop (#2198) 1 vuosi sitten
mobile_shortcut.rs 4b2e426958 clippy, and don't hash invisible files for ts generation 1 vuosi sitten
protocol.rs 7ec3453ca3 Fix bundling/path errors, sidecar support, iOS/Android simulator support, asset hotreload fixes, serverfn hotrelad, native tailwind support (#2779) 8 kuukautta sitten
query.rs cbeda0af76 Refactor and fix eval channels (#2302) 1 vuosi sitten
readme.md 20d146d9bd Simplify the launch builder (#2967) 8 kuukautta sitten
shortcut.rs 9167cd9dec fix most typos, add crate-ci/typos to CI (#2653) 11 kuukautta sitten
trayicon.rs 292f757d5d SystemTray (#3123) 8 kuukautta sitten
waker.rs 4b2e426958 clippy, and don't hash invisible files for ts generation 1 vuosi sitten
webview.rs 281087469a Move the history provider into the context (#3048) 8 kuukautta sitten

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!