Hey everyone, I’m showcasing a tool I built for sharing your canvas files: sharecanvas.io. It allows you to generate a link and share your canvas with anyone — for example: Share Obsidian Canvas. It’s been really useful for sharing my canvas pages with colleagues.
You can use the tool by going to sharecanvas.io and uploading the original canvas file and any images referenced in the canvas. If you specify your original Obsidian Publish site, any links in the canvas will redirect to that site. You have full ability to delete all your data if you wish, and editing is also supported. Here’s a demo of the process: Sharecanvas.io Demo - YouTube.
The tool is built with React Flow to render the canvas from the open source format, and stores your data securely in Firebase. I’m working on open-sourcing the project and adding more features — e.g. search bar, integrating as a plugin, etc. — let me know if you’d be interested!
Thanks for posting this. I have been looking for something kind of in this realm, while hoping that obsidian will enable canvases to be published through their own system. While this is not exactly that, I gave it a try, but can’t seem to get the link to work and connect to my published site. I also tried to include a canvas with a note, which did not populate. I am sure this is an early project, just wanted to let you know how it worked for me. Best of luck with things! I will keep this link for a couple of days perhaps: https://www.sharecanvas.io/p/test-
Thanks for trying it out! I should have clarified, the link to your Obisidian Publish site should be the home page. If you make links within the canvas, it will then look up the page in your Obisidian Publish site via the sitemap.xml file.
I adapted your page to this setup - it should be working now!
I appreciate the response. I replied to you on another forum page, but essentially have still been bumping into the same issue for some reason when trying to link multiple pages. I also realize the tool is not necessarily secure for linking more publicly without allowing others to jump in and edit. If you could share where that sitemap file lives (very new to this kind of stuff and cannot seem to find it), I might be able to help myself fix it. Thanks again for your work!
A workaround to publish to a custom domain is to link the page on the other domain to the sharecanvas page, or to use an iframe. To get it working natively on sharecanvas would require significant dev effort though. Is your custom domain an Obsidian Publish site or another site?
Do you mean the sitemap file for an Obsidian Publish site? It is at /sitemap.xml. I am not sure what you mean “trying to link multiple pages”, could you expand?
Sorry, very new to both obsidian and the programming lingo. I want to use obsidian canvas as a navigation hub for my Obsidian publish site. Visitors to the page could click various links on the canvas, leading to other pages on the site, and could ideally navigate back to the canvas. For some reason I was having difficulty with multiple links in one canvas. I would also want to make sure that I was the only person who could access and alter the canvas, and right now unless I am mistaken, anyone who navigates to the .io could /edit to change the files? Again, very interested in finding some way to make this work, and I appreciate your thoughts.
My publish site is using a custom domain and is password protected, when I upload a canvas the layout/cards are there but none of the content renders.
What would prevent the content from rendering in the cards on the canvas?
I’ve tried using both my obsidian publish id and the custom domain in the published site link but doesn’t change the behavior in my experience. Any ideas or suggestions would be appreciated!
(I clicked on the demo link, but nothing is displayed?)
I’m not a coder, so I don’t know how realistic my proposal is in terms of time and implementation.
But I’d really like to be able to share with clients or learners, canvas boards to which they could add elements, for example:
A Business model canvas
A moodboard
Design thinking
…
I’d need to be able to send to another user a unique link, in which they could add their own input.
This is my “2 cents”. I have the feeling that canvas is a good opportunity to get obsidian and those who use it out of " isolation". Because that’s what’s missing with obsidian, being able to work with others.
Currently the way the code is written, it is tightly integrated with the backend storage (Firebase). If you let me know more about how you are planning to self-host, that would help me identify how to make the backend interoperable.
If your publish site is password protected, this tool won’t be able to access those pages. As a workaround, the tool could ask you to upload those .md files during the .canvas upload. Would that work?