Nodes/MKRShift_Nodes/Publish Promo Frame
ComfyUI Node

Publish Promo Frame

Frame your renders as launch cards

By criskb·Created 7 months ago·Updated 5 months ago· 0
Publish Promo Frame
  • image
  • image
  • publish_frame_info
titleNew Release
subtitleFeature highlight
body
badgeFEATURED
ctaSee more
footerMKRShift Nodes
themeCarbon
margin_px48
header_px104
copy_height_px168
show_indextrue

A promo frame is the launch card you drop on social media when a release drops: your render, a badge, a title, a line of copy, a call to action. MKRPublishPromoFrame does the layout in ComfyUI - feed it an image (or a whole batch of them), set the text, pick a theme, and get back properly framed cards ready to post. If MKRPublishEndCard closes the video, this one opens the announcement.

What it's for

You've generated the artwork for a release and you need the social-ready version: the image with "FEATURED" up top, a title, a subtitle, a line of body copy, and "See more" at the bottom. Instead of compositing it in a design app by hand for every variant, this node does it in-graph - and because it takes an IMAGE batch, one run frames every variant you generated. It's the batch-friendly, on-brand version of "slap text on my render."

How it works

Pure Pillow compositing. For each frame in the batch it builds a card: a themed background, the image fitted in, a header band with badge + title + subtitle, a body copy block of copy_height_px, and a footer with the CTA. Layout is driven by the pixel knobs - margin_px, header_px, copy_height_px - which are genuinely useful for fitting your image's aspect ratio. show_index stamps a number on each card so a 20-variant batch stays identifiable. The Carbon/Paper/Signal/Blueprint themes are the same flat palettes the end card uses, so the two match when used together.

Inputs and outputs

Inputs: image, title, subtitle, body, badge, cta, footer, theme, margin_px, header_px, copy_height_px, show_index. Outputs: image (the framed batch - one card per input frame) and publish_frame_info (JSON with the card layout facts, useful for logging or a manifest).

Installing it

Pack install as usual:

cd ComfyUI/custom_nodes
git clone https://github.com/criskb/MKRShift_Nodes

restart ComfyUI, or Manager → MKRShift_Nodes. Pure PIL, no ffmpeg, no extra deps. (It's also one of the pack's nodes with a custom frontend via WEB_DIRECTORY.)

Common issues

Output is IMAGE, not files - add a save or MKRPreSave node to actually write your cards. The copy areas are fixed pixel heights: a long body gets clipped rather than auto-expanding, so keep it short or raise copy_height_px. And show_index is on by default, which is great for a batch but means your final "clean" post card will carry a number - flip it off for the one you actually publish.

CategoryMKRShift Nodes/Publish/Build

Inputs (12)

NameTypeDefaultDescription
imageIMAGE
titleSTRINGNew Release
subtitleSTRINGFeature highlight
bodySTRING
badgeSTRINGFEATURED
ctaSTRINGSee more
footerSTRINGMKRShift Nodes
themeCOMBOCarbon4 options: Carbon, Paper, Signal, Blueprint
margin_pxINT4812–256
header_pxINT10436–256
copy_height_pxINT16880–320
show_indexBOOLEANtrue

Outputs (2)

NameTypeDescription
imageIMAGE
publish_frame_infoSTRING