Application Modules
ABP is a modular application framework which consists of dozens of NuGet & NPM packages. It also provides a complete infrastructure to build your own application modules which may have entities, services, database integration, APIs, UI components and so on.
There are two types of modules. They don't have any structural difference but are categorized by functionality and purpose:
- Framework modules: These are core modules of the framework like caching, emailing, theming, security, serialization, validation, EF Core integration, MongoDB integration... etc. They do not have application/business functionalities but makes your daily development easier by providing common infrastructure, integration and abstractions.
- Application modules: These modules implement specific application/business functionalities like blogging, document management, identity management, tenant management... etc. They generally have their own entities, services, APIs and UI components.
The Module List
Here are all the free and pro application modules developed and maintained as a part of the ABP platform:
- Account: Provides UI for the account management and allows user to login/register to the application.
- Account (Pro): Login, register, forgot password, email activation, social logins and other account related functionalities.
- Audit Logging: Persists audit logs to a database.
- Audit logging (Pro): Reporting the user audit logs and entity histories in details.
- Background Jobs: Persist background jobs when using the default background job manager.
- Chat (Pro): Real time messaging between users of the application.
- CMS Kit: A set of reusable Content Management System features.
- CMS Kit (Pro): A set of reusable CMS (Content Management System) building blocks.
- Docs: Used to create technical documentation website. ABP's own documentation already using this module.
- Feature Management: Used to persist and manage the features.
- File Management (Pro): Upload, download and organize files in a hierarchical folder structure.
- Forms (Pro): Create forms and surveys.
- GDPR (Pro): Personal data management.
- Identity: Manages organization units, roles, users and their permissions, based on the Microsoft Identity library.
- Identity (Pro): User, role, claims and permission management.
- IdentityServer: Integrates to IdentityServer4.
- Identity Server (Pro): Managing the identity server objects like clients, API resources, identity resources, secrets, application URLs, claims and more.
- Language management (Pro): Add or remove languages and localize the application UI on the fly.
- OpenIddict: Integrates to OpenIddict.
- OpenIddict (Pro): Managing the openiddict objects like applications, scopes.
- Payment (Pro): Payment gateway integrations.
- Permission Management: Used to persist permissions.
- SaaS (Pro): Manage tenants, editions and features to create your multi-tenant / SaaS application.
- Setting Management: Used to persist and manage the settings.
- Tenant Management: Manages tenants for a multi-tenant application.
- Text template management (Pro): Manage text templates in the system.
- Twilio SMS (Pro): Send SMS messages with Twilio cloud service.
- Virtual File Explorer: Provided a simple UI to view files in virtual file system.