FormCraft.ForMudBlazor 2.5.0

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

FormCraft.ForMudBlazor

MudBlazor UI framework implementation for FormCraft dynamic forms.

Installation

dotnet add package FormCraft.ForMudBlazor

Usage

// In Program.cs
builder.Services.AddFormCraft();
builder.Services.AddFormCraftMudBlazor();

Project Structure

The project is organized by feature, with each field type having its own folder containing both the component and renderer:

FormCraft.ForMudBlazor/
├── Extensions/
│   └── ServiceCollectionExtensions.cs    # DI registration
├── Features/
│   ├── MudBlazorUIFrameworkAdapter.cs    # Main adapter implementation
│   ├── TextField/
│   │   ├── MudBlazorTextFieldComponent.razor
│   │   └── MudBlazorTextFieldRenderer.cs
│   ├── NumericField/
│   │   ├── MudBlazorNumericFieldComponent.razor
│   │   └── MudBlazorNumericFieldRenderer.cs
│   ├── BooleanField/
│   │   ├── MudBlazorBooleanFieldComponent.razor
│   │   └── MudBlazorBooleanFieldRenderer.cs
│   ├── DateTimeField/
│   │   ├── MudBlazorDateTimeFieldComponent.razor
│   │   └── MudBlazorDateTimeFieldRenderer.cs
│   ├── SelectField/
│   │   ├── MudBlazorSelectFieldComponent.razor
│   │   └── MudBlazorSelectFieldRenderer.cs
│   ├── FileUploadField/
│   │   ├── MudBlazorFileUploadFieldComponent.razor
│   │   └── MudBlazorFileUploadFieldRenderer.cs
│   ├── CustomFields/
│   │   └── RatingRenderer.cs
│   ├── FormContainer/
│   │   ├── FormCraftComponent.razor
│   │   └── FormCraftComponent.razor.cs
│   └── Validation/
│       ├── DynamicFormValidator.cs
│       ├── FieldValidationMessage.razor
│       └── FieldValidationMessage.razor.cs

Features

  • Feature-based organization: Each field type is self-contained with its component and renderer
  • MudBlazor components: Uses MudBlazor's rich component library
  • Type-safe rendering: Strong typing throughout the rendering pipeline
  • Validation support: Integrated validation with MudBlazor's validation system
  • Custom field support: Extensible architecture for custom field types

Creating Custom Fields

To add a new field type:

  1. Create a new feature folder under Features/
  2. Add your component (.razor file) and renderer (.cs file)
  3. Register the renderer in ServiceCollectionExtensions.cs

Example:

// Features/ColorPickerField/MudBlazorColorPickerFieldRenderer.cs
public class MudBlazorColorPickerFieldRenderer : FieldRendererBase
{
    protected override Type ComponentType => typeof(MudBlazorColorPickerFieldComponent<>);
    public override bool CanRender(Type fieldType, IFieldConfiguration<object, object> field)
        => fieldType == typeof(string) && field.AdditionalAttributes.ContainsKey("color-picker");
}

// Features/ColorPickerField/MudBlazorColorPickerFieldComponent.razor
@namespace FormCraft.ForMudBlazor.Features.ColorPickerField
@typeparam TModel
@inherits FieldComponentBase<TModel, string>

<MudColorPicker T="string" 
                Label="@Label" 
                @bind-Value="@CurrentValue" 
                Required="@IsRequired"
                ReadOnly="@IsReadOnly"
                Disabled="@IsDisabled" />

Dependencies

  • FormCraft (core library)
  • MudBlazor (UI components)
  • Microsoft.AspNetCore.Components.Web

License

This package is part of the FormCraft project and follows the same MIT license.

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

Showing the top 1 NuGet packages that depend on FormCraft.ForMudBlazor:

Package Downloads
VaultForce.SharedClient

shared resources

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2.5.0 676 8/8/2025
2.4.0 367 7/16/2025
2.3.0 177 7/8/2025
2.2.0 186 7/2/2025
2.1.0 251 6/19/2025
2.0.0 310 6/10/2025