@@ -28,19 +28,56 @@ infrastructure — so you can adopt only what you need.
2828
2929## Packages
3030
31+ Adopt only what you need — every package is independently versioned and focused on a single concern.
32+
33+ ** Core**
34+
35+ | Package | Description |
36+ | ---| ---|
37+ | ** Vulthil.Results** | Result primitives for explicit success/failure flows without exceptions. |
38+ | ** Vulthil.SharedKernel** | Domain primitives — aggregate roots, entities, domain events, and domain exceptions. |
39+
40+ ** Application & API**
41+
42+ | Package | Description |
43+ | ---| ---|
44+ | ** Vulthil.SharedKernel.Application** | CQRS handlers, pipeline behaviors, and FluentValidation integration. |
45+ | ** Vulthil.SharedKernel.Api** | Minimal-API endpoint helpers and ` Result ` -to-HTTP conversion. |
46+
47+ ** Persistence & Outbox**
48+
49+ | Package | Description |
50+ | ---| ---|
51+ | ** Vulthil.SharedKernel.Outbox** | Transactional domain-event outbox engine; persistence-agnostic. |
52+ | ** Vulthil.SharedKernel.Outbox.EntityFrameworkCore** | EF Core implementation of the domain-event outbox. |
53+ | ** Vulthil.SharedKernel.Infrastructure** | EF Core persistence, transactions, and outbox wiring. |
54+ | ** Vulthil.SharedKernel.Infrastructure.Relational** | Shared relational helpers for the provider packages. |
55+ | ** Vulthil.SharedKernel.Infrastructure.Npgsql** | PostgreSQL/Npgsql EF Core mappings and optimizations. |
56+ | ** Vulthil.SharedKernel.Infrastructure.MySql** | MySQL EF Core mappings and optimizations. |
57+ | ** Vulthil.SharedKernel.Infrastructure.Cosmos** | Azure Cosmos DB EF Core mappings and optimizations. |
58+
59+ ** Messaging**
60+
61+ | Package | Description |
62+ | ---| ---|
63+ | ** Vulthil.Messaging.Abstractions** | Contracts for producers, consumers, and request/reply boundaries. |
64+ | ** Vulthil.Messaging** | Composition APIs for consumers, queues, and hosted processing. |
65+ | ** Vulthil.Messaging.RabbitMq** | RabbitMQ transport for the messaging abstractions. |
66+ | ** Vulthil.Messaging.Outbox** | Transactional bus-publish outbox that eliminates the dual-write problem. |
67+ | ** Vulthil.Messaging.Inbox** | Idempotent-receiver (inbox) consume filter for exactly-once processing. |
68+ | ** Vulthil.Messaging.Inbox.EntityFrameworkCore** | Shared EF Core primitives for the inbox idempotency store. |
69+ | ** Vulthil.Messaging.Inbox.Relational** | Relational EF Core idempotency store (transactional exactly-once). |
70+ | ** Vulthil.Messaging.Inbox.Cosmos** | Azure Cosmos DB idempotency store (effectively-once). |
71+ | ** Vulthil.Messaging.TestHarness** | In-memory harness for asserting messaging flows in tests. |
72+
73+ ** Hosting & Testing**
74+
3175| Package | Description |
3276| ---| ---|
33- | ** Vulthil.Results** | Small result primitives for explicit success/failure flows without exceptions. |
34- | ** Vulthil.SharedKernel** | Core domain primitives and base abstractions for shared domain logic. |
35- | ** Vulthil.SharedKernel.Application** | Application-layer building blocks such as handlers, pipelines, and validation helpers. |
36- | ** Vulthil.SharedKernel.Infrastructure** | Infrastructure helpers for persistence, transactions, outbox, and EF Core integration. |
37- | ** Vulthil.SharedKernel.Api** | API-layer helpers for endpoints, controllers, and cross-cutting HTTP concerns. |
38- | ** Vulthil.Messaging.Abstractions** | Messaging contracts for producers/consumers and request/reply boundaries. |
39- | ** Vulthil.Messaging** | Messaging composition APIs for configuring consumers, queues, and hosted processing. |
40- | ** Vulthil.Messaging.RabbitMq** | RabbitMQ implementation for the Vulthil messaging abstractions. |
41- | ** Vulthil.Messaging.TestHarness** | Test utilities for validating messaging flows in integration and component tests. |
42- | ** Vulthil.Extensions.Testing** | Testing-oriented extensions for asserting and composing application behaviors. |
43- | ** Vulthil.xUnit** | Reusable xUnit base infrastructure for integration and unit test composition. |
77+ | ** Vulthil.Extensions.Hosting** | Hosting abstractions, including ` IRestartableHostedService ` . |
78+ | ** Vulthil.Extensions.Testing** | Testing helpers such as polling utilities for eventual consistency. |
79+ | ** Vulthil.xUnit** | xUnit base classes with Testcontainers, Respawn, and AutoMocker. |
80+ | ** Vulthil.xUnit.Cosmos** | Cosmos DB emulator fixture for xUnit integration tests. |
4481
4582## Documentation
4683
0 commit comments