More automated layout options for canvas

Use case or problem

Sometimes we create too many items and start to clutter, and I find myself spending much time just trying to tidy it up. Aligns help a lot, but they can’t really deal with complex sorts.

It would be nice if we have the following:

  1. An automatic sort function for all the cards in a current canvas
  2. Saved persistent layouts for a canvas

Proposed solution


TL;DR: sort with a few built-in strategies would be helpful, such as centering a card, maximize tree-likeness.

For me the essential part is we can sort the cards and put them in a format that is as clean as possible. I do recognize the complexities in implementing this, but I see this as an absolute win: obsidian has the opportunity to do something that no other apps could have done. Let me elaborate more.

You make this canvas, and then you can do whatever you like to it to view your messy thoughts or contents in different perspectives. Alternative layouts of the same cards might give you very different inspirations: for example, can we view the entire canvas with card A being the center, instead of B?

Two types of sorting strategies that immediately came into my head are these:

  1. Centering a few cards: This is useful for recontextualizing my works. I work in a very messy academic field, and constant recontextulization is a crucial part of my job. This would be very useful.

  2. Maximize tree-likeness. This would be useful when one wants to get the maximally top down (or bottom up) view of the contents they have, while highlighting the outstanding cards that prevents a pure tree from occurring. These outstanding cards often means something → They usually are keys to great discoveries, whether scientific or personal.

  3. Extensibility
    The official plugin won’t need to include many different strategies. Once people start to realize this is a very handy tool, people can start implementing their own strategies to fit their ways of brainstorming.

Storing the layout

We might want to revisit the old messy view. It could also be useful to timestamp this so one sees the change in their perspective. Not essential though.


There will be an api for canvas
What you are asking is quite tricky, especially the tree structure.


Whether implemented as a plugin or a core feature, I think an automated sorting mechanism would be incredibly helpful. Even something as simple as a force-based sort like in the Graph view would be great to see connections and reduce clutter. +1
An toggle to preserve link positions (top, bottom, left, or right) or not could be interesting to.