Skip to content

feat(templates): add item templates for Ignite UI Blazor components#226

Open
dkalinovInfra wants to merge 5 commits into
masterfrom
dkalinov/blazor_item_templates
Open

feat(templates): add item templates for Ignite UI Blazor components#226
dkalinovInfra wants to merge 5 commits into
masterfrom
dkalinov/blazor_item_templates

Conversation

@dkalinovInfra

@dkalinovInfra dkalinovInfra commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

Description

Adds item templates for the individual Ignite UI for Blazor components to the IgniteUI.Blazor.Templates pack, which previously shipped only the igb-blazor project template. Users can now scaffold a ready-to-use component page either from the CLI (dotnet new <igb-component>) or from the Visual Studio Add New Item dialog.

  • Added templates/item/** with 43 component templates, each with its .template.config (template.json + ide.host.json + icon.png).
  • Each template generates a .razor page with @page routing, a scoped .razor.css, and inline IgniteUI.Blazor.Lite setup instructions in an @code comment (package install, AddIgniteUIBlazor(), _Imports, theme link, render mode).
  • In Visual Studio, templates appear under Add New Item → Ignite UI for Blazor\<Group> with per-component icons (via ide.host.json).

Supporting change: to host the item templates alongside the existing project template, the pack layout was reorganized — the project template moved from content/igb-blazor/** to templates/project/igb-blazor/** (pure file moves, no content changes), with IgniteUI.Blazor.Templates.csproj and the READMEs updated to the new templates/ content root.

Motivation / Context

The project template alone gets users a running app, but there is no first-class way to drop a working, conventionally-wired component sample into an existing page. These item templates give a fast, copy-paste-free starting point for each component — discoverable directly from the VS New Item UI (grouped under Ignite UI for Blazor\<Group>), not just the CLI — and the generated code follows the bridge/render-mode conventions of the Lite package.

Type of Change (check all that apply):

  • Bug fix
  • New functionality
  • Refactoring (no functional changes)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation
  • Demos
  • CI/CD
  • Tests
  • Changelog

Component(s) / Area(s) Affected:

IgniteUI.Blazor.Templates — new item-template pack covering 43 components across all groups: Buttons & Actions, Inputs & Forms, Data (Grid), Charts (ApexCharts), Layout, Scheduling/Pickers, Navigation, Notifications, and Data Display. The existing igb-blazor project template is moved (no functional change).

How Has This Been Tested?

  • Unit tests
  • Manual testing
  • Automated e2e tests

Installed the pack from source (dotnet new install), scaffolded a Blazor Server app, then generated every item template into the app's Components/Pages and wired each into the nav. The project builds clean (0 warnings, 0 errors) and the pages render and behave correctly at runtime. Verified VS Add New Item grouping/icons via ide.host.json.

Test Configuration:

  • .NET version: .NET 10 SDK (templates multi-target net8.0/net9.0/net10.0)
  • Hosting model: Blazor Server
  • Browser(s): Chrome / Edge
  • OS: Windows 11

Screenshots / Recordings

Checklist:

  • All relevant tags have been applied to this PR
  • This PR includes unit tests covering all the new code
  • This PR includes API docs for newly added methods/properties
  • This PR includes general feature table updates in the root README.MD
  • This PR includes CHANGELOG.MD updates for newly added functionality
  • This PR contains breaking changes
  • This PR includes behavioral changes and the feature specification has been updated with them
  • Accessibility (ARIA, keyboard navigation, focus management) has been verified

Closes #224

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add Ignite UI component item templates to the Blazor template pack

1 participant