T3mmy.VSA.Templates 2.2.0

dotnet new install T3mmy.VSA.Templates@2.2.0
                    
This package contains a .NET Template Package you can call from the shell/command line.

T3mmyVSA Templates

Production-oriented ASP.NET Core 10 templates using Vertical Slice Architecture.

Installation

dotnet new install T3mmy.VSA.Templates
dotnet new t3mmyvsa -n MyProject

Included foundation

  • Vertical Slice Architecture with Carter + Cortex Mediator
  • ASP.NET Core Identity, JWT sessions and granular permissions
  • EF Core 10 with SQL Server, PostgreSQL, MySQL and SQLite
  • dedicated Migrations executable/project that owns EF migrations
  • dedicated Hangfire Worker process; API is enqueue-only by default
  • FluentValidation + centralized ProblemDetails
  • Serilog, API versioning, health/readiness checks
  • xUnit v3 + Microsoft Testing Platform unit, architecture and Testcontainers-backed integration tests
  • production-style Dockerfile and multi-provider Docker Compose topology
  • hardened CORS, proxy, rate-limit and configuration defaults

Migrations

Generated projects intentionally contain no provider-specific migration history. Choose the provider first, then generate the initial migration into the dedicated migrations project:

cp .env.example .env
bash docker/create-migration.sh InitialCreate

Equivalent direct EF command:

dotnet ef migrations add InitialCreate \
  --project Migrations/T3mmyvsa.Migrations.csproj \
  --startup-project Migrations/T3mmyvsa.Migrations.csproj \
  --output-dir Data/Migrations

The deployed migration container runs the compiled T3mmyvsa.Migrations executable; it does not carry the .NET SDK or dotnet-ef.

Worker topology

The API registers Hangfire storage/client support but defaults Hangfire:ServerEnabled=false. The dedicated Worker process forces server mode and processes the configured queues. This isolates background-job CPU, memory and restart behavior from HTTP request handling.

For a simple deployment you can intentionally re-enable in-process processing with Hangfire__ServerEnabled=true and omit the Worker, but the generated Compose topology uses the dedicated worker.

Testing

dotnet test T3mmyvsa.slnx -c Release

Integration tests use a disposable PostgreSQL Testcontainer and require Docker. See docs/TESTING.md.

Docker

cp .env.example .env
# set POSTGRES_PASSWORD and JWT_SECRET
bash docker/create-migration.sh InitialCreate
docker compose up --build

Compose runs the migration executable first, then starts the API and dedicated worker. See docs/DOCKER.md and docs/PROCESS_TOPOLOGY.md.

CLI Tool

dotnet tool install -g T3mmyvsa.CLI
dotnet t3mmyvsa make:entity Product
dotnet t3mmyvsa make:feature Product

License

MIT

  • net10.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.

Version Downloads Last Updated
2.2.0 138 9/4/2026
2.1.0 133 9/4/2026
2.0.0 136 9/4/2026
1.1.1 374 2/10/2026
1.0.8 366 2/3/2026
1.0.7 366 2/3/2026
1.0.6 380 1/20/2026
1.0.5 390 1/19/2026
1.0.4 399 1/19/2026
1.0.3 410 12/30/2025
1.0.2 415 12/29/2025
1.0.1 407 12/29/2025