Rust for Windows
Unofficial guide • Native Windows tooling

Windows GUI in Rust — WinUI, winit, egui, iced, Slint

Pick a UI path for Windows apps: native WinUI via windows-rs or cross‑platform stacks like winit/tao with egui, iced, or Slint. Understand trade-offs, packaging, and DPI.

Use Windows APIs Package & Sign
File: rustup-init.exe • Source: rust-lang.org • Last updated: —

Choosing your GUI path

WinUI (Windows App SDK)

Native Windows look, deep platform access, modern controls. Requires Windows App SDK runtime and MSIX packaging for best experience.

winit/tao + egui

Immediate‑mode UI, fast iteration, low boilerplate. Great for tools, editors, launchers with custom rendering.

iced

Declarative UI with a widget tree, good structure for multi‑screen apps. Cross‑platform with a native feel.

Slint

Declarative UI language, native rendering backends, efficient for desktop and embedded scenarios.

Packaging & distribution

Need a release checklist? See Package & Sign.

DPI, accessibility, and performance

Next steps