WinUI is a user interface layer that contains modern controls and styles for building Windows apps. As the native UI layer in Windows it embodies Fluent Design, giving each Windows app the polished feel that customers expect.
WinUI 2 is a library of controls that provides official native Microsoft UI controls and features for Windows UWP apps. WinUI 2 can be used in any Windows 10 UWP XAML app, or in a Xamarin.Forms app running on Windows 10 using native view embedding.
WinUI 3 is the next version of the WinUI framework, and the first stable, supported version has recently shipped. It dramatically expands WinUI into a full UX framework, making WinUI available for all types of Windows apps – from Win32 to UWP – for use as the UI layer.
The WinUI community call is your monthly opportunity to learn about native UX development for Windows with WinUI.
In these calls we’ll discuss the WinUI roadmap, our status and your feedback.
You can watch them online here on YouTube at the Windows Developer channel.
Add the event to your calendar: ICS calendar file
As outlined in the roadmap, we've recently shipped the first stable version of WinUI 3, which will greatly expand the scope of WinUI to include the full native Windows UI platform. We're continuously working on improving WinUI 3 and adding more features.
You can now download WinUI 3 - Project Reunion 0.5 to try out - we'd love your feedback!
You can download and use WinUI packages in your app using the NuGet package manager: see the Getting Started with the Windows UI Library page for more information.
NuGet Package | Build Status | Latest Versions | Documentation |
---|---|---|---|
Microsoft.UI.Xaml Controls and Fluent Design for UWP apps |
|
2.5 release | |
Microsoft.UI.Xaml.Core.Direct Low-level APIs for middleware components |
2.0 prerelease |
You can also build a WinUI package yourself from source. See Contributing to the Windows UI Library for more information on building and contributing to WinUI.
WinUI usage documentation:
https://docs.microsoft.com/windows/apps/winui/
WinUI 2 Release notes:
https://docs.microsoft.com/windows/apps/winui/winui2/release-notes/
WinUI 3 Release notes: https://docs.microsoft.com/windows/apps/winui/winui3/release-notes/
Sample code:
To view the WinUI controls in an interactive format, check out the Xaml Controls Gallery:
- Get the XAML Controls Gallery app from the Microsoft Store
- Get the source code on GitHub
WinUI also has its own website where you can learn more about it.
The WinUI team welcomes feedback and contributions!
For information on how to contribute please see Contributing to the Windows UI Library.
For guidelines on making an impact on WinUI through non-code contributions, please see Contributing ideas, feedback, and requests.
WinUI 2 provides some useful benefits when building apps for Windows 10:
-
Helps you stay up to date
WinUI helps keep your app up to date with the latest versions of key controls and features of UWP XAML and the Fluent Design System -
Provides backward compatibility
WinUI is backward-compatible with a wide range of Windows 10 versions: you can start building and shipping apps with new XAML features immediately as soon as they're released, even if your users aren't on the latest version of Windows 10 -
Makes it simpler to build version adaptive apps
You don't need version checks or conditional XAML markup to use WinUI controls or features: WinUI automatically adapts to the user's OS version
The Microsoft.UI.Xaml 2.4 NuGet package requires your project to have TargetPlatformVersion >= 10.0.18362.0 and TargetPlatformMinVersion >= 10.0.15063.0 when building.
Your app's users can be on any of the following supported Windows 10 versions:
- Windows 10 1703 - Build 15063 (Creators Update aka "Redstone 2") and newer (including Windows Insider Previews)
Some features may have a reduced or slightly different user experience on older versions.
For WinUI 3, your app's users must be on Windows 10 1809 - Build 17763 or newer (including Windows Insider Previews).
For info on the WinUI release schedule and high level plans please see the Windows UI Library Roadmap.
Project Reunion is a set of libraries, frameworks, components, and tools that you can use in your apps to access powerful Windows platform functionality from all kinds of apps on many versions of Windows. Project Reunion combines the powers of Win32 native applications alongside modern API usage techniques, so your apps light up everywhere your users are.
Other Project Reunion components are: WebView2, MSIX (MSIX-Core), C++/WinRT, Rust/WinRT, and C#/WinRT. If you'd like to learn more and contribute to Project Reunion, or have UWP/app model related questions, visit our Github repo.
This project collects usage data and sends it to Microsoft to help improve our products and services. See the privacy statement for more details.
For more information on telemetry implementation see the developer guide.