Flow DSL
AST
从FBP到BPM
- http://en.wikipedia.org/wiki/Flow-based_programming
// Kind
// IO
// input
// output
// Node
// name
// Edge
// source
// target
json
{
nodes: [
],
edges: [
]
}
```rust
enum Kind {
}
struct Node {
id: i64,
name: String,
kind: Kind,
}
```
Nodes
- https://nodes.io/docs/getting-started/#what-nodes-is
- Incoming trigger - connection from parent node
- Outgoing trigger - connection to child nodes
- Incoming parameter - with type color resulting in a colour picker widget in the inspector
- Importing a package from npm (has to be added to the project first)
- Trigger callback - this is usually called every frame
- Reading properties provided by the parent node
- Reading input parameter value
- Main node code - drawing a rectangle with a given colour
- Passing data further down to the child nodes
Butterfly
- https://github.com/alibaba/butterfly
- https://butterfly-dag.gitee.io/butterfly-dag/demo/flow
iMove
- https://www.yuque.com/imove/blog
- https://github.com/ykfe/imove
logic-flow
flowchart-fun
https://github.com/tone-row/flowchart-fun
https://js.cytoscape.org/
Wireflow
https://github.com/vanila-io/wireflow
https://github.com/ritz078/transform