# Open Canvas Working Group https://canvasprotocol.org Started this on 2024-03-14 with [[Orion Reed]]. ![[Pasted image 20250118085626.png]] [Launch Tweet](https://x.com/OrionReedOne/status/1768292314802201087) The goal of the Open Canvas Working Group (OCWG) is to facilitate interoperability between different [infinite canvas tools](https://infinitecanvas.tools/). Obsidian took a first step by publishing [JSON Canvas](https://jsoncanvas.org/), an open format that other infinite canvas tools can implement in order to interoperate with Obsidian. JSON Canvas is an excellent starting point and clearly communicates the value of interoperability between tools. The OCWG is iterating on a standard to drive interoperability between a wide variety of infinite canvas tools. **Possible outcomes:** - Work from first principles to discover a lowest-common denominator format. - Develop actual implementations featuring two-way synchronization between different tools. - Develop a test bench for the standard to demonstrate capabilities of infinite canvas tools. (Similar to the [CSS Acid Tests](https://www.acidtests.org/)) ## Meeting Notes ### 2024-04-30 **OCWG Meeting** Miro: Accessibility - make structure - file-based interop - new interfaces that would use the interface - real-time interop - How do you make diagramming accessible? - Can they make sense of what's in the board via the inherent structure. Obsidian: Breadcrumbs - codeflowcanvas.io - Maikel how to handle functionality that's not present in other apps: - views with fallbacks - files with file types - accessibility tree - DOM - human-readable file format - what's the starting point for an accessibility tree? - What if you have nodes that don't have connections / trees. - In the case, it's a very flat tree - The root node is the board! - if it's just objects, it's completely flat - containers make it go deeper - Miro - everything - Just use SVG - Or a Layout for content projection - per-object text view for fallback support