IgniteUI.Blazor.Templates
0.2.0
dotnet new install IgniteUI.Blazor.Templates@0.2.0
IgniteUI Blazor Templates
dotnet new templates for Ignite UI for Blazor. The pack ships two kinds of templates:
- A project template (
igb-blazor) that scaffolds a complete Blazor Web App wired up with Ignite UI. - Component item templates (
igb-button,igb-grid, …) that scaffold a single ready-to-edit Ignite UI component page into an existing project.
Installation
dotnet new install IgniteUI.Blazor.Templates
Project template
dotnet new igb-blazor -n MyApp
Parameters
| Parameter | Description | Choices | Default |
|---|---|---|---|
--Hosting |
Interactivity hosting model | Server, Wasm, Auto |
Server |
--Theme |
IgniteUI design theme | bootstrap, material, fluent, indigo |
bootstrap |
--Variant |
Light or dark color variant | light, dark |
light |
--IncludeWeatherSample |
Include the Weather page (IgbGridLite + chart demo) | true, false |
true |
--SkipRestore |
Skip automatic NuGet restore on create | true, false |
false |
Examples
Create a project with Interactive WebAssembly hosting and the Material dark theme:
dotnet new igb-blazor -n MyApp --Hosting Wasm --Theme material --Variant dark
Create a server-rendered project with the Fluent theme, without the Weather sample page:
dotnet new igb-blazor -n MyApp --Theme fluent --IncludeWeatherSample false
Component item templates
Each component template scaffolds a single .razor page (plus a scoped .css file) demonstrating one Ignite UI component. They are item templates, so run them from inside an existing project folder and pass the file name with -n:
dotnet new igb-button -n ButtonsDemo
This drops ButtonsDemo.razor into the current directory. In Visual Studio they also appear under Add → New Item → Ignite UI for Blazor, grouped by category.
Project setup required once. Item templates can't modify project files, so before a scaffolded page will run, the host project must reference Ignite UI and register it. If you started from the
igb-blazorproject template this is already done. Otherwise, do it once:
dotnet add package IgniteUI.Blazor.Lite- In
Program.cs:builder.Services.AddIgniteUIBlazor();- In
_Imports.razor:@using IgniteUI.Blazor.Controls- In the host page (
App.razor/index.html/_Host.cshtml) add the theme stylesheet and bundle:<link href="_content/IgniteUI.Blazor/themes/light/bootstrap.css" rel="stylesheet" />- For a Blazor Web App (.NET 8+), give the scaffolded page an interactive render mode (e.g.
@rendermode InteractiveServer).Don't mix
IgniteUI.Blazor.Litewith the licensedIgniteUI.Blazorpackage.
Available components
| Category | Short names |
|---|---|
| Buttons & Actions | igb-button, igb-button-group, igb-chip, igb-icon-button, igb-toggle-button |
| Inputs | igb-input, igb-mask-input, igb-checkbox, igb-switch, igb-radio-group, igb-rating, igb-slider, igb-range-slider, igb-color-picker |
| Selection | igb-select, igb-combo, igb-dropdown |
| Date & Time | igb-calendar, igb-date-picker, igb-date-range-picker, igb-date-time-input |
| Layout | igb-card, igb-accordion, igb-expansion-panel, igb-tabs, igb-stepper, igb-carousel, igb-tile-manager |
| Navigation | igb-navbar, igb-nav-drawer |
| Data Display | igb-list, igb-tree, igb-avatar, igb-badge, igb-icon, igb-qr-code, igbgrid |
| Feedback | igb-banner, igb-dialog, igb-snackbar, igb-toast, igb-tooltip, igb-circular-progress, igb-linear-progress |
| Charts | apexchart |
See each template's options with dotnet new <short-name> -h.
Smoke-testing the templates
Two equivalent scripts live next to this README and exercise the whole pack end to end — use test-templates.ps1 on Windows/PowerShell and test-templates.sh on Linux/macOS/bash. They have identical behavior; pick whichever matches your shell.
Each run:
- Installs the templates from this source folder (
dotnet new install . --force). - Scaffolds a fresh Blazor Server project under
./tmpviadotnet new igb-blazor. - Generates every item template (
igb-*,apexchart) into the project'sComponents/Pagesfolder. - Wires each generated page into
Components/Layout/NavMenu.razoras anIgbNavDrawerItem, so every demo is reachable from the nav drawer.
The result is a single project that hosts every component page — handy for verifying that the templates install, scaffold, and compile together after a change.
# bash (Linux/macOS)
./test-templates.sh
# PowerShell (Windows/cross-platform)
./test-templates.ps1
When it finishes it prints the generated project path and the dotnet run command to launch it.
Configuration
Both scripts accept the same three settings. The PowerShell script exposes them as parameters (and also honors the env vars for parity); the bash script reads the env vars.
| Setting | PowerShell parameter | Env var (both) | Default | Description |
|---|---|---|---|---|
| Project name | -ProjectName |
PROJECT_NAME |
IgbTemplateTest |
Name of the generated project. |
| Nav icon | -NavIcon |
NAV_ICON |
widgets |
material-icons name used for each generated nav item. |
| Skip restore | -SkipRestore |
SKIP_RESTORE |
true / 1 |
Skip NuGet restore when creating the project (faster). |
# bash — override via env vars
PROJECT_NAME=MyDemo NAV_ICON=star SKIP_RESTORE=0 ./test-templates.sh
# PowerShell — override via parameters
./test-templates.ps1 -ProjectName MyDemo -NavIcon star -SkipRestore $false
The scripts wipe and recreate the
./tmpfolder on every run, so the generated project is disposable. Re-run after editing a template to regenerate from scratch.
Uninstall
dotnet new uninstall IgniteUI.Blazor.Templates
-
.NETStandard 2.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Initial release of the IgniteUI Blazor project templates.