Flow and block programming UI #50
thorwhalen
started this conversation in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Important links
Awesome node base UIs
Simple prelim plan
Make a (meshed) DAG with a fixed set of prepared function nodes/blocks
Able to export a DAG into a parsable form (e.g. json
Able to import a DAG from a previously exported format
Enable node annotation
Free form (Schema-free) nested mapping
This ability will allow us to do many other things, and may need something we'll need to do at some point anyway.
All we need for this is a separate (SoC) nested mapping editor.
Schema nested mapping
Enhance the nested mapping editor with validation and constraint capabilities (to be able to do the following.
Then, use this capability to make it easy for the user to create nodes of a given type.
First targets are meshed's fundamental objects:
FuncNode
: fields (all str unless otherwise specified): name, label (defaults to name), bind (str-str mapping), outAble to use friendlier domain-specific formats (e.g. graphviz, mermaid...)
Note: Will have to enhance these with extra info that is missing in these formats (for example, using comments within a mini-language we'll invent)
Enable smooth two-way communication
The pinnacle of this would be such "online code editors" or "in-browser code playgrounds" as mermaid (or for web dev, JSfiddle, CodePen, etc.).
This is because sometimes it makes sense to do things directly in the view, and sometimes in a simple domain specific language.
Running the graph, seeing effects on the view itself
Features
For now, we'll constrain ourselves to only function and variable (value) nodes, but should keep in mind that we might extend this to incorporate a wider range of types.
Note: We should be able to add a callback for every action taken on visual object, so we can enable these actions to trigger events such as:
To be continued...
Beta Was this translation helpful? Give feedback.
All reactions