Fluent UI

PowerPortalsPro is built on Microsoft's Fluent UI design system. The Blazor stack uses Fluent UI Blazor, and the React stack uses Fluent UI React (@fluentui/react-components). PowerPortalsPro components are built on these libraries under the hood, so familiarity with the one for your stack helps you get the most out of the framework.

About the Libraries

Both are official Microsoft open-source projects implementing the Fluent 2 Design System:

Key Components Used by PowerPortalsPro

The full component libraries are available in your portal. On the Blazor stack you will commonly encounter:

On the React stack, the equivalents come from @fluentui/react-components:

Theming

Both Fluent UI libraries share an adaptive design-token system. In Blazor, PowerPortalsPro exposes it through the ThemeProvider and SiteSettingsButton components; in React, through PowerPortalsProThemeProvider (which wraps Fluent's FluentProvider) and the React SiteSettingsButton. Both let users switch between light and dark modes, change accent colors, and toggle right-to-left text direction, with all styling driven by design tokens so your portal adapts automatically when the theme changes.

Tip

When writing custom styles, prefer Fluent design tokens over hardcoded colors — var(--accent-fill-rest) / var(--neutral-foreground-rest) in Blazor, or the tokens.* values (e.g. tokens.colorBrandBackground) from @fluentui/react-components in React. This keeps your styles consistent across light and dark themes.

Accessibility

Both Fluent UI libraries include built-in WCAG 2.1 compliance, keyboard navigation, and screen reader support. By building on these foundations, PowerPortalsPro portals inherit these accessibility features automatically on either stack.

Resources

Fluent UI Blazor

Fluent UI React

Shared design system: Fluent 2 Design System