Storyboard · Cells
Load reference frames straight into the node — no generation required
- sheet
Sometimes your storyboard frames already exist - reference stills, a previous run, images you'll never regenerate. StoryboardCells is the no-generation planner: each cell in the node has a "+" button that lets you load an image file directly, and one Queue press assembles them into a labeled contact sheet. No sampler upstream, no VAEDecode, no model at all.
It rounds out Storyboard Suite (Smyshnikof/comfyui-storyboard-suite), @itsmyshnikov's pre-production pack. Everything in it is plain Python + PIL, and StoryboardCells is the most standalone of the five - it's a file picker plus the same contact-sheet renderer the Sheet node uses.
How it works
The frontend gives each cell a "+" button (with an aspect-ratio preset per empty cell) and turns every pick into an entry in the hidden cells_data JSON - filename, subfolder, type, and label per cell. When you Queue, the node resolves each file through ComfyUI's folder_paths (your input/ directory) using the same annotated-path logic as Load Image, letterboxes it into the cell, draws the label bar, and tiles everything into one sheet.
Because it's an output node, it returns a single IMAGE and saves a PNG preview to ComfyUI/output/storyboard_suite/, so you get the sheet on disk and an in-node preview from one press.
The inputs that matter
- cells_data - the JSON the "+" buttons write. You rarely touch it directly, but if you're sharing a workflow, this is where the file references live.
- columns - grid width, 1–8 (default 3).
- cell_gap, bg_color - spacing and background (default
#0e0e12). - show_labels, label_font_size, label_bar_height, label_color, label_bg_color - label styling.
label_bar_height0 = auto (font size plus padding). Cyrillic labels work via the bundledDejaVuSans.ttf.
The output that matters
sheet - a single IMAGE. Go straight to PreviewImage or SaveImage; there's no contact-sheet node in between, because this node is the sheet.
Install
Same zero-dependency clone as the rest of the pack:
cd ComfyUI/custom_nodes
git clone https://github.com/Smyshnikof/comfyui-storyboard-suite
or ComfyUI Manager, search "comfyui-storyboard-suite", restart, right-click → Add Node → Storyboard → Cells.
Gotchas
- The README's one emphatic warning: do not wire Cells → Sheet. Cells already outputs a finished sheet. Sheet is for images coming from the pipeline; double-stacking them is redundant.
- The files you load have to live somewhere
folder_pathscan find them - your ComfyUIinput/folder (or an annotated subfolder path). If the node logsне удалось загрузить ячейку(it prints this in the console in Russian - "failed to load cell"), the file isn't where the reference says it is. Fix the path, don't fight the node. - An empty
cells_dataproduces an empty sheet (a blank 64×64 tile) with a console warning, not a crash - so an all-blank result usually means you forgot to click "+" and pick files. - New, small pack: if the cell UI doesn't render after install, hard-refresh the browser;
cells_datais still editable as raw JSON underneath.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| cells_data | STRING | [] | — |
| columns | INT | 31–8 | — |
| cell_gap | INT | 80–64 | — |
| bg_color | STRING | #0e0e12 | — |
| show_labels | BOOLEAN | true | — |
| label_font_size | INT | 1810–48 | — |
| label_bar_height | INT | 00–96 | — |
| label_color | STRING | #e8e8f0 | — |
| label_bg_color | STRING | #1a1a22 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| sheet | IMAGE | — |