Back to Skills

canvas

Create spatial diagrams with free-positioned nodes using JSON format. Best for concept maps, knowledge graphs, and planning boards requiring precise x/y coordinate control.

2,884stars171forksUpdated 6/2/2026

Security Assessment

Safe(100/100)
Security Score100/100

About canvas

The Canvas skill allows users to create spatial diagrams using a structured JSON format, enabling precise control over the position and dimensions of nodes. It solves the problem of visually organizing complex information such as concept maps, knowledge graphs, and planning boards where manual placement or automatic layouts may not provide sufficient accuracy. By defining nodes and their connections programmatically, users can maintain consistency, clarity, and flexibility in diagram layouts, ensuring that even dense or detailed diagrams remain understandable and well-organized.

This skill supports a variety of node types including text, file references, external URLs, and group containers, allowing for rich and versatile diagram construction. Nodes can be positioned freely using x/y coordinates on a 100px grid, and edges can be customized to connect nodes from specific sides with arrow or line endings. Color presets provide quick visual differentiation, while sizing guidelines help maintain readability for multi-line text or long content. The JSON structure ensures compatibility with tools like Obsidian Canvas and supports exporting or integrating diagrams across multiple platforms.

Canvas is ideal for knowledge workers, educators, developers, and project managers who need to visually map ideas, tasks, or data relationships. Use cases include creating interactive learning materials, designing workflow diagrams, planning projects, and mapping information architectures. Its precision and JSON-based approach make it particularly useful for users who prefer structured, reproducible, and highly customizable diagrams rather than relying on drag-and-drop interfaces.

FAQ

How do I define a node in Canvas?

A node is defined in JSON with required fields: id, type, x, y, width, and height. Additional fields depend on the node type, such as text for text nodes or url for link nodes.

Can I connect nodes with arrows or lines?

Yes, edges are defined with fromNode and toNode references, specifying sides for connection and optionally using arrow endings to indicate direction.

What platforms are compatible with Canvas JSON diagrams?

Canvas JSON diagrams are compatible with Obsidian Canvas and any platform that supports the JSON Canvas specification, allowing for cross-platform usage.

Are there color options for nodes?

Yes, there are six predefined color presets (red, orange, yellow, green, cyan, purple) that can be applied to nodes using numeric values 1-6.

What are common errors to avoid when using Canvas?

Common issues include overlapping nodes (use larger spacing), mismatched node IDs in edges, invalid JSON formatting, and using invalid characters in node IDs.

All Files

2 files
references/syntax.md7.4 KB
View
SKILL.md2.5 KB
View

Install canvas

Download and extract the skill files to your .claude/skills/ directory.

Quick Setup:

  1. Copy the skill folder to .claude/skills/
  2. Claude will automatically detect and use the skill