Canvas: Make Canvas "Cards" Searchable for Queries (like Tasks)

Use case or problem

I have started using Obsidian for task management and time blocking. I have a grid with the rows as the days of the week and columns for hour blocks, each of which are the height and width of the standard note when ported into Canvas. I can then organize my day/week (and eventually I’m hoping for month) with notes made up of “Blocks” of time dedicated to Fitness, Work, Programming, Coding, etc… This works great because I can drag in a generic block if I don’t know what I want to work on, but I know I want to work on something related “X” or I can drop in a specific note if I need to work on a particular project that already has a note created.
I then have weekly/daily to-dos off to the side and then one off tasks down at the bottom, all in the form of cards. This works great because I can then quickly create tasks and then drag arrows from the tasks to the blocks when I’m going to get it done. It looks something like this:

This brings me to the problem: Since my tasks are in the form of Cards - They aren’t searchable within Obsidian and therefore can’t be part of queries. I currently use Obsidian Tasks queries to collect groups of tasks, but now none of that happens because my tasks are mostly cards within canvas. This is an example of tasks that would get pulled in from all over my vault, these are any task that was completed on a specific day.

Proposed solution

Cards should be treated as blocks or another method where they can be searched throughout the vault. Alternatively, allow tasks to be backlinked in the same way that Files, headers and blocks currently are. This would at least assist with a current workaround that I’m using (find more on it below.)
Right now the canvas is kind of a black hole of information. Everything is very organized inside of it, but it’s impossible to use the data from it externally. Cards especially don’t really seem to exist to the rest of the vault. Giving the rest of the vault some way to index or reference cards within a canvas, re-enters them into the files that can be manipulated by plug ins. I think there is great use for this even beyond my use case.

Current workaround (optional)

I have a few:
Create the To-Do list in a seperate note and then back link to them from the cards

  • This has a few drawbacks because 1) it just looks bad and 2) you would need to know exactly where in your notes the task is and 3) it creates a lot of redundancy.

The other option is to make the tasks in each block, because those blocks are most often files, and those would be picked up by queries. I don’t like the aesthetic of this set up or the work flow. The tasks then have to be erased or they begin to pile up and crowd the note.

Related feature requests (optional)

7 Likes

Canvas cards could be made accessible by putting the content into “shadow notes”, in a defined place, e.g. the .obsidian folder, instead of writing the content in the .canvas file. In this case plugins like dataview or tasks would only have to scan .md files in a secondary location.

As a downside, .canvas files would not be standalone anymore. They would simply be files defining the layout without actual content.

I believe Canvas potential will be limited if every searchable block has to be its own note. In my opinion one of its strengths is the ability to break information into very small chunks (tasks, keywords, phrases, …) without ending up in needlessly many files. All of which need a title that is displayed in big letters.

I also opened a feature request at the Tasks Github page to start a conversation about whether .canvas files should be parsed by plugins or whether card content should be outsourced to “shadow notes”.
See: Parse .canvas files · Issue #2100 · obsidian-tasks-group/obsidian-tasks · GitHub