[Feature Request]: Network graph of all the elements #3351

Closed
opened 2026-02-05 06:26:25 +03:00 by OVERLORD · 3 comments
Owner

Originally created by @flifloo on GitHub (Nov 18, 2022).

Describe the feature you'd like

Show a network graph of all the elements and link between them using graph theory.
This could be a dedicated section and quick access from the right side panel to get a centered preview on the current element.

As an easy way to implement it, the Cytoscape.js library could help.

I'm currently developing an example on my local machine with a fork of the dev branch.
And I don't want to go too far without sharing the idea and have some feedback.

This idea comes to me when I saw the way Obsidian show your notes.

Describe the benefits this would bring to existing BookStack users

This way of displaying information could help people navigating quickly around all the BookStack entries.
It's (in my point of view) a nicer way to have a big picture of all the information stored.

While adding content, navigation can become more fastidious, you have to resort to using the almighty search bar.
A clear graph of all the information could make the information less difficult to find, like planing a campaign in D&D and having a lot of different information linked together.

Can the goal of this request already be achieved via other means?

I don't think this could be achieved via other means.

Have you searched for an existing open/closed issue?

  • I have searched for existing issues and none cover my fundemental request

How long have you been using BookStack?

6 months to 1 year

Additional context

As an example, I make something quick on diagrams.net :

Diagram drawio

And a popup when you hover (click on mobile) a node could give more information and a way to god directly to it :

Up close diagram drawio

Originally created by @flifloo on GitHub (Nov 18, 2022). ### Describe the feature you'd like Show a network graph of all the elements and link between them using graph theory. This could be a dedicated section and quick access from the right side panel to get a centered preview on the current element. As an easy way to implement it, the [Cytoscape.js](https://js.cytoscape.org) library could help. I'm currently developing an example on my local machine with a fork of the dev branch. And I don't want to go too far without sharing the idea and have some feedback. This idea comes to me when I saw the way [Obsidian](https://obsidian.md) show your notes. ### Describe the benefits this would bring to existing BookStack users This way of displaying information could help people navigating quickly around all the BookStack entries. It's (in my point of view) a nicer way to have a big picture of all the information stored. While adding content, navigation can become more fastidious, you have to resort to using the almighty search bar. A clear graph of all the information could make the information less difficult to find, like planing a campaign in D&D and having a lot of different information linked together. ### Can the goal of this request already be achieved via other means? I don't think this could be achieved via other means. ### Have you searched for an existing open/closed issue? - [X] I have searched for existing issues and none cover my fundemental request ### How long have you been using BookStack? 6 months to 1 year ### Additional context As an example, I make something quick on [diagrams.net](https://www.diagrams.net) : ![Diagram drawio](https://user-images.githubusercontent.com/12417808/202556860-2c876238-e80b-425f-9989-4453d959a331.png) And a popup when you hover (click on mobile) a node could give more information and a way to god directly to it : ![Up close diagram drawio](https://user-images.githubusercontent.com/12417808/202557715-3eee93fa-61eb-458a-9b71-17db47b900f2.png)
OVERLORD added the 🔨 Feature Request label 2026-02-05 06:26:25 +03:00
Author
Owner

@ssddanbrown commented on GitHub (Nov 18, 2022):

Thanks for the request @flifloo.

For me, this kind of feature has always felt like something that would be cool or interesting to see, but it's actual value & day-to-day usage has always been questionable to me. For any new features to add I try to ensure they're validated against actual need and benefits to keep long-term maintenance reasonable, and so I try to avoid feature inclusion reasoning based upon features in other platforms or general interest alone.

The provided benefits here centre around gaining a "big picture" and navigation/discovery with growing content.
I'd question if such a graph view would be beneficial in such cases. While the provided mock-ups look nice, they reflect an already simple setup. Would this view remain clear and easy to navigate when the book has many chapters with many pages, showing their actual often much longer names, with many more references between them? (Especially when you consider tags may also reflect relations). I have a feeling the readability and usefulness of a view will decrease on content/instance size, which is inverse to the intended relayed benefits.

Not to say it's not a good idea or not desired though, I have had a couple of queries about such a feature, but as above I have to assess benefit against long-term maintenance & support which may put a pessimistic tone on the above.

As an alternative approach, something like this should be possible to add via our theme systems, so such a feature could be added and used on an instance without being part of the core project, and without editing core files on an instance. Implementing via this could allow usage so that real use-case examples and feedback can be provided to better determine value. I'd be happy to provide any guidance on this if needed. If already hacking with the core code, then you could probably continue with that then extract out the components to the theme system at a later point.

@ssddanbrown commented on GitHub (Nov 18, 2022): Thanks for the request @flifloo. For me, this kind of feature has always felt like something that would be cool or interesting to see, but it's actual value & day-to-day usage has always been questionable to me. For any new features to add I try to ensure they're validated against actual need and benefits to keep long-term maintenance reasonable, and so I try to avoid feature inclusion reasoning based upon features in other platforms or general interest alone. The provided benefits here centre around gaining a "big picture" and navigation/discovery with growing content. I'd question if such a graph view would be beneficial in such cases. While the provided mock-ups look nice, they reflect an already simple setup. Would this view remain clear and easy to navigate when the book has many chapters with many pages, showing their actual often much longer names, with many more references between them? (Especially when you consider tags may also reflect relations). I have a feeling the readability and usefulness of a view will decrease on content/instance size, which is inverse to the intended relayed benefits. Not to say it's not a good idea or not desired though, I have had a couple of queries about such a feature, but as above I have to assess benefit against long-term maintenance & support which may put a pessimistic tone on the above. As an alternative approach, something like this should be possible to add [via our theme systems](https://www.bookstackapp.com/docs/admin/hacking-bookstack/#visual-theme-system), so such a feature could be added and used on an instance without being part of the core project, and without editing core files on an instance. Implementing via this could allow usage so that real use-case examples and feedback can be provided to better determine value. I'd be happy to provide any guidance on this if needed. If already hacking with the core code, then you could probably continue with that then extract out the components to the theme system at a later point.
Author
Owner

@flifloo commented on GitHub (Nov 18, 2022):

Thanks for the reply, I totally understand your point, this could be better to start with a theme first.
I hope this will interest some people and can be useful.

I didn't know the ability of the theme system, I will give it a shot.
This issue will be close for now since is no longer a feature request.
I might still post some update on the theme.

Again, thanks for your time and well explained feedback.

@flifloo commented on GitHub (Nov 18, 2022): Thanks for the reply, I totally understand your point, this could be better to start with a theme first. I hope this will interest some people and can be useful. I didn't know the ability of the theme system, I will give it a shot. This issue will be close for now since is no longer a feature request. I might still post some update on the theme. Again, thanks for your time and well explained feedback.
Author
Owner

@ssddanbrown commented on GitHub (Nov 19, 2022):

Thanks for your understanding, Again happy to provide any guidance if needed.
For sure feel free to post further updates or theme customizations here as I'm sure others would find it useful.

@ssddanbrown commented on GitHub (Nov 19, 2022): Thanks for your understanding, Again happy to provide any guidance if needed. For sure feel free to post further updates or theme customizations here as I'm sure others would find it useful.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/BookStack#3351