T3mmyvsa.CLI 2.2.0

dotnet tool install --global T3mmyvsa.CLI --version 2.2.0
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local T3mmyvsa.CLI --version 2.2.0
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=T3mmyvsa.CLI&version=2.2.0
                    
nuke :add-package T3mmyvsa.CLI --version 2.2.0
                    

T3mmyvsa.CLI

Companion scaffolding tool for T3mmyVSA projects.

Installation

dotnet tool install -g T3mmyvsa.CLI

The project template no longer installs a global CLI automatically. This avoids silently replacing a developer's global tool version. Install or update the CLI explicitly when you want to use scaffolding.

Commands

Create an entity

dotnet t3mmyvsa make:entity Product

By default this creates an AuditableEntity, its EF Core configuration, and a DbSet<Product>.

Use --base only when the entity intentionally does not need audit timestamps:

dotnet t3mmyvsa make:entity LookupValue --base

Existing files are not overwritten unless --force is supplied.

Create CRUD vertical slices

dotnet t3mmyvsa make:feature Product

The generator creates:

  • CreateProduct
  • UpdateProduct
  • DeleteProduct
  • GetProduct
  • GetProducts
  • BulkDeleteProducts

Generated slices use:

  • Guid identifiers to match BaseEntity
  • Carter endpoints
  • Cortex Mediator commands/queries
  • FluentValidation
  • ProblemDetails-compatible exceptions
  • granular View/Create/Update/Delete permissions
  • bounded pagination with PaginationRequest
  • deterministic sorting
  • cancellation-token propagation
  • AsNoTracking() on reads
  • dynamic request paths for pagination links
  • both API versions currently exposed by the starter

The generator will not overwrite an existing feature set unless you explicitly pass --force.

dotnet t3mmyvsa make:feature Product --force

Use --force only for disposable/generated code. It can replace files you have edited.

Entity property handling

The CLI scaffolds scalar/value properties declared directly on the entity.

Optional navigation properties and collections are skipped because generic CRUD transport contracts should not expose EF navigation graphs automatically. A required navigation property causes scaffolding to fail so the relationship can be modeled explicitly with a foreign-key/value contract instead of generating unsafe API input.

init-only entity properties are included in create/read contracts but are excluded from generated update assignments.

Naming

Entity names must be valid PascalCase C# identifiers. The CLI applies conservative English pluralization and kebab-case routes, for example:

  • Product → Products → /products
  • OrderItem → OrderItems → /order-items
  • Category → Categories → /categories

Irregular plurals should be adjusted manually after generation.

Requirements

  • .NET 10+
  • Run from the generated web project, one of its subdirectories, or a solution directory containing exactly one T3mmyVSA web project.

License

MIT

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  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.

This package has no dependencies.

Version Downloads Last Updated
2.2.0 103 9/4/2026
2.1.0 95 9/4/2026
2.0.0 98 9/4/2026
1.0.5 148 12/29/2025
1.0.4 117 12/29/2025