json-canvas

Create and edit JSON Canvas (.canvas) documents with valid nodes and edges.

Updated Apr 21, 2026
One-click install
npx skills add https://github.com/Shallow-W/llm-wiki --skill json-canvas-shallow-w
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: json-canvas
Source: https://github.com/Shallow-W/llm-wiki/tree/main/.claude/skills/json-canvas
Command: npx skills add https://github.com/Shallow-W/llm-wiki --skill json-canvas-shallow-w

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

It solves the problem of manually creating and maintaining structured visual diagrams by letting you generate and edit JSON Canvas (.canvas) files with correct node/edge wiring and valid IDs.

Core Features & Use Cases

  • Create structured canvases: Generate the required top-level nodes and edges arrays to match JSON Canvas Spec 1.0.
  • Add and edit nodes: Place text, file, link, or group nodes with positions, dimensions, optional colors, and content.
  • Connect diagrams reliably: Create edges that reference valid fromNode/toNode IDs with optional sides, arrow ends, and labels.
  • Use Cases: Mind maps, flowcharts, project boards, research canvases, and any Obsidian workflow involving .canvas files.

Quick Start

Create a new file named diagram.canvas using the base structure {"nodes": [], "edges": []} and ask the skill to add nodes and connect them into a flowchart with validated IDs.

Frequently Asked Questions about json-canvas

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

FAQPage Schema
How do I create a valid JSON Canvas file for an Obsidian canvas?

To create a valid JSON Canvas file, start with a base structure containing empty nodes and edges arrays, then add text, file, link, or group nodes with positions and dimensions to build your Obsidian canvas diagram.

How do I connect nodes in a .canvas flowchart without breaking the JSON Canvas spec?

You connect nodes in a .canvas flowchart by creating edges that reference valid 16-character hex IDs in their fromNode and toNode fields, ensuring the diagram conforms to the JSON Canvas spec.

What types of nodes can I use when building a mind map with JSON Canvas?

When building a mind map with JSON Canvas, you can use text, file, link, and group node types, assigning each node specific positions, dimensions, optional colors, and content.

Can I use JSON Canvas to generate project boards and research canvases?

Yes, you can use JSON Canvas to generate project boards and research canvases by structuring diagram nodes and edges into valid arrays that conform to the JSON Canvas 1.0 specification.

Why does my .canvas file fail to render correctly in Obsidian?

A .canvas file fails to render in Obsidian when the JSON output is unparseable, or when nodes and edges lack valid types, consistent 16-character hex IDs, or correct fromNode and toNode references.

Do I need any external dependencies to edit JSON Canvas diagrams?

No external dependencies are required to edit JSON Canvas diagrams; you only need to generate parseable JSON output that correctly positions nodes and connects edges according to the JSON Canvas spec.