template-comparison

Compares dotnet new templates side by side across parameters, features, and frameworks.

5.3k|403|Updated Feb 3, 2026
One-click install
npx skills add https://github.com/dotnet/skills --skill template-comparison
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: template-comparison
Source: https://github.com/dotnet/skills/tree/main/plugins/dotnet-template-engine/skills/template-comparison
Command: npx skills add https://github.com/dotnet/skills --skill template-comparison

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Choosing between similar .NET project templates (like webapi vs webapp or blazor vs blazorwasm) is hard when their parameters and feature support differ in subtle ways. This Skill inspects each installed template and produces a grounded side-by-side comparison with a decisive recommendation.

Core Features & Use Cases

  • Side-by-side comparison tables: Covers parameters, feature support (auth, AOT, Docker, controllers), available frameworks, and classifications for two or more templates.
  • Evidence-grounded inspection: Runs dotnet new <template> --help sequentially for each template so every claim reflects the actually installed templates, labeling unavailable options as "Not exposed" instead of guessing.
  • Decisive recommendations: Ends with a single Recommendation line tied to the user's scenario, plus decision shortcuts for common pairs like webapi vs webapp and worker vs console.
  • Use Case: A developer asks whether to use blazor or blazorwasm for an offline-capable app. The Skill inspects both templates, compares interactivity and hosting options, and recommends blazorwasm with the PWA/service-worker trade-offs explained.

Quick Start

Ask the agent to compare the webapi and webapp dotnet new templates and recommend which one to use for a JSON REST backend.

Frequently Asked Questions about template-comparison

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I compare dotnet new templates before creating a project?

Run dotnet new <template> --help for each template to inspect its parameters, defaults, and supported frameworks, then build a side-by-side table of the differences. This Skill automates that inspection and adds a recommendation tied to your scenario.

Should I use webapi or webapp for a new .NET project?

Choose webapi for a JSON/REST backend since it ships controllers or minimal APIs with OpenAPI and no UI. Choose webapp when you need server-rendered HTML with Razor Pages for page-focused CRUD applications.

What is the difference between blazor and blazorwasm templates?

The blazorwasm template creates a standalone WebAssembly app that runs fully client-side and works offline after first load. The blazor Web App template supports flexible server and client interactivity but requires a server for server-side rendering modes.

Why does running multiple dotnet new --help commands fail?

The .NET template engine uses a global mutex, so concurrent dotnet new commands can fail with transient mutex or persistence errors and empty output. Run the --help calls sequentially and retry once if a call fails.

When should I not use template comparison?

Do not use it to create a project, author custom templates, or inspect a single template. Use template-instantiation for project creation, template-authoring or template-validation for custom templates, and template-discovery for single-template lookup.