Skip to content

UKBatch

Lite, pluggable batch and job orchestration for .NET 8 and .NET 10 microservices. Write a job once; decide later where its state lives and how services talk.
Terminal window
dotnet add package UKBatch.AspNetCore --prerelease

UKBatch is a NuGet package family that orchestrates jobs and batches across one service or many, with minimal code. You write a job once and decide later where its state lives (in-memory or a database) and how services talk to each other (in-process, HTTP, or RabbitMQ) — the job code does not change. Run it embedded in your app with a built-in dashboard, or as a standalone server with worker microservices.

One-line integration

builder.AddUKBatchAspNetCore(b => b.AddJob<MyJob>()). An in-memory store and in-process transport are wired by default — nothing else is required to run.

Two modes, same code

Embed the library + dashboard in your app, or run a standalone server with workers. Only configuration differs.

Pluggable storage & transport

Storage: InMemory / PostgreSQL / SQLite (EF Core). Transport: in-process / HTTP / RabbitMQ.

Real workflow patterns

Sequential, parallel fan-out/fan-in, manual approval gates, and cross-service steps via .OnService("...").

Data-parallel jobs

“Fetch a set, process on N workers” as a first-class primitive — IPartitionedJob<TItem>.

Dashboard + REST

A Blazor Server UI for monitoring, triggering, approvals, and a visual batch editor — plus a REST API, OpenAPI document, and a live SignalR hub.