Sirendocs

Mindmap

Complete syntax reference for Siren mindmap diagrams.

Mindmaps show hierarchical ideas branching out from a central topic. Use them for brainstorming, knowledge organization, or feature breakdowns.

Minimal Example

{
  "type": "mindmap",
  "root": {
    "id": "root",
    "label": "Project",
    "children": [
      { "id": "fe", "label": "Frontend" },
      { "id": "be", "label": "Backend" },
      { "id": "infra", "label": "Infrastructure" }
    ]
  }
}

Full Example

{
  "type": "mindmap",
  "root": {
    "id": "startup",
    "label": "SaaS Startup",
    "children": [
      {
        "id": "product",
        "label": "Product",
        "children": [
          { "id": "editor", "label": "Rich Text Editor" },
          { "id": "collab", "label": "Real-time Collaboration" },
          { "id": "export", "label": "PDF / PNG Export" }
        ]
      },
      {
        "id": "eng",
        "label": "Engineering",
        "children": [
          { "id": "frontend", "label": "React + TypeScript" },
          { "id": "backend", "label": "Node.js API" },
          { "id": "db", "label": "PostgreSQL" }
        ]
      },
      {
        "id": "growth",
        "label": "Growth",
        "children": [
          { "id": "seo", "label": "SEO" },
          { "id": "content", "label": "Blog & Tutorials" },
          { "id": "community", "label": "Discord Community" }
        ]
      },
      {
        "id": "ops",
        "label": "Operations",
        "children": [
          { "id": "ci", "label": "CI/CD" },
          { "id": "monitor", "label": "Monitoring" },
          { "id": "oncall", "label": "On-call Rotation" }
        ]
      }
    ]
  }
}

Root

The root object is the central node of the mindmap.

FieldRequiredDescription
idYesUnique identifier
labelYesText displayed in the center node
childrenYesArray of child node objects

Nodes

Each node in the tree follows the same structure.

FieldRequiredDescription
idYesUnique identifier
labelYesDisplay text
childrenNoArray of child nodes (nest as deep as needed)
{
  "id": "auth",
  "label": "Authentication",
  "children": [
    { "id": "oauth", "label": "OAuth 2.0" },
    { "id": "mfa", "label": "MFA" }
  ]
}

More Examples

Technical Architecture Decision

{
  "type": "mindmap",
  "root": {
    "id": "decision",
    "label": "Database Choice",
    "children": [
      {
        "id": "sql",
        "label": "SQL",
        "children": [
          { "id": "pg", "label": "PostgreSQL" },
          { "id": "mysql", "label": "MySQL" }
        ]
      },
      {
        "id": "nosql",
        "label": "NoSQL",
        "children": [
          { "id": "mongo", "label": "MongoDB" },
          { "id": "dynamo", "label": "DynamoDB" }
        ]
      },
      {
        "id": "criteria",
        "label": "Criteria",
        "children": [
          { "id": "perf", "label": "Query Performance" },
          { "id": "scale", "label": "Scalability" },
          { "id": "cost", "label": "Cost" },
          { "id": "dx", "label": "Developer Experience" }
        ]
      }
    ]
  }
}

Sprint Retrospective

{
  "type": "mindmap",
  "root": {
    "id": "retro",
    "label": "Sprint 12 Retro",
    "children": [
      {
        "id": "good",
        "label": "Went Well",
        "children": [
          { "id": "g1", "label": "Shipped on time" },
          { "id": "g2", "label": "Zero production incidents" },
          { "id": "g3", "label": "Great code reviews" }
        ]
      },
      {
        "id": "improve",
        "label": "Improve",
        "children": [
          { "id": "i1", "label": "Flaky tests" },
          { "id": "i2", "label": "Late requirements" }
        ]
      },
      {
        "id": "actions",
        "label": "Action Items",
        "children": [
          { "id": "a1", "label": "Fix top 5 flaky tests" },
          { "id": "a2", "label": "Require specs by Wednesday" }
        ]
      }
    ]
  }
}

On this page