Ross ROSS = Recommend OSS · open-source software intelligence for agents

dotnetcore/CAP

Distributed transaction solution in micro-service base on eventually consistency, also an eventbus with Outbox pattern observed · 2026-08-28

github.com/dotnetcore/CAP · homepage · C# · MIT (permissive) observed · 2026-08-28

Health v2 · maintenance only

92/100

  • Activity 95
  • Release rhythm 83
  • Longevity 100
How is this computed?

round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-02. Adoption (stars, forks) is never an input.

  • gap_med: 43.0
  • age_days: 3549
  • days_rel: 32
  • days_push: 32
  • n_releases_24m: 11

Full methodology

Adoption not part of the score

7107 stars · 1337 forks observed · 2026-08-28

What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-29, confidence not recorded

CAP is a .NET library providing a lightweight event bus and a distributed transaction solution based on the Outbox pattern (local message table) for eventual consistency in microservices. It guarantees reliable event delivery with automatic retries and integrates with message queues like Kafka and RabbitMQ.

Use cases

  • ensure atomicity between database writes and event publishing in microservices
  • implement outbox pattern for reliable event delivery
  • decouple microservices with a lightweight event bus
  • publish delayed messages without relying on broker features
  • achieve eventual consistency across services in a SOA system
  • implement competing consumers and fan-out messaging patterns

When to choose

  • you're building .NET/ASP.NET Core microservices needing reliable event publishing tied to database transactions
  • you want an event bus with no interface inheritance requirements and minimal configuration
  • you need guaranteed message delivery with retries and a local message table
  • you want pluggable message queue and storage backends (Kafka, RabbitMQ, MySQL, etc.)

When to avoid

  • you need a standalone message queue without database-backed storage - CAP requires a database for its outbox
  • you need immediate rollback of producer-side SQL when consumers fail - CAP only offers eventual consistency
  • your stack is not .NET - CAP is a .NET Standard library
  • you need strict synchronous distributed transactions (e.g., 2PC) rather than eventual consistency

Facets

library · maturity active

message-queue middleware microservices serialization microservices backend apis dotnet cross-platform cloud eventbus outbox-pattern distributed-transactions eventual-consistency kafka rabbitmq local-message-table aspnet-core reliable-messaging delayed-messages messaging docker

10 sources

Member repositories

RepositoryRoleHealth v2
dotnetcore/CAPmain92

For agents

markdown · JSON · MCP: product_card(name="dotnetcore/CAP")

Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem