ComfyUI Extension: ComfyNodesPlus

Authored by chemicalshock

Created

Updated

0 stars

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.

A growing collection of practical, high-quality nodes designed to extend ComfyUI with useful utilities, smarter workflow controls, and flexible generation tools.

Looking for a different extension?

Custom Nodes (0)

    README

    ComfyNodesPlus

    Enhanced custom nodes for ComfyUI.

    ComfyNodesPlus is a growing collection of practical, high-quality nodes designed to extend ComfyUI with useful utilities, smarter workflow controls, and flexible generation tools. Built with a focus on simplicity, power, and real-world usability.


    ✨ Features

    • 🎲 Smart randomisation nodes (resolutions, ratios, seeds)
    • βš™οΈ Workflow utility and control nodes
    • 🧩 Modular and easy to extend
    • πŸš€ Lightweight and performance-friendly
    • 🧠 Designed for both beginners and advanced pipelines

    πŸ“¦ Installation

    Clone into your ComfyUI custom_nodes directory:

    cd ComfyUI/custom_nodes
    git clone https://github.com/chemicalshock/ComfyNodesPlus.git
    

    Restart ComfyUI after installation.


    πŸš€ Included Nodes

    🎲 Random Image Size

    Generate dynamic image resolutions for more varied outputs.

    Inputs:

    • min_size – Minimum dimension (e.g. 512)
    • max_size – Maximum dimension (e.g. 2048)
    • mode – fixed or random
    • orientation – square, vertical, horizontal, or random

    Outputs:

    • width
    • height

    Example outputs:

    • 512 Γ— 512
    • 512 Γ— 1024
    • 1024 Γ— 1024
    • 2048 Γ— 1024

    (More nodes coming soon.)


    🧱 Project Structure

    ComfyNodesPlus/
    β”œβ”€β”€ nodes/
    β”‚   β”œβ”€β”€ CNP_random_image_size.py
    β”‚   └── ...
    β”œβ”€β”€ __init__.py
    β”œβ”€β”€ requirements.txt
    └── README.md
    

    🧩 Creating New Nodes

    All nodes follow standard ComfyUI conventions:

    class ExampleNode:
        @classmethod
        def INPUT_TYPES(cls):
            return {
                "required": {
                    "value": ("INT", {"default": 0})
                }
            }
    
        RETURN_TYPES = ("INT",)
        FUNCTION = "execute"
    
        def execute(self, value):
            return (value,)
    

    Register nodes in __init__.py.


    🎯 Design Principles

    • Keep nodes focused and useful
    • Avoid unnecessary complexity
    • Prioritise real workflow value
    • Support both deterministic and randomised pipelines
    • Maintain clean, readable code

    πŸ”§ Requirements

    • ComfyUI (latest recommended)
    • Python 3.10+

    🀝 Contributing

    Contributions are welcome.

    Please:

    • Keep code clean and minimal
    • Follow the existing structure
    • Document nodes clearly
    • Avoid unnecessary dependencies

    πŸ“„ License

    MIT


    🧠 Vision

    ComfyNodesPlus aims to provide a reliable, growing toolkit of nodes that make ComfyUI workflows faster, smarter, and more expressive.

    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.

    Learn more