Design, execute, and export workflows visually -- a drag-and-drop pipeline builder for .NET.
git clone https://github.com/mcandiri/FlowForge.git
cd FlowForge
dotnet run --project src/FlowForge.WebOpen http://localhost:5000 in your browser.
Drag nodes onto the canvas, wire them together, hit Run, and watch the execution trace light up in real time.
- Visual Designer -- Drag-and-drop canvas with snap-to-grid, auto-layout, and live connection drawing.
- 10+ Node Types -- HTTP requests, conditions, loops, delays, code blocks, email, database queries, and more.
- Real-Time Execution -- Execute workflows directly in the browser and watch each node highlight as it runs.
- C# Code Export -- Generate clean, copy-pasteable C# code from any workflow.
- JSON Import / Export -- Save, share, and version-control your workflows as JSON files.
- Demo Templates -- Five ready-made templates to explore patterns like data pipelines, notifications, loops, error handling, and approval flows.
| Icon | Node | Category | Description |
|---|---|---|---|
| 🔔 | Webhook Trigger | Trigger | Entry point -- starts a workflow from an HTTP webhook |
| 🌐 | HTTP Request | Action | GET / POST / PUT / DELETE with mock-mode support |
| 📝 | Logger | Action | Log messages with variable interpolation |
| 📧 | Email Sender | Action | Send email notifications (demo mode logs instead) |
| 💻 | Code Block | Action | Execute arbitrary C# expressions at runtime |
| 📦 | Set Variable | Action | Store a value in the workflow context |
| 🗄️ | Database Query | Action | Run SQL queries (mock result sets in demo mode) |
| 🔀 | Condition | Control | If / else branching on expressions |
| ⏰ | Delay | Control | Pause execution for N milliseconds |
| 🔁 | Loop | Control | Iterate over a collection variable |
| 🔄 | Retry | Control | Retry a failed step up to N times |
| 🔃 | Transform | Data | Map and reshape data with variable templates |
FlowForge.sln
src/
FlowForge.Core/ Core engine, nodes, models, export, templates
Engine/ WorkflowEngine, ExecutionContext, NodeExecutor
Models/ Workflow, FlowNode, FlowEdge, NodeConfig, NodePort
Nodes/ IFlowNode interface + all built-in node implementations
Actions/ HttpRequest, Logger, EmailSender, CodeBlock, SetVariable, DatabaseQuery
Control/ Condition, Delay, Loop, Retry
Data/ Transform
Triggers/ WebhookTrigger
Export/ JsonExporter, CSharpCodeGenerator
Templates/ ITemplateProvider, BuiltInTemplateProvider
Extensions/ ServiceCollectionExtensions (DI registration)
FlowForge.Web/ Blazor Server front-end
tests/
FlowForge.Core.Tests/ xUnit + FluentAssertions + Moq
FlowForge.Web.Tests/
How it works:
- The Visual Designer (Blazor) lets you place
FlowNodeobjects on a canvas and connect them viaFlowEdgeobjects. - Pressing Run sends the
Workflowgraph to theWorkflowEngine. - The engine walks the graph topologically, starting from nodes with no incoming edges.
- Each node is resolved via
NodeRegistryand executed throughIFlowNode.ExecuteAsync. - Condition nodes route to
trueorfalseports; loop nodes iterate and re-visit body nodes. - Execution traces stream back to the UI via
IProgress<ExecutionTrace>for real-time feedback.
"We needed an internal tool to let non-developers build data pipelines and approval workflows without writing code every time. FlowForge started as that tool -- and grew into something we think others can use too."
| FlowForge | Enterprise BPM | No-Code Platforms | |
|---|---|---|---|
| Target | .NET developers & small teams | Large enterprises | Non-technical users |
| Deployment | Self-hosted, single binary | Cloud / on-prem clusters | SaaS only |
| Customisation | Add C# nodes in minutes | XML/BPMN config files | Limited plugins |
| Cost | Free & open source | $$$$ per seat | $$$ per month |
| Overhead | Zero external dependencies | Message brokers, databases | Vendor lock-in |
- Visual drag-and-drop designer
- 10+ built-in node types
- Real-time execution with trace overlay
- JSON import / export
- C# code generation
- Demo templates
- Persistent workflow storage (SQLite / PostgreSQL)
- Authentication & role-based access
- Webhook listener for live triggers
- Custom node plugin system
- Workflow versioning & diff
- Parallel branch execution visualisation
- Debugging mode with breakpoints
- Real database & email integration
dotnet testMIT -- Copyright (c) 2026 Mehmet Can Diri