[Proposition] Canvas for Joplin?

Hi everyone,
I've been thinking of something lately :

Wouldn't it be neat to have canvas/whiteboards in Joplin, in a similar fashion to those of Obsidian/Logseq ?
See Obsidian canvas and Logseq whiteboards.

They would be :

  • A third type of entity, on the same level as notes and todos and with the same properties (can be placed into notebooks, given tags, etc).
  • Editable ; you can place and link notes, perhaps even attach files.
  • An infinite space, allowing for huge and small projects alike.

Why ?

The way I see it, notebooks and tags come into play when it feels wrong to put too much content in the same note. They help order, split, and link multiple notes together, but they don't really help visualize the whole thing.
Hence, I believe an option to approach notes visually (i.e. canvas) would be a great addition to Joplin.

However, I am aware that this does raise some questions, as it challenges the simple approach to note taking that Joplin has committed to (which is one of the main reasons I use it, besides being open-source) ; and moreover, it cannot be stored in or represented as plain markdown.

But

  • It is a pretty straightforward concept ; most people are already accustomed to using a virtual desktop on their computer.
  • Just like notebooks and tags, if your goal is to take simple markdown notes and synchronize them across devices, canvas can be ignored completely.

Now here's something I wasn't able to come up with a clear answer to :

Would it be better integrated as a feature or as an extension ?

  • On one hand, making it a full-blown Joplin feature means seamless integration (drag and drop of notes and attachments, mobile support, fast loading/transitions, etc), consistent look, and more importantly, continued support as Joplin evolves.
  • On the flip side, an extension doesn't impact the approach/philosophy already established for the project, simplifies things in the decision-making process (mostly which file format to use for the canvas), and doesn't increase the workload of Joplin's maintainers.

That's it ! Perhaps I'm overthinking it ; but in any case, I'd be happy to hear y'all's thoughts on the matter !

P.S. : Many thanks to Laurent and all the contributors, Joplin is an amazing tool ! :‌)

13 Likes

Yeah, it would be really cool to have that! Always liked that I can just sketch something quickly with a pen when using OneNote or physical notebooks.

But as I understand, these are separate kinds of notes, right? Like there's text/markdown notes and whiteboards/canvases, and they are completely different things?

3 Likes

If Joplin could support either third-party file types or allow the replacement of the text editor, it would be easier to create such a kind of plugin.

Yes, as it is implemented in Obsidian and Logseq, it's not a note in and of itself.
You can place notes on it though, as well as attachments and shapes. You can then link these objects together, and even draw directly on the canvas.

So the idea would be to have something like this available in Joplin, even in a more primitive form. The part I'd be interested in, is being able to place down notes and draw/place arrows/lines to connect them together.

You can try it out over there : Logseq Demo, just click on « Whiteboard » in the menu on the left.

1 Like

I also recently tried LogSeq and there were many things I really liked. Most of that is also achievable with Joplin with some additional work. However, the canvas is definitely something I'm missing in Joplin. I love taking notes by hand and I wish I could directly write into Joplin and use that to connect different notes.

There were also things that I didn't like with LogSeq, mostly regarding the editing but also that they do not have an open backend to self-host the way I can do that with Joplin-Server. So I'm not migrating away. But I wish we had some Canvas! :nerd_face:

4 Likes

It's a good idea. I like canvas!

1 Like

Canvas for Joplin 3.0? :smiley:

1 Like

Leaving a reply to show my support for this idea! Would love to have this implemented.

1 Like

Could this be achieved by storing the canvas as some kind of file attachment in a note (along the lines of how we store .pdf file or .jpg files in notes), with an extension that could recognize such notes/attachments and allow manipulating them?

Perhaps by using a special tag to find/enable such notes?

When browsing the Anytype forum, i stumbled upon this post which I found quite interesting and which I have copied (and slightly modified) below:


Obsidian had recently released their canvasing functionality as an Open Source file format (.canvas ) that can be adopted by anyone. It would be really nice have the ability to utilize this functionality & format inside of Joplin (or at the very, very least… be able to preview it):

HOW COULD IT BE DONE

Here are the release notes note on JSON Canvas 4. It has other additional resources / links included.

It could be built out to include Drawing / Whiteboard features as well, which would be really helpful.

REAL WORLD USE CASES

The video above should provide a great example of how it could be used. It is similar to:

  • Scrintal 3
  • Mind Map tools
  • Features that Affine 3 has

RECOMMENDED ALTERNATIVES

None at this time. It is a great jumpstart to providing this kind of functionality in Joplin, instead of having to build out Canvas functions from scratch.

3 Likes

I wonder if that file format could work with the existing Plugin: js-draw integration at all.