Skip to content

Add Ignite UI Blazor skill - #994

Open
kdinev wants to merge 3 commits into
dotnet:mainfrom
kdinev:igniteui-blazor-skills
Open

Add Ignite UI Blazor skill#994
kdinev wants to merge 3 commits into
dotnet:mainfrom
kdinev:igniteui-blazor-skills

Conversation

@kdinev

@kdinev kdinev commented Aug 5, 2026

Copy link
Copy Markdown

Summary

This pull request adds a new skill for integrating Ignite UI components into Blazor applications, along with an evaluation test for the skill. The main focus is to provide clear, file-oriented guidance for adding and configuring Ignite UI in various Blazor project types, especially split Blazor Web Apps.

Related issue

Validation

Introduced a new evaluation YAML (eval.yaml) that tests the skill’s ability to provide concrete, file-specific integration steps for using Ignite UI in a split Blazor Web App. The evaluation checks for explicit package references, service registration in both server and client, correct _Imports.razor usage, proper asset linking, and file-oriented instructions.

Checklist

  • I searched existing issues and pull requests to avoid duplicates.
  • I kept this pull request focused and avoided unrelated refactors.
  • I added or updated tests, evals, or documentation when changing skill or agent behavior.
  • I updated CODEOWNERS when adding or moving owned content.
  • I updated all marketplace manifests when plugin metadata changed.
  • I updated eng/known-domains.txt for any new external domains referenced by skill content.

Copilot AI lite review requested due to automatic review settings August 5, 2026 14:08

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request introduces a new dotnet-blazor skill that guides developers through integrating Ignite UI (including GridLite) into Blazor apps—especially split Blazor Web Apps—and adds a capability eval to validate that the skill produces concrete, file-oriented setup steps.

Changes:

  • Added a new skill document (SKILL.md) describing NuGet packages, service registration, _Imports.razor, host-page assets, and render-mode guidance for Ignite UI in Blazor.
  • Added a new evaluation spec (eval.yaml) to test that responses include the required packages, AddIgniteUIBlazor() registration, _Imports.razor usage, and asset linking details.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
tests/dotnet-blazor/use-igniteui-blazor/eval.yaml Adds a capability eval that checks for key Ignite UI integration details in the model output.
plugins/dotnet-blazor/skills/use-igniteui-blazor/SKILL.md Adds the new skill guidance for installing/configuring Ignite UI (Lite + GridLite) across Blazor project types.
Suppressed comments (2)

plugins/dotnet-blazor/skills/use-igniteui-blazor/SKILL.md:84

  • The fingerprinted asset example also uses the _content/IgniteUI.Blazor/... root; if the intent is to document the Lite package setup, this should reference the Lite asset root for consistency with the rest of the setup steps.
<link rel="stylesheet" href="@Assets["_content/IgniteUI.Blazor/themes/light/bootstrap.css"]" />

plugins/dotnet-blazor/skills/use-igniteui-blazor/SKILL.md:79

  • The theme path description still points to _content/IgniteUI.Blazor/themes/, which doesn’t match the recommended IgniteUI.Blazor.Lite package in this skill. Aligning the documented _content root avoids confusion about which static asset base path to use.
Theme files under `_content/IgniteUI.Blazor/themes/` are `{light|dark}/{bootstrap|material|fluent|indigo}.css` — link exactly one.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +43 to +46
- type: output-contains
config:
substring: server and client Program.cs
- type: prompt
Comment thread plugins/dotnet-blazor/skills/use-igniteui-blazor/SKILL.md
@AbhitejJohn

Copy link
Copy Markdown
Collaborator

Tagging @danroth27 and @javiercn to help review.

license: MIT
name: use-igniteui-blazor
description: >
Add, configure, or review Ignite UI component support in Blazor applications.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think maximum of 1024 chars, please check if it fits

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The eval infra should flag if it exceeds.

builder.Services.AddIgniteUIBlazor(); // all modules available
```

Pass `typeof(Igb<Name>Module)` values to eagerly pre-load a specific set instead:

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you want to provide an example?

defaults:
timeout: 10m
runs: 5
stimuli:

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This eval runs the same scenario five times, so it does not test the other supported setups, for example single project blazor server, MAUI blazor hybrid, GridLite only setup

@kotlarmilos

Copy link
Copy Markdown
Member

/evaluate

Copilot AI review requested due to automatic review settings August 19, 2026 17:27

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review details

Suppressed comments (4)

plugins/dotnet-blazor/skills/use-igniteui-blazor/SKILL.md:74

  • The static web asset paths in this example point at _content/IgniteUI.Blazor/..., which corresponds to the non-Lite package. Since this skill instructs installing IgniteUI.Blazor.Lite, the CSS/JS URLs should use _content/IgniteUI.Blazor.Lite/... or users will get 404s and the components won’t load.
<link href="_content/IgniteUI.Blazor/themes/light/bootstrap.css" rel="stylesheet" />
...
<script src="_content/IgniteUI.Blazor/app.bundle.js"></script>
<script src="_framework/blazor.web.js"></script>   <!-- or blazor.server.js / blazor.webassembly.js / blazor.webview.js -->

plugins/dotnet-blazor/skills/use-igniteui-blazor/SKILL.md:79

  • This path should also use the IgniteUI.Blazor.Lite static asset root to match the package name used elsewhere in the skill; otherwise the guidance is inconsistent and likely wrong for OSS Lite installs.
Theme files under `_content/IgniteUI.Blazor/themes/` are `{light|dark}/{bootstrap|material|fluent|indigo}.css` — link exactly one.

tests/dotnet-blazor/use-igniteui-blazor/eval.yaml:46

  • This grader is very brittle: the skill text says “both the server and the client Program.cs”, which won’t match the exact substring server and client Program.cs. Using a case-insensitive regex makes the check resilient while still enforcing that both sides are mentioned.
      - type: output-contains
        config:
          substring: server and client Program.cs
      - type: prompt

plugins/dotnet-blazor/skills/use-igniteui-blazor/SKILL.md:84

  • This fingerprinted asset example should use the IgniteUI.Blazor.Lite static asset root to match the package name used elsewhere in the skill; otherwise it won’t resolve for OSS Lite installs.
<link rel="stylesheet" href="@Assets["_content/IgniteUI.Blazor/themes/light/bootstrap.css"]" />
  • Files reviewed: 2/2 changed files
  • Comments generated: 0 new
  • Review effort level: Lite

@kotlarmilos

Copy link
Copy Markdown
Member

❌ [use-igniteui-blazor] Skill description is 1,050 characters — maximum is 1,024. Shorten the description in SKILL.md frontmatter.

@AbhitejJohn

Copy link
Copy Markdown
Collaborator

@kdinev , @kotlarmilos : Would you mind moving these changes to a branch against this repo please? That would help get PR evaluations going. They do not run against branches in forks.

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.

5 participants