gitwtfhub

wtf is workflow-core?

danielgerlag/workflow-core — explained in plain English

Analysis updated 2026-06-26

5,852C#Audience · developerComplexity · 3/5Setup · moderate

TL;DR

Workflow Core is a .NET library for defining and running long-running multi-step processes in C#, with state saved to a database so work is not lost if the app restarts, plus automatic rollback on failure.

Mindmap

mindmap
  root((workflow-core))
    What it does
      Long-running workflows
      State persistence
      Saga rollback
    Definition formats
      C# fluent API
      JSON definition
      YAML definition
    Step patterns
      Sequential steps
      Parallel steps
      Wait for event
    Storage backends
      SQL Server PostgreSQL
      MongoDB Redis SQLite

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Build a multi-step order processing workflow in .NET that waits for payment confirmation before continuing to the next step.

REASON 2

Implement a user onboarding flow that creates accounts across multiple services and rolls back everything if one step fails.

REASON 3

Define a background data processing pipeline in YAML that runs steps in parallel and retries on failure without writing custom tracking logic.

What's in the stack?

C#.NETSQL ServerPostgreSQLMongoDBRedisSQLite

How it stacks up

danielgerlag/workflow-coredotnetnext/sqlsugarfastendpoints/fastendpoints
Stars5,8525,8045,910
LanguageC#C#C#
Setup difficultymoderateeasyeasy
Complexity3/53/53/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · moderate Time to first run · 1h+

Requires a database (SQL Server, PostgreSQL, MongoDB, or SQLite) to store workflow state between steps.

License not explicitly stated in the explanation.

Wtf does this do

Workflow Core is a library for .NET applications that helps developers describe and run multi-step processes that can take a long time to complete. Instead of writing custom logic to track what step a process is on, or what to do if a step fails, you define the steps once and the library handles the rest, including saving state between steps so work is not lost if the application restarts. You can describe a workflow in C# code using a fluent style where each step follows the previous one, or you can write the definition in JSON or YAML if you want to keep the process description separate from the application code. A workflow can run tasks in sequence, in parallel, loop over items, wait for an external event before continuing, or branch based on the outcome of a step. One notable feature is saga support. A saga is a pattern for handling situations where several steps need to succeed as a group: if one step fails, the library can automatically run compensating actions to undo the earlier steps. This is useful for things like creating an account across multiple services, where a partial failure would leave data in an inconsistent state. Workflow Core is designed to be embedded in a .NET application rather than run as a separate service. It stores workflow state in a database you provide, with official support for SQL Server, PostgreSQL, SQLite, MongoDB, MySQL, Redis, and several cloud databases. A related project called Conductor wraps the same engine in a standalone HTTP server for those who prefer that approach. The library also has ports for Java, Node.js, and Python listed in the repository.

Yoink these prompts

Prompt 1
Using Workflow Core in C#, define a three-step approval workflow where each step saves state to PostgreSQL and waits for an external event before continuing.
Prompt 2
Show me how to implement a saga in Workflow Core that creates a user account in three services and compensates (rolls back) if any step fails.
Prompt 3
How do I define a Workflow Core workflow using YAML instead of C# code, and load it dynamically at runtime in a .NET application?
Prompt 4
Using Workflow Core, build a workflow that processes a list of items in parallel and waits for all of them to complete before moving to the next step.

Frequently asked questions

wtf is workflow-core?

Workflow Core is a .NET library for defining and running long-running multi-step processes in C#, with state saved to a database so work is not lost if the app restarts, plus automatic rollback on failure.

What language is workflow-core written in?

Mainly C#. The stack also includes C#, .NET, SQL Server.

What license does workflow-core use?

License not explicitly stated in the explanation.

How hard is workflow-core to set up?

Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.

Who is workflow-core for?

Mainly developer.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.