open sourceWeb Application
Framework
for asp.net core

ABP is a complete architecture and strong infrastructure to create modern web applications! Follows best practices and conventions to provide you a SOLID development experience.

Latest release logs

Strong
Infrastructure

Full stack application infrastructure.

Complete
Architecture

Modern architecture to create maintainable software solutions.

Domain Driven Design (DDD)
Based Layering Model

Helps you to implement a DDD based layered architecture and build a maintainable code base.

Provides startup templates, abstractions, base classes, services, documentation and guides to help you to develop your application based on DDD patterns & principles.

See Details

Microservice
Compatible

The core framework & pre-build modules are designed the microservice architecture in mind.

Provides infrastructure, integrations, samples and documentation to implement microservice solutions easier, while it doesn’t bring additional complexity if you want a monolithic application.

See Details

Modular

ABP provides complete modularity system to allow you to develop reusable application modules.

Pre-Built Modules & Themes

Open source and commercial modules & themes are ready to use in your business application.


NuGet & NPM Packages

Distributed as NuGet & NPM packages. Easy to install and upgrade.


Extensible/Replaceable

All services & modules are designed extensibility in mind. You can replace services, pages, styles, components...

Don't Repeat
Yourself

Cross Cutting Concerns

Keep your code cleaner and focus on your own business code.

Don’t send time to implement common application requirements again and again.

  • Authentication & Authorization
  • Exception Handling
  • Validation
  • Database Connection
  • Transaction management
  • Audit Logging
  • Caching
  • Multitenancy
  • Data filtering

Convention Over Configuration

ABP implements common application conventions by default with a minimal or zero configuration.

  • Auto registers known services to dependency injection.
  • Exposes application services as HTTP APIs by naming conventions.
  • Creates dynamic HTTP client proxies for C# and JavaScript.
  • Provides default repositories for your entities.
  • Manages Unit of Work per web request or application service method.
  • Publishes create, update & delete events for your entities.

Base Classes

Pre-built base classes for common application patterns.


//Base class for CRUD services
public class PeopleAppService
    : CrudAppService<Person, PersonDto, Guid>,
      IPeopleAppService
    {
    //Generic repository
    public PeopleAppService(
        IRepository<Person, Guid> repository
    ) : base(repository)
    { 
    }
}

Developer
Focused

ABP is for developers.
It aims to simplify your daily software development while not restricting you to work low level when you need it.

See All Features

CLI (Command Line Interface)

CLI automates to create new projects and add modules to your application.

abp new Acme.BookStore -d mongodb

Startup Templates

Various startup templates provide you fully configured solution to jump start your development.


Based on Familiar Tools

Built on and integrated to popular tools you already know. Low learning curve, easy adaptation, comfortable development.


ORM Independent

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