agentsclimarketplace

Jsx md beautiful mermaid

Skill theseus-run/theseus/packages/jsx-md-beautiful-mermaid/skills/jsx-md-beautiful-mermaid

Render Mermaid diagrams as ASCII/Unicode art inside @theseus.run/jsx-md components. Use when adding a <BeautifulMermaid> component to a .tsx file that renders Markdown via render(), or when a prompt or document needs a diagram rendered as terminal-friendly ASCII art.From its SKILL.md

Install
npx -y skills add theseus-run/theseus --skill jsx-md-beautiful-mermaid

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
  • runs commandsInstructs the agent to run 1 command, including `bun add @theseus.run/jsx-md @theseus.run/jsx-md-beautiful-mermaid`.

SKILL.md

3.0 KB, 765 tokens by cl100k_base, as published. Nobody here has run it

@theseus.run/jsx-md-beautiful-mermaid

Single-component companion to @theseus.run/jsx-md. Takes a Mermaid diagram string, calls renderMermaidASCII() from beautiful-mermaid synchronously, and returns a fenced code block (or raw ASCII) as a plain string. No DOM, no SVG, no async.

Setup

Install both packages:

bun add @theseus.run/jsx-md @theseus.run/jsx-md-beautiful-mermaid

Import:

import { render } from "@theseus.run/jsx-md"
import { BeautifulMermaid } from "@theseus.run/jsx-md-beautiful-mermaid"

No tsconfig.json changes needed beyond what @theseus.run/jsx-md already requires.

Authoring rules

1. Diagram source must be multi-line. Single-line graph LR; A --> B syntax is NOT supported.

// WRONG — parser rejects single-line inline syntax
<BeautifulMermaid diagram="graph LR; A --> B --> C" />

// CORRECT — header on its own line
<BeautifulMermaid diagram={`graph LR\n  A --> B --> C`} />

// CORRECT — template literal children (preferred for longer diagrams)
<BeautifulMermaid>
  {`graph LR
    A --> B --> C`}
</BeautifulMermaid>

2. diagram prop takes precedence over children. Don't pass both.

// WRONG — diagram prop wins, children are silently ignored
<BeautifulMermaid diagram={flowA}>{flowB}</BeautifulMermaid>

// CORRECT — use one or the other
<BeautifulMermaid diagram={flowA} />
<BeautifulMermaid>{flowB}</BeautifulMermaid>

3. block={true} (default) wraps output in a fenced code block. Use block={false} only when composing the ASCII string into another context manually.

// Default — output is ```\n<ascii>\n```\n\n
<BeautifulMermaid diagram={flow} />

// Raw — output is the ASCII string only, no fencing
<BeautifulMermaid diagram={flow} block={false} />

4. Unicode box-drawing is the default. Switch to plain ASCII only for maximum terminal compatibility.

// Unicode (default) — ┌ ─ │ └ ┘ ►
<BeautifulMermaid diagram={flow} />

// ASCII — + - | >
<BeautifulMermaid diagram={flow} useAscii={true} />

Props

Full props table: references/beautiful-mermaid.md.

PropTypeDefault
diagramstring
childrenstring
blockbooleantrue
useAsciibooleanfalse
paddingXnumber5
paddingYnumber5
boxBorderPaddingnumber1

All other AsciiRenderOptions from beautiful-mermaid are forwarded via spread.

Output shape

```\n<ascii art>\n```\n\n

With block={false}: raw ASCII string, no trailing newline added by this component.

Supported diagram types

Flowcharts, state diagrams, sequence diagrams, class diagrams, ER diagrams, XY charts.

What ships with it: 1 file

2.3 KB alongside SKILL.md

references/

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.