I would like to use a tool where I first describe the relations in text/code and the layouting and formatting is done separately, and formatting should be hierarchical.
I would like to use a tool where I first describe the relations in text/code and the layouting and formatting is done separately, and formatting should be hierarchical.
I don’t consider that a reasonable criticism. Of course using pen and paper is quicker and easier. The advantage of any digital format is that it is distributable, universally readable and persistent.
I have a "smart pen" that saves anything I write as a PDF on my phone that can be searched and stored where I choose (including cloud services).
The downside is that you have to write on special paper or in special notebooks. But it's not as terrible as it sounds because the notebooks are very reasonably priced.
It also works as an actual pen.
PDF's are a terminal format though, and doesn't really meet the need of a persistent, editable, graphic format for diagrams.
Did you actually try this tool? it makes mass aligning/resizing extremely easy. For instance, to change dimensions of multiple elements you just select them and then type desired width/height. It is also has pretty standard arrange and distribute controls.
This was the only tool I could find that would work with version control.
You can download and use yed for free - I think their business model is that you pay for integration with other tools. It's not open source though.
In particular, yEd is what I would call critical for quickly generating easily readable dependency diagrams with more than, say, 50 elements. The heirarchical layout supports octilinear edge routing (like subway diagrams), which makes resulting layouts readable even with hundreds or thousands of elements. Also, I have printed out large yEd dependency diagrams on a plotter -- so if you can "print to PDF" (like on a Mac or a recent Windows version), generating a PDF should be simple.
I just counted the number of options available on the "hierarchical" layout. This isn't a competition, but it does give you an idea of how thoroughly their developers built it: there are 51 configurable options. And in addition to "heirarchical", there are 19 other automatic layout types available, each with their own options.
Additionally, yEd's native file format is graphml, which is an open standard and can be generated programmatically.
I use it all off-line, in vscode with various plugins, though mermaid was made for web.
The site is only for sequence diagrams “swim lanes” but at that task I’ve found nothing better. I love describing the relationships textually and then selecting the best style for the job.
Many tools fail at basic style annotation so I can abstract the style. Even that would be an improvement for drawing diagrams.
draw.io is a much nicer than let's say, Visual Paradigm
I have only used Visual Paradigm in university though.