![]() |
VOOZH | about |
dotnet add package Soenneker.Bradix.Suite --version 4.0.161
NuGet\Install-Package Soenneker.Bradix.Suite -Version 4.0.161
<PackageReference Include="Soenneker.Bradix.Suite" Version="4.0.161" />
<PackageVersion Include="Soenneker.Bradix.Suite" Version="4.0.161" />Directory.Packages.props
<PackageReference Include="Soenneker.Bradix.Suite" />Project file
paket add Soenneker.Bradix.Suite --version 4.0.161
#r "nuget: Soenneker.Bradix.Suite, 4.0.161"
#:package Soenneker.Bradix.Suite@4.0.161
#addin nuget:?package=Soenneker.Bradix.Suite&version=4.0.161Install as a Cake Addin
#tool nuget:?package=Soenneker.Bradix.Suite&version=4.0.161Install as a Cake Tool
👁 alternate text is missing from this package README image
👁 alternate text is missing from this package README image
👁 alternate text is missing from this package README image
👁 alternate text is missing from this package README image
👁 alternate text is missing from this package README image
Radix-inspired UI primitives for Blazor.
Soenneker.Bradix.Suite is the behavioral foundation for building serious Blazor UI. It gives product teams a Radix-style primitive layer: dialogs, menus, popovers, selects, tabs, tooltips, scroll areas, form primitives, focus management, layered interactions, and the browser behavior that usually becomes scattered application code.
Bradix is intentionally unstyled. It handles structure, state, accessibility-minded interaction patterns, and JavaScript interop while leaving the visual system to your app, design system, or a higher-level component library.
Use Bradix when you want:
Bradix is not a theme and not a high-level application component kit. It is the layer you build on when consistency, accessibility, and long-term maintainability matter.
Most UI libraries start with finished components. Bradix starts one layer lower, where the hard behavior lives.
Bradix ships as a single package with the primitives commonly needed to build polished application UI.
AccessibleIcon, AspectRatio, Avatar, Label, Portal, Presence, Separator, Slot, VisuallyHidden
Accordion, AlertDialog, Collapsible, Dialog, HoverCard, Popover, Toast, Tooltip
Checkbox, Form, OneTimePasswordField, Progress, RadioGroup, Select, Slider, Switch, Toggle, ToggleGroup
ContextMenu, DropdownMenu, Menubar, Menu, NavigationMenu, ScrollArea, Tabs, Toolbar
Collection, DismissableLayer, FocusGuards, FocusScope, Popper, RemoveScroll
See the primitives in context:
dotnet add package Soenneker.Bradix.Suite
Register Bradix in your Blazor app:
using Soenneker.Bradix;
builder.Services.AddBradixSuiteAsScoped();
Import the namespace once:
@using Soenneker.Bradix
That is the only required setup on the .NET side.
You do not need to install a separate npm package or manually wire script tags. The suite ships its own browser module as part of the package.
Bradix uses a composition model. Instead of a monolithic DialogComponent, you compose a dialog out of focused primitives with clear responsibilities.
@page "/example"
<BradixDialog Open="@_open" OpenChanged="HandleOpenChanged">
<BradixDialogTrigger Class="btn btn-primary">
Edit profile
</BradixDialogTrigger>
<BradixDialogPortal>
<BradixDialogOverlay Class="dialog-overlay" />
<BradixDialogContent Class="dialog-content">
<BradixDialogTitle>Edit profile</BradixDialogTitle>
<BradixDialogDescription>
Make changes to your profile and save when you are done.
</BradixDialogDescription>
<label for="name">Name</label>
<input id="name" @bind="_name" />
<button type="button" @onclick="Close">
Save
</button>
</BradixDialogContent>
</BradixDialogPortal>
</BradixDialog>
@code {
private bool _open;
private string _name = "Pedro Duarte";
private Task HandleOpenChanged(bool open)
{
_open = open;
return Task.CompletedTask;
}
private Task Close()
{
_open = false;
return Task.CompletedTask;
}
}
That example shows the design philosophy:
Bradix is backed by more than static samples:
No. Bradix is Radix-inspired, not an official Radix port and not a perfect drop-in parity promise with the React packages.
The goal is to bring the same philosophy to Blazor:
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 net10.0 is compatible. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
Showing the top 1 NuGet packages that depend on Soenneker.Bradix.Suite:
| Package | Downloads |
|---|---|
|
Soenneker.Quark.Suite
Shadcn-powered Blazor UI, refined and modular. |
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 4.0.161 | 0 | 6/19/2026 |
| 4.0.160 | 0 | 6/19/2026 |
| 4.0.159 | 5 | 6/18/2026 |
| 4.0.158 | 54 | 6/18/2026 |
| 4.0.157 | 345 | 6/17/2026 |
| 4.0.156 | 38 | 6/17/2026 |
| 4.0.155 | 42 | 6/17/2026 |
| 4.0.154 | 67 | 6/17/2026 |
| 4.0.153 | 1,962 | 6/11/2026 |
| 4.0.152 | 197 | 6/11/2026 |
| 4.0.149 | 181 | 6/10/2026 |
| 4.0.148 | 284 | 6/10/2026 |
| 4.0.147 | 90 | 6/10/2026 |
| 4.0.145 | 194 | 6/10/2026 |
| 4.0.144 | 92 | 6/9/2026 |
| 4.0.143 | 1,595 | 6/7/2026 |
| 4.0.141 | 99 | 6/7/2026 |
| 4.0.140 | 102 | 6/7/2026 |
| 4.0.139 | 99 | 6/6/2026 |
| 4.0.138 | 95 | 6/6/2026 |