User Interface
Business Logic
Data Access Layer
Database

Monolith (Modular) Architecture

This startup template provides a layered, modular and DDD-based solution architecture to build a clean and maintainable codebase.

Layered Solution Structure

The solution is layered based on Domain Driven Design principles and patterns to isolate your business logic from the infrastructure and integrations and to maximize code maintainability and reusability. ABP Framework already provides abstractions, base classes and guides to truly implement DDD for your application.

DDD

Multiple UI Options

We love different ways to create the User Interface. This startup solution provides three different UI framework options for your business application.

Angular
MVC
Blazor

Multiple Database Options

You have two database provider options (in addition to using both in a single application). Use Entity Framework Core to work with any relational database and optionally use Dapper when you need to write low-level queries for better performance. MongoDB is another option if you need to use a document-based NoSQL database. While these providers are well-integrated, abstracted and pre-configured, you can actually interact with any database system that you can use with .NET.

EF Core
MongoDB

Modular Architecture

Modularity is a first-class citizen in the ABP.IO platform. All the application functionalities are split into well-isolated optional modules. The startup solution already comes with the fundamental ABP Commercial modules pre-installed. You can also create your own modules to build a modular system for your own application.

Modular Architecture
Multi-Tenancy

Multi-Tenancy for your SaaS Business

ABP Commercial provides a complete, end-to-end multi-tenancy system to create your SaaS (Software-as-a-Service) systems. It allows the tenants to share or have their own databases with on-the-fly database creation and migration system.