Skip to main content

FullStackHero .NET Starter Kit

An opinionated, production-first starter for building multi-tenant SaaS and enterprise APIs on .NET 10. Get ready-to-ship Identity, Multitenancy, Auditing, caching, mailing, jobs, storage, health checks, OpenAPI, and OpenTelemetry—wired through Minimal APIs, Mediator, and EF Core.

Why Choose FullStackHero?

Modular Architecture

Drop-in modules with vertical slices. Add Identity, Multitenancy, and Auditing to any API—let the module loader wire endpoints automatically.

Battle-Tested Building Blocks

Pre-built infrastructure for persistence, caching, mailing, background jobs, storage, and web hosting with auth, rate limiting, and versioning.

Cloud-Ready from Day One

Aspire AppHost spins up Postgres, Redis, and your API with OpenTelemetry tracing enabled. Deploy with confidence using included Terraform templates.

Multi-Tenant by Default

Finbuckle-powered tenancy across Identity and your module DbContexts. Migrate and seed tenant databases automatically on startup.

Key Features

Clean separation of concerns with independent modules that can evolve separately. Each feature is a complete vertical slice with its own commands, queries, handlers, and endpoints.
Command and Query Responsibility Segregation using the Mediator library. FluentValidation ensures all commands and queries are validated before execution.
Database-per-tenant isolation using Finbuckle.MultiTenant. Automatic tenant resolution, migration management, and tenant-aware DbContext registration.
ASP.NET Identity integration with JWT token generation and refresh. Role-based and permission-based authorization with group management and session tracking.
Three production-ready modules: Identity (users, roles, permissions), Multitenancy (tenant management, migrations), and Auditing (security, activity, exception logs).
Entity Framework Core 10 with the Specification pattern for complex queries. Domain events, outbox pattern, and tenant-aware database contexts.
Redis-backed distributed caching and Hangfire for background job processing. Storage abstractions for local and cloud file storage.
OpenTelemetry for traces, metrics, and logs. Structured logging with Serilog, health checks, and comprehensive audit logging.

Stack Highlights

  • .NET 10 with C# latest features, Minimal APIs, and top-level statements
  • Mediator for CQRS command/query handling with FluentValidation
  • EF Core 10 with domain events, specifications, and multi-tenant support
  • ASP.NET Identity with JWT issuance/refresh, roles, permissions, and rate-limited auth endpoints
  • Hangfire for background jobs and Redis for distributed caching
  • API versioning, rate limiting, CORS, security headers, OpenAPI (Swagger), and Scalar documentation UI
  • .NET Aspire for local development orchestration
  • Terraform templates for AWS infrastructure

Quick Start

Get up and running with FullStackHero in minutes:
1

Install Prerequisites

Install .NET 10 SDK, .NET Aspire workload, and Docker Desktop.
2

Clone and Restore

Clone the repository and restore dependencies:
git clone https://github.com/fullstackhero/dotnet-starter-kit.git
cd dotnet-starter-kit
dotnet restore src/FSH.Framework.slnx
3

Run with Aspire

Launch the Aspire AppHost to start Postgres, Redis, and the Playground API:
dotnet run --project src/Playground/FSH.Playground.AppHost
Access the API at https://localhost:5285 with Swagger/Scalar UI.

Detailed Setup Guide

Follow our complete quickstart guide for step-by-step instructions and configuration options.

Repository Structure

src/
├── BuildingBlocks/     # Framework packages (Core, Persistence, Caching, etc.)
├── Modules/            # Business modules (Identity, Multitenancy, Auditing)
├── Playground/         # Reference host application
├── Tests/              # Architecture and unit tests
├── Tools/              # Development tools
terraform/              # Infrastructure as code

What’s Included

The framework provides everything you need to build production-ready APIs:
  • 11 Building Block packages: Core, Persistence, Caching, Mailing, Jobs, Storage, Eventing, Web, and more
  • 3 Core Modules: Identity, Multitenancy, Auditing with contracts and persistence
  • Playground API: Reference implementation showing best practices
  • Architecture tests: Enforced layering and module boundaries
  • Terraform templates: AWS infrastructure scaffolding
  • Aspire integration: Local development orchestration with observability

Next Steps

Quickstart

Set up your first project

Architecture

Understand the design

Creating Features

Build your first feature
Built and maintained by Mukesh Murugan for teams that want to ship faster without sacrificing architecture discipline.

Build docs developers (and LLMs) love