docs/en/index.md
//[doc-seo]
{
"Description": "Explore the ABP documentation to build robust enterprise solutions with best practices, templates, and tools for .NET and ASP.NET Core."
}
ABP offers an opinionated architecture to build enterprise software solutions with best practices on top of the .NET and the ASP.NET Core platforms. It provides the fundamental infrastructure, production-ready startup templates, pre-built application modules, UI themes, tooling, guides and documentation to implement that architecture properly and automate the details and repetitive works as much as possible.
The following pages outline why you should use the ABP Platform and how it is used:
The Getting Started guide can be used to create and run ABP based solutions with different options and details.
After getting started, you can read the following documents:
ABP can work with any UI framework, while the following frameworks are supported and well-integrated out of the box:
ABP can work with any database provider, while the following providers are supported and well-integrated out of the box:
ABP bridges the gap between ASP.NET Core and real-world business application requirements, allowing you to focus on your business code.
The following diagram contains the core components of the ABP Platform and shows how ABP sits between ASP.NET Core and Your Application:
ABP has a comprehensive documentation that not only explains ABP, but also includes guides and samples to help you on creating a maintainable solution by introducing and discussing common software development principle and best practices.
The next sections highlight important ABP components and provides links to related documents.
ABP offers a complete, modular and layered software architecture based on Domain Driven Design principles and patterns. It also provides the necessary infrastructure to implement this architecture.
There are a lot of features provided by ABP to achieve real world scenarios easier, like Event Bus, Background Job System, Audit Logging, BLOB Storing, Data Seeding, Data Filtering.
ABP also simplifies (and even automates wherever possible) cross cutting concerns and common non-functional requirements like Exception Handling, Validation, Authorization, Localization, Caching, Dependency Injection, Setting Management, etc.
ABP Platform provides tooling to help you in your daily development.
ABP Studio is a cross-platform desktop application for ABP and .NET developers. It aims to provide a comfortable development environment for you by automating things, providing insights about your solution, making develop, run, browse, monitor, trace and deploy your solutions much easier.
ABP Suite is a tool to assist your application development. Its main functionality is to automatically generate CRUD-style pages once you define your entities and their relations.
ABP CLI is a command-line tool to create new solutions and automate the things with your ABP based solutions.
The Startup templates are pre-built Visual Studio solution templates. You can create your own solution based on these templates to immediately start your development.
Application Modules provides pre-built application modules those implement common business requirements. See the Application Modules document for all pre-built modules.
ABP provides a UI theming system where you can use pre-built themes for your solution or build your own UI themes.
You can check the following books to expertise the ABP platform:
See the sample projects built with ABP.
The ABP Community website is a central place to publish articles and share knowledge about ABP.
Follow the ABP Blog to learn the latest happenings in the ABP Platform.
ABP's source code is hosted on GitHub. See the source code.
ABP is a community-driven open source project. See the contribution guide if you want to be a part of this project.