Controls, input, Fluent, and automation
Portable WinUI
Build a complete XAML application surface directly above the GPU substrate.
Explore source ↗Capability
Portable WinUI turns the rendering substrate into an application framework while keeping controls, themes, input, automation, media, and composition on explicit package boundaries.
- 01
WinUI-shaped controls and application model
- 02
Pointer, touch, gestures, drag/drop, focus, and automation
- 03
Source-generated Fluent theme resources
- 04
Virtualization, charts, media, hot reload, and designer surfaces
How it composes
From intent
to working system.
Foundation
WinRT-shaped values, storage, dispatching, windowing, and system contracts remain platform-neutral.
Controls
Layout, binding, input, automation, navigation, data, text, media, and charts form the public UI surface.
Theme
Source-generated Fluent resources retain inspectable XAML and typed template contracts.
Scene
Controls resolve into retained vector, text, image, media, and effect work on the shared compositor.
Quick start
Adopt this
capability.
Start with the primary module, then add the related packages only when the application needs those layers. Replace VERSION with the current NuGet version.
dotnet add package ProGPU.WinUI --prereleasedotnet add package ProGPU.WinUI.Themes.Fluent --prerelease<PackageReference Include="ProGPU.WinRT" Version="VERSION" /><PackageVersion Include="ProGPU.WinRT" Version="VERSION" /><NavigationView PaneDisplayMode="Left"> <Frame Content="{Binding CurrentPage}" /></NavigationView>Modules in this capability
Use one layer.
Compose the rest.
Portable WinRT-shaped foundation, storage, and value contracts.
↗02ProGPU.WinUIApp model, controls, layout, binding, input, windowing, media, and automation.
↗03ProGPU.WinUI.Themes.FluentSource-generated WinUI Fluent resources and templates.
↗04ProGPU.WinUI.ChartsGPU-native chart controls and interaction.
↗Source of truth
Read the module beside the complete system.
The implementation, samples, issues, and release notes stay in the parent repository so module details remain connected to the product architecture.