At Build 2020, Microsoft introduced Project Reunion, billed as unification tool for Win32 and UWP app development on Windows 10. However, Build was an all virtual event this year and Microsoft could not get the hands-on time with dev's to discuss the tool.
Many developers were left confused about the purpose of Project Reunion and what it can do. To address this confusion, Microsoft has published an explainer on its GitHub platform. In an update to the open source page for the project, the company has detailed what Reunion is and what it isn't.
Project Reunion integrates its current Win32 and Universal Windows Platform (UWP) APIs. Win32 apps are legacy applications, while UWP is Microsoft's modern app API. Under Project Reunion, the tool will also be available independently from Windows, allowing dev's to use tools like Budget.
Applications built on the services will function across any device running Windows 10. Microsoft says some APIs already work with Project Reunion, including WebView 2, MSIX, and WinUI 3. Aside from these basics, developers were confused over the potential of Reunion.
On GitHub, Microsoft points to the purpose behind the tool:
- “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.
- Your app can use the parts of Project Reunion that are most interesting to you without having to rewrite it into a new app model or deployment system. Project Reunion provides a single consistent API surface for both new and existing functionality that automatically adapts to your preferred app model and deployment mechanism.”
What Project Reunion Isn't
Perhaps more importantly, Microsoft has addressed what Project Reunion cannot do and what it was not designed to do:
- “Project Reunion isn't a new application model or platform from Windows. There won't be a “new Project Reunion App” template for Visual Studio, VSCode, or other development environments.
You'll still have full access to the Windows SDK and associated kits. Over time the features that Project Reunion provides will grow beyond just merging the existing Win32 and UWP models and provide additional functionality for all apps to use.
- Project Reunion isn't a new packaging or isolation model for applications. There won't be required changes to your application in order to access Project Reunion functionality other than using the new functionality itself. If the APIs you use need identity or packaging these requirements will be indicated.
- Project Reunion isn't a new security or privacy model for applications. Your app's existing security, privacy, reliability, and identity stories continue to work with Project Reunion. There may be places that Project Reunion helps your app be more aware of customer security or privacy concerns. Project Reunion helps you use modern security & privacy functionality that evolves alongside your application's needs.
- Project Reunion isn't a way to run your app in the cloud. Using Project Reunion technology will help get your app on modern API families that are cloud ready. Key components like modern lifecycle and state isolation help get your app ready to run wherever your customers are.”