Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I've been using PlantUML and Mermaid for my own diagrams.

Mermaid is quite basic; it lacks functionalities that for me were necessary; for example, direct connection between attributes of different classes.

All in all, PlantUML seems superior to Mermaid, at no cost (both languages are relatively simple to learn).

Mermaid is supported by Github, which may be a necessary requirement for some. On the other hand, among the many functionalities, PlantUML's JSON is unusually good looking out of the box, and if one required the diagram it outputs, it's a great feature, because it requires no syntax knowledge.

Both PlantUML and Mermaid mostly produce (Mermaid more) ugly-looking diagrams (dated, to say the least). In PlantUML, this problem is compounded by the explicit lack of layout, by design.

Other warts: both (PlantUML and Mermaid) languages have limited comment support - they are only supported in specific locations of the diagram declarations.

D2 could be a very welcome "next gen" diagramming language. However, the devil is in the details - text-to-diagram.com show a very basic functionality, so one must carefully check the requirements.

Regarding text-to-diagram.com:

- there's a mistake - PlantUML does support rich text (although "rich" is a fuzzy definition)

- class diagrams are an important use case, which is currently missing

EDIT: clarification about the comment limitations.



Have you taken a look at Ilograph [0]? It's also a "next gen" diagrams-as-code alternative that goes in a different direction: interactive, model-based, and multi-perspective. It also has in an IDE for autocomplete.

[0] https://app.ilograph.com/demo.ilograph.Ilograph


Ilograph is what all these diagram-as-code tools should aspire to. It's ability to contextualize is unlike anything I've seen.


wow, I'm just walking through the demo linked by Veuxdo and that's exactly what I was thinking: each step in the walkthrough drills context down deeper or widens context in a very clear way.

I've tried to do similar things in graphviz but pulling out individual subgraphs or subsets of nodes + edges isn't easy and I always end up with multiple files for each view that I want to show and they get out of sync.


This looks great, but I'm not terribly jazzed about having my diagrams permanently hosted on a third-party site. I know it's hard to make self-hosted interactive diagrams like this, but I'd like my documentation to last longer than this site.


Yeah, self-hosting is a bit of a nightmare. There is a Desktop version that allows you to export diagrams to HTML, which you then can be host or share.


Very interesting tool! Could you render Ilograph yaml files to HTML in a CI job?


Thanks! Yes, you can using the export API (paid): https://www.ilograph.com/export-api/

The Desktop version can also export diagrams when called via CLI, though that is less suitable for CI/CD.


Oh, that's actually an excellent solution, thanks!


feel free to submit a PR to make comparisons against tools on text-to-diagram.com, happy to include you Billy!


Is Ilograph open source?


Only a small part of it: the standard diagramming libraries (or, presently, library): https://github.com/billy-pilger/ilograph-standard-libraries


It looks amazing for exploring arbitrary graphs. Do you have plans to open any part of the diagramming engine?


It's not!


This looks amazing, thank you


As they say, the best diagram language is the one your tool supports; and by that metric Mermaid and graphviz seem to be winning (depending on which ecosystem you are in, Mermaid seems to have the edge in the Markdown world, graphviz everywhere else).

D2 looks like a nice upgrade, but to be as useful as e.g. Mermaid a bunch of plugins will need to be written.


yup agreed. we prioritized IDE plugins, and have a native plugin system, recognizing the importance of ecosystem. e.g. a proof of concept plugin to make diagrams look hand-drawn: https://github.com/terrastruct/d2/pull/91


Any chance of getting an Obsidian plugin?



do you have an example of the rich text for PlantUML? happy to correct

i've added a TODO for the class diagrams, will be included this week. https://github.com/terrastruct/text-to-diagram-site/issues/2...

AFAIK they all have comments (see the "Chess" example). what is the limitation of comments you're referring to?


This is a styling example in PlantUML:

    class TestClass {
      ""Monospaced""
      <color:green>Colored
    }
See here: https://plantuml.com/creole.

Regarding the comments, here's a PlantUML example:

    class TestClass {
      ""Monospaced"" ' comment not supported; displayed
      <color:green>Colored
    }

    class TestClass2 {
      ' comment supported
      Type varname ' comment not supported; displayed
    }
    ' comment supported
    foo::bar --> baz ' comment not supported; breaks diagram (!)




Consider applying for YC's Fall 2026 batch! Applications are open till July 27.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: