#334·markmap

Enhancement : CRUD + AI Integrations

Author: Ram-lankadaCreated Aug 5, 2025Updated Aug 5, 2025

Proposal: Extend MarkMap VS Code Plugin with Interactive Editing + AI, or Consider Hybrid Integration with WiseMapping UI

Hello @gera2ld , Firstly—thank you deeply for the incredible tool you've built! MarkMap is an elegant visualization tool that brings Markdown to life.

I’m exploring extending its capabilities toward an interactive and AI-powered mind mapping experience, and would love your feedback before moving forward.


Core Use Cases

Our goal is to support multiple interactive UX modes atop Markdown-native syntax:

  • Story Mode for Book writers (book → chapters → sections → scenes)
  • Research Mode for researchers (knowledge graphs with citations)
    • Auto-mindmap Generation on a Research Topic with the use of User-Knowledge base + Web-Scraping + AI integrations.
  • Decision Mode for executives & Researchers (options, pros/cons, interactive evaluation)

Each mode requires:

  • Editable, visual mindmaps
  • Semantic node types and metadata
  • GPT-powered content suggestions and expansions
  • Persistent versioning , Mind-map Snapshots and undo/redo

MarkMap Architecture

  • Markdown parsing is handled via markmap-lib (Transformer class) which converts .md into a hierarchical node tree (AST-like structure with features)
  • Rendering occurs using markmap-view + D3/SVG to visualize that tree
  • The VS Code plugin simply sends the Markdown to the transformer, renders the SVG in a WebView, and lacks interactivity or two-way editing

Option 1: Extend Existing VS Code Plugin

Suggested enhancements:

  • Enable node CRUD (create/edit/delete) via clicks and draggable SVG overlays- Sync those interactions back to Markdown in real-time by mapping SVG edits to tree updates and Markdown regenerations- Inject GPT-based UI prompts for expand, summarize, rewrite, etc.- Support node metadata (tags, node types) and undo/redo- Allow mode-specific templates (Story, Research, Decision) Challenges:

  • Current SVG-only rendering lacks event hooks and editable overlays

  • Manipulating Markdown programmatically is non-trivial (would require custom AST diffing or use of libraries like remark, mdast-util-to-markdown)

  • Merging two-way sync without corrupting Markdown requires careful workaround


Option 2: Hybrid Approach: MarkMap Parser + WiseMapping-Like UI

Design:

  • Use markmap-lib/Transformer to generate a JSON node-tree from Markdown
  • Hand off that tree to a full-fledged React-based mind-map UI (inspired by WiseMapping or React Flow)
  • Perform all CRUD, layout, and AI interactions on this tree in the UI
  • Serialize node tree back into Markdown when needed

Advantages:

  • High-UX editor with drag-drop, context menus, inline editing
  • Easier to integrate AI plugins at node layer
  • Supports structured modes and metadata without hacking SVG
  • Cleaner separation of parsing vs rendering logic

Request for Feedback

Before I start implementing a prototype, I’d appreciate your guidance:

  1. Are you open to expanding the current plugin to gradually support interactivity?
  2. Or would you recommend the hybrid architecture as the preferred long-term solution?
  3. Any architectural limitations or preferences I should be aware of?

Whether you prefer this to remain experimental or be merged incrementally, I’m open to collaborating closely. Thanks for considering this—a potential great way to evolve MarkMap into a more interactive, AI-enhanced platform!

Warm regards, @ram-lankada