Use relationship types to improve exploration and navigation in the graph view

Supernotes has a unique advantage over other atomic note taking tools—its “child card” concept creates four explicit/implicit relationship types between cards:

  1. Child: explicit via “create child card”
  2. Parent: implicit via the two-way parent-child relationship
  3. Sibling: implicit when cards share the same parent
  4. Friend: explicit via “add link”, and implicit via backlinks

Both the List and Broadsheet views use this relationship metadata to render a consistently structured “page”; where the parent card is always at the top, the children/sibling cards are underneath, and the friends are visible as links (and backlinks) in the cards.

I’d argue that the spatial consistency of these two views increases their usability for reading, exploration, and navigation.

Graph view lacks this spatial consistency, and doesn’t currently make much use of the valuable relationship metadata. I’d argue that makes Graph view much less usable for exploration and navigation.

ExcaliBrain (a plugin for Obsidian) takes an interesting approach to rendering a graph with spatial consistency; by using relationship metadata to place the different relationship types in different locations. This particular approach makes a lot of sense to me (and feels similar to the benefits we already get from spatial consistency in the List and Broadsheet views).

@Tobias Do you agree with the assertion about the usability benefits of spatial consistency? If so, what do you think about the idea to create an augmented version of Graph view, which uses relationship metadata to create spatial consistency?

1 Like

Hi @JamesT,

Thanks for the in-depth feature request. This idea is very interesting, and I can definitely see it being very helpful to visualise the relationships between your cards and even the associated metadata such as tags, dates etc. I would be inclined to make this a different view, and combine it with the ‘tabletop’ view idea, where cards are laid out in a free form view but you can quickly organise and group them together depending on your preference.

We have plans for Graph View improvements, including text and other metadata labels. Looking forward to sharing this with you soon!

1 Like

Hi @tobias,

Your Tabletop view idea sounds intriguing! Is the plan to render graph-like links between the cards on that view?

That sounds like a good next step. Although I still think it might be worth exploring the idea of utilising one of Supernote’s key differentiators (tree-based relationships) to augment the Graph view. My feeling is still strong that a spatially consistent Graph view would be a powerful tool for exploration and navigation. Though perhaps I’m misunderstanding the “why” of Graph view, and the use cases you think it will enable?

Hi @JamesT,

Yes adding links between cards in the tabletop view is definitely something we’ve been thinking about –homogenising ExcaliBrain concepts with something like Blender’s node preview. Seeing a complete card, w/ relationships and metadata in a freeform view would be very powerful. One of the challenges with this view is scaling. It may work great with 10, 20 or 30 cards but what happens with 100s / 1000s of cards – performance and well as keeping everything spatially consistent will be a challenge. That’s where Graph view comes in.

Graph view is designed to be an exploratory overview of your entire knowledge base, which helps you to identify which areas of your knowledge are less populated than others, discover unlinked ‘thoughts’ cards, apply filters to help you visualise areas of your knowledge base which can be improved and more. Once you hone into a parent node, you can use colors to distinguish between nodes and this help you actively learn them. This is just the start of Graph view and we have many more upcoming improvements which will help you utilise this more:

  • Controlling your view depth – seeing more than one level deep in parent nodes
  • Always on Card Titles – more easily identify which nodes are which
  • Metadata nodes – see which metadata, like a tag, is shared between cards
  • Friends – see how your friend’s notes are interwoven with yours → e.g. a friend of yours might have shared lots of recipes cards etc.

Thanks again for sharing all of this with us James, these discussions help us make Supernotes even better :raised_hands:t3:

Hi @tobias,

That sounds amazing! :slight_smile:

I agree. One of my good friends is the founder and CTO of Scrintal, which is a note-taking app that has a “tabletop view” as its primary mode of interaction. Giving the user control over the x & y coordinates of each note unleashes a playful experimentation experience, where a note’s location (especially in relation to its connected notes) becomes a big part of how you understand the information you’re working with.

You’re right. Scrintal has tried various approaches to solve this problem, and their current approach is to encourage the user to only pull in a limited subset of notes to work with on the “tabletop”.

That makes perfect sense for Supernote’s home page Graph view, but I’d argue less so for a noteboard’s Graph view.

When viewing a noteboard’s Graph view, I think I’d prefer to use it as a tool for exploring and navigating connected ideas. That’s because a graph has the advantage of being able to show siblings from different parents and friends, which would be difficult to achieve in either the Tree or List/Broadsheet views.

Perhaps spatial consistency isn’t the only answer for how to improve graph-bade exploration/navigation, perhaps (like you implied) distinctive shapes or colours could be used instead? It feels like an interesting UX challenge! :slight_smile:

These features are exciting, and I’m confident they’ll make both the home and noteboard Graph views more useful for navigation, exploration, and understanding. I can’t wait! :slight_smile:

1 Like