You don't have to use Visio or Lucid chart to make diagrams, flowcharts or graphs. You can use freely available tools to declare your graph or diagram and version it alongside your documentation or project.
Comparison site: https://text-to-diagram.com D2 Icon Library: https://icons.terrastruct.com/
D2 is a graphing language that uses a single statically linked binary (d2) to turn a declarative plain text specification into graph images.
Graphviz is a language that allows you to specify a graph in text file and convert it into images of many formats.
In our examples, we use the dot tool included in Graphviz package but there are a variety of binaries that can transform the Graphviz language to different graph layouts.
Merman is a Rust written CLI tool and library for generating simple text markup into diagrams, compatible with mermaid.js diagrams.
Mermaid JS is a graphing library that exposes an API or CLI for turning a simple diagram in text to a variety of output formats.
The Diagrams library is mostly for making infrastructure and tech related diagrams in python code, it outputs a variety of image formats including the dot format used by Graphviz.