abp-infrastructure-patterns

Implement ABP cross-cutting concerns using authorization, background jobs, and events.

Updated Jan 23, 2026
One-click install
npx skills add https://github.com/alexsandrocruz/DominusLeads --skill abp-infrastructure-patterns-alexsandrocruz
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: abp-infrastructure-patterns
Source: https://github.com/alexsandrocruz/DominusLeads/tree/main/backend/Sapienza.Leads/.claude/skills/abp-infrastructure-patterns
Command: npx skills add https://github.com/alexsandrocruz/DominusLeads --skill abp-infrastructure-patterns-alexsandrocruz

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

ABP infrastructure patterns address the challenges of building scalable, maintainable cross-cutting concerns across modules by providing reusable patterns for authorization, background jobs, distributed events, multi-tenancy, and module configuration.

Core Features & Use Cases

  • Authorization & Permissions: Define and enforce permissions across modules in a centralized way.
  • Background Jobs: Schedule and execute long-running tasks reliably.
  • Distributed Events: Implement event-driven communication between modules with idempotent handlers.
  • Multi-Tenancy: Isolate data and behavior per tenant while sharing a common codebase.
  • Module Configuration: Wire and configure ABP modules for consistent behavior across the app.

Quick Start

Use the ABP infrastructure patterns to structure your solution: define permission providers, register background jobs, publish/subscribe distributed events, configure multi-tenancy, and compose module dependencies.

Frequently Asked Questions about abp-infrastructure-patterns

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I implement multi-tenancy in an ABP modular application?▼

ABP multi-tenancy isolates data and behavior per tenant while sharing a common codebase. You configure tenant-specific settings within your module wiring to ensure consistent behavior across the application.

What is the best way to define permissions across ABP modules?▼

ABP permissions are defined centrally across modules using a PermissionDefinitionProvider. This approach enforces authorization rules consistently throughout the entire modular application.

How do I handle distributed events between ABP modules?▼

Distributed events in ABP are handled by publishing and subscribing through the IDistributedEventBus. This enables event-driven communication between modules with idempotent handlers for reliable processing.

Can I schedule long-running tasks using ABP background jobs?▼

ABP background jobs schedule and execute long-running tasks reliably. You implement them by registering an AsyncBackgroundJob to process queued work items asynchronously.

Why do I need module configuration when building scalable ABP apps?▼

ABP module configuration wires and composes module dependencies to ensure consistent behavior across the application. It structures your solution by connecting authorization, jobs, events, and multi-tenancy configurations.

Does ABP support cross-cutting concerns for modular architectures?▼

ABP provides reusable infrastructure patterns for cross-cutting concerns like authorization, background jobs, distributed events, and multi-tenancy. These patterns address the challenges of building scalable and maintainable modular applications.