Convey Documentation

Convey is a modular toolkit for building resilient, observable .NET microservices. Each package is optional and focused; compose only what you need.

For a guided walkthrough see: GettingStarted.md

Overview

Convey packages follow these principles:

  • Focused responsibilities per module
  • Convention over configuration (override when needed)
  • Framework transparency (you retain control of ASP.NET Core pipeline)
  • Production readiness (observability, security, resiliency helpers)

Core Libraries

Foundation

Authentication & Security

CQRS (Command Query Responsibility Segregation)

Message Brokers

Persistence

Service Discovery & Load Balancing

HTTP & API

Observability

Configuration & Secrets

Getting Started (TL;DR)

dotnet add package Convey
dotnet add package Convey.WebApi
dotnet add package Convey.CQRS.Commands
dotnet add package Convey.MessageBrokers.RabbitMQ
builder.Services.AddConvey()
    .AddWebApi()
    .AddCommandHandlers()
    .AddInMemoryCommandDispatcher() // or use RabbitMQ
    .AddRabbitMq();

See GettingStarted.md for a full walkthrough including CQRS, MongoDB & RabbitMQ setup.

Sample Applications

Explore the samples/ directory for full services demonstrating composition patterns:

  • Conveyor.Services.Orders – Order management
  • Conveyor.Services.Deliveries – Delivery tracking
  • Conveyor.Services.Pricing – Pricing calculations

Contributing

Maintained by devmentors.io. Contributions are welcome—open an issue first for larger changes. Please keep docs concise & consistent with the style guide.

License

See the root LICENSE file.


Need terminology or formatting guidance? See STYLEGUIDE.md.


Table of contents


Copyright © 2025 Convey. Distributed by an [MIT license](https://github.com/mehyaa/Convey/blob/master/LICENSE).