SuperAPI AI Directory

markmind-exporter

Office & productivity

View repository

Updated 10-15 09:52

About this skill

MarkMind Exporter

Render a mindmap JSON outline into Obsidian MarkMind Rich format. This skill takes a pre-built mindmap JSON structure (produced by generate-mindmap or any other source) and converts it into a .md file the user can drop directly into their Obsidian vault and open with the MarkMind plugin.

Input

A JSON file with the standard mindmap outline format:

{
  "root": "🎯 Central Theme",
  "branches": [
    {
      "text": "🔴 Branch One",
      "color": "#ff6b6b",
      "children": [
        {
          "text": "⚙️ Sub-concept A",
          "children": [
            { "text": "Detail 1" },
            { "text": "Detail 2" }
          ]
        }
      ]
    }
  ]
}

Workflow

Step 0: Check for input

If no mindmap JSON is available (no file path, no prior generate-mindmap output, no inline JSON in the conversation), invoke the learning:generate-mindmap skill first to brainstorm and produce the JSON outline from the user's topic or content. Then continue with Step 1.

Step 1: Locate the mindmap JSON

Find the mindmap outline JSON -- either a file path provided by the user, output from a prior generate-mindmap invocation, or inline JSON.

Step 2: Run the renderer

Pipe the JSON outline to scripts/generate_markmind.py:

cat <<'EOF' | python scripts/generate_markmind.py --output /path/to/output.md --max-depth 4
{...mindmap JSON...}
EOF

Or from a file:

python scripts/generate_markmind.py --input outline.json --output /path/to/output.md --max-depth 4

The script automatically:

  • Generates unique node IDs
  • Splits branches left/right of root
  • Calculates x/y coordinates with proper spacing (recursive, supports any depth)
  • Truncates nodes beyond --max-depth (default: 4)
  • Creates 8 empty free nodes
  • Wraps everything in valid MarkMind Rich format

Step 3: Deliver

Present the generated .md file to the user. Mention it's ready to drop into Obsidian.

Reference

Read references/markmind-rich-spec.md for the full MarkMind Rich JSON schema if needed.

Checklist Before Delivery

  • All pid references point to existing id values
  • Root has isRoot: true, main: true, layout object
  • No pid on root node
  • Each L2 branch has a unique stroke color
  • All descendants inherit their L2 ancestor's stroke
  • Coordinates don't overlap (V_SPACING respected)
  • JSON is valid (no trailing commas, balanced brackets)
  • 8 empty free nodes present
  • No node exceeds the configured max depth