Actors, not orchestrators
Every workflow is an independent Orleans grain. No shared coordinator, no lock contention — add silos, get linear throughput.
A BPMN workflow engine built on .NET Orleans. Design workflows visually, deploy them as BPMN XML, and run every instance as an event-sourced actor — scale out by adding silos, not by tuning a central orchestrator.
built on .NET Orleans · for any stack
Your backend talks REST to one Orleans cluster. Core and worker silos share it, and custom-task workers connect over gRPC; state, clustering, reminders and streams plug into whichever storage and queues you already run — Fleans ships SQLite, PostgreSQL, Redis, Kafka and Azure Queue, and any other Orleans provider fits the same seams. Start on one PostgreSQL and grow into the layout built for scale.
Design, deploy and operate workflows from one browser app.


How a workflow instance runs, survives failure, and stays fast.
Every workflow is an independent Orleans grain. No shared coordinator, no lock contention — add silos, get linear throughput.
Append-only event log with deterministic replay. Silo dies mid-workflow? Orleans reactivates the grain on another silo — no orphaned state.
Active workflows run from RAM — mid-workflow steps skip the database. Events batch into one transaction at the end of each grain call.
Compensation, error boundaries, and escalation events are first-class. Failure modes get explicit semantics, not ad-hoc try/catch.
Reads, storage and transport are split so each can scale or be swapped on its own.
Built-in CQRS split routes read traffic through a NoTracking query context and an optional PostgreSQL replica.
Lists and finished instances read a pre-built EF projection. No event replay to render a list or open a finished instance.
SQLite for laptops, PostgreSQL for production — selected at startup via a single config key, no code change. The provider model is open if you need to add another.
Domain events flow through Orleans Streams. Flip Fleans:Streaming:Provider=kafka to use the bundled Kafka adapter for cross-silo durability — or ship your own provider against the same extension point.
Fleans ships as a container image you can run anywhere — laptop, VM, or Kubernetes. Your data never leaves your network, and there is no SaaS dependency to ramp.
Wrap REST calls, queues, or any custom integration as a BPMN task by shipping a gRPC worker from a GitHub template, in any language. Engine and workers scale independently, so one workflow can fan out across your own fleet.