Open Canvas Working Group logo

Open Canvas Working Group

Subscribe
Archives
June 3, 2024

Next Meeting: Tues, June 4; Meeting № 3 and № 4 Recap

Next meeting and meeting recaps.

First off, the next meeting is scheduled for Tuesday, June 4th at 11:30am ET. Orion and I have a draft spec to share and discuss.

Orion and I have had a lot of travel lately, and we’ve gotten a bit behind on the Meeting Recaps. Below is the recap for meetings № 3 and № 4, which are now on [GitHub](https://github.com/orgs/ocwg/discussions).


Meeting №4 Recap - May 21, 2024

If you have any questions, comments, or corrections, please add them to the discussion post on GitHub.

Here's the recording of the meeting, if you'd like to watch.

Here's a transcript of the meeting, if you'd prefer to read.

Meeting 4 Summary:

The shared goal for the group is to design a least-common denominator extensible format that sits between visual and structural canvases, allowing them to interoperate.

We experimented with taking collaborative notes on a whiteboard during the meeting using TLDraw.

1. Current Progress: Demonstrations of interoperability between TLDraw and Obsidian have been made. Work is ongoing to sync TLDjraw with Excalidraw, focusing on creating a shared file format that multiple tools can use.

2. Interoperability Challenges: Discussion on defining a middle ground between purely structural and purely spatial canvas tools. The goal is to create a simple and extensible specification that can cater to various tools, balancing structural relationships and spatial layouts.

3. Fallback Mechanisms: Addressing the issue of how to handle unsupported features across different tools. The group discussed potential methods for dealing with missing features, such as rendering unknown schema elements as text to maintain interoperability.

4. External File Handling and Asset Management: Exploring how to manage external files and assets like images and documents within the canvas specification. The idea is to ensure that references and assets remain consistent and accessible across different tools.

5. Schema and Extensibility: Deliberation on how to make the schema extensible to accommodate various tool-specific features. The group is considering a model where each node has a type and schema that can be extended beyond the core specification.

6. Handling Shapes without XY Coordinates: Discussion on how to manage canvases that do not use explicit XY coordinates for shapes. Solutions include potentially imposing XY coordinates for compatibility or allowing tools to use their automated layout algorithms.

Action Items:

- TLDraw and Excalidraw Interoperability: Orion committed to having a working demo of TLDraw and Excalidraw interoperability before the next meeting.

- Draft Specification: Jess and Orion plan to work on an initial draft specification in Berlin, aiming for something that can be implemented and tested in the next few weeks.


Meeting №3 Recap - April 30, 2024

If you have any questions, comments, or corrections, please add them to the discussion post on GitHub.

Here's the recording of the meeting, if you'd like to watch.

Here's a transcript of the meeting, if you'd prefer to read.

Meeting 3 Summary: The shared goal for the group is to design a least-common denominator extensible format that sits between visual and structural canvases, allowing them to interoperate.

  1. "JSON Canvas 2.0": The primary focus is developing a new spec, which we casually refer to as JSON Canvas 2.0, inspired by Obsidian's format. The goal is to create a minimal, file-based format that can be extended to support a broad range of canvas types​​.

  2. Handling Diverse Feature Sets: Discussion on how to manage diverse features across different canvases. Ideas include defining fallback content types and MIME types for objects to ensure compatibility​​.

  3. Schema and Extensibility: The group discussed the need for items and relations to have schemas and how these schemas should be distributed. The idea of leveraging existing formats like SVG for shapes was considered​​.

Action Items

  1. Discuss and decide on specific changes and extensions for JSON Canvas 2.0​​.

  2. Work on a minimal interop between Excalidraw and TL Draw. Volunteers needed for similar interoperability efforts with other tools​​.

  3. Explore ways to define and handle fallback content for complex objects to ensure minimal data loss when transitioning between different canvas tools​​.

  4. Draft a minimal spec for JSON Canvas 2.0, including schema definitions for items and relations​​.

    Don't miss what's next. Subscribe to Open Canvas Working Group:
    GitHub https://canvasproto…