Initialize the built-in theme family
Fluent & Simple Theme Hosts
Select the built-in theme family without coupling application startup to its concrete type.
Explore source ↗Capability
FluentThemeManager and SimpleThemeManager implement one IThemeManager contract and insert the corresponding Avalonia theme into the application style collection.
- 01
Shared IThemeManager contract
- 02
FluentTheme initialization
- 03
SimpleTheme initialization
- 04
Application style insertion
How it composes
From intent
to working system.
Choose
Application composition selects Fluent or Simple implementation.
Create
The manager owns the matching Avalonia theme instance.
Initialize
The theme is inserted at the front of Application.Styles.
Use
Normal Avalonia resources and controls consume the active family.
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 ThemeManager<PackageReference Include="ThemeManager" Version="VERSION" /><PackageVersion Include="ThemeManager" Version="VERSION" />IThemeManager themes = new FluentThemeManager();themes.Initialize(this);
// Or use SimpleThemeManager for Avalonia SimpleTheme.Modules in this capability
Use one layer.
Compose the rest.
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.