PREVIEW

open source web application framework

for asp.net core


Learn how to use   Create a new project

See the latest release logs

Complete Application Development Infrastructure

ABP provides a full stack development model and infrastructure for modern web applications.

Modular Architecture

Designed as modular and extensible from the bottom to the top.

Microservice Focused

Designed to support microservice architecture and helps to build autonomous microservices.

Domain Driven Design

Designed and developed based on DDD patterns and principles. Provides a layered model for your application.

Authorization

Advanced authorization with user, role and fine-grained permission system. Built on the Microsoft Identity library.

Multi-Tenancy

SaaS applications made easy! Integrated multi-tenancy from database to UI.

Cross Cutting Concerns

Complete infrastructure for authorization, validation, exception handling, caching, audit logging, transaction management and so on.

Built-In Bundling & Minification

Stop to use external tools for bundling & minification. ABP offers a simpler, dynamic, powerful, modular and built-in way!

Virtual File System

Embed views, scripts, styles, images... into packages/libraries and reuse in different applications.

Theming

Use and customize the bootstrap-based standard UI theme or create your own one.

Background Jobs

Built-in background job system that can be integrated to Hangfire, RabbitMQ or any tool you like.

Testable & Customizable

Helps to build testable applications. Easy to replace/override built-in services.

HTTP APIs & Dynamic Proxies

Automatically expose application services as REST style HTTP APIs and consume with dynamic JavaScript & C# proxies.

Multi-Tenancy

ABP framework not only supports to develop multi-tenant applications, but also makes your code mostly unaware of the multi-tenancy.

Can automatically determine the current tenant, isolate data of different tenants from each other.

Supports single database, database per tenant and hybrid approaches.

You focus on your business code and let the framework to handle multi-tenancy on behalf of you.

Bootstrap Tag Helpers

Instead of manually writing the repeating details of bootstrap components, use ABP's tag helpers to simplify it and take advantage of intellisense.

 
                    
<abp-card>
    <img abp-card-image="Top" src="~/images/my-dog.png" />
    <abp-card-body>
        <abp-card-title>Card title</abp-card-title>
        <abp-card-text>
            <p>
                This is a sample card component built by ABP bootstrap
                card tag helper. ABP has tag helper wrappers for most of 
                the bootstrap components.
            </p>
        </abp-card-text>
        <a abp-button="Primary" href="#">Go somewhere &rarr;</a>
    </abp-card-body>
</abp-card>
                        
                    
Card title

This is a sample card component built by ABP bootstrap card tag helper. ABP has tag helper wrappers for most of the bootstrap components.

Go somewhere →

Dynamic Forms

Dynamic form & input tag helpers can create the complete form from a C# class as the model.

 
                    
<abp-dynamic-form abp-model="@Model.PersonInput" submit-button="true" />
                        
                    
 
                    
public class PersonModel
{
    [HiddenInput]
    public Guid Id { get; set; }

    [Required]
    [EmailAddress]
    [StringLength(255)]
    public string Email { get; set; }

    [Required]
    [StringLength(32)]
    [DataType(DataType.Password)]
    public string Password { get; set; }

    [StringLength(255)]
    public string Address { get; set; }

    public Gender Gender { get; set; }
}
                        
                    

Multiple Database Provider Support

The core framework is ORM/database indepdendent and can work with any data source. Entity Framework Core and MongoDB providers are currently available.

Familiar Tools

Built on and integrated to popular tools you already know.