FlowEngine is a new front-end no-code, low-code development engine introduced in NocoBase 2.0. It combines models (Model) with flows (Flow) to simplify front-end logic and enhance reusability and maintainability. At the same time, by leveraging the configurable nature of Flow, it provides no-code configuration and orchestration capabilities for front-end components and business logic.
Because in FlowEngine, the properties and logic of components are no longer statically defined, but are driven and managed by a Flow.
Therefore, FlowEngine = A front-end logic engine driven by flows.
In FlowEngine, a Model is an abstract model of a component, responsible for:
In other words, the Model is the logical brain of the component, turning it from a static element into a configurable and orchestratable dynamic unit.
In FlowEngine, a Flow is a logical flow that serves the Model. Its purpose is to:
You can think of a Flow as a stream of water:
A Step is like a node along the stream's path Each Step performs a small task (e.g., setting a property, triggering an event, calling an API), just as water has an effect when it passes through a gate or a waterwheel.
The flow is ordered Water flows along a predetermined path from upstream to downstream, passing through all Steps in sequence; similarly, the logic in a Flow is executed in the defined order.
The flow can be branched and combined A stream of water can be split into multiple smaller streams or merged together; a Flow can also be broken down into multiple sub-flows or combined into more complex logical chains.
The flow is configurable and controllable The direction and volume of a water stream can be adjusted with a sluice gate; the execution method and parameters of a Flow can also be controlled through configuration (stepParams).
Analogy Summary
So in FlowEngine: