ComfyUI Extension: DazzleNodes Collection

Authored by DazzleNodes

Created

Updated

0 stars

A curated collection of image/latent creation and transformation custom nodes for ComfyUI. Each node is independently developed and maintained, but packaged together for convenient installation.

Custom Nodes (0)

    README

    DazzleNodes

    Python 3.10+ ComfyUI Registry GitHub release License: MIT

    A curated collection of image/latent creation and transformation custom nodes for ComfyUI. Each node is independently developed and maintained, but packaged together for convenient installation.

    Included Nodes

    Smart Resolution Calculator (standalone: Github & Comfy Registry)

    Flexible resolution and latent generation with intelligent aspect ratio handling.

    Features:

    • Toggle-based dimension control
    • Automatic missing value calculation
    • Preview image generation
    • Direct latent output for sampling
    • Custom widgets for enhanced UX

    Status: Published standalone in ComfyUI Registry and in DazzleNodes package in ComfyUI Registry

    Fit Mask to Image (standalone: Github)

    Automatically resizes masks to match image dimensions for inpainting workflows (for when the ksampler output dimensions no longer matches the input mask dimensions)

    Features:

    • Replaces 10-node workflow with single node
    • Automatic dimension matching
    • Preview output for verification
    • Latent masking support
    • Nearest-exact scaling for quality preservation

    Status: Available from DazzleNodes package in the Comfy Registry; download from Github to ComfyUI\custom_nodes for standalone install

    Installation

    Method 1: ComfyUI Manager (Recommended - Coming Soon)

    Once published to ComfyUI Registry:

    Search for "DazzleNodes" in ComfyUI Manager and click Install
    

    Method 2: Git Clone with Submodules

    cd ComfyUI/custom_nodes
    git clone --recursive https://github.com/DazzleNodes/DazzleNodes.git
    

    ⚠️ Important: The --recursive flag is required to download all node submodules!

    Method 3: Manual Submodule Setup

    cd ComfyUI/custom_nodes
    git clone https://github.com/DazzleNodes/DazzleNodes.git
    cd DazzleNodes
    git submodule update --init --recursive
    

    Method 4: Symlink for Development

    If you're developing DazzleNodes locally:

    cd ComfyUI/custom_nodes
    mklink /D DazzleNodes C:\code\DazzleNodes\local
    

    Usage

    After installation, restart ComfyUI. All nodes will appear under the DazzleNodes category in the node menu.

    Example Workflows

    See examples/ directory for workflow JSON files demonstrating node usage.

    Updating

    Update All Nodes

    cd ComfyUI/custom_nodes/DazzleNodes
    git pull
    git submodule update --remote
    

    Update Individual Node

    cd ComfyUI/custom_nodes/DazzleNodes/nodes/smart-resolution-calc
    git pull
    

    Architecture

    DazzleNodes uses git submodules for local development to maintain clean, independent histories for each node:

    DazzleNodes/local/
    ├── __init__.py              # Aggregator that imports all nodes
    ├── nodes/                   # Node submodules
    │   ├── smart-resolution-calc/    # Submodule → separate git repo
    │   └── fit-mask-to-image/        # Submodule → separate git repo
    └── examples/                # Collection-level examples
    

    Why Submodules?

    • Each node maintains independent git history
    • Nodes can be extracted to standalone repos later
    • Version locking prevents unexpected breakage
    • Supports selective node development

    Development

    Working on a Node

    Each node is developed in its own repository:

    • Smart Resolution Calculator: C:\code\smart-resolution-calc-repo\local
    • Fit Mask to Image: C:\code\ComfyUI-ImageMask-Fix\local
    # Navigate to node's repository
    cd nodes/fit-mask-to-image
    
    # Make changes and commit as usual
    git add -A
    git commit -m "Add new feature"
    git push
    
    # Update collection to use new version
    cd ../..
    git add nodes/fit-mask-to-image
    git commit -m "Update fit-mask-to-image to latest"
    git push
    

    Adding a New Node

    1. Create node repository
    2. Add as submodule: git submodule add <repo-url> nodes/<node-name>
    3. Update __init__.py to import the new node
    4. Test in ComfyUI
    5. Commit changes

    Troubleshooting

    Nodes Not Loading

    Symptom: ComfyUI says "No nodes loaded!" or specific nodes are missing.

    Solution: Initialize submodules:

    cd ComfyUI/custom_nodes/DazzleNodes
    git submodule update --init --recursive
    

    Empty Node Directories

    Symptom: nodes/ subdirectories exist but are empty.

    Solution: You cloned without --recursive flag. Run:

    cd ComfyUI/custom_nodes/DazzleNodes
    git submodule update --init --recursive
    

    Import Errors

    Symptom: Python import errors in console.

    Solution:

    1. Verify submodules are initialized
    2. Check each node's __init__.py exists
    3. Restart ComfyUI completely
    4. Check ComfyUI console for detailed error messages

    Contributing

    Contributions welcome! Each node has its own repository and contribution guidelines. See individual node READMEs for details.

    For collection-level issues (installation, documentation, architecture), open an issue in this repository.

    Like the project?

    "Buy Me A Coffee"

    License

    DazzleNodes, Copyright (C) 2025 Dustin Darcy

    Collection-level code is licensed under the MIT license - see the LICENSE file for details.

    See individual node directories for specific licenses.