Shima Content (Supplier)
Put a dashboard of notes, links, and videos inside your workflow
- content_bundle
Workflows get handed around, and every shared workflow needs instructions. Shima Content is the pack's answer to "where do I put the how-to-use-this text?" It's a supplier node: you define a block of content - HTML, Markdown, a URL, an image, or a video - bundle it up, and hand it to a Shima Rich Display node, which renders it right on the canvas. Think of it as a documentation layer living inside the graph itself, where the reader actually is.
How it works
The node builds a small dictionary bundle - {type, title, content, show_title} - and sends it out as a CONTENT_BUNDLE. That bundle is what the paired Rich Display viewer consumes: wire Content into Rich Display, and the content renders as a panel on the canvas. The two-node split (supplier vs. viewer) is deliberate, so you can define content in one place and display it somewhere else, or swap displays without touching the source.
The content_type dropdown changes what the viewer does with your content:
- HTML - render the content as HTML. This is the flexible one; you can build formatted note panels with headings and lists.
- Markdown - write in Markdown, rendered for you. The easiest for most people, honestly.
- URL - embed a website in an iframe. The pack's docs are upfront that the target site must allow iframe embedding (many don't), so expect some sites to refuse.
- Image - show an image.
- Video - embed a video, e.g. a YouTube link.
There's also an input_content input that overrides the content widget when connected - handy if you want the content to come from somewhere else in the graph rather than being hand-typed.
The inputs that matter
- content_type - HTML / Markdown / URL / Image / Video. Sets the rendering mode.
- content - the actual content (multiline).
- title - the panel's title.
- show_title - whether to render the title bar.
- input_content - optional wire-in that supersedes the content widget.
The single output is content_bundle.
Installing it
Part of the Shima pack - ComfyUI Manager → search Shima, or:
cd ComfyUI/custom_nodes
git clone https://github.com/KDB-USJP/shima_wf.git Shima
Restart ComfyUI. First launch auto-installs the pack's deps and companion repos (ComfyUI-Impact-Pack, cg-use-everywhere).
Common issues
- "The URL just shows a blank box." The site blocks iframe embedding - CORS/X-Frame-Options, usually. Nothing to fix on your end except picking a site that allows it or using a different content type. This is exactly why the docs call it out.
- "Content isn't rendering." You've got Content but no Rich Display. The supplier alone just builds the bundle; you need the viewer node to actually draw it.
- "My HTML looks broken." The node passes content through largely as-is, so malformed HTML renders malformed. If you're not comfortable hand-writing HTML, Markdown mode is far more forgiving.
The genuinely good use: a shared workflow where the next person opens it and immediately sees what to do, what model to load, what settings to check. Content nodes are the difference between a workflow that reads like a lab notebook and one that reads like a recipe - for anyone who shares graphs, that's worth a node.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| content_type | COMBO | HTML | 5 options: HTML, Markdown, URL, Image, Video |
| title | STRING | My Notes | — |
| content | STRING | <h1>Hello World</h1> | — |
| show_title | BOOLEAN | true | — |
| input_contentopt | STRING | — | |
| allow_external_linkingopt | BOOLEAN | false | If ON, this node broadcasts/receives OUTSIDE the Island (ignores group regex) |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| content_bundle | CONTENT_BUNDLE | — |