AndreGoepel.Design.Blazor 1.6.7

dotnet add package AndreGoepel.Design.Blazor --version 1.6.7
                    
NuGet\Install-Package AndreGoepel.Design.Blazor -Version 1.6.7
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="AndreGoepel.Design.Blazor" Version="1.6.7" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="AndreGoepel.Design.Blazor" Version="1.6.7" />
                    
Directory.Packages.props
<PackageReference Include="AndreGoepel.Design.Blazor" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add AndreGoepel.Design.Blazor --version 1.6.7
                    
#r "nuget: AndreGoepel.Design.Blazor, 1.6.7"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package AndreGoepel.Design.Blazor@1.6.7
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=AndreGoepel.Design.Blazor&version=1.6.7
                    
Install as a Cake Addin
#tool nuget:?package=AndreGoepel.Design.Blazor&version=1.6.7
                    
Install as a Cake Tool

AndreGoepel.Design.Blazor

An app-neutral design system for Blazor: an emerald-accented light/dark token palette, a Radzen reskin, self-hosted fonts, and a small set of shell / login building blocks. It has no dependency on any application — consume it from any Blazor app or library to get a consistent look without pulling in unrelated stacks.

Extracted from the marten-identity project, where it originated as the "AppFoundation" UI.

Install

dotnet add package AndreGoepel.Design.Blazor

Use

Reference the stylesheets after Radzen's material-base.css, and load the theme + nav scripts, in your host page (App.razor):

<link rel="stylesheet" href="_content/AndreGoepel.Design.Blazor/css/fonts.css" />
<link rel="stylesheet" href="_content/Radzen.Blazor/css/material-base.css" />
<link rel="stylesheet" href="_content/AndreGoepel.Design.Blazor/css/design.css" />
<script src="_content/AndreGoepel.Design.Blazor/js/theme.js"></script>
<script src="_content/AndreGoepel.Design.Blazor/js/nav.js"></script>

Then build with Radzen components and the ag-* helper classes, and use the shell:

<AppShell BrandName="Acme">
    <Sidebar>@* NavLinks + ag-nav-section groups *@</Sidebar>
    <TopbarActions>
        <LanguageSwitcher />
        <ThemeToggle />
    </TopbarActions>
    <ChildContent>@Body</ChildContent>
</AppShell>

What's inside

  • Design tokens (--ag-*) for light + dark, and a remap of Radzen's --rz-* variables onto them.
  • ag-* helper classes — cards, buttons, badges, forms, grids, empty states, the app shell, and the login card.
  • ComponentsAppShell, AppPageTitle, LoginShell, AppIcon, ThemeToggle, LanguageSwitcher, PageHeader, DialogHeader, StatusBadge, EmptyState, RowActions, IconButton, DataCard, GridToolbar, FilterBar, CardForm, FormField, SettingToggleRow, ToggleField, StatTile, StatTileRow, LinkButton, InfoBox, and the cascading BreadcrumbState.
  • Services & optionsConfirmService (standardised confirm/delete dialogs) and DesignBlazorOptions (e.g. the BrandName AppPageTitle appends to document titles), registered via services.AddDesignBlazor(o => o.BrandName = "Acme") (call after AddRadzenComponents()).
  • Self-hosted fonts (Manrope / Space Grotesk / JetBrains Mono) — nothing is fetched from Google at runtime. Regenerate with scripts/fetch-fonts.py.

Localization

English and German ship out of the box — every string a component renders on its own falls back to a localized default, overridable per-parameter as always:

builder.Services.AddDesignBlazor(o => o.BrandName = "Acme"); // en/de by default
...
app.UseDesignBlazorLocalization(); // before MapRazorComponents

LanguageSwitcher (above) links to the culture-switch endpoint this sets up. A page that needs its own styling instead of LanguageSwitcher (e.g. a public page without design.css) builds the same links via CultureLinks.Build. See DESIGN.md §9 for how a host app localizes its own pages the same way — the demo app is a fully bilingual reference.

See DESIGN.md for the full guidelines.

License

MIT © André Göpel

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on AndreGoepel.Design.Blazor:

Package Downloads
AndreGoepel.Marten.Identity.Blazor

Blazor Server UI components for AndreGoepel.Marten.Identity — login, registration, 2FA, passkeys, and user/role administration pages built with Radzen.

AndreGoepel.AppFoundation

Reusable Blazor management frontend (layout, navigation, setup, and admin shell) for AndreGoepel.AppFoundation-based applications.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.6.7 51 9/4/2026
1.6.6 169 9/3/2026
1.6.5 315 9/2/2026
1.6.4 517 8/21/2026
1.6.3 334 8/14/2026
1.6.2 135 8/13/2026
1.6.1 133 8/9/2026
1.6.0 575 7/26/2026
1.5.0 108 7/26/2026
1.4.2 571 7/24/2026
1.4.1 151 7/23/2026
1.4.0 104 7/23/2026
1.3.0 278 7/22/2026
1.2.1 403 7/20/2026
1.2.0 102 7/20/2026
1.1.0 248 7/19/2026
1.0.3 347 7/17/2026
1.0.2 399 7/12/2026
1.0.1 249 7/8/2026
1.0.0 229 7/8/2026