SkillAgentSearch skills...

Nimbus

Nimbus is a .NET client library to provide an easy abstraction over common messaging frameworks.

Install / Use

/learn @NimbusAPI/Nimbus
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

Nimbus

Nimbus is a .NET messaging framework that provides a clean abstraction over multiple messaging transports, supporting commands, events (pub/sub), and request/response patterns.

Documentation: https://nimbusapi.com

Supported Transports

| Transport | Package | |-----------|---------| | Azure Service Bus | Nimbus.Transports.AzureServiceBus | | Redis | Nimbus.Transports.Redis | | PostgreSQL | Nimbus.Transports.Postgres | | SQL Server | Nimbus.Transports.SqlServer | | AMQP | Nimbus.Transports.AMQP | | In-Process (testing) | Nimbus.Transports.InProcess |

Message Patterns

  • Commands — fire-and-forget, single handler
  • Events — pub/sub with competing or multicast consumers
  • Requests — request/response, single or multicast

Quick Start

var bus = new BusBuilder()
    .Configure()
    .WithTransport(new RedisTransportConfiguration().WithConnectionString("localhost"))
    .WithNames("MyApp", Environment.MachineName)
    .WithTypesFrom(typeProvider)
    .WithAutofacDefaults(componentContext)
    .WithJsonSerializer()
    .Build();

await bus.Start();

Developing Nimbus

git clone <this repository>
docker-compose up -d --build
dotnet build

Development Infrastructure

docker-compose up -d --build starts:

| Service | URL / Port | |---------|-----------| | Seq log server | http://localhost:5341 | | Redis | localhost:6379 | | Apache ActiveMQ Artemis (AMQP) | localhost:5672, console at http://localhost:8161 | | SQL Server | localhost:1433 | | PostgreSQL | localhost:5432 |

SQL Server uses a custom Docker image (in docker/sqlserver) — the --build flag ensures it is built before starting.

Integration tests use appsettings.json in the pipeline and appsettings.Development.json locally (not committed) to point at localhost ports.

Sample Application

The Cafe sample app demonstrates Nimbus messaging patterns through a simple café scenario (cashier, barista, waiter). Run it with:

dotnet run --project src/Cafe.Cashier
dotnet run --project src/Cafe.Barista
dotnet run --project src/Cafe.Waiter

See CONTRIBUTING.md for contribution guidelines.

View on GitHub
GitHub Stars116
CategoryDevelopment
Updated7d ago
Forks84

Languages

C#

Security Score

95/100

Audited on Apr 1, 2026

No findings