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.

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.



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.


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.


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.