Hacker News new | ask | show | jobs
by hugolundin 2417 days ago
Is there any viable alternatives to PlantUML out there?

I want there to exist a simple format that I can put under version control that gives me neat looking diagrams – without requiring me to run a Java based server component.

Monodraw [0] and such are nice, but the diagrams are neither nice nor easy to change without having access to the editor.

[0] https://monodraw.helftone.com/

7 comments

I have embraced the blockdiag series of programs, which include seqdiag, actdiag, and nwdiag. There is a bit of a learning curve, but once you learn to customize things well it works very well. There are limitations but I got so fed up with Vizio a few years back I was determined to focus on the kiss principle.

http://blockdiag.com/en/

awesome! just bookmarked. i am going to try to translate some existing diagrams using that tool because the images look nice.

btw, the repo isn't showing any picture only the documentation does. that could be improved!

The diagrams on https://www.dns.cam.ac.uk/servers/reshuffle-2018.html are static images that are pre-rendered as part of the overall site build process. No need for java on the server :-)
Graphviz is pretty great for creating diagrams, though if you have specific style needs it can require a good deal of boilerplate.
PlantUML actually uses graphviz for some of the diagram types. You can also embed graphviz code verbatim in plantUML diagrams.
As far as I remember, GitLab supports rendering PlantUML diagrams.

On GitHub, you can use a trick to render the diagrams using the public PlantUML server, which works only is your diagrams can be public.

I have a script that renders the diagrams on a project which I run occasionally and it has worked ok for me.

I’ve gotten good results from MetaUML: https://github.com/ogheorghies/MetaUML. It is TeX-oriented, though.
it's amazing that after all these years diagramming on the computer still hasn't got solved. it's like todo lists and calendars. every now and then, there is something new.
It's a command line tool that renders to raster or vector formats, you don't need to run a server.