abp
Open-source web application framework for ASP.NET Core! Offers an opinionated architecture to build enterprise software solutions with best practices on top of the .NET. Provides the fundamental infrastructure, cross-cutting-concern implementations, startup templates, application modules, UI themes, tooling and documentation.
ABP Framework is an open-source toolkit for building enterprise and SaaS web apps in C# that comes with user management, multi-tenancy, authorization, and common infrastructure already built in.
ABP Framework is an open-source framework for building business web applications on top of Microsoft's ASP.NET Core platform. ASP.NET Core is a foundation for building websites and APIs in C#, but it leaves developers to figure out many common concerns themselves: how to structure code, how to handle user permissions, how to manage multiple tenants in a SaaS product, and dozens of other recurring problems. ABP provides a pre-built opinionated answer to all of those, so development teams can spend more time on the specific business logic of their product and less time rebuilding common infrastructure.
The framework covers architecture patterns like Domain Driven Design, modularity, and multi-tenancy. It also handles cross-cutting concerns automatically, including exception handling, input validation, authorization checks, localization for multiple languages, caching, and audit logging that records who did what and when. These are wired in at the framework level rather than requiring each developer to implement them manually.
On top of the core framework, ABP ships a library of ready-made application modules covering things like user account management and login, a content management system, identity and role management, and multi-tenant subscription management. These modules can be dropped into a new application to avoid building common screens from scratch.
For starting new projects, ABP provides startup templates that generate a complete Visual Studio solution with a chosen architecture already in place: single-application, modular monolith, or microservices. Tooling includes a desktop application called ABP Studio for running and managing solutions, a web tool called ABP Suite that generates data management pages from a schema without writing code, and a command-line interface for common tasks.
ABP targets C# developers building enterprise or SaaS web products. The frontend side supports Angular, Blazor WebAssembly, Blazor Server, and server-rendered MVC pages. A book titled "Mastering ABP Framework" is available from the framework's creator for deeper learning.
Where it fits
- Build a multi-tenant SaaS web app in C# with user management, roles, and subscription modules already wired in.
- Generate data management screens from a schema definition without writing repetitive CRUD code using ABP Suite.
- Start a modular monolith or microservices project from a pre-configured Visual Studio solution template.
- Add audit logging, input validation, and localization to an ASP.NET Core app without implementing them from scratch.