Windows UI Library
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 generation of the WinUI framework. 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.
WinUI Community Calls
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
Using WinUI 3
You can build new Windows apps using WinUI 3, which ships as a part of the Windows App SDK. The latest available stable release is the Windows App SDK 0.8 (previously called Project Reunion). With this release, you can ship production Desktop apps to the Microsoft Store.
Using WinUI 2
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|
Controls and Fluent Design for UWP apps
Low-level APIs for middleware components
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.
To find resources for Windows UI 2.6, like the Figma design toolkit, Segoe UI Variable Font, and samples, visit Design toolkits and samples for Windows apps
If you find any issues with the Windows UI toolkit, you can file a bug here
WinUI usage documentation:
WinUI 2 Release notes:
WinUI 3 Release notes: https://docs.microsoft.com/windows/apps/windows-app-sdk/stable-channel
To view the WinUI controls in an interactive format, check out the Xaml Controls Gallery (for WinUI 2) and the WinUI 3 Controls Gallery:
- Get the XAML Controls Gallery app from the Microsoft Store or get the source code on GitHub
- Get the WinUI 3 Controls Gallery app from the Microsoft Store or get the source code on GitHub
WinUI also has its own website where you can learn more about it.
Contributing to WinUI
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:
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.
WinUI 3 is a part of the Windows App SDK family
The Windows App SDK 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. The Windows App SDK combines the powers of Win32 native applications alongside modern API usage techniques, so your apps light up everywhere your users are.
Other Windows App SDK components are: WebView2, MSIX (MSIX-Core), C++/WinRT, Rust/WinRT, and C#/WinRT. If you'd like to learn more and contribute to Windows App SDK, 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.
Code of Conduct
This project has adopted the Microsoft Open Source Code of Conduct.