Text-to-diagram tools are great, but often make the user struggle with the automatic layout (e.g. Graphviz).
Mocodo adopts a mixed approach to the layout problem : diagram-as-text, but the line breaks and the order of the nodes (entities and relationships) are used as positional hints. The resulting layout is constrained to an invisible grid corresponding to a left-to-right and top-to-down reading of the source.
Moreover, since there are relatively few possible grid positions, automatically rearranging the layout becomes an assignment problem, which can be solved by a simple b&b algorithm.
Obviously, this wouldn't scale, but this is just a teaching tool that I use to present small ERDs to my students.
You may test it at https://mocodo.net. Click the turning arrows to draw the diagram and the shuffle symbol to rearrange it randomly.
Text-to-diagram tools are great, but often make the user struggle with the automatic layout (e.g. Graphviz).
Mocodo adopts a mixed approach to the layout problem : diagram-as-text, but the line breaks and the order of the nodes (entities and relationships) are used as positional hints. The resulting layout is constrained to an invisible grid corresponding to a left-to-right and top-to-down reading of the source.
Moreover, since there are relatively few possible grid positions, automatically rearranging the layout becomes an assignment problem, which can be solved by a simple b&b algorithm.
Obviously, this wouldn't scale, but this is just a teaching tool that I use to present small ERDs to my students.
You may test it at https://mocodo.net. Click the turning arrows to draw the diagram and the shuffle symbol to rearrange it randomly.