finds.dev← search

// the find

BrighterCommand/Brighter

★ 2,429 · C# · MIT · updated May 2026

A framework for building messaging apps with .NET and C#.

Brighter is a mature Command Dispatcher/Processor framework for .NET that handles both in-process command routing and out-of-process messaging across RabbitMQ, Kafka, AWS SQS/SNS, Azure Service Bus, and Redis Streams. It's aimed at .NET teams building microservices or clean-architecture applications who want the outbox pattern, middleware pipelines, and transport abstraction without rolling their own. Think MediatR but with serious distributed messaging baked in rather than bolted on.

- Outbox pattern is a first-class citizen with implementations for PostgreSQL, MySQL, MSSQL, SQLite, DynamoDB, and MongoDB — this is the hard part of reliable async messaging and most alternatives leave it to you.

- 33+ Architecture Decision Records in the repo document why things were built the way they were, which is genuinely useful when you hit an edge case or want to understand a design tradeoff.

- Transport abstraction is real: swapping RabbitMQ for SQS or Kafka requires config changes, not handler rewrites. The Service Activator message pump handles consumer lifecycle uniformly across transports.

- Active development with CI, CodeScene health tracking, Polly 8.x integration for resilience, and OpenTelemetry support — this isn't abandonware with a fresh README.

- Package sprawl is real: you need 3-5 NuGet packages for a basic setup, the naming is inconsistent (AWSSQS vs AWSSQS.V4, RMQ vs RMQ.Async), and figuring out which combination you need requires reading docs carefully rather than following obvious conventions.

- Message mapper boilerplate is heavy — you write explicit serialization/deserialization code per message type. There's no convention-based or source-generated mapping, so a service with many message types accumulates significant mapper code.

- The handler middleware pipeline uses attribute-based AOP (decorating the Handle method), which feels dated compared to explicit pipeline builder patterns, and makes unit testing middleware interactions less straightforward.

- Compared to MassTransit, the community and ecosystem are noticeably smaller, meaning fewer third-party integrations, less Stack Overflow coverage, and longer waits if you file an unusual bug.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →