Canvas view for Folders and Vaults

Use case or problem

The canvas feature is a fantastic feature. And provides great clarity when working with multiple files and various notes. However, I think there is an missed opportunity not to have a “canvas view” much like the graph view.

Proposed solution

It would give you an unpresented level of overview of your notes, if you could open a folder/vault and see all folders as preconfigured groups.

Where the Research title of the group in the example below is a folder name, Test Note is a file in that folder, as well as the screenshot png image. Obviously the standalone note would not be applicable in this case.

This could easily be cluttered if you have several nestled folders. My proposed solution would be to have configurable setting on how deeply into a nestled tree you would be able to view things. With a default of a depth of 1 layer. With a new added button for the contextual group menu named “Open canvas view” to then traverse down one level, and view that folder in the same canvas context.

7 Likes

Did this ever go anywhere?

sadly no ):

1 Like

I like the idea, but in my case it would be more relevant to be able to automatically create a canvas based on specific properties (not only tags) (+ links between all files that fall under the specified properties, with the ability to specify depth, as in the case of local graph.) rather than vaults and folders.

Among the features I would like to have:

  • Ability to choose how elements will be arranged on the canvas - vertically, horizontally, or otherwise
  • Ability to customize the size of nodes, including whether they will be scaled to fit their contents (double-click on the bottom border of the node), or not.
  • Ability to customize the distance between nodes, both vertically and horizontally.
  • Ability to select the type of nodes - “card” with links to the notes themselves or “note from vault”
  • Ability to select a color for nodes with notes with specific properties
  • Ability to select the color of arrows for links in certain properties and for links in the notes themselves
  • Which files will be ignored when creating this canvas (specific files and files with specific properties)
  • Whether it is necessary to attach media to this canvas or not. (if attached, then in the form of regular links ([[ ]]) or preview links (![[ ]]) (it would also be useful to enable/disable the display of all attachments on the canvas, perhaps it would help to get rid of unnecessary lags, as well as increase the readability of the content by focusing on the text content, without images in the field of view when they are not needed, but this is also a separate feature request).
  • A small dynamic preview of what the created canvas will look like with the given settings, so that you don’t have to create several thousand nodes again if you are not satisfied with, for example, the horizontal distance between the nodes.

  • Whether properties will be represented as individual groups or not.
  • The ability to specify a hierarchy of groups based on properties - to be able to put some groups (properties) into other groups, rather than just creating separate groups based on each property.
    For example, if I have properties “file type” and “tags”, I need to specify that “file type” is primary, and that all other groups created based on other properties should be placed in it as a group. “tags” is secondary, and is placed in “file type”. And not each of the properties is presented as a separate isolated group without nesting one into the other.
    Like this:

    … not like this:
  • In this case, if any of the properties has 2 values at once, it is necessary to give the possibility to choose how to proceed in this case: to create a separate group for “property-00 + property-02”, or just put simultaneously in the groups “property-00” and “property-02”, and link them with an arrow to each other. In the second case, it is also necessary to choose the color of the arrow for such links.

And for me it’s more important to be able to create a canvas based on these properties (folders/vaults) rather than just a canvas view, because then I will probably need to interact with them in some way, not just view them.
On the other hand, a canvas view, unlike a regular canvas, is automatically updated, which is also quite useful. But I still have doubts about the readability of such a “view” (see paragraph below). Perhaps an implementation of this feature request might be needed as well: Canvas: Visually isolating hovered card and its connected cards with other cards
On the other hand, this disadvantage can be remedied by:

  • Ability to add to the canvas content that matches the specified criteria (properties), but is not present on the canvas. That is, if I create a canvas based on a particular property today, and during the week the number of notes from that property grows, I need to be able to add those new notes to the canvas, without completely generating it from scratch. This is also necessary because it seems to me that “polishing” the way the canvas looks is going to happen anyway, and instead of generating the entire canvas from scratch and “polishing” all of its content, I only need to add new content, and “polish” only that new content.

And in terms of just viewing them, I don’t think it will be very usable, because it will look like a lot of unreadable visual chaos, especially if there are a lot of nodes, I wrote about this problem in this feature request: Canvas elements respect other elements in their arrangement / Alternative logic for arranging elements on the canvas, - also need to improve how the elements that are placed on the canvas automatically - mainly arrows - are placed on it.

However, this would also require optimizing the canvas itself, because right now it lags pretty badly even on manually created canvases, where there are usually not that many nodes compared to what can be created automatically.
Canvas optimization is needed anyway, and outside the context of this feature request, but this is, again, a another feature request.
https://www.reddit.com/r/ObsidianMD/comments/zsjl4m/obsidian_canvas_zoom_and_panning_responsiveness/

If you consider how many things you need to implement and take into account to make this function really usable, then the hope for its implementation somehow immediately disappears… =) =(


This plugin idea looks a bit related: Create Canvas containing Search Results

1 Like

Moderators, perhaps it makes sense to rename this topic to something like: “Automatic creation/generation of canvas based on different sources: vaults, folders, properties, search results”?

Although, probably, this refers more to my comment than to the original theme of the topic.

1 Like

In other words, this approach will basically simplify connection between thinking process and visual respresentation of it.
However, because there are so many interactions possible based on the features you listed, the usability should be intuitive (In other words, matching between expectations or being able to learn it quickly).
If I sum up all thoughts together, having intuitive UI and functional features looks like a big project similar to introducing Windows after MS DOS era. :slight_smile:
The only idea of how such project can be implemented as only the set of individual plugins. Or create plugin that will interact with Excalidraw / Canvas files so that there is no need to recreate Canvas itself.

How can I contact you? Maybe together we can make it somehow happen.