timedomain1/dsh-mermaid-renderer

Renders Mermaid code blocks in the DSH chat as diagram cards — flowchart, sequence, class, state, ER, journey, gantt, pie, mindmap, timeline, C4 and gitGraph — with diagram/source toggles, repeatable zoom, a standalone fullscreen viewer and one-click source copy. One codebase serves both the CLI web UI and the official desktop app; the Mermaid engine is lazy-loaded and works offline.

dsh-mermaid-renderer turns Mermaid code blocks in the DSH chat into diagram cards, supporting flowchart/graph, sequenceDiagram, classDiagram, stateDiagram, erDiagram, journey, gantt, pie, mindmap, timeline, C4Context and gitGraph. Blocks render automatically (streaming output, session switches and virtualized re-renders are re-scanned); each card toggles between diagram and source, zooms in/out/reset repeatedly (0.25x–4x, Ctrl+wheel inside the card, horizontal scroll past container width), opens a standalone fullscreen viewer (mounted on document.body so it is immune to chat re-renders, with cursor-centered wheel zoom, drag-to-pan, fit-width/100% and ESC to close) that can also be opened in a new tab, and copies its source in one click. The Mermaid engine is lazy-loaded on the first diagram and works offline, and the plugin is pure DOM post-processing — no UI framework internals touched — so removing it restores the original page (styles, timers and listeners are disposed through ctx.effect).

Web UI Enhancements ★ 0
View on GitHub ↗

Install

dsh plugin --profile web add git+https://github.com/timedomain1/dsh-mermaid-renderer.git

Copied verbatim from the README's command-line web UI install block ('From GitHub (recommended — no npm publish needed)'); a local-checkout form using file:/path/to/dsh-mermaid-renderer is also documented, as is the desktop app's in-app Plugins page. dsh plugin forwards to pnpm and, because the package declares dsh.bundle.patch, adds it to the target profile's bundle layer automatically.

Compatibility

Requires DeepSeek Harness >=0.1.5-rc.1 (compatible with 0.2.x) with pnpm enabled; one-time prerequisite is corepack enable if pnpm --version fails. One codebase serves both the CLI web UI and the official desktop app, but the two hosts read separate profiles, so enabling both means installing twice. The desktop profile is managed exclusively by the Electron app, so the desktop install goes through the in-app Plugins page, not dsh plugin --profile desktop.

Details

Alternatives

0lidaxiang/dsh-plugin-greet · 147228/dsh-black-whale · 15828148/dsh-portable-launcher

More plugins in Web UI Enhancements

Browse more in Web UI Enhancements

Guides for Web UI Enhancements plugins