I was a bit disappointed however to find out the project uses Graphviz/DOT under the hood.
What would be the reason not to try a newer rendering engine such as as the Eclipse Layout Kernel (ELK)?
I was a bit disappointed however to find out the project uses Graphviz/DOT under the hood.
What would be the reason not to try a newer rendering engine such as as the Eclipse Layout Kernel (ELK)?
1. How do you even call a Java library from Go?
2. Graphviz generates diagrams, whereas according to the ELK page:
> Note that ELK itself doesn't render the drawing but only computes positions (and possibly dimensions) for the diagram elements.
It also wasn’t really clear to me from glancing at the page, what this does better than graphviz.
In case you were looking for a similar text-based integration of a layout engine with your tool there is a textual DSL for ELK called ELKT:
http://rtsys.informatik.uni-kiel.de/elklive/
One could certainly feed that into a binary running the kernel similarly to how a DOT file is fed into graphviz.
https://github.com/eclipse/sprotty
This integrates with XText, ELK and the VS Code LSP and allows you to generate diagrams for your own DSL!
It's crashy for moderate sized graphs. And doesn't have quite enough layout and styling features. It's good enough but I'm on the lookout for something better.
Pikchr: Documentation https://pikchr.org/home/doc/trunk/homepage.md
Pikchr – PIC-like markup language for diagrams in technical documentation | Hacker News https://news.ycombinator.com/item?id=24601971
I don't know if you're referring to Go or GraphViz as the extra dependency (or both). It looks like Pikchr doesn't have any external dependencies, it's just a C library.