

Let me point out PlantText, a well designed online tool to generate images based on the PlantUML Language Reference.īut back to Swift and the use case to generate a class diagram from existing Swift source code.

There is a vibrant ecosystem around PlantUML. Then I discovered PlantUML which is an open-source tool to create various types of UML diagrams from a plain text language. It all started when I discovered and how easy it is to create sequence diagrams by combining text notation scripting and drawing by clicking and dragging in the same model.

Textual modeling tools help me to more efficiently create and work with software diagrams. Visio or StarUML, are very flexible but I often find myself struggling to quickly draw the components relationship or other layout aspects. UML as a general-purpose, modeling language is easy to understand and represents a standard way to visualize the design of a system. I work on various software projects written in Swift and I frequently find myself in a situation where I have to create diagrams based on the premise of existing source code, either for documentation purposes or to explain the system design concept.
