Quorix.Pipeline
1.0.0
dotnet add package Quorix.Pipeline --version 1.0.0
NuGet\Install-Package Quorix.Pipeline -Version 1.0.0
<PackageReference Include="Quorix.Pipeline" Version="1.0.0" />
<PackageVersion Include="Quorix.Pipeline" Version="1.0.0" />
<PackageReference Include="Quorix.Pipeline" />
paket add Quorix.Pipeline --version 1.0.0
#r "nuget: Quorix.Pipeline, 1.0.0"
#:package Quorix.Pipeline@1.0.0
#addin nuget:?package=Quorix.Pipeline&version=1.0.0
#tool nuget:?package=Quorix.Pipeline&version=1.0.0
Quorix.Pipeline
Quorix.Pipeline is a modular and extensible middleware layer designed to work seamlessly with Quorix.
It provides out-of-the-box pipeline behaviors such as logging, retry, circuit breaker, rate limiting, validation, caching, and more โ all designed for commercial-grade .NET systems.
๐ฏ Why Quorix.Pipeline?
While many CQRS/Mediator libraries offer basic pipelines, most fall short when applied to enterprise-level architectures.
Quorix.Pipeline gives you:
- ๐ Plug-and-play behaviors
- โ๏ธ Full extensibility using
IPipelineBehavior<TRequest, TResponse>
- ๐ Zero external dependencies beyond
Polly
,FluentValidation
, and Microsoft abstractions - ๐ Safe for use in commercial and sensitive production environments
- ๐งฑ Built from the ground up to be lightweight, testable, and scalable
โจ Included Behaviors
- LoggingBehavior โ Logs each request's execution
- RetryBehavior โ Automatically retries transient failures
- CircuitBreakerBehavior โ Prevents cascading failures
- IdempotencyBehavior โ Prevents double execution of requests
- CachingBehavior โ Supports custom or in-memory caching
- RateLimitingBehavior โ Protects downstream resources
- ValidationBehavior โ Uses FluentValidation validators
- PerformanceBehavior โ Tracks execution duration
- MetricsBehavior โ Exposes observable metrics for monitoring
๐ฆ Installation
Install the package via NuGet:
dotnet add package Quorix.Pipeline
๐ ๏ธ Getting Started Register the pipeline:
services.AddQuorixPipeline() .AddLoggingBehavior() .AddRetryBehavior() .AddValidationBehavior() .AddQuorixMemoryCaching(); // Optional: Built-in memory caching
Add FluentValidation validators:
dotnet add package FluentValidation.DependencyInjectionExtensions
services.AddValidatorsFromAssemblyContaining<Startup>();
Provide a custom caching strategy:
services.AddQuorixCaching<YourCustomRedisCacheProvider>();
๐ง Custom Middleware Example
Create your own behavior by implementing:
public class CustomBehavior<TRequest, TResponse> : IPipelineBehavior<TRequest, TResponse> where TRequest : IRequest<TResponse> { public async Task<TResponse> Handle( TRequest request, RequestHandlerDelegate<TResponse> next, CancellationToken cancellationToken) { // Pre-processing logic var response = await next(); // Post-processing logic return response; } }
Then register:
services.AddScoped(typeof(IPipelineBehavior<,>), typeof(CustomBehavior<,>));
๐งช Built with Testability in Mind
All behaviors are added via DI and can be replaced or mocked for unit/integration tests. ๐ License
Quorix.Pipeline is licensed under the MIT License โ free for both personal and commercial use. ๐ Related Packages
Quorix.Mediator โ Core CQRS mediator infrastructure
โญ Give Back
If you find this package helpful, a star on GitHub or NuGet would be appreciated.
Feedback and contributions are always welcome!
๐ฌ Contact
For commercial support, licensing inquiries, or contribution discussions, please get in touch at tunahan.ali.ozturk@outlook.com
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net9.0 is compatible. 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. |
-
net9.0
- FluentValidation (>= 12.0.0)
- FluentValidation.DependencyInjectionExtensions (>= 12.0.0)
- Microsoft.Extensions.Caching.Abstractions (>= 9.0.5)
- Microsoft.Extensions.Logging.Abstractions (>= 9.0.5)
- Polly (>= 8.5.2)
- Quorix (>= 1.0.2)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last Updated |
---|---|---|
1.0.0 | 146 | 5/27/2025 |