Proof of Concept – Workflow Builder Feature #833
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR introduces the Workflow Builder for API Dash as a Proof of Concept, including both the visual design and the initial version of the execution engine.
Previously, in PR #817, I submitted the Collection Runner and Performance Load Testing features. As mentioned in the comments on that PR, I was working on the workflow builder canvas — this update delivers that feature with basic execution capabilities.
What’s Included in This PR:
Visual Workflow Canvas: A drag-and-drop interface that allows users to design multi-step API workflows by placing and connecting nodes.
Node Types Supported:
Start – defines the beginning of a workflow
Request – makes an API call
Condition – adds branching logic
Transform – performs simple data manipulation
Connection Management: Users can connect nodes based on flow outcomes (success, error, condition).
Bidirectional Sync: All changes to the visual interface sync with the underlying workflow model and vice versa.
Execution Engine (Initial Version):
Allows step-by-step execution of workflows
Provides visual feedback as each node executes
Supports execution state tracking and basic error handling
Architecture: Built with a clean separation between UI and execution logic, making the system extensible and maintainable.
The visual component uses the flutter_flow_chart package for rendering, while the custom engine handles the execution flow logic.
Future Enhancement/Plans:
Add display block in canvas (text,chart etc)
Support for nested workflows and reusable subflows
Enable grouping of related nodes for better visual clarity
Add dynamic data flow and node-level configuration
Related Issues:
Checklist:
✅ Followed the contributing guide
✅ Synced with the latest main branch
✅ Using the latest Flutter stable version
✅ All tests passing (flutter test)
Tests Added or Updated?
✅ No
Tested On:
macOS