Markdown Renderer
The Easiest Way to Keep Notes in a ComfyUI Graph
- text
- STRING
ComfyUI is a great place to get work done and an awful place to leave yourself notes. There's no comments panel and no sticky notes - just a canvas of boxes you'll stare at next month, wondering what that KSampler was tuned for. Markdown Renderer is the fix. It's a display node from the tiny laubsauger/comfyui-storyboard pack that renders formatted text right inside a node, so a workflow can read like a documented prompt recipe instead of a guessing game.
It doubles as a debugging tool. Wire any node's output into it and you get a pretty-printed readout instead of a wall of raw JSON in the console.
How it works
Refreshingly simple under the hood. There's one optional text input of type * (it accepts anything), and the node is marked as an output node - so it sits at the end of a branch and renders whatever arrives. The rendering happens in the frontend with the marked + highlight.js combination (sanitized through DOMPurify), which is why the result looks like a proper README rather than a text blob.
The smart part is the auto-formatting. Drop in a plain string and it renders as Markdown. Drop in a dictionary and it pretty-prints into a Python code block with syntax highlighting. A list of short strings becomes a bullet list; a list of complex objects becomes a code block. It even dedupes repeated items, which matters more than you'd think when you're feeding it batches of output. The rendered content is also written back into the workflow metadata, so your notes survive saving and reopening the graph.
The one input that matters
- text (optional, any type) - that's the whole list. Wire anything in and the node formats it for you.
The output
- STRING - the formatted Markdown as text. Useful if you want to chain it onward, though most people just use it as a display end-point.
How to install
It ships inside the comfyui-storyboard pack, so you install the pack, not the node:
# ComfyUI Manager
# Custom Nodes Manager → search "storyboard" → install "comfyui-storyboard" → restart
# or manual
cd ComfyUI/custom_nodes
git clone https://github.com/laubsauger/comfyui-storyboard
# restart ComfyUI
No model downloads and no GPU cost. The only pip dependencies are python-dotenv and openai, and you only need those for the pack's OpenAI nodes - the renderer itself is offline and dependency-free. The frontend is precompiled, so there's no Node or npm build step for end users.
One heads-up if you're searching Manager: "storyboard" is an overloaded name. There's a much more famous comfyui-storyboard by colorAi that generates storyboard image sequences - a completely different pack. This one is the markdown/debug/LLM toolbox. Search for the author "laubsauger" to make sure you've got the right repo.
Gotchas
The node always reports a change, so it re-executes on every queue. That's exactly what you want from a display - the note is always fresh. Feed it nothing and it renders nothing, and since it's an output node you'll see it listed next to your image outputs in the UI; that's expected, not a bug.
If you're using it to dump debugging data, pair it with the pack's Node Inspector - feed the inspector's field_dict output into text and you get a clean, formatted readout of exactly what's flowing through your graph.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| textopt | * | Content to be rendered as Markdown. Accepts strings, lists, dictionaries, and other serializable data. Dictionaries and complex objects will be formatted as Python code blocks. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| STRING | STRING | — |