Hacker News new | ask | show | jobs
by grafwiz 2261 days ago
This is beautiful that's it but this is nothing considered to graphviz. If Graphviz had a decent, just non-ugly renderer it would be much more popular.

Eg. Mind maps aren't trees- they are bigraphs, this is limited to trees.

Someone needs to plug in this renderer with Graphviz.

1 comments

> Mind maps aren't trees- they are bigraphs

Yes! So many of the mind-mapping software is limited to just trees, plus there's no way of styling some paths differently, the interface is far from ergonomic, in short: I couldn't find an interactive tool for drawing complex relationships between many kinds of content (I want to be able to put an image in one place, then paste a bit of some documentation in another, then connect them in some way, then repeat this 100 times and then have the tool "auto-layout" all the content.)

Here's the thing I'm currently trying to create: https://github.com/piotrklibert/awesome-config - I need it in SVG so that the links are working, plus it would be nice to be able to show/hide portions of the graph. I'm currently using Gliffy, but it's getting slower and buggier with every box added.

Any advice on what to use for things like these?

Not sure what gliffy is but Graphviz can conceptually draw the same thing. You can have box shapes and colors for nodes and edges both. However, the rendering layout itself is usually unpleasant. You can have some control but it's really suboptimal. As I said, Graphviz is both simple and very powerful so no reason to not use it to represent data in concept. Plus it goes in your VCS.
Gliffy[1][2] is a web app for drawing diagrams and schematics of various kinds. You get a large library of shapes - most of UML, classic flowchart, some UI mockups, swimlanes, now also the root of a mindmap - and a few tools for connecting these shapes to each other; the connections are real connections, not lines, ie. they follow after the shape if you move it, and they know when they intersect and can render a "hop" where needed. You get a lot of freedom in styling the diagrams (change color, thickness, a curvature of lines and color, background, font, font size, etc. for boxes and text), and the UI is not that bad. It, however, seems to have some performance issues, because after a certain size the experience degrades and you need to reload the page every now and then.

I know and like pure-text diagramming solutions, but they don't work that well for diagrams designed to span multiple displays in width or height. Or put another way - my editor, as glorious as it is, is not designed for rapid zoom-in/zoom-out on various parts of an 80000x80000 rows/cols text file. I want to be able to work in an interactive environment, where I can rapidly switch between the overall outline view and the focused, detailed view of just a few nodes. Moreover, I need to able to embed (and preview if possible) different kinds of content, from syntax-highlighted text to images to videos, plus it should render natively in a browser (hence the SVG).

My use case for this is putting together a knowledge-base (think Wikipedia, just for my personal data), which would use direction, color, line thickness and kind (dotted, dashed, etc.) to bind related subjects and show the relations between them in 2 dimensions. Feature-wise Gliffy is close to what I have in mind, but it doesn't handle a scale big enough to be called a "knowledge-base" - "infographic" is the most it can produce.

[1] https://www.gliffy.com/

[2] https://raw.githubusercontent.com/piotrklibert/awesome-confi... (made with Gliffy)

Some of what you want is offered by Miro.com. It’s not driven by text files though.
Related tangent: Roam^1 is a graph-based webapp that supports hierarchies, bidirectional linking, and an interactive graph view. Dunno about the step to get it into svg, but you may find it useful for any number of things. HTH

1. https://roamresearch.com

Interesting, thanks!
My pleasure! (Wish I could account for the unexpected downvoting on my comment which was relevant, intended to be helpful, and - at least to you - was confirmed to be so.)