Hey @ryanjamurphy, thanks for the response. But no, the local graph does not do what we want at all!
The local graph only shows direct connections in a new subgraph. What we want is to learn our position in the context of the wider graph and discover new connections (not via direct links, but in the local background). In the following image, see the difference between the upper (local) and lower (global) graph. The global graph had a more persistent shape, and shows more information on how the node fits into the whole. (Note: the lower (global) graph is roughly the state I would expect to be automatically zoomed to.)
The global graph is currently hamstrung. Right now it’s a bit of a separate feature, rather than integrated with the core workflow of reading and writing. As the graph grows, nodes quickly become too small for labels, and as you’re not familiar with any parts of the local landscape, the graph doesn’t mean much to you unless you have been proactively studying/labeling it. It’s like if the minimap in a game showed you a huge landscape rather than your part of the map.
The easy solution is the graph should follow you around. Specifically:
- (already done) highlight the current node
- zoom to the local area (so you can see what’s around in the landscape)
- (bonus) highlight the local-graph connections
Like I said, this may sound like a throw-away feature, but it’s hard to put into words how transformative this was to my workflow with org-roam-ui (see a video of how it works here: org-roam-ui: follow your movements in emacs). I kept it open all the time for navigation (mostly replacing the file browser and TOC) and it also potentially removes the need to have two separate graphs, as the global graph can follow the local area.It feels really natural-- like you’re moving through the network, and it really does help familiarise the evolving landscape into you head, and think in terms of its layout and structure. This doesn’t really happen with the local graph because it changes too much and hides too much. May I also add that as well as being useful, this looks super cool and dynamic.
Let me know if there’s any way I can support this becoming a reality.