ComfyUI Extension: ComfyUI Mememizator
Run ComfyUI workflows without the setup
No installs, no CUDA version roulette, no GPU sitting idle on your bill. Bring a workflow and run it in the browser.
ComfyUI node to make memes and demotivators
Looking for a different extension?
Custom Nodes (3)
README
ComfyUI-Mememizator
ComfyUI custom nodes for making memes and demotivators.
Nodes
Mememizator:
- Name:
Mememizator - Class:
ArtemKo7vMememizator - Category:
ArtemKo7v - Required input image:
IMAGE - Optional input settings:
MEMEMIZATOR_SETTINGS - Output image:
IMAGE
Mememizator Settings:
- Name:
Mememizator Settings - Class:
ArtemKo7vMememizatorSettings - Category:
ArtemKo7v - Output settings:
MEMEMIZATOR_SETTINGS
Mememizator Combine Images:
- Name:
Mememizator Combine Images - Class:
ArtemKo7vMememizatorCombineImages - Category:
ArtemKo7v - Required input image:
IMAGE - Optional image inputs:
image_2,image_3,image_4 - Output image:
IMAGE
Features
- Renders classic memes and demotivators from input images
- Supports template-based rendering through a user-editable JSON config
- Includes
Classic DemotivatorandClassic Memetemplates by default - Supports up to four text fields:
title,subtitle,text_3, andtext_4 - Supports per-workflow template overrides through the
Mememizator Settingsnode - Syncs the settings node fields from the selected template on the client side
- Downloads fonts referenced by templates into the user config directory
- Combines up to four images before meme rendering
- Supports
horizontal,vertical, and2x2combine layouts - Supports maximum combined output size, background color, and padding settings
- Handles single images and image batches
Installation
Place this folder into your ComfyUI custom_nodes directory.
Install dependencies in the same Python environment used by ComfyUI:
pip install -e .
The package depends on Pillow and NumPy. PyTorch is expected to be available through ComfyUI.
Configuration
On first launch the config file is saved to:
ComfyUI/user/default/ComfyUI-Mememizator/config.json
Fonts referenced by templates are downloaded to:
ComfyUI/user/default/ComfyUI-Mememizator/fonts/
For Classic Demotivator and Classic Meme, the node expects impact.ttf and downloads it from:
https://font.download/dl/font/impact.zip
Edit the user config to add or change templates. Template names from templates[].name are shown in the node dropdown. After changing the list of templates, restart ComfyUI.
Inputs
Mememizator:
image: input image or image batchtemplate: template selected from the current configtitle: first text linesubtitle: second text linetext_3: third text linetext_4: fourth text linesettings: optional overrides fromMememizator Settings
Mememizator Settings:
template_name: template selected from the current configbackground: output background colortext: text colorpadding_x: horizontal image offset or template padding overridepadding_y: vertical image offset or template padding overrideframe_color: frame colorframe_gap: gap between image and frameframe_thickness: frame thicknesstext_padding_x: horizontal text paddingtext_padding_bottom: bottom text paddingtext_position:below,above, oroverlayoutline_color: text outline coloroutline_thickness: text outline thicknessgap_from_image: gap between image and text areablock_spacing: spacing between text blocksmultiline_spacing: spacing between wrapped text linesextra_width: extra output canvas widthextra_height: extra output canvas heighttitle_size: title font sizetitle_min_size: minimum title font sizesubtitle_size: subtitle font sizesubtitle_min_size: minimum subtitle font sizefont_name: template default font or a discovered font
Mememizator Combine Images:
image_1: first input image or image batchlayout:horizontal,vertical, or2x2max_width: maximum output width;0disables this limitmax_height: maximum output height;0disables this limitbackground: background colorpadding: spacing around and between imagesimage_2: optional second input imageimage_3: optional third input imageimage_4: optional fourth input image
Outputs
Mememizatorreturns the rendered meme or demotivator asIMAGEMememizator Settingsreturns aMEMEMIZATOR_SETTINGSpayload for the optionalsettingsinputMememizator Combine Imagesreturns the combined image asIMAGE
Usage Examples
Basic Mememizator workflow:
<img src="images/image01.png" alt="Mememizator workflow" width="640">Combine Images workflow:
<img src="images/image02.png" alt="Combine Images workflow" width="640">Rendered example:
<img src="examples/example.png" alt="Rendered example" width="640">Workflows can be used from the images above or downloaded directly:
Notes
- Connect
Mememizator Settingsto the optionalsettingsinput onMememizatorto override config values without editing JSON. - Restart ComfyUI after changing code, installing dependencies, or changing the template list.
- Template values are read from the user config after it has been created on first launch.
- Image batch sizes must match, or optional combine inputs must contain a single image that can be broadcast across the batch.
Run ComfyUI workflows without the setup
No installs, no CUDA version roulette, no GPU sitting idle on your bill. Bring a workflow and run it in the browser.