News

Windows App SDK ('Project Reunion') Hits Version 1.0

Microsoft's Windows App SDK 1.0 Stable release is live, unifying access to Windows APIs for desktop Windows 10/11 apps in a new scheme that was formerly called "Project Reunion."

The "reunion" seeks to unify two Windows app development API approaches that resulted from the debut of the Universal Windows Platform (UWP), which came with APIs different from those in the older Win32 platform, used for what is often called "classic Windows desktop development." It was the original C/C++ platform for native Windows apps, providing close-to-the-metal performance with direct access to system hardware.

UWP, a "modern" take on Windows development, provides a common type system and application model and APIs for all Windows 10 devices. UWP effectively containerizes these apps with lower privilege levels and package identity delivered via an MSIX installer. The Windows App SDK unifies these disparate API sets by basically decoupling them from the OS and serving them up via NuGet, because Microsoft eventually decided "Windows development is hard" with the bifurcated API scheme.

Project Reunion
[Click on image for larger view.] Project Reunion (source: Microsoft).

"The Windows App SDK does not replace the Windows SDK or existing desktop Windows app types such as .NET (including Windows Forms and WPF) and desktop Win32 with C++," Microsoft says. "Instead, the Windows App SDK complements these existing tools and app types with a common set of APIs that developers can rely on across these platforms."

In updated Nov. 16 documentation (following the v1.0 milestone) the company says it plans to invest in the Windows App SDK in order to remove more distinctions between disparate app models, noting that the SDK will include both WinRT APIs and native C APIs.

Microsoft shipped a second preview of Windows App SDK last month, listing these components:

  • WinUI: This is the native UI layer for Windows that embodies Fluent Design and delivers modern, performant and polished user experiences to both Win32 and UWP apps. This component is part of the Windows App SDK Family of functionality, building on the identity + packaging + deployment transparent ideas that Windows App SDK supports for apps as well.
  • C++/WinRT, Rust/WinRT and C#/WinRT: These provide language-native projections of Windows, Windows App SDK and custom types defined in metadata. Developers can consume APIs from the Windows Kit, produce them for use by other supported projections and create new language projections.
  • MSIX-Core: This lets developers package an application for distribution to Windows Desktop machines via the store or individual delivery pipelines. MSIX-Core lets developers reuse parts of the MSIX packaging story on older versions of Windows.

Updated documentation shows the project currently sports these features;

Windows App SDK Features
[Click on image for larger view.] Windows App SDK Features (source: Microsoft).

Although the company has been marking the progress of Windows App SDK in developer blog posts, the v1.0 milestone was announced yesterday (Nov. 16) with a simple tweet from Microsoft's Kevin Galloway:

The Announcement
[Click on image for larger view.] The Announcement (source: Microsoft).

Comments to the tweet noted that the SDK officially supports the new .NET 6, but is still incomplete in some areas, including multi-window support:

Multi-Window Support
[Click on image for larger view.] Multi-Window Support (source: Microsoft).

Indeed, the project's new roadmap shows multiple window support is planned for v1.1 in the second quarter of 2022, along with elevated (admin) support, push notifications for non-Store apps, local toast notifications and more:

The New Roadmap
[Click on image for larger view.] The New Roadmap (source: Microsoft).

The project's GitHub repo basically shows the same things in the old roadmap style:

The GitHub Roadmap
[Click on image for larger view.] The GitHub Roadmap (source: Microsoft).

"The Windows App SDK provides a broad set of Windows APIs with implementations that are decoupled from the OS and released to developers via NuGet packages," Microsoft said. "The Windows App SDK is not meant to replace the Windows SDK. The Windows SDK will continue to work as is, and there are many core components of Windows that will continue to evolve via APIs that are delivered via OS and Windows SDK releases. Developers are encouraged to adopt the Windows App SDK at their own pace."

About the Author

David Ramel is an editor and writer at Converge 360.

comments powered by Disqus

Featured

  • Compare New GitHub Copilot Free Plan for Visual Studio/VS Code to Paid Plans

    The free plan restricts the number of completions, chat requests and access to AI models, being suitable for occasional users and small projects.

  • Diving Deep into .NET MAUI

    Ever since someone figured out that fiddling bits results in source code, developers have sought one codebase for all types of apps on all platforms, with Microsoft's latest attempt to further that effort being .NET MAUI.

  • Copilot AI Boosts Abound in New VS Code v1.96

    Microsoft improved on its new "Copilot Edit" functionality in the latest release of Visual Studio Code, v1.96, its open-source based code editor that has become the most popular in the world according to many surveys.

  • AdaBoost Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the AdaBoost.R2 algorithm for regression problems (where the goal is to predict a single numeric value). The implementation follows the original source research paper closely, so you can use it as a guide for customization for specific scenarios.

  • Versioning and Documenting ASP.NET Core Services

    Building an API with ASP.NET Core is only half the job. If your API is going to live more than one release cycle, you're going to need to version it. If you have other people building clients for it, you're going to need to document it.

Subscribe on YouTube