1. Update smart-resolution-calc submodule to include dynamic imports - Updated to commit 61b8781 which adds DazzleNodes compatibility - Dynamic import with auto-depth detection - Works in both standalone and DazzleNodes aggregator modes - Fixes: Custom UI widgets not loading in dev branch 2. Enhance web/ directory gitignore patterns - Added explicit allow for documentation (!/web/*.md) - Clarified that /web/*/ blocks ALL generated directories - Added comments explaining DO NOT COMMIT for generated content - Prevents accidental commits of auto-generated resources Pattern behavior: ✓ web/README.md - tracked (documentation) ✗ web/core/ - ignored (generated from web_src/) ✗ web/smart-resolution-calc/ - ignored (generated from submodule) ✗ web/.sync_hash - ignored (cache file)
DazzleNodes
$badges
A curated collection of productivity-focused custom nodes for ComfyUI. Each node is independently developed and maintained, but packaged together for convenient installation.
Included Nodes
🎯 Smart Resolution Calculator
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
Category: DazzleNodes Status: Published (Standalone)
🎨 Fit Mask to Image
Automatically resizes masks to match image dimensions for inpainting workflows.
Features:
- Replaces 10-node workflow with single node
- Automatic dimension matching
- Preview output for verification
- Latent masking support
- Nearest-exact scaling for quality preservation
Category: DazzleNodes Status: Development
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
- Create node repository
- Add as submodule:
git submodule add <repo-url> nodes/<node-name> - Update
__init__.pyto import the new node - Test in ComfyUI
- 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:
- Verify submodules are initialized
- Check each node's
__init__.pyexists - Restart ComfyUI completely
- 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.
License
See individual node directories for specific licenses. Collection-level code is licensed under the terms specified in the LICENSE file.
Acknowledgements
Dustin - 6962246+djdarcy@users.noreply.github.com
Like this project?