From b0cabc5af191d45b0e6570578b256cae726ef50a Mon Sep 17 00:00:00 2001 From: 0x5BFA <62196528+0x5bfa@users.noreply.github.com> Date: Wed, 6 Aug 2025 03:46:56 +0900 Subject: [PATCH] Init --- README.md | 24 ++++------- docs/SECURITY.md | 41 ------------------- docs/images/StoreBadge-dark.png | Bin 0 -> 14274 bytes docs/images/StoreBadge-light.png | Bin 0 -> 15295 bytes docs/images/storeBadge.png | Bin 18793 -> 0 bytes docs/roadmap.md | 67 ------------------------------- docs/winrt-apis-for-desktop.md | 5 --- docs/winui3_migration.md | 22 ---------- 8 files changed, 8 insertions(+), 151 deletions(-) delete mode 100644 docs/SECURITY.md create mode 100644 docs/images/StoreBadge-dark.png create mode 100644 docs/images/StoreBadge-light.png delete mode 100644 docs/images/storeBadge.png delete mode 100644 docs/roadmap.md delete mode 100644 docs/winrt-apis-for-desktop.md delete mode 100644 docs/winui3_migration.md diff --git a/README.md b/README.md index 6e7e8f9b71..c31a1c7a9b 100644 --- a/README.md +++ b/README.md @@ -26,8 +26,7 @@ WinUI is a user interface layer that contains modern controls and styles for bui - **Powers key experiences in Windows:** Windows experiences and apps are built with WinUI. Its rich control set and styles make it easy to develop high-quality experiences used by millions every day.

-Powers key experiences in Windows -
+ Powers key experiences in Windows

## 📋 Getting started with WinUI @@ -38,8 +37,8 @@ The full documentation of WinUI can be found on [Microsoft Learn](https://learn. - [Get started with WinUI](https://learn.microsoft.com/windows/apps/get-started/start-here) - [Build your first WinUI app](https://learn.microsoft.com/windows/apps/how-tos/hello-world-winui3) - [WinUI & Windows App SDK samples](https://github.com/microsoft/WindowsAppSDK-Samples) - -
+- [Migrate from UWP to the Windows App SDK](https://learn.microsoft.com/windows/apps/windows-app-sdk/migrate-to-windows-app-sdk/migrate-to-windows-app-sdk-ovw) +- [Windows Runtime APIs not supported in desktop apps](https://learn.microsoft.com/windows/apps/desktop/modernize/desktop-to-uwp-supported-api) ## 🖼️ WinUI 3 Gallery Make sure to also check out the [WinUI 3 Gallery](https://aka.ms/winui-gallery), our interactive sample experience showing everything you can do with WinUI. @@ -48,37 +47,30 @@ Make sure to also check out the [WinUI 3 Gallery](https://aka.ms/winui-gallery), WinUI 3 Gallery

- - - + + + + +

-
## 📺 WinUI Community Call The WinUI Community Call is your opportunity to learn about WinUI and to engage with the WinUI team and community. Join us online on YouTube at the [Windows Developer channel](https://www.youtube.com/playlist?list=PLI_J2v67C23ZqsolUDaHoFkF1GKvGrttB). -
- ## 📢 Contributing to WinUI The WinUI team welcomes your feedback! To understand how we handle incoming feature requests and bugs, please see our [contribution handling](docs/contribution_handling.md) guidelines. For information on how to contribute, please see [Contributing to WinUI](CONTRIBUTING.md). -
- ## 🛣️ Roadmap For info on the WinUI release schedule and high level plans please see the [WinUI roadmap](https://aka.ms/winappsdk/plans). -
- ## 🔧 WinUI 2 (for UWP) WinUI 2 is a library of controls that provides Microsoft UI controls and features for [UWP apps](https://docs.microsoft.com/windows/uwp/index). Learn more about WinUI 2 [here](https://aka.ms/winui2) or download the source code [here](https://github.com/microsoft/microsoft-ui-xaml/tree/winui2/main). You can get the WinUI 2 Gallery [on the Microsoft Store](https://www.microsoft.com/store/productId/9MSVH128X2ZT?ocid=pdpshare) and see the source code [here](https://github.com/microsoft/WinUI-Gallery/tree/winui2). -
### Data/Telemetry diff --git a/docs/SECURITY.md b/docs/SECURITY.md deleted file mode 100644 index 34875abfa1..0000000000 --- a/docs/SECURITY.md +++ /dev/null @@ -1,41 +0,0 @@ - - -# Security - -Microsoft takes the security of our software products and services seriously, which includes all source code repositories managed through our GitHub organizations, which include [Microsoft](https://github.com/Microsoft), [Azure](https://github.com/Azure), [DotNet](https://github.com/dotnet), [AspNet](https://github.com/aspnet), [Xamarin](https://github.com/xamarin), and [many more](https://opensource.microsoft.com/). - -If you believe you have found a security vulnerability in any Microsoft-owned repository that meets Microsoft's [definition](https://docs.microsoft.com/en-us/previous-versions/tn-archive/cc751383(v=technet.10)) of a security vulnerability, please report it to us as described below. - -## Reporting Security Issues - -**Please do not report security vulnerabilities through public GitHub issues.** - -Instead, please report them to the Microsoft Security Response Center (MSRC) at [https://msrc.microsoft.com/create-report](https://msrc.microsoft.com/create-report). - -If you prefer to submit without logging in, send email to [secure@microsoft.com](mailto:secure@microsoft.com). If possible, encrypt your message with our PGP key; please download it from the the [Microsoft Security Response Center PGP Key page](https://www.microsoft.com/en-us/msrc/pgp-key-msrc). - -You should receive a response within 24 hours. If for some reason you do not, please follow up via email to ensure we received your original message. Additional information can be found at [microsoft.com/msrc](https://www.microsoft.com/msrc). - -Please include the requested information listed below (as much as you can provide) to help us better understand the nature and scope of the possible issue: - -* Type of issue (e.g. buffer overflow, SQL injection, cross-site scripting, etc.) -* Full paths of source file(s) related to the manifestation of the issue -* The location of the affected source code (tag/branch/commit or direct URL) -* Any special configuration required to reproduce the issue -* Step-by-step instructions to reproduce the issue -* Proof-of-concept or exploit code (if possible) -* Impact of the issue, including how an attacker might exploit the issue - -This information will help us triage your report more quickly. - -If you are reporting for a bug bounty, more complete reports can contribute to a higher bounty award. Please visit our [Microsoft Bug Bounty Program](https://microsoft.com/msrc/bounty) page for more details about our active programs. - -## Preferred Languages - -We prefer all communications to be in English. - -## Policy - -Microsoft follows the principle of [Coordinated Vulnerability Disclosure](https://www.microsoft.com/en-us/msrc/cvd). - - diff --git a/docs/images/StoreBadge-dark.png b/docs/images/StoreBadge-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..8095159a828b7f19506daf9e74e814283a4c77a0 GIT binary patch literal 14274 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 SGKIspsQXIliXY_7g8x5!&?T(^ literal 0 HcmV?d00001 diff --git a/docs/images/storeBadge.png b/docs/images/storeBadge.png deleted file mode 100644 index 4d78d31495b14f2e12eaae62db9b11499f9773a2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18793 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 yr+j#jnXGEzw`7`ntk}j$1s@193#{6HPa;xV6 diff --git a/docs/roadmap.md b/docs/roadmap.md deleted file mode 100644 index 52e449c149..0000000000 --- a/docs/roadmap.md +++ /dev/null @@ -1,67 +0,0 @@ -# Windows UI Library Overview - -WinUI is the modern native UI platform for Windows with two active generations: - -1. **WinUI 3**: The latest, 3rd generation of WinUI that ships the entire WinUI stack decoupled from the operating system as a part of the [Windows App SDK](https://docs.microsoft.com/windows/apps/windows-app-sdk/). - -2. **WinUI 2**: The previous generation of the WinUI stack for UWP apps, consisting of a XAML and Visual Layer built directly into the Windows 10 operating system, and a controls library built on top of the OS, delivered via NuGet, and hosted at this repository. WinUI 2 will continue to be supported with bug, reliability, and security fixes. - -**For a detailed look on the difference between WinUI 2 & 3, please view our [comparison table](https://docs.microsoft.com/windows/apps/winui/#comparison-of-winui-3-and-winui-2) - -### Benefits of WinUI - -WinUI provides a number of benefits which makes it the best way to create user interfaces for Windows apps: - -1. **The native UI platform of Windows** -WinUI is the highly-optimized native UI platform used to create Windows itself, now made more broadly available for all developers to use to reach Windows. It's a thoroughly tested and proven UI platform that powers the operating system environment and essential experiences of 1 billion+ Windows 10 & 11 PC, XBox One, HoloLens, Surface Hub and other devices. - -2. **The latest advancements in Fluent Design** -WinUI is Microsoft's main focus for native, accessible Windows UI and controls and is the definitive source for the [Fluent Design System](https://www.microsoft.com/design/fluent/) on Windows. -It will also support the latest composition and rendering innovations like vector animations, effects, shadows and lighting. - -3. **Backward compatibility for new features** -New WinUI features will continue to be backward-compatible with a wide range of Windows 10 and 11 versions. With WinUI 3, you can start building and shipping apps with new features immediately as soon as they're released, without having to wait for your users to be running the latest update of Windows. - -4. **Native development support** -WinUI can be used with .NET, but doesn't depend on .NET: WinUI is 100% C++ and can be used in unmanaged Windows apps, for example using standard C++17 via [C++/WinRT](https://docs.microsoft.com/windows/uwp/cpp-and-winrt-apis/). - -5. **More frequent updates** -WinUI is planned to ship roughly every 6 months, with at least two preview builds per stable release. This is more of a guideline than a rule, but that is what the team strives for. - -6. **Open source development and community engagement** - The WinUI 2 Controls Library is already open source on GitHub, and we're planning to add the full WinUI 3 framework into this repo as well. You can engage directly with Microsoft's core engineering team and contribute bug reports, feature ideas, and even code: see the [Contribution Guide](../CONTRIBUTING.md) for more info. You can also try out the pre-release builds to see new in-development features and help shape their final form. - -## WinUI 3 - -**[WinUI 3](https://docs.microsoft.com/windows/apps/winui/winui3/)** is the latest generation of native Windows UI, consisting of all the major UX layers of Windows decoupled and shipping as a standalone solution for you to use. - -It focuses on enabling three main use cases: - -1. **Modernizing existing apps** - * Enabling you to extend existing Win32 (WPF, WinForms, MFC...) apps with modern Windows UI at your own pace using the upcoming release of [Xaml Islands](https://docs.microsoft.com/windows/apps/desktop/modernize/xaml-islands). Developers who currently use WinUI 2 for their app UX will be able to easily move to WinUI 3, as their syntax and capabilities are very similar -2. **Creating new Windows apps** - * Enabling you to easily create new modern Windows apps with the flexibility offered by the [Windows App SDK](https://docs.microsoft.com/windows/apps/windows-app-sdk/) -3. **Enabling other frameworks** - * Providing the native implementation for other frameworks like [React Native](https://github.com/Microsoft/react-native-windows) and .NET [MAUI](https://docs.microsoft.com/dotnet/maui/what-is-maui) when running on Windows. - -WinUI 3 is available as a part of the [Windows App SDK](https://docs.microsoft.com/windows/apps/windows-app-sdk) for building stable and supported desktop/Win32 apps for production scenarios. You can download and read more about the latest releases of the Windows App SDK at the following documentation. - -[Stable release channel for the Windows App SDK](https://docs.microsoft.com/windows/apps/windows-app-sdk/stable-channel) - -We also ship experimental features as we develop them. You can read more about the Windows App SDK Experimental releases at the following documentation. Note that Experimental releases have limitations and known issues, so they are not equipped for production apps. - -[Experimental release channel for the Windows App SDK](https://docs.microsoft.com/windows/apps/windows-app-sdk/experimental-channel). - -### Roadmap - -For more info about upcoming features in the next release of WinUI 3, see the [Windows App SDK feature roadmap](https://github.com/microsoft/WindowsAppSDK/blob/main/docs/roadmap.md). - -## WinUI 2 Controls Library - -WinUI 2 is a native user experience (UX) framework for both Windows desktop and UWP applications tightly integrated with Windows 10 and above SDKs. - -The latest release of the **WinUI 2 Controls Library** was v2.8 which was released in July 2022. You can find a list of what was introduced in this release in the [release notes](https://learn.microsoft.com/en-us/windows/apps/winui/winui2/release-notes/winui-2.8). - -At this time, there are no plans for a WinUI 2.9. However, WinUI 2 will continue to be supported through servicing releases with bug, reliability, and security fixes as needed. - -For installation instructions see [Getting started with the Windows UI Library](https://docs.microsoft.com/windows/apps/winui/winui2/getting-started). diff --git a/docs/winrt-apis-for-desktop.md b/docs/winrt-apis-for-desktop.md deleted file mode 100644 index a94c13ae13..0000000000 --- a/docs/winrt-apis-for-desktop.md +++ /dev/null @@ -1,5 +0,0 @@ -# WinRT API changes for Desktop apps - -The content from this doc has been moved to our official documentation site, and will continue to be maintained there. - -You can find the updated doc at: [Windows Runtime APIs not supported in Desktop apps](https://docs.microsoft.com/windows/apps/desktop/modernize/desktop-to-uwp-supported-api). \ No newline at end of file diff --git a/docs/winui3_migration.md b/docs/winui3_migration.md deleted file mode 100644 index 1575390599..0000000000 --- a/docs/winui3_migration.md +++ /dev/null @@ -1,22 +0,0 @@ -# Migrating a UWP App To WinUI3 - -**It is recommended to use the [try-convert](https://github.com/dotnet/try-convert/tree/feature/winui) tool for the full conversion process.** -**`try-convert` will automate most of the conversion steps.** - -## Background - -The purpose of the [try-convert WinUI3 feature](https://github.com/dotnet/try-convert/tree/feature/winui) is to create a porting solution to allow developers to convert WinUI2 projects to the new WinUI3 format. - -- WinUI is a native user experience (UX) framework for both Windows Desktop and UWP applications. WinUI ships as part of the Windows OS. -[More on WinUI](http://aka.ms/winui), [Docs](https://docs.microsoft.com/en-us/windows/apps/winui) -- WinUI3 is the next version of WinUI. It runs on the native Windows 10 UI platform and supports both Windows Desktop and UWP apps. WinUI3 ships as a NuGet package. -[More on WinUI3](https://docs.microsoft.com/en-us/windows/apps/winui/winui3) - -Converting an existing WinUI C# App to WinUI3 requires some changes to the C# source code. Most notably namespace changes from Windows.UI.* to Microsoft.UI.* - -This porting assistance is provided in the form of Roslyn Analyzers and Code Fixes. -- A Code Analyzer provides on the fly code inspections for C# and creates diagnostics. -- A Code Fix consumes the diagnostics created by the Code Analyzer and modifies the C# file in-line. - -See the [try-convert documentation](https://github.com/dotnet/try-convert/tree/feature/winui) for more information on these code analyzers and how to automoate the process with [try-convert](https://github.com/dotnet/try-convert/blob/feature/winui/WinUIConvert.md). -