ShellUI.Components 0.3.0-rc.1

This is a prerelease version of ShellUI.Components.
dotnet add package ShellUI.Components --version 0.3.0-rc.1
                    
NuGet\Install-Package ShellUI.Components -Version 0.3.0-rc.1
                    
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="ShellUI.Components" Version="0.3.0-rc.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="ShellUI.Components" Version="0.3.0-rc.1" />
                    
Directory.Packages.props
<PackageReference Include="ShellUI.Components" />
                    
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 ShellUI.Components --version 0.3.0-rc.1
                    
#r "nuget: ShellUI.Components, 0.3.0-rc.1"
                    
#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 ShellUI.Components@0.3.0-rc.1
                    
#: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=ShellUI.Components&version=0.3.0-rc.1&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=ShellUI.Components&version=0.3.0-rc.1&prerelease
                    
Install as a Cake Tool

ShellUI Components

Beautiful, accessible Blazor components inspired by shadcn/ui. A CLI-first component library with Tailwind CSS styling.

Features

  • 🎨 68 Production-ready installable components - Button, Input, Card, Dialog, Sonner, Table, Charts, and more (sub-components and variants ship as auto-installed dependencies)
  • 🎯 CLI-first approach - Install components individually with dotnet shellui add
  • 🎨 Tailwind CSS styling - Utility-first CSS with dark mode support
  • Accessible by default - Built with accessibility in mind
  • 📱 Responsive design - Mobile-first approach
  • 🔧 Fully customizable - Copy components to your project for full control

⚠️ Read this first

This package ships the component DLLs, JS interop, and helpers (Shell.Cn). It does not produce styled components on its own. Tailwind v4 builds CSS by scanning .razor source files at compile time — the component source lives inside this DLL, so Tailwind never sees the utility classes used inside ShellUI components.

The supported way to get styled components is the ShellUI.CLI global tool:

dotnet tool install -g ShellUI.CLI
shellui init                          # sets up Tailwind, theme CSS, patches App.razor
shellui add button card dialog        # copies component source so Tailwind can scan it

shellui add copies the .razor files into your project, where Tailwind picks up the classes. From then on, components render styled.

A future release (v0.4.x) will support installing this NuGet package by itself — by shipping a pre-compiled stylesheet — without needing the CLI for setup. Until then, install the CLI.

When is this NuGet package useful on its own?

  • You're building a library that re-exports ShellUI components or extends them with custom variants
  • You want to reference Shell.Cn (the class-name combiner) from your own helpers
  • You want the JS interop registration (shellui.js) provided as a _content/ShellUI.Components/ static asset

Otherwise: start with the CLI.

CLI quick start

dotnet tool install -g ShellUI.CLI
shellui init           # one-time
shellui add button     # any time you want more components
shellui list           # see what's available

shellui init automatically:

  • Downloads Tailwind CSS CLI (standalone, no Node.js required) or uses your existing npm install
  • Writes the full default theme to wwwroot/input.css (:root / .dark / @theme inline blocks)
  • Patches Components/App.razor (or wwwroot/index.html for WASM) with @rendermode, a theme-bootstrap <script> to avoid FOUC, and a <script src="shellui.js"> tag for the JS interop
  • Sets up MSBuild integration so Tailwind rebuilds on every dotnet build

shellui add <name> automatically:

  • Resolves and installs all sub-component dependencies
  • Runs dotnet add package for any required NuGet packages (e.g. Blazor-ApexCharts for charts, System.Linq.Dynamic.Core for DataTable)
  • Auto-links any CSS assets (e.g. wwwroot/css/charts.css) into your App.razor
  • Suggests close matches if you mistype a component name

Using components

After shellui init + shellui add, components are in your project source:

@using YourProject.Components.UI

<Button Variant="ButtonVariant.Default">Click me</Button>
<Card>
    <CardHeader>
        <CardTitle>Hello World</CardTitle>
    </CardHeader>
    <CardContent>
        <p>This is a card component.</p>
    </CardContent>
</Card>

Available Components

Form Components

  • Button - Various variants and sizes
  • Input - Text input with validation
  • Textarea - Multi-line text input
  • Select - Dropdown selection
  • Checkbox - Checkbox input
  • Switch - Toggle switch
  • RadioGroup - Radio button groups
  • Slider - Range slider
  • Combobox - Searchable dropdown
  • DatePicker - Date selection
  • TimePicker - Time selection
  • DateRangePicker - Date range selection
  • InputOTP - One-time password input
  • Form - Form wrapper with validation

Layout Components

  • Card - Content container
  • Dialog - Modal dialog
  • Sheet - Side panel
  • Drawer - Mobile drawer
  • Popover - Floating content
  • Tooltip - Hover tooltip
  • Separator - Visual divider
  • ScrollArea - Custom scrollable area
  • Resizable - Resizable panels
  • Collapsible - Collapsible content
  • Navbar - Top navigation bar
  • Sidebar - Side navigation
  • NavigationMenu - Navigation menu
  • Menubar - Menu bar
  • Breadcrumb - Breadcrumb navigation
  • Pagination - Page navigation
  • Tabs - Tab navigation

Data Display

  • Table - Data table
  • Badge - Status badges
  • Avatar - User avatars
  • Alert - Alert messages
  • Toast - Toast notifications
  • Skeleton - Loading placeholders
  • Progress - Progress indicators

Interactive Components

  • Dropdown - Dropdown menu
  • Accordion - Collapsible sections
  • Toggle - Toggle button
  • ThemeToggle - Dark/light mode toggle

Bootstrap Compatibility

ShellUI components work alongside Bootstrap. You can:

  • Keep both - ShellUI and Bootstrap can coexist
  • Remove Bootstrap - Delete Bootstrap references if you prefer Tailwind-only
  • Gradual migration - Use ShellUI for new components, keep Bootstrap for existing ones

Customization

🎨 Theme Customization

Easily customize themes with tweakcn:

  1. Design your perfect theme on tweakcn
  2. Copy the generated CSS variables
  3. Paste into wwwroot/input.css
  4. All ShellUI components update automatically!

Custom Fonts: Add Google Fonts links and update --font-* variables in your CSS.

Component Customization

Components are copied to your project, giving you full control:

# Components are installed to Components/UI/
Components/
  UI/
    Button.razor      # Edit directly!
    Input.razor       # Customize as needed
    Card.razor        # Full ownership
    # ... other components

Modify any component to match your design system perfectly!

Documentation

Contributing

We welcome contributions! Please see our Contributing Guide.

License

MIT License - see LICENSE for details.

Support

Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  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

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.3.0-rc.1 45 6/18/2026
0.3.0-alpha.3 49 6/3/2026
0.3.0-alpha.2 81 2/21/2026
0.3.0-alpha.1 64 2/17/2026
0.2.1 114 2/22/2026
0.2.0 116 2/8/2026
0.1.1 118 1/17/2026
0.1.0 114 1/16/2026
0.0.3 377 11/30/2025