Discover more from Tech World With Milan Newsletter
We’re seeing more and more tools that enable you to create software architecture and other diagrams as code. The main benefit of using this concept is that the majority of the diagrams as code tools can be scripted and integrated into a built pipeline for generating automatic documentation.
The other benefit responsible for the growing use of diagrams as code to create software architecture is that it enables text-based tooling, which most software developers already use.
What are some existing tools for creating such diagrams?
Create multiple diagrams from a single (C4) model. It allows the creating of numerous diagrams from a single model using different tools and programming languages.
For C4 models, you can also use tools such as C4Sharp, a .net library for building diagrams as code.
It is an open-source tool that allows users to create diagrams from a plain text language. With PlantUML, you can make different kinds of UML and non-UML diagrams, too (Sequence, Class, Component, JSON data, Network, Gantt, etc.).
Turn Python code into cloud system architecture diagrams. A new or current system design can also be explained or represented visually. The primary significant providers that Diagrams presently supports include AWS, Azure, GCP, Kubernetes, Alibaba Cloud, Oracle Cloud, etc.
4. Mermaid
Mermaid is a JavaScript-based diagramming and charting tool that uses Markdown-inspired text definitions and a renderer to create and modify complex diagrams. The primary purpose of Mermaid is to help documentation catch up with development.
ASCII Flow is a simple and easy-to-use online flowchart software that uses ASCII characters to create flowcharts. It allows users to create flowcharts by simply typing the diagram using ASCII characters and then converting it into a visual flowchart. It can create flowcharts, diagrams, and other types of visual diagrams.
Markmap is a tool that allows you to create and edit mind maps. Markmap uses a technology called Markdown, which is a lightweight markup language, to create and edit mind maps.
It is a similar tool to Diagrams but with Go as a diagramming language.
Sequencediagram.org is a tool that provides a simple online tool for creating and sharing UML sequence diagrams.
Along with these diagrams as code tools, there are other software architecture tools, such as:
Modeling tools:
Diagramming tools:
Check the complete list of tools here: https://softwarearchitecture.tools/.
One more tool - C4InterFlow - the most comprehensive, open-source Architecture as Code framework - https://github.com/SlavaVedernikov/C4InterFlow