Windows (XAML, deprecated)

Tier 5 · Deprecated

Moving to windows-winui

day project add-target windows-winui

Then drop windows-xaml from Day.toml. The Rust code needs no changes: both targets build the same XAML backend and the same C++/WinRT shim. Development machines need the Windows App Runtime 2.5.1 or newer; a packed windows-winui app is self-contained, so its users install nothing extra. The Windows (WinUI 3) page covers setup, packing, caveats, and which control each Day piece becomes.

What differs

  • The XAML stack. windows-xaml builds the backend against system XAML (Windows.UI.Xaml, part of Windows 10 and 11), hosted in the Win32 window through XAML Islands. windows-winui builds it against WinUI 3 (Microsoft.UI.Xaml) from the Windows App SDK, hosted through that SDK’s DesktopWindowXamlSource.
  • No Windows App SDK runtime. System XAML ships with Windows, so a windows-xaml build neither downloads the SDK packages nor needs the Windows App Runtime.
  • The controls are system XAML’s (UWP) versions, not WinUI 3’s, and the web view is a WebView2 composition visual the shim hosts by hand rather than WinUI’s WebView2 control.

Building and packing are otherwise the same: the MSVC toolchain and the Visual Studio C++ Build Tools, day doctor --toolkit xaml, and day pack -t windows-xaml for an .msix plus an NSIS -setup.exe. dayscript gates naming xaml or windows-xaml also match windows-winui.