Muflone 8.4.0

dotnet add package Muflone --version 8.4.0
                    
NuGet\Install-Package Muflone -Version 8.4.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Muflone" Version="8.4.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Muflone" Version="8.4.0" />
                    
Directory.Packages.props
<PackageReference Include="Muflone" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Muflone --version 8.4.0
                    
#r "nuget: Muflone, 8.4.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#addin nuget:?package=Muflone&version=8.4.0
                    
Install Muflone as a Cake Addin
#tool nuget:?package=Muflone&version=8.4.0
                    
Install Muflone as a Cake Tool

Muflone

A CQRS and event store library based on the great work of Jonathan Oliver with CommonDomain as part of NEventStore

Getting started 🚀

Install-Package Muflone

Sample usage

Look at this repo

Update 8.3

Since this version we implemented a system to auto-create the consumers so that it is not necessary to create the consumers in your project anymore. This should reduce complexity and potential errors due to a missing consumer. You can now register directly your command and event handlers and that's it.

Instead of registering the consumers that wrap your handlers

builder.Services.AddMufloneRabbitMQConsumers(new List<IConsumer>
{
    new CreateCartConsumer(repository, connectionFactory, loggerFactory),
    new CartCreatedConsumer(repository, connectionFactory, loggerFactory),
    new ProductCreatedConsumer(repository, connectionFactory, loggerFactory),
}

You can just register them like the following and we will do the rest

builder.Services.AddCommandHandler<CreateCartHandler>();
builder.Services.AddDomainEventHandler<CartCreatedHandler>();
builder.Services.AddIntegrationEventHandler<ProductCreatedHandler>();

In case you have a generic handler that is not a command or event handler, you can still register it like this

builder.Services.AddGenericHandler<MyGenericHandler>();

We still maintain active the other method to register consumers so that you can extend it if you need to.

Give a Star! ⭐

If you like or are using this project please give it a star. Thanks!

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (10)

Showing the top 5 NuGet packages that depend on Muflone:

Package Downloads
Muflone.Eventstore

Eventstore implementation for Muflone

Muflone.Transport.RabbitMQ

Package Description

Muflone.SpecificationTests

Update references

Muflone.MassTransit.RabbitMQ

Mass transit service bus for RabbitMQ and wrappers for Muflone's CommandHandlers and EventHandlers

Muflone.Saga

Saga base implementation for Muflone

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
8.4.0 343 5/20/2025
8.3.8-alpha 168 5/16/2025
8.3.7-alpha 175 5/16/2025
8.3.6-alpha 224 5/15/2025
8.3.5-alpha 228 5/14/2025
8.3.4-alpha 215 5/14/2025
8.3.3-alpha 212 5/14/2025
8.3.2-alpha 217 5/14/2025
8.3.1-alpha 134 5/8/2025
8.3.0-alpha 148 5/7/2025
8.1.3 2,327 10/15/2024
8.1.2 2,617 9/9/2024
8.0.2 374 5/10/2024
6.2.0 985 4/19/2023
6.1.1 855 10/12/2022
6.1.0 2,022 8/25/2022
6.0.5 786 7/11/2022
6.0.4 1,394 5/23/2022
6.0.3 494 5/23/2022
6.0.2 907 5/6/2022
1.0.1 1,948 7/21/2020
1.0.0 540 7/21/2020
0.9.4 686 8/14/2019
0.9.3 1,495 8/14/2019
0.9.2 639 8/14/2019
0.9.1 1,545 6/25/2019
0.9.0 2,054 10/28/2018

Added support to register handlers without consumers