Mitc.ProjectTemplates 1.3.5
Mitc.ProjectTemplates
A dotnet new template package containing project templates for internal use.
Installing
dotnet new install Mitc.ProjectTemplates
Uninstalling
dotnet new uninstall Mitc.ProjectTemplates
Templates
ASP.NET Core + TS + Vue (api-ts-vue)
A solution template with an ASP.NET Core Web API backend and a TypeScript + Vue SPA frontend.
Projects created:
<Name>— ASP.NET Core Web API server<Name>.Client— TypeScript + Vue SPA<Name>.Tests— xUnit integration tests
Usage:
dotnet new api-ts-vue -n MyApp
Parameters:
| Parameter | Description | Default |
|---|---|---|
--company |
Company name | My Company |
--app-name |
Application display name | My Application |
HTTPS ports for both the server and client are generated automatically.
Post-creation: The template automatically restores NuGet packages and runs npm install in the client project.
ASP.NET Core Razor Pages (razor-app)
A solution template with an ASP.NET Core Razor Pages web application using cookie authentication, HTMX for dynamic UI updates, and Bootstrap for styling.
Projects created:
<Name>— ASP.NET Core Razor Pages application<Name>.Tests— xUnit integration tests
Usage:
dotnet new razor-app -n MyApp
Parameters:
| Parameter | Description | Default |
|---|---|---|
--company |
Company name | My Company |
--app-name |
Application display name | My Application |
An HTTPS port is generated automatically.
Post-creation: The template automatically restores NuGet packages.
Features
- Authentication — Cookie-based authentication with ASP.NET Core Identity. Supports local password sign-in and external SSO providers (Google, Microsoft, Facebook, Yahoo, ORCID), each independently toggled via feature flags.
- Authorization — Granular permission system using strongly-typed
PermissionandPermissionGroupenumerations. Permissions are assigned to roles and enforced via[RequirePermission]attributes andHasPermission()checks. - User management — CRUD operations with search, pagination, and role assignment. Supports bulk provisioning via CSV upload.
- Role management — CRUD operations with permission assignment and user membership. Supports bulk provisioning via CSV upload. Role names are enforced as unique.
- File management — Upload, download, edit, and delete files with blob storage. Ownership-based access control allows users to manage their own files; admin-level file permissions (
ViewFiles,EditFiles,DeleteFiles) grant access to other users' files. - Profile — Self-service profile editing, password changes, and profile picture uploads.
- Feature flags — Toggle capabilities at runtime via
Microsoft.FeatureManagement. Controls user registration, password sign-in, third-party SSO (per-provider), soft deletes, update tracking, user provisioning, and audit logging. - Soft deletes — Optional soft delete support via an EF Core
SaveChangesinterceptor. When enabled, deleted entities are marked inactive rather than removed, and can be reactivated from the UI. Mutation queries filter to active entities only. - HTMX integration — Inline editing, modal forms, and auto-refreshing result lists using HTMX with server-rendered partials. Tag helpers provide
hx-page,hx-page-handler, andhx-route-*support for Razor Pages routing. - Rate limiting — Authentication endpoints (login, register, forgot/reset password) are rate-limited.
- Structured logging — Serilog with console and Application Insights sinks, configured via
appsettings.json. - Health checks — Database connectivity health check at
/health. - Pagination — Server-side pagination with sliding-window pagination controls via
ToPaginationControls(). - Result pattern — Service methods return
ResultorResult<T>for consistent error handling without exceptions.
Project structure
The application uses feature folders:
Features/
├── Analytics/ # Application Insights telemetry
├── Email/ # Email sending abstractions
├── EntityFramework/ # DbContext, interceptors, strongly-typed IDs
├── FeatureManagement/# Feature flags
├── FileStorage/ # File upload/download with blob storage
├── Identity/ # ASP.NET Core Identity stores and config
├── RateLimiting/ # Rate limiting policies
├── Results/ # Result<T> pattern
├── Roles/ # Role entity and service
├── Security/ # Auth config, permission authorization
├── Serilog/ # Logging configuration
├── StronglyTypedId/ # ID type generation
└── Users/ # User entity, service, permissions
Pages/
├── Account/ # Login, Register, Profile, Password reset
├── Files/ # File listing, upload, edit, delete
├── Roles/ # Role listing, create, edit, provision
├── Shared/ # Layout, partials, alerts
└── Users/ # User listing, create, edit, provision
This package has no dependencies.
| Version | Downloads | Last updated |
|---|---|---|
| 1.5.0 | 1 | 4/17/2026 |
| 1.4.1 | 1 | 4/15/2026 |
| 1.4.0 | 0 | 4/13/2026 |
| 1.3.6 | 0 | 3/12/2026 |
| 1.3.5 | 1 | 3/12/2026 |
| 1.3.4 | 0 | 3/12/2026 |
| 1.3.3 | 1 | 3/11/2026 |
| 1.3.2 | 2 | 3/11/2026 |
| 1.3.1 | 0 | 3/6/2026 |
| 1.2.2 | 1 | 2/27/2026 |
| 1.2.1 | 0 | 2/27/2026 |
| 1.2.0 | 0 | 2/27/2026 |
| 1.1.9 | 1 | 2/27/2026 |
| 1.1.8 | 0 | 2/27/2026 |
| 1.1.7 | 0 | 2/27/2026 |
| 1.1.6 | 1 | 2/26/2026 |
| 1.1.5 | 0 | 2/26/2026 |
| 1.1.4 | 0 | 2/26/2026 |
| 1.1.3 | 0 | 2/26/2026 |
| 1.1.2 | 1 | 8/28/2025 |