json-canvas

Create, edit, and validate JSON Canvas files with nodes and edges.

118|26|Updated Apr 11, 2026
One-click install
npx skills add https://github.com/songzhuozhu/obsidian-llm-wiki --skill json-canvas-songzhuozhu
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: json-canvas
Source: https://github.com/songzhuozhu/obsidian-llm-wiki/tree/main/.codex-en/skills/json-canvas
Command: npx skills add https://github.com/songzhuozhu/obsidian-llm-wiki --skill json-canvas-songzhuozhu

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Designing and editing visual canvases inside Obsidian can be tedious when starting from scratch. JSON Canvas offers a structured, portable format to model diagrams with nodes and edges, enabling quick creation, editing, and sharing of ideas.

Core Features & Use Cases

  • Create new canvases with a base structure {"nodes": [], "edges": []} and populate with typed nodes (text, file, link, group).
  • Connect nodes with edges, including directional anchors and optional labels, to model relationships.
  • Edit existing canvases, validate JSON, ensure unique IDs, and maintain consistent references across the canvas and related assets.
  • Use cases include mind maps, flowcharts, project roadmaps, and diagrams embedded in Obsidian notes.

Quick Start

Create a new .canvas with the base structure and start adding nodes and edges.

Frequently Asked Questions about json-canvas

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create an Obsidian canvas file with nodes and edges using JSON?

To create an Obsidian canvas file, you structure a .canvas JSON file with a base of {"nodes": [], "edges": []}, then populate it with typed nodes like text, file, link, or group, and connect them using directional edges. This enforces the JSON Canvas structure and ensures unique IDs for visual planning.

What is the JSON Canvas format used for in Obsidian?

The JSON Canvas format is a structured, portable file format used to model visual diagrams with nodes and edges inside Obsidian. It enables quick creation, editing, and sharing of ideas for use cases like mind maps, flowcharts, project boards, and project roadmaps embedded in notes.

Can I validate node and edge references in a .canvas file?

Yes, you can validate node and edge references in a .canvas file. The process enforces the JSON Canvas structure, ensures unique IDs, validates node and edge references, and maintains consistent references across the canvas and related assets to prevent broken diagrams.

How do I add directional anchors and labels to canvas edges?

You add directional anchors and optional labels to canvas edges by defining connection properties between nodes in the JSON structure. This models relationships accurately within your visual diagrams, allowing you to create complex flowcharts and mind maps inside Obsidian.

Does this approach work for building project roadmaps and mind maps in Obsidian?

Yes, this approach works for building project roadmaps and mind maps in Obsidian. You can apply this structured JSON format to design workflows by adding typed nodes and connecting them with edges, enabling visual planning and documentation directly inside your notes.

What are the limitations of editing JSON Canvas files directly?

When editing JSON Canvas files directly, you must manually enforce the JSON structure and ensure unique IDs for all elements. Limitations include the risk of breaking node and edge references if the JSON is not validated properly, requiring careful editing to maintain consistent canvas assets.