version 0.1.0

repo url: https://github.com/fabiolune/event-handling

Event Handling made simple

dotnet Quality Gate Status codecov Mutation testing badge

A collection of lightweight, functional C# libraries for building event-driven pipelines. All processing results are expressed as EitherAsync<Error, Unit> (via LanguageExt), keeping the pipelines composable and exception-free by design.

Libraries

Fl.Event.Handling

The core library. Provides:

  • IEventHandler<TEvent> — the unit of work: a single handler for a specific event type.
  • IEventProcessor<TEvent> — the orchestrator: coordinates one or more handlers.
  • SequentialEventProcessor<T> and ParallelEventProcessor<T> — built-in processor implementations.
  • ExceptionCatcherEventProcessor<TEvent> and LoggingEventProcessor<TEvent> — decorators for cross-cutting concerns.

Fl.Event.Handling.Extensions

Dependency injection extensions for ASP.NET Core / IServiceCollection. Provides AddEventHandling<TEvent>() to register a processor and auto-discover all IEventHandler<TEvent> implementations from an assembly in a single call.