graphviz

digraph architecture {
node [color=green] [shape=box]; "A"
node [color=blue] [shape=oval]; "B", "C"
"A" -> "B";
"B" -> "C";
"C" -> "A";
"C" -> "Z";
"Z" -> "A";
}

/posts/testdot.png

You can use a bunch of different shapes.

References

  • https://graphs.grevian.org/
  • https://www.graphviz.org/doc/info/attrs.html