Show HN: Mmdr – 1000x faster Mermaid rendering in pure Rust (no browser)
I was building a Rust-based agentic coding TUI and needed to render Mermaid diagrams. Noticed the official mermaid-cli spawns a full browser instance (Puppeteer/Chrome) just to render diagrams. Decided to fix this.

mmdr is a native Rust renderer. No browser, no Node.js.

  mermaid-cli:  ~3000ms per diagram
  mmdr:         ~3ms per diagram
Supports 13 diagram types: flowchart, sequence, class, state, ER, pie, gantt, timeline, journey, mindmap, git graph, XY chart, and quadrant.
Cool. I’ve just publish a tool md2cb to convert markdown to clipboard content (https://news.ycombinator.com/item?id=46896623) using mmdr internally. Totally unaware of this being posted just yesterday.
This is really neat, i wonder if this could be made into a typst plugin now so that you can create mermaid code blocks that turn into diagrams when rendered. The original mermaid can't be added to typst sadly but i bet this could.
Does it make sense to create a Wasm build of this for the browser? Or is the speedup mainly due to the browser spawning step rather than execution/rendering itself?
I reckon the main speed up is from not having to launch a browser.
Mermaid can also be used inside the browser directly, I believe. The WASM compiled Rust implementation could still outperform it.
Exactly, that's what I wanted to know. No other way to find out than to test, though. Don't know how easy it would be to wire it up.
Could this be used as a drop-in replacement for mermaid-cli or is the CLI different?