Try the Live Demo

Some quick notes about the demo:

  • The demo data will reset every hour
  • The demo application is running in a low service tier and may take a few seconds to spin up.
  • In a real deployment, subdomains can be used to resolve tenants. In the demo, tenants are switched at login with the tenant selection.
  • To see data isolation in action, try logging in as different tenant users.
  • Only the root tenant can access the tenant management area.
  • Only admin level users can access the user administration area.
  • Every tenant has a default admin:
  • The password for all users: Password123!

Thank you for your interest. You can also send a message to learn more about the boilerplate.

asp nano

Please allow 10-15 seconds for the app to boot from a cold start. Try the live demo with the links below:

Change Log

Version 1.6 (Current)

View Version 1.6 Release Notes

.NET Solution – Added Ardalis Specification with dynamic sorting extension

.NET Solution – Refactored repository DTO mappings to use Automapper’s projectTo() method for better performance when retrieving related entities

.NET Solution – Removed soft delete as default behavior, added separate base class for auditable entities that should implement soft delete

Version 1.5

.NET Solution – Added multiple database option for multi-tenant data isolation. Configurable as single-database, multi-database, or hybrid

.NET Solution – Added support for DataTables server-side pagination (

Razor UI – Enhanced Razor Pages UI, full responsive theme

Version 1.4

Razor UI – Added Razor Pages UI

React Project – Updated server error exception handling

Version 1.3

.NET Solution – Updated from .NET 6 to .NET 7

React Project – Updated from React 17 to React 18

React Project – Refactored routing, updated from React Router 5 to React Router 6

Version 1.2

.NET Solution – Added Specification Pattern, bug fixes

React Project – Bug fixes

Version 1.1

Initial Release