|
| 1 | +# Canvas MindMap |
| 2 | + |
| 3 | +Turn Obsidian Canvas into a powerful mind mapping tool with keyboard-driven node operations, auto-layout, branch coloring, and collapse/expand. |
| 4 | + |
| 5 | +## Features |
| 6 | + |
| 7 | +- **Keyboard-driven editing** — Add child/sibling nodes, delete nodes, and navigate the tree entirely from the keyboard |
| 8 | +- **Auto-layout** — Automatically arranges nodes in a clean tree layout after every operation |
| 9 | +- **Branch coloring** — Assigns distinct colors to each top-level branch for visual clarity |
| 10 | +- **Collapse/expand** — Collapse subtrees to focus on specific branches, expand them when needed |
| 11 | +- **Balanced layout** — Distribute children on both sides of a root node for a centered mind map |
| 12 | +- **Flip branches** — Move a branch to the opposite side of its parent |
| 13 | +- **Spatial navigation** — Navigate between nodes using directional commands (right, left, up, down) |
| 14 | +- **Auto-resize** — Nodes automatically resize to fit their content as you type |
| 15 | +- **Resize to fit** — Batch-resize selected subtree or all nodes to fit their content |
| 16 | +- **FreeMind import** — Import `.mm` files from FreeMind into Obsidian Canvas |
| 17 | +- **Table of contents** — A sidebar view showing the tree structure for quick navigation |
| 18 | +- **Non-Latin keyboard support** — Physical key fallback for Arabic, Cyrillic, and other keyboard layouts |
| 19 | + |
| 20 | +## Commands |
| 21 | + |
| 22 | +All commands are available from the command palette (`Ctrl/Cmd+P`). You can assign your own hotkeys in Settings > Hotkeys. |
| 23 | + |
| 24 | +| Command | Description | |
| 25 | +|---------|-------------| |
| 26 | +| Edit selected node | Start editing the selected node | |
| 27 | +| Add child node | Create a new child node (selected text moves to child) | |
| 28 | +| Add sibling node | Create a sibling node below the current one | |
| 29 | +| Delete node and focus parent | Remove the current node and select its parent | |
| 30 | +| Flip branch to other side | Move a branch to the opposite side of its parent | |
| 31 | +| Toggle balanced layout | Distribute children evenly on both sides, or collapse to one side | |
| 32 | +| Navigate right/left/up/down | Move selection spatially through the tree | |
| 33 | +| Resize & re-layout selected subtree | Resize nodes in the subtree to fit content and re-layout | |
| 34 | +| Resize all nodes to fit content | Resize every node in the canvas to fit its content | |
| 35 | +| Apply branch colors | Manually trigger branch color assignment | |
| 36 | +| Toggle mindmap mode | Enable or disable mindmap mode for the current canvas | |
| 37 | +| Toggle table of contents | Open or close the TOC sidebar | |
| 38 | +| Import FreeMind file | Import a `.mm` mind map file into the current canvas | |
| 39 | + |
| 40 | +## Settings |
| 41 | + |
| 42 | +| Setting | Description | Default | |
| 43 | +|---------|-------------|---------| |
| 44 | +| Default mindmap mode | Whether canvases open in mindmap mode by default | On | |
| 45 | +| Auto-layout | Automatically arrange nodes after adding/deleting | On | |
| 46 | +| Auto-color branches | Assign distinct colors to top-level branches | On | |
| 47 | +| Horizontal gap | Space between parent and child nodes (px) | 80 | |
| 48 | +| Vertical gap | Space between sibling nodes (px) | 20 | |
| 49 | +| Default node width | Width of newly created nodes (px) | 300 | |
| 50 | +| Default node height | Height of newly created nodes (px) | 60 | |
| 51 | +| Max node height | Maximum height before a node scrolls (px) | 300 | |
| 52 | +| Navigation zoom padding | Extra space around the target node when zooming after navigation (px) | 200 | |
| 53 | + |
| 54 | +## Installation |
| 55 | + |
| 56 | +### From community plugins (coming soon) |
| 57 | + |
| 58 | +1. Open Settings > Community plugins |
| 59 | +2. Search for "Canvas MindMap" |
| 60 | +3. Click Install, then Enable |
| 61 | + |
| 62 | +### Manual installation |
| 63 | + |
| 64 | +1. Download `main.js`, `manifest.json`, and `styles.css` from the [latest release](https://github.com/mobench/canvas-mindmap/releases/latest) |
| 65 | +2. Create a folder `canvas-mindmap` in your vault's `.obsidian/plugins/` directory |
| 66 | +3. Copy the downloaded files into that folder |
| 67 | +4. Enable the plugin in Settings > Community plugins |
| 68 | + |
| 69 | +## Disclosures |
| 70 | + |
| 71 | +- This plugin does **not** make any network requests |
| 72 | +- This plugin does **not** collect telemetry or analytics |
| 73 | +- This plugin does **not** access files outside your vault |
| 74 | +- This plugin has **no** paid features or premium tiers |
| 75 | +- This plugin is desktop only (Canvas is a desktop feature) |
0 commit comments