BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage News Microsoft Releases Project Reunion 0.5 Preview

Microsoft Releases Project Reunion 0.5 Preview

This item in japanese

Bookmarks

Earlier this week, Microsoft released Project Reunion 0.5 Preview, a set of developer components and tools that unifies access to existing Win32 and UWP APIs under a single API layer, decoupled from the operating system. The new release also includes the first stable release of WinUI 3, the newest version of the native UI platform for Windows 10. Project Reunion 0.5 is a developer preview, and its first stable release (v1.0) will be generally available in October (expected).

Project Reunion is a set of libraries, frameworks, components, and tools that provides a unified development platform for all apps (Win32, Packaged, and UWP), targeting all the Windows 10 versions. That means all applications developed with Project Reunion can work on a broad range of Windows 10 versions and devices.

The base idea behind Project Reunion is to provide an upper API layer to bridge the gap between Win32 and UWP while at the same time creating an API model to deliver new Windows functionality. All functionality provided by Project Reunion are divided into three different categories: New APIs (new Windows functionality delivered as part of Project Reunion), Converged APIs (providing an abstraction layer over Win32 and UWP), and API Subsets (a subset of supported Windows Platform APIs that work across all versions of Windows).

Converged APIs in Project Reunion. Source: Microsoft

According to Microsoft, one of the benefits brought by Project Reunion is a unified API surface across desktop app platforms. Using Project Reunion, developers who want to create desktop Windows apps will be able to use the same set of Windows APIs regardless of the app model (platforms and frameworks) chosen. All APIs will work on Windows 10, version 1809 and newer.

Another expected benefit for developers is a faster release cadence since Project Reunion is expected to release updates faster than the previous Windows API releases (tied to OS releases).

Project Reunion 0.5 Preview includes the Windows UI Library version 3 (WinUI 3), the next generation of native Windows UI. WinUI 3 is a UI layer that takes the decoupled UWP XAML Visual Layer from Windows 10, the WinUI 2 library, and combines both with more modern features and capabilities. This layer can be used in any Desktop app or UWP app. WinUI 3 also provides the native implementation for other frameworks such as React Native when running on Windows.

How WinUI 3 relates to WinUI 2 and other technologies. Source: Microsoft

Other components included in this release of Project Reunion are MRT Core (a set of APIs to load and manage resources used by your app) and DWriteCore (providing access to all current DirectWrite features for text rendering). The current API set also provides access to C++/WinRT, Rust/WinRT, C#/WinRT, and MSIX-Core (packaging). Project Reunion 0.5 Preview also includes project templates for WinUI 3 and a set of sample applications.

The first stable version of Project Reunion (v 1.0) will be released later this year with an additional set of functionalities related to app activation and lifecycle (including power state notifications). Another intermediary preview release (v. 0.8) is expected for Q2 2021.

It is important to note that Project Reunion 0.5 Preview is a developer preview, and therefore not supported in production environments. Also, this release can only be used in MSIX-packaged desktop apps (C#/.NET 5 or C++/Win32). Support for unpackaged desktop apps will only be available with version 1.0.

Rate this Article

Adoption
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

  • Too narrow in scope

    by Sam King,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    The problem with anything Microsoft does with Windows APIs are that the fact that they only work for new versions of Windows 10. Not all those legacy Windows 10 systems, Windows 8 systems, or Windows 7 systems. This severely limits what companies will be willing to adopt these APIs.

    Furthermore, on the other side of Microsoft, .NET is working hard to make cross-platform development (including GUI) as easy as possible. I can't think of a reason why anyone outside Redmond would in this day and age develop an app using Windows APIs rather than using .NET or another cross platform technology.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

BT