awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
jbogard avatar

jbogard/MediatR

0
View on GitHub↗
11,841 stars·2,196 forks·C#·9 views

MediatR

MediatR is a .NET library for implementing the mediator pattern, serving as an in-process message broker that decouples senders and receivers by routing messages through a central dispatcher. It enables the transmission of requests and notifications between different components within a single application process.

The framework provides a pipeline behavior system that allows for the interception and processing of messages through a sequence of custom behaviors. This architecture is used to implement cross-cutting concerns, such as logging or validation, across multiple handlers.

The library supports two primary communication patterns: a request-response isolation model that directs a request to a single handler and a pub-sub implementation that broadcasts notifications to multiple independent handlers. These mechanisms use interface-based routing and dependency injection to ensure senders remain unaware of the specific handler implementations.

Features

  • Mediator Patterns - Provides a complete implementation of the mediator pattern for .NET applications.
  • Internal Notification Broadcasters - Dispatches single messages to multiple handlers to trigger independent system events.
  • Event Notifications - Implements an event-driven system for triggering multiple independent handlers via notifications.
  • In-Process Message Routing - Enables communication between different application components without creating direct compile-time dependencies.
  • In-Process - Acts as an in-process broker for routing requests and notifications between application components.
  • Pub-Sub Messaging - Implements a pub-sub architecture to decouple message producers from multiple notification consumers.
  • Decoupled Message Delivery - Routes messages from senders to handlers without requiring direct references to the receiver implementations.
  • Decoupled Request Handling - Decouples senders from handlers, allowing requests to be processed without the sender knowing the implementation details.
  • Message Routing Engines - Provides a high-performance routing engine to direct messages to their corresponding handlers within the application.
  • Notification Broadcasting - Ships a pub-sub mechanism that broadcasts notifications to all registered handlers simultaneously.
  • Composable Middleware Pipelines - Implements composable middleware pipelines to handle cross-cutting concerns like logging and validation.
  • Request-Response Pattern Support - Implements a synchronous request-response pattern that isolates the requester from the processing logic.
  • In-Process Request Dispatchers - Directs request objects to a single specific handler and returns the resulting value to the caller.
  • Cross-Cutting Concern Automations - Automates non-functional requirements such as logging and validation across all message handlers using pipeline behaviors.
  • Dependency Injection Providers - Implements dependency injection to resolve and instantiate message handlers dynamically.
  • Extensible Processing Pipelines - Provides an extensible processing pipeline for intercepting requests and notifications via custom behaviors.
  • Pipeline Behavior Frameworks - Provides a middleware-style pipeline for intercepting and processing messages using custom behaviors.
  • Messaging and Queuing - Simple mediator implementation for request/response and events.
  • Core .NET Libraries - Implementation of the mediator pattern for decoupled request handling.
  • Frameworks and Libraries - In-process messaging library for commands and queries.
  • Messaging and Patterns - Simple mediator implementation for .NET applications.

Star history

Star history chart for jbogard/mediatrStar history chart for jbogard/mediatr

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to MediatR

Similar open-source projects, ranked by how many features they share with MediatR.
  • luckypennysoftware/mediatrLuckyPennySoftware avatar

    LuckyPennySoftware/MediatR

    11,840View on GitHub↗

    MediatR is a .NET mediator pattern library that serves as an in-process message broker. It decouples message senders from handlers by using a central mediator to route requests, commands, and events. The system functions as a request-response dispatcher that routes single requests to dedicated handlers and an event publisher that broadcasts notifications to multiple decoupled handlers for simultaneous processing. It also provides pipeline behavior middleware to execute shared pre- and post-processing logic across incoming messages. The library handles in-process message dispatching and decou

    C#hacktoberfest
    View on GitHub↗11,840
  • nats-io/nats.gonats-io avatar

    nats-io/nats.go

    6,657View on GitHub↗

    This is a Golang client library for interacting with a cloud native distributed messaging system. It provides the necessary tools for Go applications to exchange messages using publish-subscribe and request-reply patterns, as well as specialized clients for managing persistent streams and distributed storage. The library includes a JetStream client for durable message streaming and replay, a Key-Value store client for managing distributed state with versioning and watchers, and an Object Store client for the storage and retrieval of large binary files via chunked delivery. The implementation

    Gocloud-nativecloud-native-architecturescloud-native-microservices
    View on GitHub↗6,657
  • dotnet-architecture/eshoponwebdotnet-architecture avatar

    dotnet-architecture/eShopOnWeb

    10,676View on GitHub↗

    eShopOnWeb is a reference application for ASP.NET Core that demonstrates a sample e-commerce site. It serves as a template for building scalable services using domain-driven design to separate business logic from infrastructure and data access. The project implements a decoupled messaging pattern through a request pipeline to separate web controllers from application logic. It utilizes a repository pattern to abstract data persistence and isolate the core application logic from the specific database storage mechanism. The application covers a broad surface of web capabilities, including user

    C#architectureasp-net-coreasp-net-core-mvc
    View on GitHub↗10,676
  • serverless/event-gatewayserverless avatar

    serverless/event-gateway

    1,647View on GitHub↗

    The Event Gateway is a unified routing layer designed to connect HTTP requests and cloud events to serverless functions across multiple providers and infrastructure environments. It functions as a centralized platform for managing event-driven architectures, enabling developers to register, map, and trigger remote functions in response to incoming web traffic or asynchronous system events. The platform distinguishes itself through a plugin-based middleware pipeline that allows for custom logic execution during the request lifecycle, enabling developers to intercept, validate, or transform eve

    Godataflowevent-drivenevent-router
    View on GitHub↗1,647
See all 30 alternatives to MediatR→

Frequently asked questions

What does jbogard/mediatr do?

MediatR is a .NET library for implementing the mediator pattern, serving as an in-process message broker that decouples senders and receivers by routing messages through a central dispatcher. It enables the transmission of requests and notifications between different components within a single application process.

What are the main features of jbogard/mediatr?

The main features of jbogard/mediatr are: Mediator Patterns, Internal Notification Broadcasters, Event Notifications, In-Process Message Routing, In-Process, Pub-Sub Messaging, Decoupled Message Delivery, Decoupled Request Handling.

What are some open-source alternatives to jbogard/mediatr?

Open-source alternatives to jbogard/mediatr include: luckypennysoftware/mediatr — MediatR is a .NET mediator pattern library that serves as an in-process message broker. It decouples message senders… serverless/event-gateway — The Event Gateway is a unified routing layer designed to connect HTTP requests and cloud events to serverless… nats-io/nats.go — This is a Golang client library for interacting with a cloud native distributed messaging system. It provides the… threedotslabs/watermill — Watermill is a Go library for building event-driven applications. It provides a framework for implementing… dotnet-architecture/eshoponweb — eShopOnWeb is a reference application for ASP.NET Core that demonstrates a sample e-commerce site. It serves as a… socketcluster/socketcluster — Highly scalable realtime pub/sub and RPC framework.