diff --git a/__pycache__/execution.cpython-310.pyc b/__pycache__/execution.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c4da05c55faaf6e60f293e069841b2240903a62c Binary files /dev/null and b/__pycache__/execution.cpython-310.pyc differ diff --git a/__pycache__/folder_paths.cpython-310.pyc b/__pycache__/folder_paths.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..409de31df12e5a3af3b48425aa4ff0594b9713a8 Binary files /dev/null and b/__pycache__/folder_paths.cpython-310.pyc differ diff --git a/__pycache__/nodes.cpython-310.pyc b/__pycache__/nodes.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..710e38a57a65d838bad3fc955229f4ccac49a4e6 Binary files /dev/null and b/__pycache__/nodes.cpython-310.pyc differ diff --git a/__pycache__/protocol.cpython-310.pyc b/__pycache__/protocol.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..031846b388661fe8f9f30c2d2ba7cf5973006452 Binary files /dev/null and b/__pycache__/protocol.cpython-310.pyc differ diff --git a/__pycache__/server.cpython-310.pyc b/__pycache__/server.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e494384f4205c3d4321bd61c72f31837391ccbeb Binary files /dev/null and b/__pycache__/server.cpython-310.pyc differ diff --git a/user/default/ComfyUI-Manager/cache/1742899825_extension-node-map.json b/user/default/ComfyUI-Manager/cache/1742899825_extension-node-map.json new file mode 100644 index 0000000000000000000000000000000000000000..fda32769d254e8b66676e5af0dd257c30444a37c --- /dev/null +++ b/user/default/ComfyUI-Manager/cache/1742899825_extension-node-map.json @@ -0,0 +1,40075 @@ +{ + "https://gist.githubusercontent.com/alkemann/7361b8eb966f29c8238fd323409efb68/raw/f9605be0b38d38d3e3a2988f89248ff557010076/alkemann.py": [ + [ + "Int to Text", + "Save A1 Image", + "Seed With Text" + ], + { + "title_aux": "alkemann nodes" + } + ], + "https://git.mmaker.moe/mmaker/sd-webui-color-enhance": [ + [ + "MMakerColorBlend", + "MMakerColorEnhance" + ], + { + "title_aux": "mmaker/Color Enhance" + } + ], + "https://gitee.com/yyh915/jkha-load-img": [ + [ + "JkhaLoadImage" + ], + { + "title_aux": "ImageLoadFromLocalOrUrl Node for ComfyUI" + } + ], + "https://github.com/0x-jerry/comfyui-rembg": [ + [ + "Load Rembg Model", + "Rembg Remove background" + ], + { + "title_aux": "0x-jerry/Rembg Background Removal Node for ComfyUI" + } + ], + "https://github.com/0xRavenBlack/ComfyUI-OOP": [ + [ + "OOPAnimalNode", + "OOPClothingNode", + "OOPEnvironmentNode", + "OOPEyesNode", + "OOPHairNode", + "OOPLocationNode", + "OOPMouthNode", + "OOPNode", + "OOPPersonNode", + "OOPPoseNode", + "OOPStyleNode", + "OOPViewNode" + ], + { + "title_aux": "ComfyUI-OOP" + } + ], + "https://github.com/0xbitches/ComfyUI-LCM": [ + [ + "LCM_Sampler", + "LCM_Sampler_Advanced", + "LCM_img2img_Sampler", + "LCM_img2img_Sampler_Advanced" + ], + { + "title_aux": "Latent Consistency Model for ComfyUI" + } + ], + "https://github.com/1038lab/ComfyUI-EdgeTTS": [ + [ + "EdgeTTS", + "Save_Audio", + "WhisperSTT" + ], + { + "title_aux": "ComfyUI-EdgeTTS" + } + ], + "https://github.com/1038lab/ComfyUI-JoyCaption": [ + [ + "CaptionSaver", + "ImageBatchPath", + "JC", + "JC_ExtraOptions", + "JC_adv" + ], + { + "title_aux": "ComfyUI-JoyCaption" + } + ], + "https://github.com/1038lab/ComfyUI-LBM": [ + [ + "LBM_DepthNormal", + "LBM_Relighting" + ], + { + "title_aux": "ComfyUI-LBM" + } + ], + "https://github.com/1038lab/ComfyUI-MegaTTS": [ + [ + "MegaTTS3", + "MegaTTS3S", + "MegaTTS_VoiceMaker" + ], + { + "title_aux": "ComfyUI-MegaTTS" + } + ], + "https://github.com/1038lab/ComfyUI-MiniMax-Remover": [ + [ + "ImageSizeAdjuster", + "MinimaxImageRemover", + "MinimaxModelLoader", + "MinimaxVideoLoader", + "MinimaxVideoRemover" + ], + { + "title_aux": "ComfyUI-MiniMax-Remover" + } + ], + "https://github.com/1038lab/ComfyUI-Mosaic": [ + [ + "MosaicCreator", + "MosaicDetector" + ], + { + "title_aux": "ComfyUI-Mosaic" + } + ], + "https://github.com/1038lab/ComfyUI-OmniGen": [ + [ + "ailab_OmniGen" + ], + { + "title_aux": "ComfyUI-OmniGen" + } + ], + "https://github.com/1038lab/ComfyUI-RMBG": [ + [ + "AILab_ColorInput", + "AILab_CropObject", + "AILab_ICLoRAConcat", + "AILab_ImageCombiner", + "AILab_ImageCompare", + "AILab_ImageCrop", + "AILab_ImageMaskConvert", + "AILab_ImageMaskResize", + "AILab_ImagePreview", + "AILab_ImageStitch", + "AILab_LamaRemover", + "AILab_LoadImage", + "AILab_MaskCombiner", + "AILab_MaskEnhancer", + "AILab_MaskExtractor", + "AILab_MaskOverlay", + "AILab_MaskPreview", + "AILab_Preview", + "AILab_ReferenceLatentMask", + "BiRefNetRMBG", + "BodySegment", + "ClothesSegment", + "FaceSegment", + "FashionSegmentAccessories", + "FashionSegmentClothing", + "RMBG", + "Segment", + "SegmentV2" + ], + { + "title_aux": "ComfyUI-RMBG" + } + ], + "https://github.com/1038lab/ComfyUI-ReduxFineTune": [ + [ + "ClipVisionStyleLoader", + "ReduxFineTune", + "ReduxFineTuneAdvanced" + ], + { + "title_aux": "ComfyUI-ReduxFineTune" + } + ], + "https://github.com/1038lab/ComfyUI-SparkTTS": [ + [ + "SparkTTS_AdvVoiceClone", + "SparkTTS_AudioRecorder", + "SparkTTS_VoiceClone", + "SparkTTS_VoiceCreator" + ], + { + "title_aux": "Comfyui-Spark-TTS" + } + ], + "https://github.com/1038lab/ComfyUI-WildPromptor": [ + [ + "AllInOneList", + "KeywordPicker", + "PromptBuilder", + "PromptConcat", + "WildPromptorAllInOne", + "WildPromptorGenerator", + "WildPromptor_DataToPromptList", + "WildPromptor_Enhancer" + ], + { + "title_aux": "ComfyUI-WildPromptor" + } + ], + "https://github.com/111496583yzy/comfyui-PuzzleCrack-Effect": [ + [ + "MyJigsawPuzzleEffect", + "MyRegionBoundaryEffect" + ], + { + "title_aux": "Jigsaw Puzzle Effect Plugin" + } + ], + "https://github.com/11dogzi/CYBERPUNK-STYLE-DIY": [ + [ + "CYBERPUNKHT" + ], + { + "title_aux": "CYBERPUNK-STYLE-DIY" + } + ], + "https://github.com/11dogzi/ComfUI-EGAdapterMadAssistant": [ + [ + "EGIPAdapter_Mad_Assistant", + "EGIPAdapter_Mad_AssistantV1", + "EGIPAdapter_Mad_AssistantV2", + "EGIPAdapter_Mad_AssistantV3", + "EGIPAdapter_Mad_AssistantV4", + "EGIPAdapter_Mad_AssistantV5", + "EGIPAdapter_Mad_AssistantV6" + ], + { + "title_aux": "ComfUI-EGAdapterMadAssistant" + } + ], + "https://github.com/11dogzi/Comfyui-ergouzi-Nodes": [ + [ + "EG-YSZT-ZT", + "EG_CPSYTJ", + "EG_FX_BDAPI", + "EG_HT_YSTZ", + "EG_JF_ZZSC", + "EG_JXFZ_node", + "EG_K_LATENT", + "EG_RY_HT", + "EG_SCQY_BHDQY", + "EG_SCQY_QBQY", + "EG_SCQY_SXQY", + "EG_SJ", + "EG_SJPJ_Node", + "EG_SS_RYZH", + "EG_SZ_JDYS", + "EG_TC_Node", + "EG_TSCDS_CJ", + "EG_TSCDS_DG", + "EG_TSCDS_FG", + "EG_TSCDS_JT", + "EG_TSCDS_QT", + "EG_TSCDS_RW", + "EG_TSCDS_WP", + "EG_TSCDS_ZL", + "EG_TSCMB_GL", + "EG_TXZZ_ZH", + "EG_TX_CCHQ", + "EG_TX_CJPJ", + "EG_TX_JZRY", + "EG_TX_LJ", + "EG_TX_LJBC", + "EG_TX_SFBLS", + "EG_TX_WHLJ", + "EG_WB_KSH", + "EG_WXZ_QH", + "EG_XZ_QH", + "EG_YSQY_BBLLD", + "EG_YSQY_BLLD", + "EG_ZY_WBK", + "EG_ZZHBCJ", + "EG_ZZKZ_HT_node", + "EG_ZZ_BSYH", + "EG_ZZ_BYYH", + "EG_ZZ_HSYH", + "EG_ZZ_MHHT", + "EG_ZZ_SSKZ", + "ER_JBCH", + "ER_TX_ZZCJ" + ], + { + "title_aux": "Comfyui-ergouzi-Nodes" + } + ], + "https://github.com/11dogzi/Comfyui-ergouzi-kaiguan": [ + [ + "ALLty", + "EGRWGL", + "EGRYDZQHNode", + "EGSEED", + "GroupSwitchNode", + "GroupSwitchNodee", + "GroupSwitchNodeee", + "GroupSwitchNodeeee", + "GroupSwitchNodi", + "hulue", + "jinyong" + ], + { + "title_aux": "Comfyui-ergouzi-kaiguan" + } + ], + "https://github.com/11dogzi/Comfyui-ergouzi-samplers": [ + [ + "EGBYZZCYQ", + "EGCYQJB", + "EGCYQJBCJ" + ], + { + "title_aux": "Comfyui-ergouzi-samplers" + } + ], + "https://github.com/1hew/ComfyUI-1hewNodes": [ + [ + "ImageAddLabel", + "ImageBBoxOverlayByMask", + "ImageBatchToList", + "ImageBlendModesByAlpha", + "ImageBlendModesByCSS", + "ImageCropByMaskAlpha", + "ImageCropSquare", + "ImageCropWithBBoxMask", + "ImageEdgeCropPad", + "ImageEditStitch", + "ImageGetSize", + "ImageHLFreqCombine", + "ImageHLFreqSeparate", + "ImageHLFreqTransform", + "ImageListAppend", + "ImageListToBatch", + "ImageLumaMatte", + "ImagePasteByBBoxMask", + "ImagePlot", + "ImageResizeFluxKontext", + "ImageResizeUniversal", + "ImageSolid", + "ImageTileMerge", + "ImageTileSplit", + "ListCustomFloat", + "ListCustomInt", + "ListCustomSeed", + "ListCustomString", + "MaskBatchMathOps", + "MaskBatchToList", + "MaskCropByBBoxMask", + "MaskFillHole", + "MaskListToBatch", + "MaskMathOps", + "PathBuild", + "RangeMapping", + "StringCoordinateToBBoxMask", + "StringCoordinateToBBoxes", + "TextCustomExtract", + "TextFormat", + "TextJoinMulti", + "TextLoadLocal" + ], + { + "title_aux": "ComfyUI 1hewNodes" + } + ], + "https://github.com/1mckw/Comfyui-Gelbooru": [ + [ + "Gelbooru (ID)", + "Gelbooru (Random)", + "UrlsToImage" + ], + { + "title_aux": "Comfyui-Gelbooru" + } + ], + "https://github.com/1zhangyy1/comfyui-vidu-nodes": [ + [ + "Character2Video", + "Image2Video", + "StartEnd2Video", + "Text2Video", + "UpscaleVideo", + "VideoDownloader" + ], + { + "title_aux": "ComfyUI VIDU" + } + ], + "https://github.com/2frames/ComfyUI-AQnodes": [ + [ + "AQ_BatchAverageImage", + "AQ_BlendImages", + "AQ_CLIPSetLastLayer", + "AQ_ColorMatchImage", + "AQ_Gemini", + "AQ_ImageMaskSwitch", + "AQ_Image_DetailTransfer", + "AQ_Image_Pad", + "AQ_Increment", + "AQ_LoadImageBase64", + "AQ_MasksAndImagesAsList", + "AQ_Qwen", + "AQ_QwenLoader", + "AQ_Random", + "AQ_SaveImageWebpReturnBase64", + "AQ_SendImageToAPI", + "AQ_multiface_ApplyPulidFlux" + ], + { + "title_aux": "AQnodes for ComfyUI" + } + ], + "https://github.com/2kpr/ComfyUI-PMRF": [ + [ + "PMRF" + ], + { + "title_aux": "ComfyUI-PMRF" + } + ], + "https://github.com/2kpr/ComfyUI-UltraPixel": [ + [ + "UltraPixelLoad", + "UltraPixelProcess" + ], + { + "author": "italo", + "title_aux": "ComfyUI-UltraPixel" + } + ], + "https://github.com/311-code/ComfyUI-MagicClip_Strength": [ + [ + "CLIPTextEncodeSDXL_311_code" + ], + { + "title_aux": "ComfyUI MagicClip_Strength for SDXL" + } + ], + "https://github.com/31702160136/ComfyUI-GrsAI": [ + [ + "GPTImage_ImageToImage", + "GPTImage_TextToImage", + "GrsaiFluxKontext_ImageToImage", + "GrsaiFluxKontext_MultiImageToImage", + "GrsaiFluxKontext_TextToImage" + ], + { + "title_aux": "GrsAI api in ComfyUI" + } + ], + "https://github.com/42lux/ComfyUI-42lux": [ + [ + "FluxEmptyLatentSizePicker", + "ModelSamplingFluxNormalized", + "SoulSampler", + "SoulSamplerAdvanced", + "SoulSamplerDPM", + "SoulSamplerDPMAdvanced", + "SoulSamplerHybrid", + "SoulSamplerHybridAdvanced" + ], + { + "title_aux": "ComfyUI-42lux" + } + ], + "https://github.com/438443467/ComfyUI-GPT4V-Image-Captioner": [ + [ + "GPT4VCaptioner" + ], + { + "title_aux": "ComfyUI-GPT4V-Image-Captioner" + } + ], + "https://github.com/45uee/ComfyUI-Color_Transfer": [ + [ + "ColorPalette", + "ColorTransferReinhard", + "PaletteOptimalTransportTransfer", + "PaletteRbfTransfer", + "PaletteTransfer", + "PaletteTransferReinhard", + "PalleteTransferClustering", + "PalletteSoftTransfer" + ], + { + "title_aux": "ComfyUI-Color_Transfer" + } + ], + "https://github.com/54rt1n/ComfyUI-DareMerge": [ + [ + "DM_AdvancedDareModelMerger", + "DM_AdvancedModelMerger", + "DM_AttentionGradient", + "DM_BlockGradient", + "DM_BlockModelMerger", + "DM_DareClipMerger", + "DM_DareModelMergerBlock", + "DM_DareModelMergerElement", + "DM_DareModelMergerMBW", + "DM_GradientEdit", + "DM_GradientOperations", + "DM_GradientReporting", + "DM_InjectNoise", + "DM_LoRALoaderTags", + "DM_LoRAReporting", + "DM_MBWGradient", + "DM_MagnitudeMasker", + "DM_MaskEdit", + "DM_MaskOperations", + "DM_MaskReporting", + "DM_ModelReporting", + "DM_NormalizeModel", + "DM_QuadMasker", + "DM_ShellGradient", + "DM_SimpleMasker" + ], + { + "title_aux": "ComfyUI-DareMerge" + } + ], + "https://github.com/5x00/ComfyUI-PiAPI-Faceswap": [ + [ + "Face Swapper" + ], + { + "title_aux": "ComfyUI-PiAPI-Faceswap" + } + ], + "https://github.com/5x00/ComfyUI-VLM-Captions": [ + [ + "Image To Caption" + ], + { + "title_aux": "ComfyUI-VLM_Captions" + } + ], + "https://github.com/6174/comflowy-nodes": [ + [ + "Comflowy_Clarity_Upscale", + "Comflowy_Extract_JSON", + "Comflowy_Flux", + "Comflowy_Flux_Dev_Lora", + "Comflowy_Flux_Pro_Ultra", + "Comflowy_Hailuo", + "Comflowy_Http_Request", + "Comflowy_Ideogram", + "Comflowy_Kling", + "Comflowy_LLM", + "Comflowy_Load_JSON", + "Comflowy_Luma", + "Comflowy_Omost_LLM", + "Comflowy_Omost_Load_Canvas_Conditioning", + "Comflowy_Omost_Load_Canvas_Python_Code", + "Comflowy_Omost_Preview", + "Comflowy_Omost_To_Conditioning", + "Comflowy_Preview_JSON", + "Comflowy_Preview_Video", + "Comflowy_Recraft", + "Comflowy_Set_API_Key" + ], + { + "title_aux": "Comflowy's Custom Nodes" + } + ], + "https://github.com/807502278/ComfyUI-3D-MeshTool": [ + [ + "Auto_Normal", + "List_to_Tensor", + "Load_OBJ", + "Mesh_Clean_Data", + "Mesh_Cleanup", + "Mesh_Data_Get", + "Mesh_Data_Set", + "Mesh_Data_Statistics", + "Mesh_Optimization", + "Mesh_Subdivide", + "RT-to-camposes", + "Tensor_to_List", + "UV_options", + "UnwrapUV_Auto_xatlas", + "UnwrapUV_xatlas", + "array-append", + "array-attribute", + "array-convert", + "array-end-increment", + "array-end-step", + "array-is-null", + "array-number-to-angle", + "array-select-element", + "array-step", + "array-step-increment", + "array-t", + "array-to-camposes", + "cam-pos-bus", + "get-tensor-shape", + "img-bath-rotationZ", + "img-to-tensor", + "json-to-campos", + "mesh_data_bus", + "mesh_remap_cubvh", + "ply_load", + "ply_normalize", + "ply_save", + "show_any", + "string-to-array", + "tensor-new", + "tensor-shape", + "tensor-to-img", + "vc_to_texture" + ], + { + "author": "807502278", + "description": "A simple 3D model processing tool within ComfyUI", + "nickname": "3D Mesh Tool", + "title": "3D Mesh Tool", + "title_aux": "ComfyUI-3D-MeshTool" + } + ], + "https://github.com/807502278/ComfyUI-WJNodes": [ + [ + "Accurate_mask_clipping", + "Any_Pipe", + "ApplyEasyOCR_batch", + "AudioDuration_wan", + "Batch_Average", + "Bilateral_Filter", + "ColorData_HSV_Capture", + "Color_Data_Break", + "Color_check_Name", + "ComfyUI_Path_Out", + "Composite_Application_pro", + "Composite_Basic", + "Composite_Batch", + "Composite_Canvas_adv", + "Composite_Coordinate", + "Composite_Global_adv", + "Composite_Mask", + "Composite_Merge_pro", + "Composite_Other", + "Composite_Scale", + "Cutting_video", + "Detecting_videos_mask", + "Determine_Type", + "Folder_Operations_CH", + "Graphics_Detection_Reference", + "ImageCompositeMask_Adv", + "ListMerger", + "Load_Image_Adv", + "Load_Image_From_Path", + "Mask_Detection", + "PrimitiveNode", + "Random_Select_Prompt", + "Robust_Imager_Merge", + "Run_BEN_v2", + "Run_torchvision_model", + "Sam2AutoSegmentation_data", + "SaveMP4", + "SaveMP4_batch", + "Save_Image_Out", + "Save_Image_To_Path", + "SegmDetectorCombined_batch", + "SelectBatch_paragraph", + "Select_Batch_v2", + "Select_Images_Batch", + "Split_Path", + "Str_Append", + "Video_Fade", + "Video_MaskBasedSplit", + "Video_OverlappingSeparation_test", + "WAS_Mask_Fill_Region_batch", + "adv_crop", + "any_math", + "any_math_v2", + "audio_resample", + "audio_scale", + "bbox_restore_mask", + "color_segmentation", + "color_segmentation_v2", + "coords_select_mask", + "crop_by_bboxs", + "crop_data_CoordinateSmooth", + "crop_data_edit", + "filter_DensePose_color", + "get_image_data", + "image_math", + "image_math_value", + "invert_channel_adv", + "load_BEN_model", + "load_ColorName_config", + "load_EasyOCR_model", + "load_color_config", + "load_model_value", + "load_torchvision_model", + "maskCompositeMask_Adv", + "mask_and_mask_math", + "mask_crop_option_Basic", + "mask_crop_option_SmoothCrop", + "mask_crop_square", + "mask_line_mapping", + "mask_select_mask", + "run_yolo_bboxs", + "run_yolo_bboxs_v2", + "sort_images_batch" + ], + { + "title_aux": "ComfyUI-WJNodes" + } + ], + "https://github.com/807502278/ComfyUI_MaskGCT": [ + [ + "audio_capture_percentage", + "audio_resample", + "audio_scale", + "from_path_load_audio", + "get_audio_data", + "get_text_data", + "load_maskgct_model", + "load_w2vbert_model", + "maskgct_pipeline", + "maskgct_run_v2", + "maskgct_setting", + "multilingual_slice", + "remove_blank_space", + "whisper_large_v3" + ], + { + "title_aux": "ComfyUI_MaskGCT" + } + ], + "https://github.com/80sVectorz/ComfyUI-Static-Primitives": [ + [ + "FloatStaticPrimitive", + "IntStaticPrimitive", + "StringMlStaticPrimitive", + "StringStaticPrimitive" + ], + { + "title_aux": "ComfyUI-Static-Primitives" + } + ], + "https://github.com/834t/ComfyUI_834t_scene_composer": [ + [ + "B34tSceneComposerNode" + ], + { + "title_aux": "Scene Composer for ComfyUI" + } + ], + "https://github.com/852wa/ComfyUI-AAP": [ + [ + "AdvancedAlphaProcessor" + ], + { + "title_aux": "ComfyUI-AdvancedAlphaProcessor" + } + ], + "https://github.com/852wa/ComfyUI-ColorshiftColor": [ + [ + "ColorshiftColor", + "CsCFill", + "CsCPaletteEditor" + ], + { + "title_aux": "ComfyUI-ColorshiftColor" + } + ], + "https://github.com/A043-studios/ComfyUI-ASDF-Pixel-Sort-Nodes": [ + [ + "PixelSortAdvancedNode", + "PixelSortNode" + ], + { + "title_aux": "ComfyUI ASDF Pixel Sort Nodes" + } + ], + "https://github.com/A043-studios/Comfyui-ascii-generator": [ + [ + "ASCIIGeneratorNode" + ], + { + "title_aux": "ComfyUI ASCII Generator Node" + } + ], + "https://github.com/A043-studios/comfyui-deforum-x-flux-nodes": [ + [ + "DeforumAnimParamsNode", + "DeforumBaseParamsNode", + "DeforumCacheLatentNode", + "DeforumConditioningBlendNode", + "DeforumDepthWarping", + "DeforumDiffusionParamsNode", + "DeforumFluxSampler", + "DeforumGetCachedLatentNode", + "DeforumInterpolation", + "DeforumIteratorNode", + "DeforumPromptNode", + "DeforumRenderer", + "DeforumTranslationParamsNode", + "DeforumVideoInput", + "DeforumVideoOutput" + ], + { + "title_aux": "ComfyUI Deforum-X-Flux Nodes" + } + ], + "https://github.com/A043-studios/comfyui-pixel3dmm": [ + [ + "FLAMEOptimizer", + "FaceReconstructor3D", + "MeshExporter", + "NormalPredictor", + "Pixel3DMMLoader", + "UVPredictor" + ], + { + "title_aux": "Pixel3DMM ComfyUI Nodes" + } + ], + "https://github.com/A4P7J1N7M05OT/ComfyUI-AutoColorGimp": [ + [ + "AutoColorGimp" + ], + { + "title_aux": "ComfyUI-AutoColorGimp" + } + ], + "https://github.com/A4P7J1N7M05OT/ComfyUI-PixelOE-Wrapper": [ + [ + "PixelOE", + "PixelOETorch" + ], + { + "title_aux": "ComfyUI-PixelOE-Wrapper" + } + ], + "https://github.com/AARG-FAN/Image-Vector-for-ComfyUI": [ + [ + "AIraster" + ], + { + "title_aux": "Image-vector-for-ComfyUI" + } + ], + "https://github.com/AEmotionStudio/ComfyUI-DiscordSend": [ + [ + "DiscordSendSaveImage", + "DiscordSendSaveVideo" + ], + { + "title_aux": "ComfyUI-DiscordSend" + } + ], + "https://github.com/AEmotionStudio/ComfyUI-ShaderNoiseKSampler": [ + [ + "AdvancedImageComparer", + "ShaderNoiseKSampler", + "ShaderNoiseKSamplerDirect", + "Video Comparer", + "VideoComparer" + ], + { + "title_aux": "ComfyUI-ShaderNoiseKSampler" + } + ], + "https://github.com/AIExplorer25/ComfyUI_AutoDownloadModels": [ + [ + "ALIMAMAFUNCONTROLWANModelsAutoDownload", + "AutoDownloadALLModels", + "AutoDownloadModels", + "AutoInstallRequirements_txt", + "GetModelsFromWorkflow", + "SetModelPath", + "ShowModelsAndFolderMappings", + "WANALMAMAModelsAutoDownload", + "WANModelsAutoDownload" + ], + { + "title_aux": "ComfyUI_AutoDownloadModels" + } + ], + "https://github.com/AIExplorer25/ComfyUI_ChatGptHelper": [ + [ + "ChatGptHelper" + ], + { + "title_aux": "ComfyUI_ChatGptHelper" + } + ], + "https://github.com/AIExplorer25/ComfyUI_ImageCaptioner": [ + [ + "CheckImageCaptionsData", + "ImageCaptioner", + "ImageCaptionerPostProcessing", + "Quen3Helper", + "Quen3HelperGGUF" + ], + { + "title_aux": "ComfyUI_ImageCaptioner" + } + ], + "https://github.com/AIFSH/AniTalker-ComfyUI": [ + [ + "AniTalkerNode", + "PreViewVideo" + ], + { + "title_aux": "AniTalker-ComfyUI" + } + ], + "https://github.com/AIFSH/ComfyUI-3d-photo-inpainting": [ + [ + "LoadImagePath", + "PreViewVideo", + "TreeDNode" + ], + { + "title_aux": "ComfyUI-3d-photo-inpainting" + } + ], + "https://github.com/AIFSH/ComfyUI-AuraSR": [ + [ + "AuraSRNode" + ], + { + "title_aux": "AIFSH/ComfyUI-AuraSR" + } + ], + "https://github.com/AIFSH/ComfyUI-DiffSynth-Studio": [ + [ + "ControlNetPathLoader", + "DiffTextNode", + "DiffutoonNode", + "ExVideoNode", + "LoadVideo", + "PreViewVideo", + "SDPathLoader" + ], + { + "title_aux": "ComfyUI-DiffSynth-Studio" + } + ], + "https://github.com/AIFSH/ComfyUI-FishSpeech": [ + [ + "FishSpeech_INFER", + "FishSpeech_INFER_SRT", + "LoadAudio", + "LoadSRT", + "PreViewAudio" + ], + { + "title_aux": "ComfyUI-FishSpeech" + } + ], + "https://github.com/AIFSH/ComfyUI-GPT_SoVITS": [ + [ + "GPT_SOVITS_FT", + "GPT_SOVITS_INFER", + "GPT_SOVITS_TTS", + "LoadAudio", + "LoadSRT", + "PreViewAudio" + ], + { + "title_aux": "ComfyUI-GPT_SoVITS" + } + ], + "https://github.com/AIFSH/ComfyUI-Hallo": [ + [ + "HalloNode", + "LoadAudioPath", + "LoadImagePath", + "PreViewVideo" + ], + { + "title_aux": "ComfyUI-Hallo" + } + ], + "https://github.com/AIFSH/ComfyUI-I2V-Adapter": [ + [ + "I2V_AdapterNode", + "LoraPathLoader", + "MotionLoraLoader", + "PreViewVideo", + "PromptNode" + ], + { + "title_aux": "ComfyUI-I2V-Adapter" + } + ], + "https://github.com/AIFSH/ComfyUI-IP_LAP": [ + [ + "CombineAudioVideo", + "IP_LAP", + "LoadVideo", + "PreViewVideo" + ], + { + "title_aux": "ComfyUI-IP_LAP" + } + ], + "https://github.com/AIFSH/ComfyUI-Live2DViewer": [ + [ + "Live2DViewer", + "LoadAudio" + ], + { + "title_aux": "ComfyUI-Live2DViewer" + } + ], + "https://github.com/AIFSH/ComfyUI-MARS5-TTS": [ + [ + "LoadAudioPath", + "MARS5TTS_Node", + "PreViewAudio", + "TTSTextEncode" + ], + { + "title_aux": "ComfyUI-MARS5-TTS" + } + ], + "https://github.com/AIFSH/ComfyUI-MimicBrush": [ + [ + "MimicBrushNode" + ], + { + "title_aux": "ComfyUI-MimicBrush" + } + ], + "https://github.com/AIFSH/ComfyUI-MimicMotion": [ + [ + "LoadVideo", + "MimicMotionNode", + "PreViewVideo" + ], + { + "title_aux": "ComfyUI-MimicMotion" + } + ], + "https://github.com/AIFSH/ComfyUI-MuseTalk_FSH": [ + [ + "CombineAudioVideo", + "LoadVideo", + "MuseTalk", + "MuseTalkRealTime", + "PreViewVideo" + ], + { + "title_aux": "ComfyUI-MuseTalk_FSH" + } + ], + "https://github.com/AIFSH/ComfyUI-RVC": [ + [ + "CombineAudio", + "LoadAudio", + "PreViewAudio", + "RVC_Infer", + "RVC_Train" + ], + { + "title_aux": "ComfyUI-RVC" + } + ], + "https://github.com/AIFSH/ComfyUI-UVR5": [ + [ + "LoadAudioPath", + "PreViewAudio", + "UVR5_Node" + ], + { + "title_aux": "ComfyUI-UVR5" + } + ], + "https://github.com/AIFSH/ComfyUI-UniAnimate": [ + [ + "LoadImagePath", + "LoadVideo", + "PoseAlignNode", + "PreViewVideo", + "UniAnimateNode" + ], + { + "title_aux": "ComfyUI-UniAnimate" + } + ], + "https://github.com/AIFSH/ComfyUI-WhisperX": [ + [ + "LoadAudioVideoPath", + "PreViewSRT", + "SRTToString", + "WhisperX" + ], + { + "title_aux": "ComfyUI-WhisperX" + } + ], + "https://github.com/AIFSH/ComfyUI-XTTS": [ + [ + "LoadAudioPath", + "LoadSRT", + "PreViewAudio", + "XTTS_INFER", + "XTTS_INFER_SRT" + ], + { + "title_aux": "ComfyUI-XTTS" + } + ], + "https://github.com/AIFSH/ComfyUI_V-Express": [ + [ + "LoadAudioPath", + "LoadImagePath", + "LoadVideo", + "PreViewVideo", + "VExpress" + ], + { + "title_aux": "ComfyUI_V-Express" + } + ], + "https://github.com/AIFSH/CosyVoice-ComfyUI": [ + [ + "CosyVoiceDubbingNode", + "CosyVoiceNode", + "LoadSRT", + "TextNode" + ], + { + "title_aux": "CosyVoice-ComfyUI" + } + ], + "https://github.com/AIFSH/DHLive-ComfyUI": [ + [ + "CombineVideo", + "DHLIVELoadVideo", + "DHLiveNode", + "PreViewVideo", + "StaticVideo" + ], + { + "title_aux": "DHLive-ComfyUI" + } + ], + "https://github.com/AIFSH/DiffMorpher-ComfyUI": [ + [ + "DiffMorpherNode", + "PreViewGIF", + "TextNode" + ], + { + "title_aux": "DiffMorpher-ComfyUI" + } + ], + "https://github.com/AIFSH/DiffSynth-ComfyUI": [ + [ + "CogVideoNode", + "DownloadModelsNode", + "LoadVideo", + "PreViewVideo", + "TextEncode" + ], + { + "title_aux": "DiffSynth-ComfyUI" + } + ], + "https://github.com/AIFSH/EchoMimicV2-ComfyUI": [ + [ + "EchoMimicV2Node", + "EchoMimicV2PoseNode" + ], + { + "title_aux": "EchoMimicV2-ComfyUI" + } + ], + "https://github.com/AIFSH/EzAudio-ComfyUI": [ + [ + "EzAudioControlNetNode", + "EzAudioEditNode", + "EzAudioNode", + "TextPromptNode" + ], + { + "title_aux": "EzAudio-ComfyUI" + } + ], + "https://github.com/AIFSH/F5-TTS-ComfyUI": [ + [ + "F5TTSNode" + ], + { + "title_aux": "F5-TTS-ComfyUI" + } + ], + "https://github.com/AIFSH/FancyVideo-ComfyUI": [ + [ + "FancyVideoI2VNode", + "FancyVideoV2VNode" + ], + { + "title_aux": "FancyVideo-ComfyUI" + } + ], + "https://github.com/AIFSH/FireRedTTS-ComfyUI": [ + [ + "FireRedTTSNode" + ], + { + "title_aux": "FireRedTTS-ComfyUI" + } + ], + "https://github.com/AIFSH/GSTTS-ComfyUI": [ + [ + "ASRNode", + "AudioSlicerNode", + "ConfigGPTNode", + "ConfigSoVITSNode", + "DatasetNode", + "ExperienceNode", + "GSFinetuneNone", + "GSVTTSNode", + "LoadSRT", + "PreViewSRT", + "TSCY_Node", + "TextDictNode" + ], + { + "title_aux": "GSTTS-ComfyUI" + } + ], + "https://github.com/AIFSH/HivisionIDPhotos-ComfyUI": [ + [ + "AddBackgroundNode", + "AddWaterMarkNode", + "ENHivisionParamsNode", + "HivisionLayOutNode", + "HivisionNode", + "LaterProcessNode", + "ZHHivisionParamsNode" + ], + { + "author": "cuny", + "description": "", + "title_aux": "HivisionIDPhotos-ComfyUI" + } + ], + "https://github.com/AIFSH/IMAGDressing-ComfyUI": [ + [ + "IMAGDressingNode", + "TextNode" + ], + { + "title_aux": "IMAGDressing-ComfyUI" + } + ], + "https://github.com/AIFSH/JoyHallo-ComfyUI": [ + [ + "JoyHalloNode" + ], + { + "title_aux": "JoyHallo-ComfyUI" + } + ], + "https://github.com/AIFSH/MaskGCT-ComfyUI": [ + [ + "MaskGCTNode" + ], + { + "title_aux": "MaskGCT-ComfyUI" + } + ], + "https://github.com/AIFSH/MiniMates-ComfyUI": [ + [ + "MiniMatesNode" + ], + { + "title_aux": "MiniMates-ComfyUI" + } + ], + "https://github.com/AIFSH/OmniGen-ComfyUI": [ + [ + "OmniGenLoader", + "OmniGenNode" + ], + { + "title_aux": "OmniGen-ComfyUI" + } + ], + "https://github.com/AIFSH/PyramidFlow-ComfyUI": [ + [ + "PyramidFlowNode" + ], + { + "title_aux": "PyramidFlow-ComfyUI" + } + ], + "https://github.com/AIFSH/RealisDance-ComfyUI": [ + [ + "LoadFile", + "LoadVideo", + "PreViewVideo", + "RealisDanceNode" + ], + { + "title_aux": "RealisDance-ComfyUI" + } + ], + "https://github.com/AIFSH/SenseVoice-ComfyUI": [ + [ + "SenseVoiceNode", + "ShowTextNode" + ], + { + "title_aux": "SenseVoice-ComfyUI" + } + ], + "https://github.com/AIFSH/StyleShot-ComfyUI": [ + [ + "StyleShotNode", + "TextNode" + ], + { + "title_aux": "StyleShot-ComfyUI" + } + ], + "https://github.com/AIFSH/VideoSys-ComfyUI": [ + [ + "PreViewVideo", + "TextNode", + "VideoSysNode" + ], + { + "title_aux": "VideoSys-ComfyUI" + } + ], + "https://github.com/AIFSH/ViewCrafter-ComfyUI": [ + [ + "LoadVideo", + "PreViewVideo", + "ViewCrafterTxTNode" + ], + { + "title_aux": "ViewCrafter-ComfyUI" + } + ], + "https://github.com/AIFSH/VocalSeparation-ComfyUI": [ + [ + "CombineAudioNode", + "VocalSeparationNode" + ], + { + "title_aux": "VocalSeparation-ComfyUI" + } + ], + "https://github.com/AIGCTeam/ComfyUI_kkTranslator_nodes": [ + [ + "LoadMarianMTCheckPoint", + "PromptBaiduFanyiToText", + "PromptTranslateToText" + ], + { + "title_aux": "ComfyUI_kkTranslator_nodes" + } + ], + "https://github.com/AIGODLIKE/ComfyUI-CUP": [ + [ + "Mask", + "OpenPose", + "OpenPoseCanny", + "OpenPoseDepth", + "OpenPoseFace", + "OpenPoseFull", + "OpenPoseFullExtraLimb", + "OpenPoseHand", + "OpenPoseKeyPose", + "OpenPoseLineart", + "OpenPoseMediaPipeFace", + "PreviewAudio", + "SaveAudioBL", + "SaveModel", + "\u5b58\u50a8", + "\u5bfc\u5165", + "\u622a\u56fe", + "\u6750\u8d28\u56fe", + "\u8f93\u5165\u56fe\u50cf", + "\u9884\u89c8" + ], + { + "title_aux": "ComfyUI-CUP" + } + ], + "https://github.com/AIGODLIKE/ComfyUI-ToonCrafter": [ + [ + "ToonCrafterNode", + "ToonCrafterWithSketch" + ], + { + "title_aux": "ComfyUI-ToonCrafter" + } + ], + "https://github.com/AIPOQUE/ComfyUI-APQNodes": [ + [ + "ColorPalette|AIPOQUE" + ], + { + "title_aux": "ComfyUI-APQNodes" + } + ], + "https://github.com/AIToldMeTo/comfyui-cache-cleaner": [ + [ + "CacheCleaner" + ], + { + "title_aux": "ComfyUI Cache Cleaner Node" + } + ], + "https://github.com/AIWarper/ComfyUI-NormalCrafterWrapper": [ + [ + "DetailTransfer", + "NormalCrafterNode" + ], + { + "title_aux": "NormalCrafterWrapper" + } + ], + "https://github.com/AIWarper/ComfyUI-WarperNodes": [ + [ + "DWPoseScalerNode_Warper", + "FacialPartMaskFromPose_Warper", + "FlowConfig_Warper", + "FlowGetFlow_Warper", + "FlowVisualizerNode_Warper", + "GetBatchByIndex_Warper", + "GetRaftFlow_Warper", + "MouthMaskFromPose_Warper", + "SmartOverlappingBatcher_Warper", + "SmartVideoBatcher_Warper" + ], + { + "title_aux": "ComfyUI-WarperNodes" + } + ], + "https://github.com/AInseven/ComfyUI-fastblend": [ + [ + "FillDarkMask", + "InterpolateKeyFrame", + "MaskListcaptoBatch", + "Merge_Image_List", + "MyOpenPoseNode", + "SmoothVideo", + "alert_when_finished", + "reBatchImage" + ], + { + "title_aux": "ComfyUI-fastblend" + } + ], + "https://github.com/AIrjen/OneButtonPrompt": [ + [ + "AutoNegativePrompt", + "CreatePromptVariant", + "OneButtonArtify", + "OneButtonFlufferize", + "OneButtonPreset", + "OneButtonPrompt", + "OneButtonSuperPrompt", + "SavePromptToFile" + ], + { + "title_aux": "One Button Prompt" + } + ], + "https://github.com/AJO-reading/ComfyUI-AjoNodes": [ + [ + "AJO_AudioCollectAndConcat", + "AJO_PreviewAudio", + "AJO_SaveAudio", + "AJO_VfiSkipListCalculator" + ], + { + "title_aux": "ComfyUI-AjoNodes" + } + ], + "https://github.com/AKharytonchyk/ComfyUI-telegram-bot-node": [ + [ + "SaveToTelegram", + "TelegramListener", + "author", + "description", + "files", + "install_type", + "keywords", + "license", + "name", + "nodename_pattern", + "pip", + "reference", + "version" + ], + { + "title_aux": "ComfyUI-telegram-bot-node" + } + ], + "https://github.com/ALatentPlace/ComfyUI_yanc": [ + [ + "> Bloom", + "> Blur", + "> Brightness", + "> Clear Text", + "> Combine Channels", + "> Contrast", + "> Divide Channels", + "> Edge Enhance", + "> Film Grain", + "> Float to Int", + "> Fog", + "> Get Mean Color", + "> HUE", + "> Int", + "> Int to Text", + "> Layer Weights (for IPAMS)", + "> Lens Distortion", + "> Light Source Mask", + "> Load Image", + "> Load Image From Folder", + "> Mask Curves", + "> NIKSampler", + "> Noise From Image", + "> Normal Map Lighting", + "> RGB Color", + "> RGB Shift", + "> Resolution by Aspect Ratio", + "> Rotate Image", + "> Saturation", + "> Save Image", + "> Save Text", + "> Scale Image to Side", + "> Scanlines", + "> Sharpen", + "> Text", + "> Text Combine", + "> Text Count", + "> Text Pick Line by Index", + "> Text Pick Random Line", + "> Text Random Weights", + "> Text Replace", + "> Vignette" + ], + { + "title_aux": "ComfyUI_yanc" + } + ], + "https://github.com/ALatentPlace/YANC_LMStudio": [ + [ + "> LMStudio", + "> Select LMS Model" + ], + { + "title_aux": "YANC_LMStudio" + } + ], + "https://github.com/APZmedia/APZmedia-comfy-together-lora": [ + [ + "TogetherImageGenerator", + "TogetherImageGeneratorLoRA" + ], + { + "title_aux": "APZmedia Together Image Generator for ComfyUI" + } + ], + "https://github.com/APZmedia/APZmedia-comfyui-fast-image-save": [ + [ + "APZmedia Fast image save" + ], + { + "title_aux": "APZmedia Fast Image Save Node" + } + ], + "https://github.com/APZmedia/ComfyUI-APZmedia-cleanName-from-string": [ + [ + "APZmediaStandardFilenameBuilder", + "CleanFileNameNode", + "GenerateFilePathNode" + ], + { + "title_aux": "APZmedia Clean Name" + } + ], + "https://github.com/ARZUMATA/ComfyUI-ARZUMATA": [ + [ + "CachingCLIPTextEncodeFlux|ARZUMATA", + "CachingCLIPTextEncode|ARZUMATA", + "ImageCacher", + "ImageLoaderWithPath|ARZUMATA", + "JDC_ImageLoader", + "Sampler Selector|ARZUMATA", + "Scheduler Selector|ARZUMATA" + ], + { + "title_aux": "ComfyUI-ARZUMATA" + } + ], + "https://github.com/ARZUMATA/ComfyUI-ARZUMATA-PixelIt": [ + [ + "PixelIt" + ], + { + "title_aux": "ComfyUI-ARZUMATA-PixelIt" + } + ], + "https://github.com/ARZUMATA/ComfyUI-ARZUMATA-Qwen2": [ + [ + "Image2Base64", + "Qwen2ModelLoader", + "Qwen2ModelRunInference" + ], + { + "title_aux": "ComfyUI-Qwen2" + } + ], + "https://github.com/Aaron-CHM/ComfyUI-z-a1111-sd-webui-DanTagGen": [ + [ + "DanTagGen" + ], + { + "title_aux": "z-a1111-sd-webui-DanTagGen" + } + ], + "https://github.com/AbdullahAlfaraj/Comfy-Photoshop-SD": [ + [ + "APS_LatentBatch", + "APS_Seed", + "ContentMaskLatent", + "ControlNetScript", + "ControlnetUnit", + "GaussianLatentImage", + "GetConfig", + "LoadImageBase64", + "LoadImageWithMetaData", + "LoadLorasFromPrompt", + "MaskExpansion" + ], + { + "title_aux": "Comfy-Photoshop-SD" + } + ], + "https://github.com/AbstractEyes/comfyui-lycoris": [ + [ + "ABS_ConcatPrompts", + "ABS_PromptNode", + "LycorisLoaderNode" + ], + { + "title_aux": "comfyui-lycoris" + } + ], + "https://github.com/AbyssBadger0/ComfyUI_BadgerTools": [ + [ + "ApplyMaskToImage-badger", + "CropImageByMask-badger", + "ExpandImageWithColor-badger", + "FindThickLinesFromCanny-badger", + "Find_closest_factors-badger", + "FloatToInt-badger", + "FloatToString-badger", + "FrameToVideo-badger", + "GETRequset-badger", + "GarbageCollect-badger", + "GetColorFromBorder-badger", + "GetDirName-badger", + "GetUUID-badger", + "IdentifyBorderColorToMask-badger", + "IdentifyColorToMask-badger", + "ImageNormalization-badger", + "ImageOverlap-badger", + "ImageScaleToSide-badger", + "IntToString-badger", + "IntToStringAdvanced-badger", + "LoadImageAdvanced-badger", + "LoadImagesFromDirListAdvanced-badger", + "MapColorsToPalette-badger", + "NormalizationNumber-badger", + "ReduceColors-badger", + "RotateImageWithPadding-badger", + "SegmentToMaskByPoint-badger", + "SimpleBoolean-badger", + "StringToFizz-badger", + "TextListToString-badger", + "ToPixel-badger", + "ToPixelV2-badger", + "TrimTransparentEdges-badger", + "VideoCutFromDir-badger", + "VideoToFrame-badger", + "deleteDir-badger", + "findCenterOfMask-badger", + "getImageSide-badger", + "getParentDir-badger", + "mkdir-badger" + ], + { + "title_aux": "ComfyUI_BadgerTools" + } + ], + "https://github.com/AbyssBadger0/ComfyUI_Kolors_awesome_prompts": [ + [ + "KolorsAwesomePrompts" + ], + { + "title_aux": "Kolors Awesome Prompts" + } + ], + "https://github.com/Acly/comfyui-inpaint-nodes": [ + [ + "INPAINT_ApplyFooocusInpaint", + "INPAINT_DenoiseToCompositingMask", + "INPAINT_ExpandMask", + "INPAINT_InpaintWithModel", + "INPAINT_LoadFooocusInpaint", + "INPAINT_LoadInpaintModel", + "INPAINT_MaskedBlur", + "INPAINT_MaskedFill", + "INPAINT_VAEEncodeInpaintConditioning" + ], + { + "title_aux": "ComfyUI Inpaint Nodes" + } + ], + "https://github.com/Acly/comfyui-tooling-nodes": [ + [ + "ETN_ApplyMaskToImage", + "ETN_ApplyReferenceImages", + "ETN_AttentionMask", + "ETN_BackgroundRegion", + "ETN_CropImage", + "ETN_DefineRegion", + "ETN_ExtractImageTile", + "ETN_ExtractMaskTile", + "ETN_GenerateTileMask", + "ETN_KritaCanvas", + "ETN_KritaImageLayer", + "ETN_KritaMaskLayer", + "ETN_KritaOutput", + "ETN_KritaSelection", + "ETN_KritaSendText", + "ETN_KritaStyle", + "ETN_ListRegionMasks", + "ETN_LoadImageBase64", + "ETN_LoadMaskBase64", + "ETN_MergeImageTile", + "ETN_NSFWFilter", + "ETN_Parameter", + "ETN_ReferenceImage", + "ETN_SendImageWebSocket", + "ETN_TileLayout", + "ETN_Translate" + ], + { + "title_aux": "ComfyUI Nodes for External Tooling" + } + ], + "https://github.com/AconexOfficial/ComfyUI_GOAT_Nodes": [ + [ + "Advanced_Upscale_Image_Using_Model", + "Capped_Float_Positive", + "Capped_Int_Positive", + "Embedding_Selector", + "Fast_Color_Match", + "Fast_Film_Grain", + "Get_Side_Length_Of_Image", + "Image_Crop", + "Image_Dimensions", + "Image_Stitch", + "Image_Tiler", + "Image_Untiler", + "Int_Divide_Rounded", + "Sampler_Settings", + "Smart_Seed", + "Triple_Prompt" + ], + { + "title_aux": "ComfyUI GOAT Nodes" + } + ], + "https://github.com/Aero-Ex/ComfyUI-Vision-LLM-Analyzer": [ + [ + "VisionLLMNode" + ], + { + "title_aux": "ComfyUI Vision LLM Analyzer Node" + } + ], + "https://github.com/Aerse/ComfyUI-Seed-Nodes": [ + [ + "Seed-Nodes: ImagePixelator", + "Seed-Nodes: ImageTo3D", + "Seed-Nodes: ImageTransparencyCrop", + "Seed-Nodes: LoadImage", + "Seed-Nodes: LoadMultipleImages", + "Seed-Nodes: QwenVLAPI", + "Seed-Nodes: SLICPixelator", + "Seed-Nodes: ScreenModeRemoveBlack", + "Seed-Nodes: SeedSaveAudio", + "Seed-Nodes: SiliconFlowVLAPI" + ], + { + "title_aux": "ComfyUI-Seed-Nodes" + } + ], + "https://github.com/AgencyMind/ComfyUI-Satori": [ + [ + "TemporalInvestigator", + "WhyDidItBreak" + ], + { + "title_aux": "ComfyUI-Satori" + } + ], + "https://github.com/AhBumm/ComfyUI_BillBum_APIset_Nodes": [ + [ + "BillBum_Modified_Base64_Url2Data_Node", + "BillBum_Modified_Base64_Url2Img_Node", + "BillBum_Modified_Dalle_API_Node", + "BillBum_Modified_DropoutToken_Node", + "BillBum_Modified_Flux_API_Node", + "BillBum_Modified_Flux_API_with_imgInput", + "BillBum_Modified_GPTImage1_API_Node", + "BillBum_Modified_Ideogram_API_Node", + "BillBum_Modified_ImageSplit_Node", + "BillBum_Modified_Image_API_Call_Node", + "BillBum_Modified_LLM_API_Node", + "BillBum_Modified_LLM_ForceStream_Mode", + "BillBum_Modified_Recraft_API_Node", + "BillBum_Modified_RegText_Node", + "BillBum_Modified_SD3_API_Node", + "BillBum_Modified_Structured_LLM_Node(Imperfect)", + "BillBum_Modified_VisionLM_API_Node", + "BillBum_Modified_img2b64_url_Node", + "BillBum_NonSysPrompt_VLM_API_Node", + "Input_Text", + "Text_Concat" + ], + { + "nodename_pattern": "\\(BillBum\\)$", + "title_aux": "Customizable API Call Nodes by BillBum" + } + ], + "https://github.com/AiMiDi/ComfyUI-Aimidi-nodes": [ + [ + "Add Tag", + "Clear Tag", + "Load Images Pair Batch", + "Merge Tag", + "Move Tag To Top", + "Reserve Tag", + "Save Images Pair" + ], + { + "title_aux": "ComfyUI-Aimidi-nodes" + } + ], + "https://github.com/AkashKarnatak/ComfyUI_faishme": [ + [ + "Faishme Debug", + "Faishme Load Image from Glob", + "Faishme Mannequin to Model Loader", + "Faishme Memory Debug", + "Faishme Moondream", + "Faishme Repeat BBOX", + "Faishme Repeat Image Batch", + "Faishme Repeat Latent Batch", + "Faishme Repeat Tensor Batch", + "Faishme Save Image", + "Faishme Stack Images", + "Faishme Stack Latents", + "Faishme Unstack Images", + "Faishme Unstack Latents", + "Load Fashion Model" + ], + { + "title_aux": "ComfyUI_faishme" + } + ], + "https://github.com/Aksaz/comfyui-seamless-clone": [ + [ + "Seamless Clone" + ], + { + "title_aux": "seamless-clone-comfyui" + } + ], + "https://github.com/Alexankharin/camera-comfyUI": [ + [ + "CameraInterpolationNode", + "CameraMotionNode", + "CameraTrajectoryNode", + "CombineDepthsNode", + "DepthEstimatorNode", + "DepthFramesToVideo", + "DepthRenormalizer", + "DepthToImageNode", + "DepthToPointCloud", + "FisheyeDepthEstimator", + "LoadPointCloud", + "LoadTrajectory", + "OutpaintAnyProjection", + "PointCloudCleaner", + "PointCloudUnion", + "PointcloudTrajectoryEnricher", + "ProjectAndClean", + "ProjectPointCloud", + "ReprojectDepth", + "ReprojectImage", + "SavePointCloud", + "SaveTrajectory", + "TransformPointCloud", + "TransformToMatrix", + "TransformToMatrixManual", + "VideoCameraMotionSequence", + "VideoMetricDepthEstimate", + "ZDepthToRayDepthNode" + ], + { + "title_aux": "camera-comfyUI" + } + ], + "https://github.com/Aljnk/ComfyUI-JNK-Tiny-Nodes": [ + [ + "Add Layer Overlay JNK", + "Ask Google Gemini JNK", + "Bridge All JNK", + "Create Folder JNK", + "Create RGBA Image JNK", + "Get All Alpha Layers JNK", + "Get Gemini Keys JNK", + "Get Gemini Models JNK", + "Get Models JNK", + "Get One Alpha Layer JNK", + "Get Substring JNK", + "Get Text From List by Index JNK", + "Get Timestamp JNK", + "Image Filter Loader JNK", + "Join Strings JNK", + "Load Checkpoint Model with Name JNK", + "Load Image if Exist JNK", + "Load LoRA with Name JNK", + "Load UNet Model with Name JNK", + "Prepare Image for AI JNK", + "Queue Stop JNK", + "Save Frame JNK", + "Save Static Image JNK", + "Save Video Images JNK", + "Split String JNK", + "Stroke RGBA Image JNK", + "Switch Index JNK", + "Switch Integer JNK", + "Text Saver JNK", + "Text to Key JNK", + "Text to MD5 JNK", + "Topaz Photo Upscaler (Autopilot) JNK" + ], + { + "title_aux": "ComfyUI-JNK-Tiny-Nodes" + } + ], + "https://github.com/Altair200333/ComfyUI_Flux_1.1_PRO": [ + [ + "FluxGenerate", + "FluxProInpaint", + "FluxProOutpaint" + ], + { + "title_aux": "Flux Pro Nodes for ComfyUI" + } + ], + "https://github.com/Alvaroeai/ComfyUI-Text2Json": [ + [ + "TextToJson" + ], + { + "title_aux": "ComfyUI-Text2Json" + } + ], + "https://github.com/Amorano/Jovi_Capture": [ + [ + "CAMERA (JOV_CAPTURE)", + "MONITOR (JOV_CAPTURE)", + "REMOTE (JOV_CAPTURE)", + "WINDOW (JOV_CAPTURE)" + ], + { + "title_aux": "Jovi_Capture" + } + ], + "https://github.com/Amorano/Jovi_GLSL": [ + [ + "BLEND LINEAR (JOV_GL)", + "BLOOM (JOV_GL)", + "CIRCULAR GRADIENT (JOV_GL)", + "COLOR CONVERSION (JOV_GL)", + "COLOR PALETTE (JOV_GL)", + "CONICAL GRADIENT (JOV_GL)", + "DIRECTIONAL WARP (JOV_GL)", + "FILTER RANGE (JOV_GL)", + "GRAYSCALE (JOV_GL)", + "HSV ADJUST (JOV_GL)", + "INVERT (JOV_GL)", + "LINEAR GRADIENT (JOV_GL)", + "MIN MAX (JOV_GL)", + "NOISE PERLIN (JOV_GL)", + "NOISE SIMPLEX (JOV_GL)", + "NOISE WORLEY (JOV_GL)", + "NORMAL (JOV_GL)", + "NORMAL BLEND (JOV_GL)", + "PIXELATE (JOV_GL)", + "POSTERIZE (JOV_GL)", + "SOBEL (JOV_GL)", + "TRANSFORM (JOV_GL)" + ], + { + "title_aux": "Jovi_GLSL" + } + ], + "https://github.com/Amorano/Jovi_MIDI": [ + [ + "MIDI FILTER (JOV_MIDI)", + "MIDI FILTER EZ (JOV_MIDI)", + "MIDI LOADER (JOV_MIDI)", + "MIDI MESSAGE (JOV_MIDI)", + "MIDI READER (JOV_MIDI)" + ], + { + "title_aux": "Jovi_MIDI" + } + ], + "https://github.com/Amorano/Jovi_Measure": [ + [ + "BLUR EFFECT (JOV_MEASURE)", + "SHANNON ENTROPY (JOV_MEASURE)" + ], + { + "title_aux": "Jovi_Measure" + } + ], + "https://github.com/Amorano/Jovi_Spout": [ + [ + "SPOUT READER (JOV_SPOUT)", + "SPOUT WRITER (JOV_SPOUT)" + ], + { + "title_aux": "Jovi_Spout" + } + ], + "https://github.com/Amorano/Jovimetrix": [ + [ + "ADJUST: BLUR (JOV)", + "ADJUST: COLOR (JOV)", + "ADJUST: EDGE (JOV)", + "ADJUST: EMBOSS (JOV)", + "ADJUST: LEVELS (JOV)", + "ADJUST: LIGHT (JOV)", + "ADJUST: MORPHOLOGY (JOV)", + "ADJUST: PIXEL (JOV)", + "ADJUST: SHARPEN (JOV)", + "AKASHIC (JOV) \ud83d\udcd3", + "ARRAY (JOV) \ud83d\udcda", + "BIT SPLIT (JOV) \u2b44", + "BLEND (JOV) \u2697\ufe0f", + "COLOR BLIND (JOV) \ud83d\udc41\u200d\ud83d\udde8", + "COLOR MATCH (JOV) \ud83d\udc9e", + "COLOR MEANS (JOV) \u3030\ufe0f", + "COLOR THEORY (JOV) \ud83d\udede", + "COMPARISON (JOV) \ud83d\udd75\ud83c\udffd", + "CONSTANT (JOV) \ud83d\udfea", + "CROP (JOV) \u2702\ufe0f", + "DELAY (JOV) \u270b\ud83c\udffd", + "EXPORT (JOV) \ud83d\udcfd", + "FILTER MASK (JOV) \ud83e\udd3f", + "FLATTEN (JOV) \u2b07\ufe0f", + "GRADIENT MAP (JOV) \ud83c\uddf2\ud83c\uddfa", + "GRAPH (JOV) \ud83d\udcc8", + "IMAGE INFO (JOV) \ud83d\udcda", + "LERP (JOV) \ud83d\udd30", + "OP BINARY (JOV) \ud83c\udf1f", + "OP UNARY (JOV) \ud83c\udfb2", + "PIXEL MERGE (JOV) \ud83e\udec2", + "PIXEL SPLIT (JOV) \ud83d\udc94", + "PIXEL SWAP (JOV) \ud83d\udd03", + "QUEUE (JOV) \ud83d\uddc3", + "QUEUE TOO (JOV) \ud83d\uddc3", + "ROUTE (JOV) \ud83d\ude8c", + "SAVE OUTPUT (JOV) \ud83d\udcbe", + "SHAPE GEN (JOV) \u2728", + "SPLIT (JOV) \ud83c\udfad", + "STACK (JOV) \u2795", + "STRINGER (JOV) \ud83e\ude80", + "SWIZZLE (JOV) \ud83d\ude35", + "TEXT GEN (JOV) \ud83d\udcdd", + "THRESHOLD (JOV) \ud83d\udcc9", + "TICK (JOV) \u23f1", + "TRANSFORM (JOV) \ud83c\udfdd\ufe0f", + "VALUE (JOV) \ud83e\uddec", + "VECTOR2 (JOV)", + "VECTOR3 (JOV)", + "VECTOR4 (JOV)", + "WAVE GEN (JOV) \ud83c\udf0a" + ], + { + "title_aux": "Jovimetrix" + } + ], + "https://github.com/Andro-Meta/ComfyUI-Ovis2": [ + [ + "Ovis2ImageCaption", + "Ovis2ModelLoader", + "Ovis2MultiImageInput", + "Ovis2VideoFramesDescription" + ], + { + "title_aux": "ComfyUI-Ovis2" + } + ], + "https://github.com/AngelCookies/ComfyUI-Seed-Tracker": [ + [ + "GlobalSeedTracker", + "SeedExporter", + "SeedTracker" + ], + { + "title_aux": "ComfyUI-Seed-Tracker" + } + ], + "https://github.com/Anibaaal/ComfyUI-UX-Nodes": [ + [ + "AdvancedCompositeImageMasked", + "BlockLayerStringGenerator", + "BlurNode", + "ColorGeneratorNode", + "DropShadowNode", + "EasyResolutionPicker", + "LerpNode", + "RemoveJSONMarkdownFormatting" + ], + { + "title_aux": "ComfyUI UX Nodes" + } + ], + "https://github.com/AonekoSS/ComfyUI-LoRA-Tuner": [ + [ + "LoraTuner" + ], + { + "title_aux": "ComfyUI-LoRA-Tuner" + } + ], + "https://github.com/AonekoSS/ComfyUI-SimpleCounter": [ + [ + "Simple Counter" + ], + { + "title_aux": "ComfyUI-SimpleCounter" + } + ], + "https://github.com/ArcherFMY/Diffusion360_ComfyUI": [ + [ + "Diffusion360LoaderImage2Pano", + "Diffusion360LoaderText2Pano", + "Diffusion360Sampler", + "Diffusion360SamplerImage2Pano", + "Diffusion360SamplerText2Pano", + "InputImage", + "InputText", + "VAEDecodeTiledBlended" + ], + { + "title_aux": "Diffusion360_ComfyUI" + } + ], + "https://github.com/ArdeniusAI/ComfyUI-Ardenius": [ + [ + "ARD 4crop Latent", + "ARD 4img Combine", + "ARD 4latent Upscale", + "ARD 4vae Decode", + "ARD Basic Load Image", + "ARD Control Box", + "ARD Counter", + "ARD Dual Prompt", + "ARD Empty Latent Image", + "ARD Float", + "ARD Float To Integer", + "ARD Integer", + "ARD Integer To Float", + "ARD Load Image", + "ARD Math", + "ARD Position", + "ARD Prompt Travel", + "ARD Remainder", + "ARD Resize", + "ARD Save Image", + "ARD Seed", + "ARD Text Box", + "ARD Text Box Counter", + "ARD XY Scripts" + ], + { + "title_aux": "ComfyUI-Ardenius" + } + ], + "https://github.com/Arkanun/ReadCSV_ComfyUI": [ + [ + "ReadCSVRowNode" + ], + { + "title_aux": "ReadCSV_ComfyUI" + } + ], + "https://github.com/ArtBot2023/CharacterFaceSwap": [ + [ + "Color Blend", + "Crop Face", + "Exclude Facial Feature", + "Generation Parameter Input", + "Generation Parameter Output", + "Image Full BBox", + "Load BiseNet", + "Load RetinaFace", + "Mask Contour", + "Segment Face", + "Uncrop Face" + ], + { + "title_aux": "Character Face Swap" + } + ], + "https://github.com/ArtHommage/HommageTools": [ + [ + "HTBaseShiftNode", + "HTConsoleLoggerNode", + "HTConversionNode", + "HTDWPoseConstraintNode", + "HTDetectionBatchProcessor", + "HTDiffusionLoaderMulti", + "HTDimensionAnalyzerNode", + "HTDimensionFormatterNode", + "HTDownsampleNode", + "HTDynamicPromptNode", + "HTDynamicSwitchNode", + "HTFlexibleNode", + "HTGeminiImageNode", + "HTGeminiNode", + "HTImageAdjusterNode", + "HTInspectorNode", + "HTLayerCollectorNode", + "HTLayerExportNode", + "HTLevelsNode", + "HTMaskDilationNode", + "HTMaskValidatorNode", + "HTMoireRemovalNode", + "HTMultiMaskDilationNode", + "HTNodeStateController", + "HTNodeUnmuteAll", + "HTNullNode", + "HTParameterExtractorNode", + "HTPhotoshopBlurNode", + "HTRegexNode", + "HTResizeNode", + "HTResolutionDownsampleNode", + "HTResolutionNode", + "HTSamplerBridgeNode", + "HTSaveImagePlus", + "HTScaleByNode", + "HTSchedulerBridgeNode", + "HTSeedAdvancedNode", + "HTSeedNode", + "HTSplitterNode", + "HTStatusIndicatorNode", + "HTSurfaceBlurNode", + "HTSwitchNode", + "HTTensorInfoNode", + "HTTextCleanupNode", + "HTTrainingSizeNode", + "HTValueMapperNode", + "HTWidgetControlNode" + ], + { + "title_aux": "HommageTools for ComfyUI" + } + ], + "https://github.com/Aryan185/ComfyUI-ExternalAPI-Helpers": [ + [ + "FluxKontextMaxNode", + "FluxKontextProNode", + "GPTImageEditNode", + "GeminiChatNode" + ], + { + "title_aux": "ComfyUI-ExternalAPI-Helpers" + } + ], + "https://github.com/AshMartian/ComfyUI-DirGir": [ + [ + "Dir_Gir_Looper", + "Dir_Gir_Picker", + "Gir_Image_Nabber" + ], + { + "title_aux": "Dir Gir" + } + ], + "https://github.com/AstroCorp/ComfyUI-AstroCorp-Nodes": [ + [ + "InstructNode", + "MergeTextsNode", + "TextareaNode" + ], + { + "title_aux": "ComfyUI AstroCorp Nodes" + } + ], + "https://github.com/AuroBit/ComfyUI-AnimateAnyone-reproduction": [ + [ + "AnimateAnyone" + ], + { + "title_aux": "ComfyUI-AnimateAnyone-reproduction" + } + ], + "https://github.com/AustinMroz/ComfyUI-DynamicOversampling": [ + [ + "DynamicSampler", + "MeasuredSampler", + "ResolveMaskPromise" + ], + { + "title_aux": "DynamicOversampling" + } + ], + "https://github.com/AustinMroz/ComfyUI-SpliceTools": [ + [ + "LogSigmas", + "RerangeSigmas", + "SpliceDenoised", + "SpliceLatents", + "TemporalSplice" + ], + { + "title_aux": "SpliceTools" + } + ], + "https://github.com/Auttasak-L/ComfyUI-ImageCropper": [ + [ + "ImageCropper" + ], + { + "title_aux": "ComfyUI-ImageCropper" + } + ], + "https://github.com/BAIS1C/ComfyUI_RSS_Feed_Reader": [ + [ + "RSSFeedNode" + ], + { + "title_aux": "ComfyUI_RSS_Feed_Reader" + } + ], + "https://github.com/BIMer-99/ComfyUI_FishSpeech_EX": [ + [ + "AudioToPrompt", + "LoadVQGAN", + "Prompt2Semantic", + "SaveAudioToMp3", + "Semantic2Audio" + ], + { + "title_aux": "ComfyUI_FishSpeech_EX" + } + ], + "https://github.com/BIMer-99/Comfyui_Hunyuan3D_EX": [ + [ + "GenerateSixViews", + "Hunyuan3DNode", + "RemoveBackground", + "SquareImage", + "TriMeshViewer" + ], + { + "title_aux": "Comfyui_Hunyuan3D_EX" + } + ], + "https://github.com/BNP1111/comfyui_flux_corrector": [ + [ + "FLUXCorrector" + ], + { + "title_aux": "comfyui_flux_corrector" + } + ], + "https://github.com/BXYMartin/ComfyUI-InstantIDUtils": [ + [ + "ListOfImages", + "MultiControlNetConverter", + "NHWC2NCHWTensor", + "NHWCTensor2PIL", + "PIL2NHWCTensor" + ], + { + "title_aux": "ComfyUI-InstantIDUtils" + } + ], + "https://github.com/BZcreativ/ComfyUI-FLUX-TOGETHER-API": [ + [ + "FluxDev_TOGETHER", + "FluxPro11_TOGETHER", + "FluxPro_TOGETHER" + ], + { + "title_aux": "ComfyUI-FLUX-TOGETHER-API" + } + ], + "https://github.com/BadCafeCode/masquerade-nodes-comfyui": [ + [ + "Blur", + "Change Channel Count", + "Combine Masks", + "Constant Mask", + "Convert Color Space", + "Create QR Code", + "Create Rect Mask", + "Cut By Mask", + "Get Image Size", + "Image To Mask", + "Make Image Batch", + "Mask By Text", + "Mask Morphology", + "Mask To Region", + "MasqueradeIncrementer", + "Mix Color By Mask", + "Mix Images By Mask", + "Paste By Mask", + "Prune By Mask", + "Separate Mask Components", + "Unary Image Op", + "Unary Mask Op" + ], + { + "title_aux": "Masquerade Nodes" + } + ], + "https://github.com/BahaC/ComfyUI-ZonosTTS": [ + [ + "ZonosTextToSpeech" + ], + { + "title_aux": "ComfyUI Zonos TTS Node" + } + ], + "https://github.com/Beinsezii/bsz-cui-extras": [ + [ + "BSZAbsoluteHires", + "BSZAspectHires", + "BSZColoredLatentImageXL", + "BSZCombinedHires", + "BSZHueChromaXL", + "BSZInjectionKSampler", + "BSZLatentDebug", + "BSZLatentFill", + "BSZLatentGradient", + "BSZLatentHSVAImage", + "BSZLatentOffsetXL", + "BSZLatentRGBAImage", + "BSZLatentbuster", + "BSZPixelbuster", + "BSZPixelbusterHelp", + "BSZPrincipledConditioning", + "BSZPrincipledSampler", + "BSZPrincipledScale", + "BSZStrangeResample" + ], + { + "title_aux": "bsz-cui-extras" + } + ], + "https://github.com/Bellzs/ComfyUI-LoRA-Assistant": [ + [ + "LoRATriggerLocal" + ], + { + "title_aux": "ComfyUI-LoRA-Assistant" + } + ], + "https://github.com/BenNarum/ComfyUI_CAS": [ + [ + "AttentionToSigmas", + "AttenuatorNode", + "BasicCFGGuider", + "CELU", + "CustomAdvancedSampler", + "CustomLCMCFGPP", + "CustomModelSamplingDiscreteDistilledAncestralCFGPP", + "CustomModelSamplingDiscreteDistilledCFGPP", + "CustomX0AncestralCFGPP", + "CustomX0CFGPP", + "ELU", + "EPSCFGPPScheduler", + "GELU", + "GLU", + "HardTanhScheduler", + "Hardshrink", + "Hardsigmoid", + "Hardswish", + "Hardtanh", + "LatentActivation", + "LatentChannelPresets", + "LatentConvolution", + "LatentFFT", + "LatentFrequencyPresets", + "LatentGlitch", + "LatentMath", + "LatentMathFormulaBuilder", + "LatentMosaic", + "LatentNoisePresets", + "LatentPixelSort", + "LatentSelfAttention", + "LatentTwist", + "LatentValuePresets", + "LatentWarpPresets", + "LeakyReLU", + "LogSigmoid", + "LogSoftmax", + "Mish", + "PReLU", + "RReLU", + "ReLU", + "ReLU6", + "SELU", + "SamplerCustomLCMCFGPP", + "SamplerCustomModelSamplingDiscreteDistilledAncestralCFGPP", + "SamplerCustomModelSamplingDiscreteDistilledCFGPP", + "SamplerCustomX0AncestralCFGPP", + "SamplerCustomX0CFGPP", + "SamplerDPMCFGPP", + "SamplerDynamicCFGPP", + "SamplerEulerAttnCFGPP", + "SamplerEulerStepControlAncestralCFGPP", + "SamplerHeunCFGPP", + "SamplerLCMUpscaleW", + "SamplerLCMUpscaleWCFGPP", + "SamplerLCMUpscaleWGPU", + "SamplerStepSizeControlCFGPP", + "SamplerWeightedCFGPP", + "SiLU", + "Softmax", + "Softmax2D", + "SoftmaxScheduler", + "Softmin", + "Softplus", + "Softshrink", + "Softsign", + "Tanh", + "Tanhshrink", + "Threshold", + "tcd_euler_a_w", + "tcd_w" + ], + { + "title_aux": "ComfyUI_CAS" + } + ], + "https://github.com/BenNarum/SigmaWaveFormNode": [ + [ + "AttenuatorNode", + "FourierFilterNode", + "PhaseLockedLoopNode", + "SigmaWaveFormNode", + "SigmaWaveFormNodeAdvanced", + "SigmaWaveFormNodeSimple" + ], + { + "title_aux": "SigmaWaveFormNodes" + } + ], + "https://github.com/BennyKok/comfyui-deploy": [ + [ + "ComfyDeployOutputEXR", + "ComfyDeployOutputImage", + "ComfyDeployOutputText", + "ComfyDeployWebscoketImageInput", + "ComfyDeployWebscoketImageOutput", + "ComfyUIDeployExternalAudio", + "ComfyUIDeployExternalBoolean", + "ComfyUIDeployExternalCheckpoint", + "ComfyUIDeployExternalEXR", + "ComfyUIDeployExternalFaceModel", + "ComfyUIDeployExternalImage", + "ComfyUIDeployExternalImageAlpha", + "ComfyUIDeployExternalImageBatch", + "ComfyUIDeployExternalLora", + "ComfyUIDeployExternalNumber", + "ComfyUIDeployExternalNumberInt", + "ComfyUIDeployExternalNumberSlider", + "ComfyUIDeployExternalNumberSliderInt", + "ComfyUIDeployExternalSeed", + "ComfyUIDeployExternalText", + "ComfyUIDeployExternalTextAny", + "ComfyUIDeployExternalVid", + "ComfyUIDeployExternalVideo", + "ComfyUIDeployStringCombine" + ], + { + "author": "BennyKok", + "description": "", + "nickname": "Comfy Deploy", + "title": "comfyui-deploy", + "title_aux": "ComfyUI Deploy" + } + ], + "https://github.com/BetaDoggo/ComfyUI-Cloud-APIs": [ + [ + "FalAddLora", + "FalAuraFlowAPI", + "FalFluxAPI", + "FalFluxI2IAPI", + "FalFluxLoraAPI", + "FalLLaVAAPI", + "FalSoteDiffusionAPI", + "FalStableCascadeAPI", + "FalVeo2ImagetoVideo", + "FluxResolutionPresets", + "LoadVideoFromURL", + "ReplicateFluxAPI", + "RunWareAPI", + "RunwareAddLora", + "SplitImages" + ], + { + "title_aux": "ComfyUI-Cloud-APIs" + } + ], + "https://github.com/BetaDoggo/ComfyUI-FastSDCPU": [ + [ + "fastsdcpu", + "fastsdcpu_lcm_models", + "fastsdcpu_loadModel", + "fastsdcpu_vino_models" + ], + { + "title_aux": "ComfyUI-FastSDCPU" + } + ], + "https://github.com/BetaDoggo/ComfyUI-Gatcha-Embedding": [ + [ + "GatchaEmbedding" + ], + { + "title_aux": "Gatcha Embeddings" + } + ], + "https://github.com/BetaDoggo/ComfyUI-VideoPlayer": [ + [ + "AllInOnePlayer", + "ImageToEmoji", + "LoadFrame", + "LoadJPGFrame", + "LoadVideoFrame" + ], + { + "title_aux": "ComfyUI Video Player" + } + ], + "https://github.com/BetaDoggo/ComfyUI-WDV-Nodes": [ + [ + "ModelSamplingWaifuDiffusionV" + ], + { + "title_aux": "neggles/ComfyUI-WDV-Nodes [gist-wrapper]" + } + ], + "https://github.com/BetaDoggo/ComfyUI-YetAnotherSafetyChecker": [ + [ + "YetAnotherSafetyChecker" + ], + { + "title_aux": "ComfyUI YetAnotherSafetyChecker" + } + ], + "https://github.com/Big-Idea-Technology/ComfyUI-Book-Tools": [ + [ + "BTDownloadFont", + "BTEndQueue", + "BTImageTextOverlay", + "BTLoop", + "BTLoopEnd", + "BTLoopStart", + "BTPromptSchedule", + "BTPromptSelector", + "BTRandomTextOverlay", + "BTTextGrowth", + "BTTextToImage" + ], + { + "title_aux": "ComfyUI-Book-Tools Nodes for ComfyUI" + } + ], + "https://github.com/Big-Idea-Technology/ComfyUI_LLM_Node": [ + [ + "AdvOptions_Node", + "CodingOptionsNode", + "LLM_Node", + "Output_Node", + "QuantizationConfig_Node" + ], + { + "title_aux": "LLM Node for ComfyUI" + } + ], + "https://github.com/BigStationW/ComfyUi-Load-Image-And-Display-Prompt-Metadata": [ + [ + "LoadImageX" + ], + { + "title_aux": "ComfyUi-Load-Image-And-Display-Prompt-Metadata" + } + ], + "https://github.com/BigStationW/ComfyUi-RescaleCFGAdvanced": [ + [ + "RescaleCFGAdvanced" + ], + { + "title_aux": "ComfyUi-RescaleCFGAdvanced" + } + ], + "https://github.com/BigWhiteFly/ComfyUI-ImageConcat": [ + [ + "ImageConcatenateBatchWithTxt" + ], + { + "title_aux": "ComfyUI-ImageConcat" + } + ], + "https://github.com/Billius-AI/ComfyUI-Path-Helper": [ + [ + "Add File Name Prefix", + "Add File Name Prefix Advanced", + "Add Folder", + "Add Folder Advanced", + "Create Project Root", + "Join Variables", + "Show Path", + "Show String" + ], + { + "title_aux": "ComfyUI-Path-Helper" + } + ], + "https://github.com/Bin-sam/DynamicPose-ComfyUI": [ + [ + "DynamicPose_Sampler", + "Load_Pose_Guider", + "Load_denoising_unet", + "Load_reference_unet", + "Pose_Guider_Encode", + "align", + "load_pose_model", + "pose_extraction" + ], + { + "title_aux": "DynamicPose-ComfyUI" + } + ], + "https://github.com/Black-Lioness/ComfyUI-PromptUtils": [ + [ + "FilenameGenerator", + "KeywordGenerator" + ], + { + "title_aux": "ComfyUI-PromptUtils" + } + ], + "https://github.com/BlackVortexAI/ComfyUI-BVortexNodes": [ + [ + "BV Conditional ImagePipe Splitter", + "BV Image Caption Saver", + "BV Image Difference Heatmap", + "BV Image Size with Math", + "BV ImagePipe Junction", + "BV ImagePipe Loader", + "BV ImagePipe Merger", + "BV Show LoRA Blocks", + "BV String to Combo", + "BV Upscale Config", + "BV Vector Edit", + "BV Vector Edit Dropdown FLUX", + "BV Vector Edit Range", + "BV Vector Edit Range Dropdown FLUX", + "BV Vector Edit Selector FLUX", + "BV Vector Permutation", + "BV Vector of Length-n", + "BV Vector to String", + "BV Vector to String List" + ], + { + "title_aux": "BV Nodes" + } + ], + "https://github.com/BlakeOne/ComfyUI-CustomScheduler": [ + [ + "CustomScheduler" + ], + { + "title_aux": "ComfyUI CustomScheduler" + } + ], + "https://github.com/BlakeOne/ComfyUI-SchedulerMixer": [ + [ + "SchedulerMixer" + ], + { + "title_aux": "ComfyUI SchedulerMixer" + } + ], + "https://github.com/BlenderNeko/ComfyUI_ADV_CLIP_emb": [ + [ + "BNK_AddCLIPSDXLParams", + "BNK_AddCLIPSDXLRParams", + "BNK_CLIPTextEncodeAdvanced", + "BNK_CLIPTextEncodeSDXLAdvanced" + ], + { + "title_aux": "Advanced CLIP Text Encode" + } + ], + "https://github.com/BlenderNeko/ComfyUI_Cutoff": [ + [ + "BNK_CutoffBasePrompt", + "BNK_CutoffRegionsToConditioning", + "BNK_CutoffRegionsToConditioning_ADV", + "BNK_CutoffSetRegions" + ], + { + "title_aux": "ComfyUI Cutoff" + } + ], + "https://github.com/BlenderNeko/ComfyUI_Noise": [ + [ + "BNK_DuplicateBatchIndex", + "BNK_GetSigma", + "BNK_InjectNoise", + "BNK_NoisyLatentImage", + "BNK_SlerpLatent", + "BNK_Unsampler" + ], + { + "title_aux": "ComfyUI Noise" + } + ], + "https://github.com/BlenderNeko/ComfyUI_SeeCoder": [ + [ + "ConcatConditioning", + "SEECoderImageEncode" + ], + { + "title_aux": "SeeCoder [WIP]" + } + ], + "https://github.com/BlenderNeko/ComfyUI_TiledKSampler": [ + [ + "BNK_TiledKSampler", + "BNK_TiledKSamplerAdvanced" + ], + { + "title_aux": "Tiled sampling for ComfyUI" + } + ], + "https://github.com/Blonicx/ComfyUI-X-Rework": [ + [ + "ClearNode", + "LoadImageURL", + "StopNode", + "UploadImage", + "XSampler", + "XSave" + ], + { + "title_aux": "ComfyUI-Rework-X" + } + ], + "https://github.com/BlueprintCoding/ComfyUI_AIDocsClinicalTools": [ + [ + "Multi Float", + "Multi Int", + "Multi Text", + "MultiFloatNodeAID", + "MultiInt", + "MultiText" + ], + { + "title_aux": "The AI Doctors Clinical Tools" + } + ], + "https://github.com/BobRandomNumber/ComfyUI-DiaTTS": [ + [ + "DiaGenerate", + "DiaLoader" + ], + { + "title_aux": "ComfyUI-DiaTTS" + } + ], + "https://github.com/BobRandomNumber/ComfyUI-KyutaiTTS": [ + [ + "KyutaiTTS" + ], + { + "title_aux": "ComfyUI-KyutaiTTS" + } + ], + "https://github.com/BobsBlazed/Bobs-Lora-Loader": [ + [ + "BobsLoraLoaderFlux", + "BobsLoraLoaderSdxl" + ], + { + "title_aux": "Bobs_LoRA_Loader" + } + ], + "https://github.com/BobsBlazed/Bobs_Latent_Optimizer": [ + [ + "BobsLatentNode", + "BobsLatentNodeAdvanced" + ], + { + "title_aux": "Bobs_Latent_Optimizer" + } + ], + "https://github.com/BoyuanJiang/FitDiT-ComfyUI": [ + [ + "FitDiTLoader", + "FitDiTMaskGenerator", + "FitDiTTryOn" + ], + { + "title_aux": "FitDiT[official] - High-fidelity Virtual Try-on" + } + ], + "https://github.com/Bria-AI/ComfyUI-BRIA-API": [ + [ + "BriaEraser", + "BriaGenFill", + "BriaTailoredGen", + "ImageExpansionNode", + "ReimagineNode", + "RemoveForegroundNode", + "ReplaceBgNode", + "RmbgNode", + "ShotByImageNode", + "ShotByTextNode", + "TailoredModelInfoNode", + "TailoredPortraitNode", + "Text2ImageBaseNode", + "Text2ImageFastNode", + "Text2ImageHDNode" + ], + { + "title_aux": "BRIA AI API nodes" + } + ], + "https://github.com/BuffMcBigHuge/ComfyUI-Google-AI-Studio": [ + [ + "GoogleAIStudioImageGen", + "GoogleAIStudioMultiSpeakerTTS", + "GoogleAIStudioTTS", + "GoogleAIStudioTextGen" + ], + { + "title_aux": "ComfyUI-Google-AI-Studio" + } + ], + "https://github.com/BuffMcBigHuge/ComfyUI-Zonos": [ + [ + "ZonosEmotion", + "ZonosGenerate" + ], + { + "title_aux": "ComfyUI-Zonos" + } + ], + "https://github.com/Burgstall-labs/ComfyUI-BETA-Cropnodes": [ + [ + "BETACrop", + "BETAStitch", + "IndexedLoRALoader_BETA", + "LoadTextFromIndex", + "SaveAudioAdvanced_BETA", + "SelectSharpestFrames", + "SharpestFrameClipper", + "TextLineCount", + "WANResolutionCalculator" + ], + { + "title_aux": "ComfyUI-BETA-Cropnodes" + } + ], + "https://github.com/Burgstall-labs/ComfyUI-BETA-Helpernodes": [ + [ + "BETACrop", + "BETAStitch", + "IndexedLoRALoader_BETA", + "LoadTextFromIndex", + "SaveAudioAdvanced_BETA", + "SelectSharpestFrames", + "SharpestFrameClipper", + "TextLineCount", + "WANResolutionCalculator" + ], + { + "title_aux": "ComfyUI-BETA-Helpernodes" + } + ], + "https://github.com/Burgstall-labs/ComfyUI-BS-Textchop": [ + [ + "BSTextChop" + ], + { + "title_aux": "ComfyUI-BS-Textchop" + } + ], + "https://github.com/Burgstall-labs/ComfyUI-BS_Kokoro-onnx": [ + [ + "Kokoro TTS" + ], + { + "title_aux": "ComfyUI-BS_Kokoro-onnx" + } + ], + "https://github.com/CC-BryanOttho/ComfyUI_API_Manager": [ + [ + "APIRequestNode", + "PostImageToAPI", + "TextPromptCombinerNode" + ], + { + "title_aux": "ComfyUI_API_Manager" + } + ], + "https://github.com/CC-SUN6/ccsun_node": [ + [ + "Image Editing", + "Single Image", + "resize to 8", + "several images" + ], + { + "title_aux": "ccsun_node" + } + ], + "https://github.com/CHAOSEA/ComfyUI_FaceAlignPaste": [ + [ + "FaceAlignDouble", + "FaceAlignSingle", + "FaceAutoFitSingle" + ], + { + "title_aux": "ComfyUI_FaceAlignPaste" + } + ], + "https://github.com/CY-CHENYUE/ComfyUI-FramePack-HY": [ + [ + "CreateKeyframes_HY", + "FramePackBucketResize_HY", + "FramePackDiffusersSampler_HY", + "LoadFramePackDiffusersPipeline_HY" + ], + { + "title_aux": "ComfyUI-FramePack-HY" + } + ], + "https://github.com/CY-CHENYUE/ComfyUI-Free-GPU": [ + [ + "FreeGPUMemory" + ], + { + "title_aux": "ComfyUI-Free-GPU" + } + ], + "https://github.com/CY-CHENYUE/ComfyUI-GPT-API": [ + [ + "GPT-ImageGenerator" + ], + { + "title_aux": "ComfyUI-GPT-API" + } + ], + "https://github.com/CY-CHENYUE/ComfyUI-Gemini-API": [ + [ + "Google-Gemini" + ], + { + "title_aux": "ComfyUI-Gemini-API" + } + ], + "https://github.com/CY-CHENYUE/ComfyUI-InpaintEasy": [ + [ + "CropByMask", + "ImageAndMaskResizeNode", + "ImageCropMerge", + "InpaintEasyModel" + ], + { + "title_aux": "ComfyUI-InpaintEasy" + } + ], + "https://github.com/CY-CHENYUE/ComfyUI-Janus-Pro": [ + [ + "JanusImageGeneration", + "JanusImageUnderstanding", + "JanusModelLoader" + ], + { + "title_aux": "ComfyUI-Janus-Pro" + } + ], + "https://github.com/CY-CHENYUE/ComfyUI-MiniCPM-Plus": [ + [ + "MiniCPM3_4B", + "MiniCPM3_4B_GPTQ_Int4", + "MiniCPM_V_2_6", + "MiniCPM_V_2_6_Int4", + "TextDisplay" + ], + { + "author": "CY-CHENYUE", + "description": "Custom nodes for MiniCPM language models in ComfyUI", + "nickname": "MiniCPM-Plus", + "title": "MiniCPM-Plus", + "title_aux": "ComfyUI-MiniCPM-Plus" + } + ], + "https://github.com/CY-CHENYUE/ComfyUI-MiniCPM-o": [ + [ + "Load MiniCPM Model", + "MiniCPM Image Chat", + "MiniCPMImageAnalyzer" + ], + { + "title_aux": "ComfyUI-MiniCPM-o" + } + ], + "https://github.com/CY-CHENYUE/ComfyUI-Molmo": [ + [ + "Molmo7BDbnb" + ], + { + "title_aux": "ComfyUI-Molmo" + } + ], + "https://github.com/CY-CHENYUE/ComfyUI-OmniGenX": [ + [ + "LoadOmniGen" + ], + { + "title_aux": "ComfyUI-OmniGenX" + } + ], + "https://github.com/CY-CHENYUE/ComfyUI-Redux-Prompt": [ + [ + "ReduxPromptStyler" + ], + { + "title_aux": "ComfyUI-Redux-Prompt" + } + ], + "https://github.com/CYBERLOOM-INC/ComfyUI-nodes-hnmr": [ + [ + "CLIPIter", + "Dict2Model", + "GridImage", + "ImageBlend2", + "KSamplerOverrided", + "KSamplerSetting", + "KSamplerXYZ", + "LatentToHist", + "LatentToImage", + "ModelIter", + "RandomLatentImage", + "SaveStateDict", + "SaveText", + "StateDictLoader", + "StateDictMerger", + "StateDictMergerBlockWeighted", + "StateDictMergerBlockWeightedMulti", + "VAEDecodeBatched", + "VAEEncodeBatched", + "VAEIter" + ], + { + "title_aux": "ComfyUI-nodes-hnmr" + } + ], + "https://github.com/Chan-0312/ComfyUI-EasyDeforum": [ + [ + "Easy2DDeforum" + ], + { + "title_aux": "ComfyUI-EasyDeforum" + } + ], + "https://github.com/Chan-0312/ComfyUI-IPAnimate": [ + [ + "IPAdapterAnimate" + ], + { + "title_aux": "ComfyUI-IPAnimate" + } + ], + "https://github.com/Chan-0312/ComfyUI-Prompt-Preview": [ + [ + "SDXLPromptStylerAdvancedPreview", + "SDXLPromptStylerPreview" + ], + { + "title_aux": "ComfyUI-Prompt-Preview" + } + ], + "https://github.com/Chaoses-Ib/ComfyUI_Ib_CustomNodes": [ + [ + "ImageToPIL", + "LoadImageFromPath", + "PILToImage", + "PILToMask" + ], + { + "title_aux": "ComfyUI_Ib_CustomNodes" + } + ], + "https://github.com/Charlweed/image_transceiver": [ + [ + "ImageTransceiver" + ], + { + "title_aux": "ImageTransceiver - ComfyUI" + } + ], + "https://github.com/Charonartist/Comfyui_gemini_tts_node": [ + [ + "GeminiTTSFinal" + ], + { + "title_aux": "Comfyui_gemini_tts_node" + } + ], + "https://github.com/Charonartist/comfyui-auto-lora-v2": [ + [ + "AutoLoRANode", + "LoRABrowserNode", + "LoRAManagerNode" + ], + { + "title_aux": "ComfyUI Auto LoRA" + } + ], + "https://github.com/CheNing233/ComfyUI_Image_Pin": [ + [ + "ImagePin" + ], + { + "title_aux": "ComfyUI_Image_Pin" + } + ], + "https://github.com/ChenDarYen/ComfyUI-NAG": [ + [ + "KSamplerWithNAG", + "KSamplerWithNAG (Advanced)", + "NAGCFGGuider", + "NAGGuider", + "SamplerCustomWithNAG" + ], + { + "title_aux": "ComfyUI-NAG" + } + ], + "https://github.com/ChenDarYen/ComfyUI-TimestepShiftModel": [ + [ + "Timestep Shift Model" + ], + { + "title_aux": "ComfyUI-TimestepShiftModel" + } + ], + "https://github.com/Chengym2023/ComfyUI-DeepSeek_Online": [ + [ + "DeepSeekOnline", + "SiliconCloud" + ], + { + "title_aux": "ComfyUI-DeepSeek_Online" + } + ], + "https://github.com/ChrisColeTech/ComfyUI-Elegant-Resource-Monitor": [ + [ + "Resource Monitor" + ], + { + "title_aux": "ComfyUI-Elegant-Resource-Monitor" + } + ], + "https://github.com/ChrisColeTech/ComfyUI-Line-counter": [ + [ + "Directory File Counter", + "Simple Number Counter", + "Text File Line Counter", + "Text File Line Reader" + ], + { + "title_aux": "ComfyUI-Line-counter" + } + ], + "https://github.com/Chrisvenator/ComfyUI-Painting-by-colors-generator": [ + [ + "EnhancedPaintByNumbersNode", + "HexStackNode", + "NumbersOverlayAdvancedNode", + "NumbersOverlayNode", + "PaintByNumbersNode", + "PaintByNumbersTemplateNode" + ], + { + "title_aux": "painting-by-colors-generator" + } + ], + "https://github.com/ClownsharkBatwing/RES4LYF": [ + [ + "AdvancedNoise", + "Base64ToConditioning", + "CLIPTextEncodeFluxUnguided", + "ClownModelLoader", + "ClownRegionalConditioning", + "ClownRegionalConditioning2", + "ClownRegionalConditioning3", + "ClownRegionalConditioning_AB", + "ClownRegionalConditioning_ABC", + "ClownRegionalConditionings", + "ClownScheduler", + "ClownpileModelWanVideo", + "Conditioning Recast FP64", + "ConditioningAdd", + "ConditioningAverageScheduler", + "ConditioningBatch4", + "ConditioningBatch8", + "ConditioningDownsample (T5)", + "ConditioningMultiply", + "ConditioningOrthoCollin", + "ConditioningToBase64", + "ConditioningTruncate", + "ConditioningZeroAndTruncate", + "Constant Scheduler", + "CrossAttn_EraseReplace_HiDream", + "EmptyLatentImage64", + "EmptyLatentImageCustom", + "Film Grain", + "FluxGuidanceDisable", + "FluxLoader", + "FluxOrthoCFGPatcher", + "Frame Select", + "Frame Select Latent", + "Frame Select Latent Raw", + "Frames Concat", + "Frames Concat Latent", + "Frames Concat Latent Raw", + "Frames Concat Masks", + "Frames Latent ReverseOrder", + "Frames Masks Uninterpolate", + "Frames Masks ZeroOut", + "Frames Slice", + "Frames Slice Latent", + "Frames Slice Latent Raw", + "Frequency Separation Hard Light", + "Frequency Separation Hard Light LAB", + "Frequency Separation Linear Light", + "Image Channels LAB", + "Image Crop Location Exact", + "Image Gaussian Blur", + "Image Get Color Swatches", + "Image Grain Add", + "Image Median Blur", + "Image Pair Split", + "Image Repeat Tile To Size", + "Image Sharpen FS", + "Latent Batcher", + "Latent Channels From To", + "Latent Clear State Info", + "Latent Display State Info", + "Latent Get Channel Means", + "Latent Match Channelwise", + "Latent Normalize Channels", + "Latent Replace State Info", + "Latent Transfer State Info", + "Latent to Cuda", + "Latent to RawX", + "LatentBatch_channels", + "LatentBatch_channels_16", + "LatentNoiseBatch_fractal", + "LatentNoiseBatch_gaussian", + "LatentNoiseBatch_gaussian_channels", + "LatentNoiseBatch_perlin", + "LatentNoiseList", + "LatentNoised", + "LatentPhaseMagnitude", + "LatentPhaseMagnitudeMultiply", + "LatentPhaseMagnitudeOffset", + "LatentPhaseMagnitudePower", + "LatentUpscaleWithVAE", + "LayerPatcher", + "Linear Quadratic Advanced", + "Mask Bounding Box Aspect Ratio", + "Mask Sketch", + "MaskEdge", + "MaskEdgeRatio", + "MaskFloatToBoolean", + "MaskToggle", + "Masks From Color Swatches", + "Masks From Colors", + "Masks Unpack 16", + "Masks Unpack 4", + "Masks Unpack 8", + "ModelSamplingAdvanced", + "ModelSamplingAdvancedResolution", + "ModelTimestepPatcher", + "PrepForUnsampling", + "ReAuraPatcher", + "ReAuraPatcherAdvanced", + "ReChromaPatcher", + "ReChromaPatcherAdvanced", + "ReFluxPatcher", + "ReFluxPatcherAdvanced", + "ReHiDreamPatcher", + "ReHiDreamPatcherAdvanced", + "ReLTXVPatcher", + "ReLTXVPatcherAdvanced", + "ReReduxPatcher", + "ReSD35Patcher", + "ReSD35PatcherAdvanced", + "ReSDPatcher", + "ReWanPatcher", + "ReWanPatcherAdvanced", + "SD35Loader", + "SeedGenerator", + "Set Precision", + "Set Precision Advanced", + "Set Precision Universal", + "SetImageSize", + "SetImageSizeWithScale", + "Sigmas Abs", + "Sigmas AdaptiveNoiseFloor", + "Sigmas AdaptiveStep", + "Sigmas Add", + "Sigmas Append", + "Sigmas ArcCosine", + "Sigmas ArcSine", + "Sigmas ArcTangent", + "Sigmas Attractor", + "Sigmas CNFInverse", + "Sigmas CatmullRom", + "Sigmas Chaos", + "Sigmas Cleanup", + "Sigmas CollatzIteration", + "Sigmas Concat", + "Sigmas ConwaySequence", + "Sigmas Count", + "Sigmas CrossProduct", + "Sigmas DeleteBelowFloor", + "Sigmas DeleteDuplicates", + "Sigmas DotProduct", + "Sigmas Easing", + "Sigmas Fmod", + "Sigmas Frac", + "Sigmas From Text", + "Sigmas GammaBeta", + "Sigmas Gaussian", + "Sigmas GaussianCDF", + "Sigmas GilbreathSequence", + "Sigmas HarmonicDecay", + "Sigmas Hyperbolic", + "Sigmas If", + "Sigmas InvLerp", + "Sigmas Iteration Karras", + "Sigmas Iteration Polyexp", + "Sigmas KernelSmooth", + "Sigmas LambertW", + "Sigmas LangevinDynamics", + "Sigmas Lerp", + "Sigmas LinearSine", + "Sigmas Logarithm2", + "Sigmas Math1", + "Sigmas Math3", + "Sigmas Modulus", + "Sigmas Mult", + "Sigmas Noise Inversion", + "Sigmas NormalizingFlows", + "Sigmas Pad", + "Sigmas Percentile", + "Sigmas PersistentHomology", + "Sigmas Power", + "Sigmas QuantileNorm", + "Sigmas Quotient", + "Sigmas ReactionDiffusion", + "Sigmas Recast", + "Sigmas Rescale", + "Sigmas RiemannianFlow", + "Sigmas SetFloor", + "Sigmas Sigmoid", + "Sigmas SmoothStep", + "Sigmas Split", + "Sigmas SquareRoot", + "Sigmas Start", + "Sigmas StepwiseMultirate", + "Sigmas TimeStep", + "Sigmas Truncate", + "Sigmas Unpad", + "Sigmas Variance Floor", + "Sigmas ZetaEta", + "Sigmas2 Add", + "Sigmas2 Mult", + "SigmasPreview", + "SigmasSchedulePreview", + "StableCascade_StageB_Conditioning64", + "StableCascade_StageC_VAEEncode_Exact", + "StyleModelApplyStyle", + "Tan Scheduler", + "Tan Scheduler 2", + "Tan Scheduler 2 Simple", + "TemporalCrossAttnMask", + "TemporalMaskGenerator", + "TemporalSplitAttnMask", + "TemporalSplitAttnMask (Midframe)", + "TextBox1", + "TextBox2", + "TextBox3", + "TextBoxConcatenate", + "TextConcatenate", + "TextLoadFile", + "TextShuffle", + "TextShuffleAndTruncate", + "TextTruncateTokens", + "TorchCompileModelAura", + "TorchCompileModelFluxAdv", + "TorchCompileModelSD35", + "TorchCompileModels", + "UNetSave", + "VAEEncodeAdvanced", + "VAEStyleTransferLatent" + ], + { + "title_aux": "RES4LYF" + } + ], + "https://github.com/Clybius/ComfyUI-ClybsChromaNodes": [ + [ + "ClybGuidance", + "InverseSquaredScheduler", + "PrintSigmas", + "SamplerClyb_BDF" + ], + { + "title_aux": "ComfyUI-ClybsChromaNodes" + } + ], + "https://github.com/Clybius/ComfyUI-Extra-Samplers": [ + [ + "GeometricCFGGuider", + "ImageAssistedCFGGuider", + "MegaCFGGuider", + "SamplerCLYB_4M_SDE_Momentumized", + "SamplerCustomModelMixtureDuo", + "SamplerCustomNoise", + "SamplerCustomNoiseDuo", + "SamplerDPMPP_3M_SDE_DynETA", + "SamplerDPMPP_DualSDE_Momentumized", + "SamplerEulerAncestralDancing_Experimental", + "SamplerLCMCustom", + "SamplerRES_Momentumized", + "SamplerSupreme", + "SamplerTTM", + "ScaledCFGGuider", + "SimpleExponentialScheduler", + "WarmupDecayCFGGuider" + ], + { + "title_aux": "ComfyUI Extra Samplers" + } + ], + "https://github.com/Clybius/ComfyUI-Latent-Modifiers": [ + [ + "Latent Diffusion Mega Modifier" + ], + { + "title_aux": "ComfyUI-Latent-Modifiers" + } + ], + "https://github.com/CoiiChan/ComfyUI-Depth-Visualization-Advanced": [ + [ + "DepthViewerAndQuilts" + ], + { + "title_aux": "ComfyUI-Depth-Visualization-advanced" + } + ], + "https://github.com/CoiiChan/ComfyUI-FuncAsTexture-CoiiNode": [ + [ + "Add", + "Ceil", + "Chroma_Key_Alpha", + "Clamp", + "Contant3Vector", + "CustomScriptNumpy", + "DDX", + "Desaturation", + "Distance", + "Divided", + "Dot", + "HueShift", + "InverseUVMapGenerator", + "Lerp", + "Max", + "Min", + "Multiply", + "Oneminus", + "Outline", + "Panner", + "Power", + "Rotator", + "Sine", + "Subtraction", + "TextureSampler", + "UVCoordinateGen", + "ifFunction" + ], + { + "title_aux": "ComfyUI-FuncAsTexture-CoiiNode" + } + ], + "https://github.com/ComfyAssets/ComfyUI-KikoStats": [ + [ + "ResourceMonitor" + ], + { + "title_aux": "ComfyUI-KikoStats" + } + ], + "https://github.com/ComfyAssets/ComfyUI-KikoTools": [ + [ + "EmptyLatentBatch", + "KikoSaveImage", + "ResolutionCalculator", + "SamplerCombo", + "SamplerComboCompact", + "SeedHistory", + "WidthHeightSelector" + ], + { + "title_aux": "ComfyUI-KikoTools" + } + ], + "https://github.com/ComfyAssets/ComfyUI_PromptManager": [ + [ + "PromptManager", + "PromptManagerText" + ], + { + "title_aux": "ComfyUI_PromptManager" + } + ], + "https://github.com/ComfyAssets/ComfyUI_Selectors": [ + [ + "HeightNode", + "SamplerSelector", + "SchedulerSelector", + "SeedHistory", + "WidthHeightNode", + "WidthNode" + ], + { + "title_aux": "ComfyUI_Selectors" + } + ], + "https://github.com/ComfyUI-JH/ComfyUI-JH-Misc-Nodes": [ + [ + "JHDaisyChainableStringConstantNode", + "JHPreviewImage", + "JHThreeWaySwitchNode", + "JHTwoWaySwitchNode" + ], + { + "title_aux": "JH Misc. Nodes" + } + ], + "https://github.com/ComplexRobot/ComfyUI-Simple-VFI": [ + [ + "Simple_Frame_Interpolation" + ], + { + "title_aux": "ComfyUI-Simple-VFI" + } + ], + "https://github.com/Conor-Collins/ComfyUI-CoCoTools_IO": [ + [ + "ColorspaceNode", + "CryptomatteLayer", + "ImageLoader", + "LoadExr", + "LoadExrLayerByName", + "SaverNode", + "ZNormalizeNode", + "coco_loader", + "load_exr", + "load_exr_layer_by_name", + "saver", + "shamble_cryptomatte" + ], + { + "title_aux": "ComfyUI-CoCoTools_IO" + } + ], + "https://github.com/CosmicLaca/ComfyUI_Primere_Nodes": [ + [ + "DebugToFile", + "PrimereAestheticCKPTScorer", + "PrimereAnyDetailer", + "PrimereAnyOutput", + "PrimereCKPT", + "PrimereCKPTLoader", + "PrimereCLIPEncoder", + "PrimereClearNetworkTagsPrompt", + "PrimereConceptDataTuple", + "PrimereDiTPurifyPrompt", + "PrimereDynamicParser", + "PrimereEmbedding", + "PrimereEmbeddingHandler", + "PrimereEmbeddingKeywordMerger", + "PrimereEmotionsStyles", + "PrimereFaceAnalyzer", + "PrimereFastSeed", + "PrimereHypernetwork", + "PrimereImageSegments", + "PrimereImgToPrompt", + "PrimereKSampler", + "PrimereLLMEnhancer", + "PrimereLLMEnhancerOptions", + "PrimereLORA", + "PrimereLYCORIS", + "PrimereLatentNoise", + "PrimereLensStyles", + "PrimereLoraKeywordMerger", + "PrimereLoraStackMerger", + "PrimereLycorisKeywordMerger", + "PrimereLycorisStackMerger", + "PrimereMetaCollector", + "PrimereMetaDistributor", + "PrimereMetaDistributorStage2", + "PrimereMetaHandler", + "PrimereMetaSave", + "PrimereMetaTupleCollector", + "PrimereMidjourneyStyles", + "PrimereModelConceptSelector", + "PrimereModelKeyword", + "PrimereNetworkDataCollector", + "PrimereNetworkTagLoader", + "PrimerePreviewImage", + "PrimerePrompt", + "PrimerePromptOrganizer", + "PrimerePromptOrganizerCSV", + "PrimerePromptSwitch", + "PrimereRefinerPrompt", + "PrimereResolution", + "PrimereResolutionCoordinatorMPX", + "PrimereResolutionMultiplierMPX", + "PrimereSamplersSteps", + "PrimereSeed", + "PrimereStyleLoader", + "PrimereStylePile", + "PrimereTextOutput", + "PrimereUpscaleModel", + "PrimereVAE", + "PrimereVAELoader", + "PrimereVisualCKPT", + "PrimereVisualEmbedding", + "PrimereVisualHypernetwork", + "PrimereVisualLORA", + "PrimereVisualLYCORIS", + "PrimereVisualPromptOrganizerCSV", + "PrimereVisualStyle" + ], + { + "title_aux": "Primere nodes for ComfyUI" + } + ], + "https://github.com/CpreForEver/CFE_comfyui": [ + [ + "CFE Aspect Ratio", + "CFE FLUX Guidance", + "CFE FLUX Sampler", + "CFE FLUX Sampler (Pipe)", + "CFE Flux In Pipe", + "CFE Flux Out Pipe", + "CFE Lora Params", + "CFE Scheduler", + "CFE Sigma Sampler", + "CFE Sigma Sampler Strings" + ], + { + "title_aux": "CFE_comfyui" + } + ], + "https://github.com/Creeper-MZ/comfyui_nai_api": [ + [ + "NovelAI", + "NovelAI_Declutter_Preprocessor", + "NovelAI_Lineart_Processor", + "NovelAI_Prompt", + "NovelAI_Sketch_Processor", + "NovelAI_VIBE" + ], + { + "title_aux": "comfyui_nai_api" + } + ], + "https://github.com/Creepybits/ComfyUI-Creepy_nodes": [ + [ + "AudioKeywordExtractor", + "CLIPSwitch", + "Categorizer", + "CollectAndDistributeText", + "Coloring", + "ConditionalLoRAApplierCreepybits", + "CustomNodeManager", + "DelayNode", + "DelayTextNode", + "DynamicClipswitch", + "DynamicConditioning", + "DynamicDelayText", + "DynamicImageSwitch", + "DynamicLatentSwitch", + "DynamicModelswitch", + "DynamicVAESwitch", + "EvaluaterNode", + "FilterImages", + "GeminiAPI", + "GeminiAudioAnalyzer", + "GeminiTokenCounter", + "IMGToIMGConditioning", + "KeywordExtractor", + "LoadBatchImagesDir", + "MasterKey", + "Modelswitch", + "PeopleEvaluationNode", + "PromptGenerator", + "RandomAudioSegment", + "SanitizeFilename", + "SummaryWriter", + "SystemPromp", + "Textswitch", + "VAESwitch" + ], + { + "title_aux": "ComfyUI-Creepy_nodes" + } + ], + "https://github.com/Creepybits/ComfyUI-Save_To_GDrive": [ + [ + "SaveImageToGoogleDrive" + ], + { + "title_aux": "Save Image To Google Drive" + } + ], + "https://github.com/Creepybits/ComfyUI-Save_To_OneDrive": [ + [ + "SaveImageToOneDrive_CreepyBits" + ], + { + "title_aux": "Comfyui-Save_To_OneDrive" + } + ], + "https://github.com/Cryptyox/anaglyphTool-Comfyui": [ + [ + "AnaglyphTool", + "CrossEyeTool", + "StereogramTool" + ], + { + "author": "Timon", + "description": "Provides CUDA GPU accelerated nodes for creating 3D images (Anaglyph, Cross-Eye, Stereogram).", + "nickname": "StereoTools", + "title": "Stereo Tools (CUDA)", + "title_aux": "anaglyphTool-Comfyui" + } + ], + "https://github.com/Curt-Park/human-parser-comfyui-node-in-pure-python": [ + [ + "Cozy Human Parser ATR", + "Cozy Human Parser LIP", + "Cozy Human Parser Pascal" + ], + { + "title_aux": "Cozy Human Parser in pure Python" + } + ], + "https://github.com/CyanAutumn/ComfyUi_Random_Manage_Cyan": [ + [ + "Random Prompt Cyan", + "Remove Prompt Cyan" + ], + { + "title_aux": "ComfyUi Random Manage Cyan" + } + ], + "https://github.com/Cyber-BlackCat/ComfyUI-Image-Vector": [ + [ + "Vector" + ], + { + "title_aux": "Cyber-BlackCat" + } + ], + "https://github.com/Cyber-BlackCat/ComfyUI-MoneyMaker": [ + [ + ", and the value is the function name in the right of the", + "Black and white", + "Image Judgment", + "Image Resize MM", + "ImageMinusMask", + "Light or Dark", + "Load Random Images", + "Mask Preprocess Morphology", + "Mask To Gray", + "Number", + "PhotoShop Transfer", + "SomethingShow", + "TensorShow", + "a fake Nod" + ], + { + "title_aux": "ComfyUI-Yuan" + } + ], + "https://github.com/Cyber-BlackCat/ComfyUI_Auto_Caption": [ + [ + "Auto Caption", + "Auto_Caption2", + "ExtraOptionsSet", + "Joy Model load", + "Joy_Model2_load", + "LoadManyImages" + ], + { + "title_aux": "Cyber-BlackCat" + } + ], + "https://github.com/Cyberschorsch/ComfyUI-checkpoint-config-loader": [ + [ + "Checkpoint Loader Config" + ], + { + "title_aux": "ComfyUI Checkpoint Loader Config" + } + ], + "https://github.com/DJ-Tribefull/Comfyui_FOCUS_nodes": [ + [ + "Control Pipe (Focus Nodes)", + "FOCUS Upscale (Focus Nodes)", + "Global Seed Controller (Focus Nodes)", + "KSampler Settings (Focus Nodes)", + "Model Unloader (Focus Nodes)", + "Prompt Box (Focus Nodes)", + "SDXL All-In-One (Focus Nodes)", + "SDXL Control Module (Focus Nodes)", + "SDXL Preprocess (Focus Nodes)", + "Style Injector (Focus Nodes)", + "Style Selector (Focus Nodes)", + "Text Display (Focus Nodes)", + "Wildcard Processor (Focus Nodes)" + ], + { + "title_aux": "Comfyui FOCUS nodes" + } + ], + "https://github.com/Danand/ComfyUI-ComfyCouple": [ + [ + "Attention couple", + "Comfy Couple" + ], + { + "author": "Rei D.", + "description": "If you want to draw two different characters together without blending their features, so you could try to check out this custom node.", + "nickname": "Danand", + "title": "Comfy Couple", + "title_aux": "Comfy Couple" + } + ], + "https://github.com/DanielHabib/ComfyUI-Voxels": [ + [ + "ImageBatchToImageList", + "MaskBatchToMaskList", + "MeshToVoxel", + "VoxelBlockLoader", + "VoxelBlockSaver", + "VoxelBlocksIntoVoxelVideo", + "VoxelVideoAPIInputNode", + "VoxelVideoLoader", + "VoxelVideoPreview", + "VoxelVideoViewer", + "VoxelViewer", + "VoxelizeMesh" + ], + { + "title_aux": "ComfyUI-Voxels" + } + ], + "https://github.com/DareFail/ComfyUI-Roboflow": [ + [ + "CustomWorkflow_1image", + "LabelEmotions", + "RemoveBackground" + ], + { + "title_aux": "ComfyUI-Roboflow" + } + ], + "https://github.com/DarioFT/ComfyUI-VideoDirCombiner": [ + [ + "VideoDirCombiner" + ], + { + "title_aux": "ComfyUI-VideoDirCombiner" + } + ], + "https://github.com/DataCTE/prompt_injection": [ + [ + "AdvancedPromptInjection", + "PromptInjection", + "SVDPromptInjection", + "SimplePromptInjection" + ], + { + "title_aux": "Prompt Injection Node for ComfyUI" + } + ], + "https://github.com/DavidPiazza/network_bending": [ + [ + "AudioFeatureExtractor", + "AudioLatentBlend", + "AudioLatentGuidance", + "AudioLatentInterpolate", + "AudioLatentManipulator", + "AudioReferenceEncoder", + "AudioStyleTransfer", + "AudioVAEDecode", + "AudioVAEEncode", + "LatentFormatConverter", + "ModelMixer", + "NetworkBending", + "NetworkBendingAdvanced", + "VAEChannelManipulator", + "VAELatentBending", + "VAEMixer", + "VAENetworkBending" + ], + { + "title_aux": "Network Bending for ComfyUI" + } + ], + "https://github.com/Dayuppy/ComfyUI-DiscordWebhook": [ + [ + "DiscordPostViaWebhook", + "DiscordSetWebhook", + "Set Discord Webhook", + "Use Discord Webhook" + ], + { + "author": "Dayuppy", + "description": "A very simple Discord webhook integration node for ComfyUI that lets you post images and text.", + "nickname": "DiscordWebhook", + "title": "Discord Webhook", + "title_aux": "Discord Webhook" + } + ], + "https://github.com/De-Zoomer/ComfyUI-DeZoomer-Nodes": [ + [ + "CaptionRefinement", + "VideoCaptioning" + ], + { + "title_aux": "ComfyUI-DeZoomer-Nodes" + } + ], + "https://github.com/DeJoker/pipeline-parallel-comfy": [ + [ + "PipelineParallel" + ], + { + "title_aux": "Pipeline Parallel ComfyUI" + } + ], + "https://github.com/DebugPadawan/DebugPadawans-ComfyUI-Essentials": [ + [ + "DebugPadawan_ConditionalString", + "DebugPadawan_DebugPrint", + "DebugPadawan_ListInfo", + "DebugPadawan_TextJoiner", + "DebugPadawan_TextSplitter", + "DebugPadawan_TextToJSON", + "DebugPadawan_WaitNode" + ], + { + "title_aux": "DebugPadawan's ComfyUI Essentials" + } + ], + "https://github.com/Deep-Neko/ComfyUI_ascii_art": [ + [ + "AsciiGenerator" + ], + { + "author": "DeepNeko ", + "title_aux": "ascii-art-comfyui" + } + ], + "https://github.com/Derfuu/Derfuu_ComfyUI_ModdedNodes": [ + [], + { + "author": "Derfuu", + "description": "Pack of simple (or not) and modded nodes for scaling images/latents, editing numbers or text. Automate calculations depending on image sizes or any other thing you want. Or randomize any number in your workflow. Debug node included.", + "nickname": "Derfuu simple/modded Nodes", + "nodename_pattern": "^DF_", + "title": "Derfuu simple/modded Nodes", + "title_aux": "Derfuu_ComfyUI_ModdedNodes" + } + ], + "https://github.com/DesertPixelAi/ComfyUI-Desert-Pixel-Nodes": [ + [ + "DP 10 Images Switch Or Batch", + "DP 10 String Switch Or Connect", + "DP 2 String Switch", + "DP 3 Images Switch Or Batch", + "DP 3 String Switch Or Connect", + "DP 5 Find And Replace", + "DP 5 Image And Mask Switch", + "DP 5 Images Switch Or Batch", + "DP 5 String Switch Or Connect", + "DP Add Background To Png", + "DP Add Weight To String Sdxl", + "DP Advanced Sampler", + "DP Advanced Weight String Sdxl", + "DP Animation Calculator 10 Inputs", + "DP Animation Calculator 5 Inputs", + "DP Art Style Generator", + "DP Aspect Ratio Picker", + "DP Big Letters", + "DP Broken Token", + "DP Clean Prompt", + "DP Clean Prompt Travel", + "DP Condition Switch", + "DP ControlNet Apply Advanced", + "DP Crazy Prompt Mixer", + "DP Create Json File", + "DP Custom Aspect Ratio", + "DP Diff Int 8step Selector", + "DP Draggable Floats 1", + "DP Draggable Floats 2", + "DP Draggable Floats 3", + "DP Draggable Int 1step", + "DP Draggable Int 4step", + "DP Draggable Int 8step", + "DP Extract Mask", + "DP Fast Slow Motion", + "DP Five Lora", + "DP Five Lora Random", + "DP Float Stepper", + "DP Get Seed From Image", + "DP IF Int Condition", + "DP Image And String Pairs Switch", + "DP Image Color Analyzer", + "DP Image Color Analyzer Small", + "DP Image Color Effect", + "DP Image Effect Processor", + "DP Image Effect Processor Small", + "DP Image Empty Latent Switch Flux", + "DP Image Empty Latent Switch SDXL", + "DP Image Grid To Image", + "DP Image Slice To Grid", + "DP Image Slide Show", + "DP Image Strip", + "DP Image To Pixelgrid", + "DP Int 0 1000", + "DP Latent Split", + "DP Line Cycler", + "DP Load Checkpoint With Info", + "DP Load Controlnet Model With Name", + "DP Load Dual CLIP With Info", + "DP Load Image Effects", + "DP Load Image Effects Small", + "DP Load Image Folder", + "DP Load Image Minimal", + "DP Load Image V2", + "DP Load Image With Seed", + "DP Load UNET With Info", + "DP Logo Animator", + "DP Lora Random Strength Controller", + "DP Lora Strength Controller", + "DP Mask Settings", + "DP Place Image", + "DP Prompt Inverter", + "DP Prompt Manager Small", + "DP Prompt Mode Controller", + "DP Prompt Styler", + "DP Prompt Token Compressor", + "DP Prompt Travel Prompt", + "DP Quick Model Link", + "DP Random Character", + "DP Random Crazy Prompt Generator", + "DP Random Logo Style Generator", + "DP Random Min Max", + "DP Random Mode Controller", + "DP Random Mode Switch", + "DP Random Psychedelic Punk Generator", + "DP Random Superhero Prompt Generator", + "DP Random Vehicle Generator", + "DP Resize Image And Mask", + "DP Sampler With Info", + "DP Save Image V2", + "DP Save Preview Image", + "DP Stitch 2 Images", + "DP String Text", + "DP String Text With Sdxl Weight", + "DP Strip Edge Masks", + "DP Switch Controller", + "DP Text Preview", + "DP Transition Frames Selector", + "DP Versatile Prompt Subjects Generator", + "DP Video Effect Receiver", + "DP Video Effect Sender", + "DP Video Flicker", + "DP Video Looper", + "DP Video Transition", + "DP Words", + "DP_Crazy_Prompt_Mixer", + "DP_Float_Stepper", + "DP_Image_To_Pixelgrid", + "DP_Prompt_Inverter" + ], + { + "title_aux": "ComfyUI-Desert-Pixel-Nodes" + } + ], + "https://github.com/DesertPixelAi/comfyui-dp-them-styler": [ + [ + "DP_Add_Logo_Banner", + "DP_Advanced_Sampler_Modified", + "DP_Dynamic_Random_Styler", + "DP_Gender_Age_Detector" + ], + { + "title_aux": "ComfyUI DP Dynamic Random Styler" + } + ], + "https://github.com/DiaoDaiaChan/ComfyUI_API_Request": [ + [ + "Character_Prompt_Select", + "NovelAI_Request", + "NovelAI_Request_Payload", + "SDWebUI_Request", + "SDWebUI_Request_Payload", + "SDWebUI_Request_PayloadExtend" + ], + { + "title_aux": "Comfyui SDAPI Request / NovelAI" + } + ], + "https://github.com/DiffusionLight/DiffusionLight-ComfyUI": [ + [ + "DiffusionLightBall2Envmap", + "DiffusionLightChromeballMask", + "DiffusionLightExposure2HDR", + "DiffusionLightExposureBracket", + "DiffusionLightPadBlackBorder", + "DiffusionLightPercentileToPixelValueTonemap", + "DiffusionLightSaveHDR" + ], + { + "title_aux": "DiffusionLight-ComfyUI" + } + ], + "https://github.com/Diohim/ComfyUI-Unusual-Tools": [ + [ + "AdjustCrop", + "AutoImageResize", + "BatchLoadLatentImage", + "BatchSaveLatentImage", + "FillMaskWithColor" + ], + { + "title_aux": "ComfyUI Unusual Tools" + } + ], + "https://github.com/Dobidop/ComfyStereo": [ + [ + "DeoVRViewNode", + "StereoImageNode" + ], + { + "title_aux": "Dobidop ComfyStereo" + } + ], + "https://github.com/DoctorDiffusion/ComfyUI-BEN": [ + [ + "BackgroundEraseNetwork" + ], + { + "title_aux": "ComfyUI BEN - Background Erase Network" + } + ], + "https://github.com/DoctorDiffusion/ComfyUI-MediaMixer": [ + [ + "FinalFrameSelector", + "FirstFrameSelector", + "PromptJournal", + "ReverseFrameSequence", + "VideoMerge", + "YouTubeVideoDownloader" + ], + { + "title_aux": "MediaMixer" + } + ], + "https://github.com/DoctorDiffusion/ComfyUI-Schedulizer": [ + [ + "prompt_schedule_converter", + "whisper_node" + ], + { + "title_aux": "Schedulizer" + } + ], + "https://github.com/DoctorDiffusion/ComfyUI-SnakeOil": [ + [ + "NegativeLoRALoader" + ], + { + "title_aux": "ComfyUI-SnakeOil" + } + ], + "https://github.com/DoctorDiffusion/ComfyUI-basic-pitch": [ + [ + "AudioToMidi", + "SaveMidi" + ], + { + "title_aux": "ComfyUI-basic-pitch" + } + ], + "https://github.com/Dontdrunk/ComfyUI-DD-Nodes": [ + [ + "DD-AdvancedFusion", + "DD-ColorBackgroundGenerator", + "DD-ConditionSwitcher", + "DD-DimensionCalculator", + "DD-ImageSizeLimiter", + "DD-ImageToVideo", + "DD-ImageUniformSize", + "DD-LatentSwitcher", + "DD-MaskUniformSize", + "DD-ModelOptimizer", + "DD-ModelSwitcher", + "DD-SamplingOptimizer", + "DD-SimpleLatent", + "DD-VideoFrameExtractor" + ], + { + "title_aux": "ComfyUI-DD-Nodes" + } + ], + "https://github.com/DrMWeigand/ComfyUI-StereoVision": [ + [ + "AutostereogramGenerator", + "StereoscopicGenerator" + ], + { + "title_aux": "StereoVision Plugin for ComfyUI" + } + ], + "https://github.com/DrMWeigand/ComfyUI_ColorImageDetection": [ + [ + "LABColorDetection", + "RGBColorDetection" + ], + { + "title_aux": "ComfyUI Color Detection Nodes" + } + ], + "https://github.com/DrStone71/ComfyUI-Prompt-Translator": [ + [ + "CLIP Text Encode (Translate)", + "CLIP Text Translate Advanced", + "Combine Conditioning", + "Conditional Translate", + "Language Package Manager", + "Prompt Text (Translate)", + "Text Translate", + "Universal Text Translate" + ], + { + "title_aux": "ComfyUI-Prompt-Translator" + } + ], + "https://github.com/DraconicDragon/ComfyUI-RyuuNoodles": [ + [ + "Ryuu_CleanStringAdvanced", + "Ryuu_ColorMatch", + "Ryuu_ExtractAndSaveLora", + "Ryuu_FallbackPassthrough", + "Ryuu_FallbackSwitchAny", + "Ryuu_FallbackSwitchImage", + "Ryuu_FallbackSwitchLatent", + "Ryuu_FloatPlain", + "Ryuu_FloatPlainLarger", + "Ryuu_FloatSlider", + "Ryuu_IntSlider", + "Ryuu_IsMultipleOf", + "Ryuu_ScaleToMultiple", + "Ryuu_ScaleToMultipleAdvanced", + "Ryuu_ScaleToMultipleLatentSizePicker", + "Ryuu_TestNode", + "Ryuu_TextEncoderDiffCheck", + "Ryuu_TokenCountTextBox" + ], + { + "title_aux": "ComfyUI-RyuuNoodles" + } + ], + "https://github.com/DraconicDragon/ComfyUI-Venice-API": [ + [ + "CharCountTextBox", + "GenerateImage_VENICE", + "GenerateSpeech_VENICE", + "GenerateTextAdvanced_VENICE", + "GenerateTextVeniceParameters_VENICE", + "GenerateText_VENICE", + "I2IEnhanceUpscale_VENICE" + ], + { + "title_aux": "ComfyUI-Venice-API" + } + ], + "https://github.com/DragonDiffusionbyBoyo/BoyoSupercoolWrapper": [ + [ + "BoyoSuperCoolWrapper" + ], + { + "title_aux": "BoyoSupercoolWrapper" + } + ], + "https://github.com/DragonDiffusionbyBoyo/Boyonodes": [ + [ + "BoyoAudioEval", + "BoyoFramePackLoRA", + "BoyoLoadImageList", + "BoyoSaver", + "BoyoVAEDecode", + "Boyolatent", + "MandelbrotVideo" + ], + { + "title_aux": "Boyonodes" + } + ], + "https://github.com/Dream-Pixels-Forge/ComfyUI-Mzikart-Mixer": [ + [ + "ArrangementEnforcer", + "AudioPostProcessor", + "CompressorNode", + "LimiterNode", + "MasteringEffects" + ], + { + "title_aux": "ComfyUI Mzikart Mixer" + } + ], + "https://github.com/Duanyll/duanyll_nodepack": [ + [ + "FluxKontextTrue3DPE", + "HfCheckpointLoader", + "HfDiffusionModelLoader", + "HfDualClipLoader", + "HfLoraLoader", + "HfLoraLoaderModelOnly", + "HfVaeLoader", + "ImageDifferenceCmap", + "PhotoDoddleConditioning" + ], + { + "title_aux": "Duanyll Nodepack" + } + ], + "https://github.com/Eagle-CN/ComfyUI-Addoor": [ + [ + "AD_AnyFileList", + "AD_BatchImageLoadFromDir", + "AD_CSVPromptStyler", + "AD_CSVReader", + "AD_CSVTranslator", + "AD_DeleteLocalAny", + "AD_FluxTrainStepMath", + "AD_HFDownload", + "AD_ImageDrawRectangleSimple", + "AD_ImageIndexer", + "AD_ImageSaver", + "AD_LoadImageAdvanced", + "AD_PromptReplace", + "AD_TextIndexer", + "AD_TextListToString", + "AD_TextSaver", + "AD_TxtToCSVCombiner", + "AD_ZipSave", + "AD_advanced-padding", + "AD_color-image", + "AD_image-concat", + "AD_image-resize", + "AD_mockup-maker", + "AD_poster-maker", + "AD_prompt-saver", + "ImageCaptioner", + "ImageResize", + "Incrementer \ud83e\udeb4", + "TextAppendNode", + "Width and height for scaling image to ideal resolution \ud83e\udeb4", + "Width and height from aspect ratio \ud83e\udeb4", + "YANC.MultilineString", + "comfyui-easy-padding", + "image concat mask" + ], + { + "author": "ComfyUI Addoor", + "description": "Save prompts to CSV file with customizable naming pattern", + "title": "ComfyUI-PromptSaver", + "title_aux": "ComfyUI-Addoor" + } + ], + "https://github.com/Easymode-ai/ComfyUI-BPT": [ + [ + "TrimeshBPT", + "TrimeshLoad", + "TrimeshPreview", + "TrimeshSave" + ], + { + "title_aux": "ComfyUI-BPT" + } + ], + "https://github.com/Easymode-ai/ComfyUI-ShadowR": [ + [ + "ShadowRModelLoader", + "ShadowRShadowRemover" + ], + { + "title_aux": "ComfyUI-ShadowR" + } + ], + "https://github.com/EeroHeikkinen/ComfyUI-eesahesNodes": [ + [ + "InstantX Flux Union ControlNet Loader" + ], + { + "author": "eesahe", + "description": "InstantX's Flux union ControlNet loader and implementation", + "nickname": "eesahesNodes", + "title": "eesahe's Nodes", + "title_aux": "ComfyUI-eesahesNodes" + } + ], + "https://github.com/Elaine-chennn/comfyui-overlay-media": [ + [ + "OverlayMediaNode", + "VideoUpload" + ], + { + "title_aux": "ComfyUI Overlay Media Node" + } + ], + "https://github.com/Electrofried/ComfyUI-OpenAINode": [ + [ + "OpenAINode" + ], + { + "title_aux": "OpenAINode" + } + ], + "https://github.com/EllangoK/ComfyUI-post-processing-nodes": [ + [ + "ArithmeticBlend", + "AsciiArt", + "Blend", + "Blur", + "CannyEdgeMask", + "ChromaticAberration", + "ColorCorrect", + "ColorTint", + "Dissolve", + "Dither", + "DodgeAndBurn", + "FilmGrain", + "Glow", + "HSVThresholdMask", + "KMeansQuantize", + "KuwaharaBlur", + "Parabolize", + "PencilSketch", + "PixelSort", + "Pixelize", + "Quantize", + "Sharpen", + "SineWave", + "Solarize", + "Vignette" + ], + { + "title_aux": "ComfyUI-post-processing-nodes" + } + ], + "https://github.com/EmAySee/ComfyUI_EmAySee_CustomNodes": [ + [ + "EmAySee_AnyPassthrough", + "EmAySee_CheckboxFloatNode", + "EmAySee_DateTimeStringNode", + "EmAySee_DynamicStringSelectorNode", + "EmAySee_GreaterThanNode", + "EmAySee_HostPinger", + "EmAySee_ImagePassthrough", + "EmAySee_IntegerStringSelectorNode", + "EmAySee_IntegerStringSelectorNodeDynamic", + "EmAySee_MultiplierNode", + "EmAySee_ProbabilityStringSelectorNode", + "EmAySee_RandomIntFromList", + "EmAySee_RandomIntegerFromListNode", + "EmAySee_RandomIntegerFromTogglesNode_PremadeLabels", + "EmAySee_RandomStringSelectorNode", + "EmAySee_RandomStringSelectorNodeFourChoice", + "EmAySee_RandomStringSelectorNodeThreeChoice", + "EmAySee_RemoveDuplicateCSV", + "EmAySee_RepaintKSampler", + "EmAySee_SaveImage", + "EmAySee_SaveTextToFile", + "EmAySee_StringPoseSelectorNode", + "EmAySee_StringTupleInputNode", + "EmAySee_SubmitToOobaboogaAPI", + "EmAySee_SubmitToOobaboogaAPIWithKey", + "EmAySee_ToggleIntNode", + "EmAySee_VarTextReplacer", + "EmAySee_VeryUniqueStringSelectorNode" + ], + { + "title_aux": "ComfyUI_EmAySee_CustomNodes" + } + ], + "https://github.com/EnragedAntelope/ComfyUI-ConstrainResolution": [ + [ + "ConstrainResolution" + ], + { + "title_aux": "ComfyUI-ConstrainResolution" + } + ], + "https://github.com/EnragedAntelope/ComfyUI-Doubutsu-Describer": [ + [ + "DoubutsuDescriber" + ], + { + "title_aux": "ComfyUI-Doubutsu-Describer" + } + ], + "https://github.com/EnragedAntelope/ComfyUI-EACloudNodes": [ + [ + "GroqNode", + "OpenRouterModels", + "OpenrouterNode" + ], + { + "title_aux": "ComfyUI-EACloudNodes" + } + ], + "https://github.com/EnragedAntelope/comfyui-relight": [ + [ + "ReLight" + ], + { + "title_aux": "ComfyUI-ReLight" + } + ], + "https://github.com/Erehr/ComfyUI-EreNodes": [ + [ + "ErePromptCloud", + "ErePromptFilter", + "ErePromptGallery", + "ErePromptLoraStack", + "ErePromptMultiSelect", + "ErePromptMultiline", + "ErePromptRandomizer", + "ErePromptToggle" + ], + { + "title_aux": "ComfyUI-EreNodes" + } + ], + "https://github.com/EvilBT/ComfyUI_SLK_joy_caption_two": [ + [ + "Batch_joy_caption_two", + "Batch_joy_caption_two_advanced", + "Joy_caption_two", + "Joy_caption_two_advanced", + "Joy_caption_two_load", + "Joy_extra_options" + ], + { + "title_aux": "JoyCaptionAlpha Two for ComfyUI" + } + ], + "https://github.com/Excidos/ComfyUI-Documents": [ + [ + "ChunkRouter", + "DocumentLoader", + "ImageSelector", + "PDFPageSplitter", + "PDFToImage", + "TextChunker" + ], + { + "title_aux": "ComfyUI-Documents" + } + ], + "https://github.com/Excidos/ComfyUI-Lumina-Next-SFT-DiffusersWrapper": [ + [ + "LuminaDiffusersNode" + ], + { + "title_aux": "ComfyUI-Lumina-Next-SFT-DiffusersWrapper" + } + ], + "https://github.com/ExponentialML/ComfyUI_ModelScopeT2V": [ + [ + "ModelScopeT2VLoader" + ], + { + "title_aux": "ComfyUI_ModelScopeT2V" + } + ], + "https://github.com/ExponentialML/ComfyUI_Native_DynamiCrafter": [ + [ + "DynamiCrafterLoader", + "DynamiCrafterProcessor" + ], + { + "title_aux": "ComfyUI - Native DynamiCrafter" + } + ], + "https://github.com/ExponentialML/ComfyUI_VisualStylePrompting": [ + [ + "ApplyVisualStyle" + ], + { + "title_aux": "ComfyUI_VisualStylePrompting" + } + ], + "https://github.com/ExterminanzHS/Gecco-Discord-Autosend": [ + [ + "GeccoAutosend", + "GeccoImageSave", + "GeccoSelectchannel" + ], + { + "title_aux": "Gecco Discord Autosend" + } + ], + "https://github.com/Extraltodeus/ComfyUI-AutomaticCFG": [ + [ + "Automatic CFG", + "Automatic CFG - Advanced", + "Automatic CFG - Attention modifiers", + "Automatic CFG - Attention modifiers tester", + "Automatic CFG - Custom attentions", + "Automatic CFG - Excellent attention", + "Automatic CFG - Negative", + "Automatic CFG - Post rescale only", + "Automatic CFG - Preset Loader", + "Automatic CFG - Unpatch function", + "Automatic CFG - Warp Drive", + "SAG delayed activation", + "Temperature separate settings CLIP SDXL", + "Temperature settings CLIP", + "Temperature settings SD 1.5", + "Temperature settings SDXL", + "Zero Uncond CFG - standalone patch (incompatible with the others)" + ], + { + "title_aux": "ComfyUI-AutomaticCFG" + } + ], + "https://github.com/Extraltodeus/DistanceSampler": [ + [ + "SamplerDistance", + "SamplerDistanceAdvanced" + ], + { + "title_aux": "DistanceSampler" + } + ], + "https://github.com/Extraltodeus/LoadLoraWithTags": [ + [ + "LoraLoaderTagsQuery" + ], + { + "title_aux": "LoadLoraWithTags" + } + ], + "https://github.com/Extraltodeus/Negative-attention-for-ComfyUI-": [ + [ + "Negative cross attention", + "Negative cross attention concatenate" + ], + { + "title_aux": "Negative-attention-for-ComfyUI-" + } + ], + "https://github.com/Extraltodeus/Skimmed_CFG": [ + [ + "Skimmed CFG", + "Skimmed CFG - Clean Skim", + "Skimmed CFG - Difference CFG", + "Skimmed CFG - Timed flip", + "Skimmed CFG - linear interpolation", + "Skimmed CFG - linear interpolation dual scales", + "Skimmed CFG - replace" + ], + { + "title_aux": "Skimmed_CFG" + } + ], + "https://github.com/Extraltodeus/Stable-Diffusion-temperature-settings": [ + [ + "CLIP Temperature", + "Unet Temperature" + ], + { + "title_aux": "Stable-Diffusion-temperature-settings" + } + ], + "https://github.com/Extraltodeus/Uncond-Zero-for-ComfyUI": [ + [ + "Conditioning combine positive and negative", + "Conditioning crop or fill", + "Uncond Zero", + "interrupt on NaN" + ], + { + "title_aux": "Uncond-Zero-for-ComfyUI" + } + ], + "https://github.com/Extraltodeus/Vector_Sculptor_ComfyUI": [ + [ + "CLIP Vector Sculptor text encode", + "Conditioning (Average keep magnitude)", + "Conditioning (Slerp)", + "Conditioning SDXL merge clip_g / clip_l", + "Conditioning normalize magnitude to empty" + ], + { + "title_aux": "Vector_Sculptor_ComfyUI" + } + ], + "https://github.com/Extraltodeus/noise_latent_perlinpinpin": [ + [ + "NoisyLatentPerlin", + "NoisyLatentPerlin16ch" + ], + { + "title_aux": "noise latent perlinpinpin" + } + ], + "https://github.com/Extraltodeus/sigmas_tools_and_the_golden_scheduler": [ + [ + "Aligned Scheduler", + "Gaussian Tail Scheduler", + "Get sigmas as float", + "Graph sigmas", + "Manual scheduler", + "Merge many sigmas by average", + "Merge sigmas by average", + "Merge sigmas gradually", + "Multiply sigmas", + "Output min/max sigmas", + "Split and concatenate sigmas", + "The Golden Scheduler" + ], + { + "title_aux": "sigmas_tools_and_the_golden_scheduler" + } + ], + "https://github.com/FaberVS/MultiModel": [ + [ + "ActiveModel", + "DenoiseSelector", + "KSamplerPipe", + "ListSelector", + "ModelParamsPipe", + "MySwitchIndex", + "ParamsPipeUnpack", + "PromptBuilder" + ], + { + "title_aux": "MultiModel" + } + ], + "https://github.com/Fannovel16/ComfyUI-Frame-Interpolation": [ + [ + "AMT VFI", + "CAIN VFI", + "FILM VFI", + "FLAVR VFI", + "GMFSS Fortuna VFI", + "IFRNet VFI", + "IFUnet VFI", + "KSampler Gradually Adding More Denoise (efficient)", + "M2M VFI", + "Make Interpolation State List", + "RIFE VFI", + "STMFNet VFI", + "Sepconv VFI", + "VFI FloatToInt" + ], + { + "title_aux": "ComfyUI Frame Interpolation" + } + ], + "https://github.com/Fannovel16/ComfyUI-MagickWand": [ + [ + "ImageMagick Adaptive Blur", + "ImageMagick Adaptive Resize", + "ImageMagick Adaptive Sharpen", + "ImageMagick Adaptive Threshold", + "ImageMagick Auto Gamma", + "ImageMagick Auto Level", + "ImageMagick Auto Orient", + "ImageMagick Auto Threshold", + "ImageMagick Blue Shift", + "ImageMagick Blur", + "ImageMagick Brightness Contrast", + "ImageMagick Canny", + "ImageMagick Charcoal", + "ImageMagick Chop", + "ImageMagick Clahe", + "ImageMagick Clamp", + "ImageMagick Coalesce", + "ImageMagick Color Decision List", + "ImageMagick Color Matrix", + "ImageMagick Combine", + "ImageMagick Concat", + "ImageMagick Contrast", + "ImageMagick Contrast Stretch", + "ImageMagick Crop", + "ImageMagick Cycle Color Map", + "ImageMagick Decipher", + "ImageMagick Despeckle", + "ImageMagick Distort", + "ImageMagick Edge", + "ImageMagick Emboss", + "ImageMagick Encipher", + "ImageMagick Enhance", + "ImageMagick Equalize", + "ImageMagick Evaluate", + "ImageMagick Extent", + "ImageMagick Flip", + "ImageMagick Flop", + "ImageMagick Forward Fourier Transform", + "ImageMagick Function", + "ImageMagick Gamma", + "ImageMagick Gaussian Blur", + "ImageMagick Hough Lines", + "ImageMagick Implode", + "ImageMagick Kmeans", + "ImageMagick Kuwahara", + "ImageMagick Level", + "ImageMagick Levelize", + "ImageMagick Linear Stretch", + "ImageMagick Liquid Rescale", + "ImageMagick Local Contrast", + "ImageMagick Magnify", + "ImageMagick Mean Shift", + "ImageMagick Merge Layers", + "ImageMagick Mode", + "ImageMagick Modulate", + "ImageMagick Morphology", + "ImageMagick Motion Blur", + "ImageMagick Negate", + "ImageMagick Noise", + "ImageMagick Normalize", + "ImageMagick Oil Paint", + "ImageMagick Ordered Dither", + "ImageMagick Polynomial", + "ImageMagick Posterize", + "ImageMagick Quantize", + "ImageMagick Random Threshold", + "ImageMagick Range Threshold", + "ImageMagick Resample", + "ImageMagick Resize", + "ImageMagick Roll", + "ImageMagick Rotational Blur", + "ImageMagick Sample", + "ImageMagick Scale", + "ImageMagick Selective Blur", + "ImageMagick Sepia Tone", + "ImageMagick Shade", + "ImageMagick Shadow", + "ImageMagick Sharpen", + "ImageMagick Shave", + "ImageMagick Sigmoidal Contrast", + "ImageMagick Sketch", + "ImageMagick Smush", + "ImageMagick Solarize", + "ImageMagick Splice", + "ImageMagick Spread", + "ImageMagick Statistic", + "ImageMagick Swirl", + "ImageMagick Threshold", + "ImageMagick Thumbnail", + "ImageMagick Transform", + "ImageMagick Transform Colorspace", + "ImageMagick Transparentize", + "ImageMagick Transpose", + "ImageMagick Transverse", + "ImageMagick Unsharp Mask", + "ImageMagick Vignette", + "ImageMagick Wave", + "ImageMagick Wavelet Denoise", + "ImageMagick White Balance" + ], + { + "title_aux": "ComfyUI-MagickWand" + } + ], + "https://github.com/Fannovel16/ComfyUI-MotionDiff": [ + [ + "EmptyMotionData", + "ExportSMPLTo3DSoftware", + "Export_SMPLMultipleSubjects_To_3DSoftware", + "Human4D_Img2SMPL", + "Humans4DLoader", + "MotionCLIPTextEncode", + "MotionDataVisualizer", + "MotionDiffLoader", + "MotionDiffSimpleSampler", + "RenderMultipleSubjectsSMPLMesh", + "RenderSMPLMesh", + "Render_OpenPose_From_SMPL_Mesh_Multiple_Subjects", + "SMPLLoader", + "SMPLShapeParameters", + "SaveSMPL", + "SmplifyMotionData", + "SpectreFaceReconLoader", + "SpectreImg2SMPL", + "mgpt_model_loader", + "mgpt_t2m" + ], + { + "title_aux": "ComfyUI MotionDiff" + } + ], + "https://github.com/Fannovel16/ComfyUI-Video-Matting": [ + [ + "BRIAAI Matting", + "Robust Video Matting" + ], + { + "title_aux": "ComfyUI-Video-Matting" + } + ], + "https://github.com/Fannovel16/comfyui_controlnet_aux": [ + [ + "AIO_Preprocessor", + "AnimalPosePreprocessor", + "AnimeFace_SemSegPreprocessor", + "AnimeLineArtPreprocessor", + "AnyLineArtPreprocessor_aux", + "BAE-NormalMapPreprocessor", + "BinaryPreprocessor", + "CannyEdgePreprocessor", + "ColorPreprocessor", + "ControlNetAuxSimpleAddText", + "ControlNetPreprocessorSelector", + "DSINE-NormalMapPreprocessor", + "DWPreprocessor", + "DensePosePreprocessor", + "DepthAnythingPreprocessor", + "DepthAnythingV2Preprocessor", + "DiffusionEdge_Preprocessor", + "ExecuteAllControlNetPreprocessors", + "FacialPartColoringFromPoseKps", + "FakeScribblePreprocessor", + "HEDPreprocessor", + "HintImageEnchance", + "ImageGenResolutionFromImage", + "ImageGenResolutionFromLatent", + "ImageIntensityDetector", + "ImageLuminanceDetector", + "InpaintPreprocessor", + "LeReS-DepthMapPreprocessor", + "LineArtPreprocessor", + "LineartStandardPreprocessor", + "M-LSDPreprocessor", + "Manga2Anime_LineArt_Preprocessor", + "MaskOptFlow", + "MediaPipe-FaceMeshPreprocessor", + "MeshGraphormer+ImpactDetector-DepthMapPreprocessor", + "MeshGraphormer-DepthMapPreprocessor", + "Metric3D-DepthMapPreprocessor", + "Metric3D-NormalMapPreprocessor", + "Metric_DepthAnythingV2Preprocessor", + "MiDaS-DepthMapPreprocessor", + "MiDaS-NormalMapPreprocessor", + "OneFormer-ADE20K-SemSegPreprocessor", + "OneFormer-COCO-SemSegPreprocessor", + "OpenposePreprocessor", + "PiDiNetPreprocessor", + "PixelPerfectResolution", + "PyraCannyPreprocessor", + "RenderAnimalKps", + "RenderPeopleKps", + "SAMPreprocessor", + "SavePoseKpsAsJsonFile", + "ScribblePreprocessor", + "Scribble_PiDiNet_Preprocessor", + "Scribble_XDoG_Preprocessor", + "SemSegPreprocessor", + "ShufflePreprocessor", + "TEEDPreprocessor", + "TTPlanet_TileGF_Preprocessor", + "TTPlanet_TileSimple_Preprocessor", + "TilePreprocessor", + "UniFormer-SemSegPreprocessor", + "Unimatch_OptFlowPreprocessor", + "UpperBodyTrackingFromPoseKps", + "Zoe-DepthMapPreprocessor", + "Zoe_DepthAnythingPreprocessor" + ], + { + "preemptions": [ + "AIO_Preprocessor", + "AnimalPosePreprocessor", + "AnimeFace_SemSegPreprocessor", + "AnimeLineArtPreprocessor", + "BAE-NormalMapPreprocessor", + "BinaryPreprocessor", + "CannyEdgePreprocessor", + "ColorPreprocessor", + "DSINE-NormalMapPreprocessor", + "DWPreprocessor", + "DensePosePreprocessor", + "DepthAnythingPreprocessor", + "DiffusionEdge_Preprocessor", + "FacialPartColoringFromPoseKps", + "FakeScribblePreprocessor", + "HEDPreprocessor", + "HintImageEnchance", + "ImageGenResolutionFromImage", + "ImageGenResolutionFromLatent", + "ImageIntensityDetector", + "ImageLuminanceDetector", + "InpaintPreprocessor", + "LeReS-DepthMapPreprocessor", + "LineArtPreprocessor", + "LineartStandardPreprocessor", + "M-LSDPreprocessor", + "Manga2Anime_LineArt_Preprocessor", + "MaskOptFlow", + "MediaPipe-FaceMeshPreprocessor", + "MeshGraphormer-DepthMapPreprocessor", + "MiDaS-DepthMapPreprocessor", + "MiDaS-NormalMapPreprocessor", + "OneFormer-ADE20K-SemSegPreprocessor", + "OneFormer-COCO-SemSegPreprocessor", + "OpenposePreprocessor", + "PiDiNetPreprocessor", + "PixelPerfectResolution", + "SAMPreprocessor", + "SavePoseKpsAsJsonFile", + "ScribblePreprocessor", + "Scribble_XDoG_Preprocessor", + "SemSegPreprocessor", + "ShufflePreprocessor", + "TEEDPreprocessor", + "TilePreprocessor", + "UniFormer-SemSegPreprocessor", + "Unimatch_OptFlowPreprocessor", + "Zoe-DepthMapPreprocessor", + "Zoe_DepthAnythingPreprocessor" + ], + "title_aux": "ComfyUI's ControlNet Auxiliary Preprocessors" + } + ], + "https://github.com/Fantaxico/ComfyUI-GCP-Storage": [ + [ + "GCPStorageNode" + ], + { + "title_aux": "ComfyUI-GCP-Storage" + } + ], + "https://github.com/FaraamFide/ComfyUI-ParamNodes": [ + [ + "HelperModelSwitch", + "ParamBoolean", + "ParamFloat", + "ParamImage", + "ParamInt", + "ParamString", + "ParamUniversal" + ], + { + "title_aux": "ComfyUI-ParamNodes" + } + ], + "https://github.com/Feidorian/feidorian-ComfyNodes": [ + [], + { + "nodename_pattern": "^Feidorian_", + "title_aux": "feidorian-ComfyNodes" + } + ], + "https://github.com/FewBox/fewbox-outfit-comfyui": [ + [ + "FewBoxInContextLora", + "FewBoxLab", + "FewBoxSaveImage", + "FewBoxWatermark", + "FewBoxWebDAV" + ], + { + "title_aux": "fewbox-outfit-comfyui" + } + ], + "https://github.com/Fictiverse/ComfyUI_Fictiverse": [ + [ + "Add Margin With Color", + "Essential Params", + "If Image Valid", + "Image Params", + "Is Image Valid ?", + "None if same Image", + "Video Params" + ], + { + "title_aux": "ComfyUI Fictiverse Nodes" + } + ], + "https://github.com/Fihade/IC-Light-ComfyUI-Node": [ + [ + "LoadICLightUnetDiffusers", + "diffusers_model_loader", + "iclight_diffusers_sampler" + ], + { + "title_aux": "IC-Light-ComfyUI-Node" + } + ], + "https://github.com/FinetunersAI/ComfyUI_Finetuners_Suite": [ + [ + "AutoImageResize", + "GroupLink", + "ModelListNode", + "VariablesInjector", + "VariablesLogicNode" + ], + { + "title_aux": "ComfyUI_Finetuners_Suite" + } + ], + "https://github.com/FizzleDorf/ComfyUI-AIT": [ + [ + "AIT_Unet_Loader", + "AIT_VAE_Encode_Loader" + ], + { + "title_aux": "ComfyUI-AIT" + } + ], + "https://github.com/FizzleDorf/ComfyUI_FizzNodes": [ + [ + "AbsCosWave", + "AbsSinWave", + "BatchGLIGENSchedule", + "BatchPromptSchedule", + "BatchPromptScheduleEncodeSDXL", + "BatchPromptScheduleLatentInput", + "BatchPromptScheduleNodeFlowEnd", + "BatchPromptScheduleSDXLLatentInput", + "BatchStringSchedule", + "BatchValueSchedule", + "BatchValueScheduleLatentInput", + "CalculateFrameOffset", + "ConcatStringSingle", + "CosWave", + "FizzFrame", + "FizzFrameConcatenate", + "ImagesFromBatchSchedule", + "Init FizzFrame", + "InvCosWave", + "InvSinWave", + "Lerp", + "PromptSchedule", + "PromptScheduleEncodeSDXL", + "PromptScheduleNodeFlow", + "PromptScheduleNodeFlowEnd", + "SawtoothWave", + "SinWave", + "SquareWave", + "StringConcatenate", + "StringSchedule", + "TriangleWave", + "ValueSchedule", + "convertKeyframeKeysToBatchKeys" + ], + { + "title_aux": "FizzNodes" + } + ], + "https://github.com/Flow-two/ComfyUI-WanStartEndFramesNative": [ + [ + "GetImagesFromBatchRanged_F2", + "WanImageToVideo_F2", + "WanSkipEndFrameImages_F2" + ], + { + "title_aux": "ComfyUI-WanStartEndFramesNative" + } + ], + "https://github.com/FlyingFireCo/tiled_ksampler": [ + [ + "Asymmetric Tiled KSampler", + "Circular VAEDecode", + "Tiled KSampler" + ], + { + "title_aux": "tiled_ksampler" + } + ], + "https://github.com/ForeignGods/ComfyUI-Mana-Nodes": [ + [ + "Canvas Properties", + "Combine Video", + "Font Properties", + "Generate Audio", + "Preset Color Animations", + "Save/Preview Text", + "Scheduled Values", + "Speech Recognition", + "Split Video", + "Text to Image Generator" + ], + { + "title_aux": "ComfyUI-Mana-Nodes" + } + ], + "https://github.com/FortunaCournot/comfyui_stereoscopic": [ + [ + "GetResolutionForDepth", + "ImageSBSConverter" + ], + { + "title_aux": "Stereoscopic" + } + ], + "https://github.com/Franck-Demongin/NX_HuggingFace_Flux": [ + [ + "HFFlux" + ], + { + "title_aux": "NX_HuggingFace_Flux" + } + ], + "https://github.com/Franck-Demongin/NX_PromptStyler": [ + [ + "NX_PromptStyler" + ], + { + "title_aux": "NX_PromptStyler" + } + ], + "https://github.com/Franck-Demongin/NX_Translator": [ + [ + "Nx_Translator" + ], + { + "title_aux": "NX_Translator" + } + ], + "https://github.com/FunnyFinger/ComfyUi-RadarWeightNode": [ + [ + "RadarWeightsNode" + ], + { + "title_aux": "Radar Weights Node" + } + ], + "https://github.com/FuouM/ComfyUI-EbSynth": [ + [ + "ES_Guides7", + "ES_Translate", + "ES_VideoTransfer", + "ES_VideoTransferExtra" + ], + { + "author": "Fuou Marinas", + "description": "Run EbSynth in ComfyUI.", + "nickname": "EbSynth", + "title": "ComfyUI-EbSynth", + "title_aux": "ComfyUI-EbSynth" + } + ], + "https://github.com/FuouM/ComfyUI-FirstOrderMM": [ + [ + "Articulate_Runner", + "FOMM_Partswap", + "FOMM_Runner", + "FOMM_Seg10Chooser", + "FOMM_Seg15Chooser", + "FOMM_Seg5Chooser", + "FSRT_Runner", + "MRFA_Runner", + "Spline_Runner" + ], + { + "author": "Fuou Marinas", + "description": "ComfyUI-native nodes to run First Order Motion Model for Image Animation and its non-diffusion-based successors.", + "nickname": "FOMM", + "title": "ComfyUI-FirstOrderMM", + "title_aux": "ComfyUI-FirstOrderMM" + } + ], + "https://github.com/FuouM/ComfyUI-MatAnyone": [ + [ + "MatAnyone", + "SolidColorBatched" + ], + { + "author": "Fuou Marinas", + "description": "A collection of nodes.", + "nickname": "FM_nodes", + "title": "FM Nodes", + "title_aux": "ComfyUI-MatAnyone" + } + ], + "https://github.com/FuouM/ComfyUI-StyleTransferPlus": [ + [ + "AESFA", + "AesFAStyleBlend", + "AesPA", + "CAST", + "CoralColorTransfer", + "EFDM", + "MicroAST", + "NeuralNeighbor", + "TSSAT", + "UniST", + "UniST_Video" + ], + { + "author": "ZJU", + "description": "A collection of style transfer nodes.", + "nickname": "StyleTransferPlus", + "title": "ComfyUI-StyleTransferPlus", + "title_aux": "ComfyUI-StyleTransferPlus" + } + ], + "https://github.com/FuouM/FM_nodes": [ + [ + "CoLIE_LowLight_Enhance", + "ConvIR_DeHaze", + "ConvIR_DeRain", + "ConvIR_DeSnow", + "ConvIR_DefocusDeblur", + "ConvIR_MotionDeBlur", + "ProPIH_Harmonizer", + "RealViFormerSR", + "StabStitch", + "StabStitch_Crop_Resize", + "StabStitch_Stabilize", + "WFEN" + ], + { + "author": "Fuou Marinas", + "description": "A collection of nodes.", + "nickname": "FM_nodes", + "title": "FM Nodes", + "title_aux": "FM_nodes" + } + ], + "https://github.com/Fuwuffyi/ComfyUI-VisualArea-Nodes": [ + [ + "VisualAreaPrompt", + "VisualAreaPromptAdvanced" + ], + { + "author": "Fuwuffy", + "description": "This is a collection of nodes created to aid when managing area conditionings.", + "nickname": "comfy-visual-area", + "title": "ComfyUI Visual Area Nodes", + "title_aux": "ComfyUI-VisualArea-Nodes" + } + ], + "https://github.com/G-370/ComfyUI-SD3-Powerlab": [ + [ + "G370SD3PowerLab_AttentionToImage", + "G370SD3PowerLab_ImageIntoAttention", + "G370SD3PowerLab_ImageIntoLayer", + "G370SD3PowerLab_LayerToImage", + "G370SD3PowerLab_RenderAttention" + ], + { + "title_aux": "ComfyUI-SD3-Powerlab" + } + ], + "https://github.com/GACLove/ComfyUI-Lightx2vWrapper": [ + [ + "LightX2VConfigCombiner", + "LightX2VInferenceConfig", + "LightX2VLightweightVAE", + "LightX2VLoRALoader", + "LightX2VMemoryOptimization", + "LightX2VModularInference", + "LightX2VQuantization", + "LightX2VTeaCache" + ], + { + "title_aux": "ComfyUI-Lightx2vWrapper" + } + ], + "https://github.com/GHOSTLXH/ComfyUI-Counternodes": [ + [ + "AlternatingOutput", + "AlternatingOutputB", + "ImageCounter", + "IntervalCounter", + "IntervalCounterB", + "LoadPromptFromTXT" + ], + { + "title_aux": "ComfyUI-Counternodes" + } + ], + "https://github.com/GTSuya-Studio/ComfyUI-Gtsuya-Nodes": [ + [ + "Danbooru (ID)", + "Danbooru (Random)", + "Random File From Path", + "Replace Strings", + "Simple Wildcards", + "Simple Wildcards (Dir.)", + "Wildcards Nodes" + ], + { + "title_aux": "ComfyUI-GTSuya-Nodes" + } + ], + "https://github.com/GadzoinksOfficial/comfyui_gprompts": [ + [ + "GPrompts" + ], + { + "author": "gadzoinksofficial", + "description": "Another dynamic prompt node, designed to be easy to use and support wildcards", + "nickname": "Gprompts", + "title": "Gprompts", + "title_aux": "Gprompts" + } + ], + "https://github.com/GadzoinksOfficial/gadzoinks_ComfyUI": [ + [ + "Gadzoinks" + ], + { + "author": "gadzoinksofficial", + "description": "Custom node for integrating with gadzoinks iPhone app", + "nickname": "Gadzoinks", + "title": "Gadzoinks", + "title_aux": "Gadzoinks" + } + ], + "https://github.com/GamingDaveUk/daves_nodes": [ + [ + "davesTextToList" + ], + { + "title_aux": "Daves Nodes" + } + ], + "https://github.com/Gary-yeh/ComfyUI-WebPrompter": [ + [ + "ContentFetcher (WebPrompter)", + "LLMNewsScriptGenerator (WebPrompter)" + ], + { + "title_aux": "ComfyUI-WebPrompter" + } + ], + "https://github.com/Gary-yeh/comfyui-super-captioner": [ + [ + "SuperCaptioner" + ], + { + "title_aux": "comfyui-super-captioner" + } + ], + "https://github.com/GavChap/ComfyUI-SD3LatentSelectRes": [ + [ + "SD3LatentSelectRes" + ], + { + "title_aux": "ComfyUI-SD3LatentSelectRes" + } + ], + "https://github.com/GeekyGhost/ComfyUI-Geeky-Kokoro-TTS": [ + [ + "GeekyKokoroAdvancedVoice", + "GeekyKokoroTTS" + ], + { + "title_aux": "ComfyUI-Geeky-Kokoro-TTS" + } + ], + "https://github.com/GeekyGhost/ComfyUI-GeekyRemB": [ + [ + "GeekyRemB" + ], + { + "title_aux": "ComfyUI-GeekyRemB" + } + ], + "https://github.com/GentlemanHu/ComfyUI-SunoAI": [ + [ + "GentlemanHu_SunoAI", + "GentlemanHu_SunoAI_NotSafe" + ], + { + "title_aux": "ComfyUI Suno API" + } + ], + "https://github.com/GiusTex/ComfyUI-DiffusersImageOutpaint": [ + [ + "DiffusersImageOutpaint", + "EncodeDiffusersOutpaintPrompt", + "LoadDiffuserControlnet", + "LoadDiffuserModel", + "PadImageForDiffusersOutpaint" + ], + { + "title_aux": "ComfyUI-DiffusersImageOutpaint" + } + ], + "https://github.com/Goktug/comfyui-saveimage-plus": [ + [ + "SaveImagePlus" + ], + { + "title_aux": "Save Image Plus for ComfyUI" + } + ], + "https://github.com/Goshe-nite/comfyui-gps-supplements": [ + [ + "KSampler to Image Saver", + "Lora Prompt Concatenation", + "Lora to String", + "Model to String", + "gpsdebugger" + ], + { + "title_aux": "GPS' Supplements for ComfyUI" + } + ], + "https://github.com/Gourieff/ComfyUI-ReActor": [ + [ + "ImageRGBA2RGB", + "ReActorBuildFaceModel", + "ReActorFaceBoost", + "ReActorFaceSwap", + "ReActorFaceSwapOpt", + "ReActorImageDublicator", + "ReActorLoadFaceModel", + "ReActorMakeFaceModelBatch", + "ReActorMaskHelper", + "ReActorOptions", + "ReActorRestoreFace", + "ReActorSaveFaceModel", + "ReActorSetWeight", + "ReActorUnload" + ], + { + "title_aux": "comfyui-reactor-node" + } + ], + "https://github.com/GraftingRayman/ComfyUI-PuLID-Flux-GR": [ + [ + "GRApplyPulidFlux", + "GRPulidFluxEvaClipLoader", + "GRPulidFluxInsightFaceLoader", + "GRPulidFluxModelLoader" + ], + { + "title_aux": "ComfyUI-PuLID-Flux-GR" + } + ], + "https://github.com/GraftingRayman/ComfyUI_GraftingRayman": [ + [ + "GR BLIP 2 Caption Generator", + "GR BLIP 2 Text Expander", + "GR Background Remover REMBG", + "GR Checkered Board", + "GR Counter", + "GR Flip Tile Random Inverted", + "GR Flip Tile Random Red Ring", + "GR Florence 2 Caption Generator", + "GR INT Incremetor", + "GR Image Details Displayer", + "GR Image Details Saver", + "GR Image Multiplier", + "GR Image Paste", + "GR Image Paste With Mask", + "GR Image Resize", + "GR Image Resize Methods", + "GR Image Size", + "GR Image/Depth Mask", + "GR Lora Randomizer", + "GR Mask", + "GR Mask Create", + "GR Mask Create Random", + "GR Mask Create Random Multi", + "GR Mask Resize", + "GR Multi Mask Create", + "GR Onomatopoeia", + "GR Pan Or Zoom", + "GR Prompt Generator", + "GR Prompt Generator Extended", + "GR Prompt HUB", + "GR Prompt Selector", + "GR Prompt Selector Multi", + "GR Prompty", + "GR Scroller", + "GR Sigmas", + "GR Stack Image", + "GR Text Overlay", + "GR Tile and Border Image", + "GR Tile and Border Image Random Flip" + ], + { + "title_aux": "GraftingRayman" + } + ], + "https://github.com/GraftingRayman/ComfyUI_QueueTube": [ + [ + "GR QueueTube" + ], + { + "title_aux": "ComfyUI QueueTube" + } + ], + "https://github.com/GrailGreg/images_base64": [ + [ + "SaveImage64", + "ShowText64" + ], + { + "title_aux": "Image Saving and Base64 Encoding Script" + } + ], + "https://github.com/GreenLandisaLie/AuraSR-ComfyUI": [ + [ + "AuraSR.AuraSRUpscaler" + ], + { + "title_aux": "AuraSR-ComfyUI" + } + ], + "https://github.com/GrenKain/PixelArt-Processing-Nodes-for-ComfyUI": [ + [ + "PixelArtDownscaleNode", + "PixelArtNode" + ], + { + "title_aux": "PixelArt Processing Nodes" + } + ], + "https://github.com/GroxicTinch/EasyUI-ComfyUI": [ + [ + "UINode" + ], + { + "title_aux": "EasyUI" + } + ], + "https://github.com/GrvBdgr/comfyui-negativewildcardsprocessor": [ + [ + "custom_token_processor", + "neg_wildcard_processor" + ], + { + "title_aux": "Negative Wildcard Processor Node for ComfyUI" + } + ], + "https://github.com/Gue-e/ComfyUI-PanoCard": [ + [ + "PanoCardViewer", + "PanoCondAllBatch", + "PanoCondFaceBatch", + "PanoCondFaceClamp", + "PanoCondFaceDetailerHook", + "PanoCondFaceUnPack", + "PanoImage2FaceSplit", + "PanoImageAdjust", + "PanoImageEqu2Equ", + "PanoImageEqu2Face", + "PanoImageEqu2Pic", + "PanoImageFace2Equ", + "PanoImageFaceClamp", + "PanoImageFaceToLong", + "PanoImageHeightPad", + "PanoImagePad", + "PanoImagePic2Equ", + "PanoImageRoll", + "PanoImageUnPack", + "PanoImageWidthPad", + "PanoLongMaskSplit", + "PanoMaskUnPack", + "PanoPipe", + "PanoPromptSplit", + "PanoRegionalPrompt" + ], + { + "title_aux": "ComfyUI-PanoCard" + } + ], + "https://github.com/Guillaume-Fgt/ComfyUI_StableCascadeLatentRatio": [ + [ + "StableCascadeLatentRatio" + ], + { + "title_aux": "ComfyUI_StableCascadeLatentRatio" + } + ], + "https://github.com/HAL41/ComfyUI-aichemy-nodes": [ + [ + "aichemyYOLOv8Segmentation" + ], + { + "title_aux": "ComfyUI aichemy nodes" + } + ], + "https://github.com/HECer/ComfyUI-FilePathCreator": [ + [ + "FilePathCreator", + "FilePathExtractor" + ], + { + "title_aux": "ComfyUI-FilePathCreator" + } + ], + "https://github.com/HJH-AILab/ComfyUI_CosyVoice2": [ + [ + "CosyVoiceModel", + "CosyVoiceNode", + "HJHCosyVoiceSaveAudio" + ], + { + "title_aux": "ComfyUI_CosyVoice2" + } + ], + "https://github.com/HJH-AILab/ComfyUI_StableAnimator": [ + [ + "StableAnimatorDWPoseDetectorAlignedModels", + "StableAnimatorLoadFramesFromFolderNode", + "StableAnimatorModels", + "StableAnimatorNode", + "StableAnimatorSkeletonNode" + ], + { + "title_aux": "ComfyUI_StableAnimator" + } + ], + "https://github.com/HM-RunningHub/ComfyUI_RH_APICall": [ + [ + "RH_AudioUploader", + "RH_BatchImages", + "RH_ExecuteNode", + "RH_ExtractImage", + "RH_ImageUploaderNode", + "RH_NodeInfoListNode", + "RH_SettingsNode", + "RH_Utils", + "RH_VideoUploader" + ], + { + "title_aux": "ComfyUI_RH_APICall" + } + ], + "https://github.com/HM-RunningHub/ComfyUI_RH_FramePack": [ + [ + "RunningHub_FramePack", + "RunningHub_FramePack_F1" + ], + { + "title_aux": "ComfyUI_RH_FramePack" + } + ], + "https://github.com/HM-RunningHub/ComfyUI_RH_OminiControl": [ + [ + "RunningHub_Omini_Fill", + "RunningHub_Omini_Spatial", + "RunningHub_Omini_Subject" + ], + { + "title_aux": "ComfyUI_RH_OminiControl" + } + ], + "https://github.com/HM-RunningHub/ComfyUI_RH_Step1XEdit": [ + [ + "RunningHub_Step1XEdit" + ], + { + "title_aux": "ComfyUI_RH_Step1XEdit" + } + ], + "https://github.com/HM-RunningHub/ComfyUI_RH_UNO": [ + [ + "RunningHub_UNO_Loadmodel", + "RunningHub_UNO_Sampler" + ], + { + "title_aux": "ComfyUI_RH_UNO" + } + ], + "https://github.com/HMG-Fiverr/ComfyUI-RandomNumberButton": [ + [ + "RandomNumberButton" + ], + { + "title_aux": "Random Number Button" + } + ], + "https://github.com/Haiper-ai/ComfyUI-HaiperAI-API": [ + [ + "HaiperImage2Video", + "HaiperKeyframeConditioning", + "HaiperText2Image", + "HaiperText2Video" + ], + { + "title_aux": "ComfyUI-HaiperAI-API" + } + ], + "https://github.com/HannibalP/comfyui-HannibalPack": [ + [ + "HannibalLoraLoader" + ], + { + "title_aux": "comfyui-HannibalPack" + } + ], + "https://github.com/Haoming02/comfyui-diffusion-cg": [ + [ + "Normalization", + "Recenter", + "Recenter XL" + ], + { + "title_aux": "Diffusion CG" + } + ], + "https://github.com/Haoming02/comfyui-floodgate": [ + [ + "FloodGate" + ], + { + "title_aux": "Floodgate" + } + ], + "https://github.com/Haoming02/comfyui-resharpen": [ + [ + "Resharpen" + ], + { + "title_aux": "ComfyUI ReSharpen" + } + ], + "https://github.com/HappyXY/ComfyUI-AmazonBedrock": [ + [ + "Amazon Bedrock - Nova Canvas Background Prompt Replace", + "Amazon Bedrock - Nova Canvas Generate Image", + "Amazon Bedrock - Nova Canvas Generate Variations", + "Amazon Bedrock - Nova Reel Video", + "Bedrock - Claude", + "Bedrock - Claude Multimodal", + "Bedrock - Nova", + "Bedrock - SDXL" + ], + { + "title_aux": "ComfyUI-AmazonBedrock" + } + ], + "https://github.com/HavocsCall/comfyui_HavocsCall_Custom_Nodes": [ + [ + "Clip Switch", + "Combine String", + "Conditioning Switch", + "Float Selector", + "Float to Integer", + "Float to String", + "Image Switch", + "Integer Selector", + "Integer to Float", + "Integer to String", + "Latent Switch", + "Load Image", + "Logic Compare", + "Math Operation", + "Model Switch", + "Prompt Combiner", + "Prompt Styler", + "Sampler Config", + "Save Image", + "String Switch", + "String to Float", + "String to Integer", + "Text Box", + "VAE Switch" + ], + { + "title_aux": "HavocsCall's Custom ComfyUI Nodes" + } + ], + "https://github.com/HaydenReeve/ComfyUI-Better-Strings": [ + [ + "BetterString" + ], + { + "title_aux": "ComfyUI Better Strings" + } + ], + "https://github.com/Hazukiaoi/ComfyUI-LM_Studio_Tools": [ + [ + "LMS_APIConfig", + "LMS_GetAssistantMessage", + "LMS_Request", + "LMS_SelectModel", + "LMS_SystemPrompt", + "LMS_UnloadModel", + "LMS_UserPrompt" + ], + { + "title_aux": "LM Studio Tools for ComfyUI" + } + ], + "https://github.com/HeadshotPro/ComfyUI-HeadshotPro": [ + [ + "[HSP] Download Dreambooth Checkpoint", + "[HSP] Download Flux Lora", + "[HSP] Get Random Value From List", + "[HSP] Load Canny Pose Face", + "[HSP] Transparent to White Background" + ], + { + "title_aux": "ComfyUI-HeadshotPro" + } + ], + "https://github.com/HebelHuber/comfyui-enhanced-save-node": [ + [ + "EnhancedSaveNode" + ], + { + "title_aux": "comfyui-enhanced-save-node" + } + ], + "https://github.com/HellerCommaA/ComfyUI-VideoResolutions": [ + [ + "HunyuanResolutions" + ], + { + "title_aux": "Hunyuan Video Resolutions" + } + ], + "https://github.com/Hellfiredragon/comfyui-image-manipulation": [ + [ + "AlphaApplyMaskToImage", + "CreateMaskFromColorsNode" + ], + { + "title_aux": "comfyui-image-manipulation" + } + ], + "https://github.com/HelloVision/ComfyUI_HelloMeme": [ + [ + "GetExpression", + "GetExpression2", + "GetFaceLandmarks", + "GetHeadPose", + "HMFaceToolkitsLoader", + "HMImagePipelineLoader", + "HMPipelineImage", + "HMPipelineVideo", + "HMVideoPipelineLoader" + ], + { + "title_aux": "ComfyUI_HelloMeme" + } + ], + "https://github.com/Hellrunner2k/ComfyUI-HellrunnersMagicalNodes": [ + [ + "AdjustMojo", + "BufferedEncoder", + "LoRABox", + "LoadMaskMap", + "MagicalSaveNode", + "MaskMapPrompt", + "MaskMapPromptMix", + "MojoLoader", + "MojoMaker", + "SaveMojo", + "TEAce", + "ThermalLatenator" + ], + { + "title_aux": "Hellrunner's Magical Nodes" + } + ], + "https://github.com/Hiero207/ComfyUI-Hiero-Nodes": [ + [ + "Load Prompt Travel file", + "Post to Discord w/ Webhook", + "Save Prompt Travel file" + ], + { + "author": "Hiero", + "description": "Just some nodes that I wanted/needed, so I made them.", + "nickname": "HNodes", + "title": "Hiero-Nodes", + "title_aux": "Hiero-Nodes" + } + ], + "https://github.com/HighDoping/ComfyUI_ASSSSA": [ + [ + "ASSSubtitleReader", + "ASSSubtitleSave", + "FFMpegSettings", + "MultilineTextInput", + "SubtitleEmbedding", + "SubtitleExtraction", + "VideoTranscoding" + ], + { + "title_aux": "ComfyUI-ASSSSA" + } + ], + "https://github.com/Holasyb918/Ghost2_Comfyui": [ + [ + "AlignPipeline", + "BlenderPipeline", + "FaceAnalysisePipeline", + "FaceParsingPipeline", + "LoadAlignerModel", + "LoadBlenderModel", + "LoadFaceAnalysisModel", + "LoadFaceParsingModel", + "LoadInpainterModel", + "LoadStyleMatteModel" + ], + { + "title_aux": "Ghost2_Comfyui" + } + ], + "https://github.com/Hopping-Mad-Games/ComfyUI_LiteLLM": [ + [ + "AgentMemoryProvider", + "AgentNode", + "BasicRecursionFilterNode", + "DocumentChunkRecursionFilterNode", + "DocumentProcessor", + "LinuxMemoryDirectory", + "QueryNode" + ], + { + "description": "Nodes for interfacing with LiteLLM", + "nickname": "Tasha", + "title": "ComfyUI_LiteLLM", + "title_aux": "ComfyUI_LiteLLM" + } + ], + "https://github.com/Hullabalo/ComfyUI-Loop": [ + [ + "ImageCropLoop", + "ImageCutLoop", + "ImagePasteLoop", + "LoadImageSimple", + "LoopImageSimple", + "SaveImageSimple" + ], + { + "title_aux": "ComfyUI-Loop" + } + ], + "https://github.com/IDGallagher/ComfyUI-IG-Motion-I2V": [ + [ + "MI2V Flow Animator", + "MI2V Flow Predictor", + "MI2V PauseNode", + "MotionPainter" + ], + { + "author": "IDGallagher", + "description": "Custom nodes to aid in the exploration of Latent Space", + "nickname": "IG Interpolation Nodes", + "title": "IG Interpolation Nodes", + "title_aux": "ComfyUI-IG-Motion-I2V" + } + ], + "https://github.com/IDGallagher/ComfyUI-IG-Nodes": [ + [ + "IG Analyze SSIM", + "IG Cross Fade Images", + "IG Explorer", + "IG Float", + "IG Float List", + "IG Folder", + "IG Image Crop", + "IG Int", + "IG Interpolate", + "IG Load Image", + "IG Load Images", + "IG MotionPredictor", + "IG Multiply", + "IG Path Join", + "IG PointCloud From Cylindrical", + "IG PointCloud From Depth", + "IG Save PLY PointCloud", + "IG Simple Translate Stitcher", + "IG Stitch Depth Tiles", + "IG Stitch Images CV2", + "IG String", + "IG String List", + "IG Tile Image", + "IG ZFill", + "SM Video Base", + "SM Video Base Control" + ], + { + "author": "IDGallagher", + "description": "Custom nodes to aid in the exploration of Latent Space", + "nickname": "IG Interpolation Nodes", + "title": "IG Interpolation Nodes", + "title_aux": "IG Interpolation Nodes" + } + ], + "https://github.com/IDGallagher/MotionVideoSearch": [ + [ + "IG Motion Video Frame", + "IG Motion Video Search" + ], + { + "author": "IDGallagher", + "description": "Search an index of videos by motion image", + "nickname": "IG Motion Video Search", + "title": "IG Motion Video Search", + "title_aux": "IG-Motion-Search" + } + ], + "https://github.com/IIEleven11/ComfyUI-FairyTaler": [ + [ + "FairyTalerStoryboard", + "SceneParser", + "SceneToConditioning", + "StoryboardCompositor", + "ThreeSceneGenerator" + ], + { + "author": "Eleven", + "description": "Turn your AI roleplay into AI generated scenes from every response. Visualize what you read!", + "nickname": "ComfyUI FairyTaler", + "title": "ComfyUI FairyTaler Storyboard Nodes", + "title_aux": "ComfyUI-FairyTaler" + } + ], + "https://github.com/IIs-fanta/ComfyUI-FANTA-GameBox": [ + [ + "BilliardsGameNode", + "BrickBreakerNode", + "FlappyBirdNode", + "SnakeGameNode" + ], + { + "title_aux": "ComfyUI-FANTA-GameBox" + } + ], + "https://github.com/INuBq8/ComfyUI-NotificationBridge": [ + [ + "DiscordNotifyNode", + "WhatsAppNotifyNodeTwilio" + ], + { + "title_aux": "Notification Bridge" + } + ], + "https://github.com/ITurchenko/ComfyUI-SizeFromArray": [ + [ + "SizeFromArray" + ], + { + "title_aux": "ComfyUI-SizeFromArray" + } + ], + "https://github.com/IamCreateAI/Ruyi-Models": [ + [ + "Ruyi_EnhanceAVideo", + "Ruyi_I2VSampler", + "Ruyi_LoadLora", + "Ruyi_LoadModel", + "Ruyi_TeaCache" + ], + { + "title_aux": "ComfyUI-Ruyi" + } + ], + "https://github.com/IcelandicCenterArtificialIntelligence/ComfyUI-SamplerSchedulerMetricsTester": [ + [ + "SamplerSchedulerMetricsTester" + ], + { + "title_aux": "Sampler Scheduler Metrics Tester for ComfyUI" + } + ], + "https://github.com/Icyman86/ComfyUI_AnimeCharacterSelect": [ + [ + "EnhancedCharacterPromptNode", + "MinimalCharacterActionPrompt" + ], + { + "title_aux": "ComfyUI_AnimeCharacterSelect" + } + ], + "https://github.com/IgalOgonov/ComfyUI_Simple_String_Repository": [ + [ + "SimpleStringRepository", + "SimpleStringRepositoryCompact", + "SimpleStringRepositoryLarge", + "SimpleStringRepositoryLargeCompact", + "SimpleStringRepositorySmall", + "SimpleStringRepositorySmallCompact" + ], + { + "title_aux": "Simple String Repository" + } + ], + "https://github.com/ImagineerNL/ComfyUI-IMGNR-Utils": [ + [ + "CatchEditTextNode", + "PreviewImageBase64Node" + ], + { + "title_aux": "ComfyUI-IMGNR-Utils" + } + ], + "https://github.com/ImagineerNL/ComfyUI-ToSVG-Potracer": [ + [ + "PotracerVectorize", + "SaveAsSVG Potracer (Temporary Fix)" + ], + { + "title_aux": "ComfyUI-ToSVG-Potracer" + } + ], + "https://github.com/Immac/ComfyUI-CoreVideoMocks": [ + [ + "CoreVideoMocks:AV1Codec", + "CoreVideoMocks:BatchAudioStreams", + "CoreVideoMocks:BatchSubtitlesStreams", + "CoreVideoMocks:BatchVideoStreams", + "CoreVideoMocks:CodecFromVideoStream", + "CoreVideoMocks:CombineVideo", + "CoreVideoMocks:DecodeVideoStream", + "CoreVideoMocks:EncodeVideoStream", + "CoreVideoMocks:GetAudioStream", + "CoreVideoMocks:GetSubtitleStream", + "CoreVideoMocks:GetVideoStream", + "CoreVideoMocks:LoadVideo", + "CoreVideoMocks:PreviewVideo", + "CoreVideoMocks:SaveVideo", + "CoreVideoMocks:SplitVideo", + "CoreVideoMocks:VP9Codec", + "CoreVideoMocks:VideoStreamData" + ], + { + "title_aux": "ComfyUI Core Video Nodes" + } + ], + "https://github.com/ImmortalPie/ComfyUI-PonySwitch": [ + [ + "PonySwitch" + ], + { + "title_aux": "PonySwitch Node" + } + ], + "https://github.com/InstantStudioAI/ComfyUI-InstantStudio": [ + [ + "HuggingFace Classify", + "Moondream", + "UploadImagesToInstantStudio" + ], + { + "title_aux": "ComfyUI-InstantStudio" + } + ], + "https://github.com/Intersection98/ComfyUI_MX_post_processing-nodes": [ + [ + "MX_AlphaBlend", + "MX_Blend", + "MX_Blur", + "MX_Canny", + "MX_ChromaticAberration", + "MX_ColorCorrect", + "MX_ColorMatch", + "MX_ColorTint", + "MX_Glow", + "MX_HSVThresholdMask", + "MX_KuwaharaBlur(Cartoon)", + "MX_LUT", + "MX_LensBokeh", + "MX_LensOpticAxis", + "MX_LensZoomBurst", + "MX_Mosaic", + "MX_Noise", + "MX_Posterize", + "MX_SineWave", + "MX_Solarize", + "MX_Vignette" + ], + { + "title_aux": "ComfyUI-MX-post-processing-nodes" + } + ], + "https://github.com/Inzaniak/comfyui-ranbooru": [ + [ + "LockSeed", + "PromptBackground", + "PromptLimit", + "PromptMix", + "PromptRandomWeight", + "PromptRemove", + "Ranbooru", + "RanbooruURL", + "RandomPicturePath", + "TimestampFileName" + ], + { + "title_aux": "Ranbooru for ComfyUI" + } + ], + "https://github.com/Irsalistic/comfyui-dam-object-extractor": [ + [ + "DAMObjectNameNode", + "DAMVisualizeNode" + ], + { + "title_aux": "ComfyUI DAM Object Extractor" + } + ], + "https://github.com/IsItDanOrAi/ComfyUI-Stereopsis": [ + [ + "Dan_FrameDelay", + "Dan_Stereopsis" + ], + { + "title_aux": "ComfyUI-Stereopsis" + } + ], + "https://github.com/IsItDanOrAi/ComfyUI-exLoadout": [ + [ + "dropdowns", + "exCheckpointLoader", + "exLoadoutCheckpointLoader", + "exLoadoutEditCell", + "exLoadoutReadColumn", + "exLoadoutSeg", + "exLoadoutSeg2", + "exLoadoutSelector", + "exSeg", + "exSeg2" + ], + { + "title_aux": "exLoadout: Excel-Based Model & Settings Loader" + } + ], + "https://github.com/Isi-dev/ComfyUI-Animation_Nodes_and_Workflows": [ + [ + "CLIPTextEncodeStyles", + "JoinVideos", + "MakeDrivingVideoForLivePortrait", + "MakePortraitWalk", + "MoveInOrOut", + "MoveLeftOrRight", + "MoveUpOrDown", + "Replace_Img_or_Vid_Bg_Assistant" + ], + { + "title_aux": "ComfyUI-Animation_Nodes_and_Workflows" + } + ], + "https://github.com/Isi-dev/ComfyUI-Img2DrawingAssistants": [ + [ + "LineArt_Assistant", + "LineArt_Assistant_2", + "Sketch_Assistant", + "Sketch_Assistant_grayScale" + ], + { + "title_aux": "ComfyUI-Img2DrawingAssistants" + } + ], + "https://github.com/Isi-dev/ComfyUI-Img2PaintingAssistant": [ + [ + "Painting", + "ProcessInspyrenetRembg" + ], + { + "title_aux": "Image to Painting and Inspyrenet Assistant Nodes" + } + ], + "https://github.com/Isi-dev/ComfyUI-UniAnimate-W": [ + [ + "Animate_X_Image", + "Animate_X_Image_Long", + "Animate_X_Image_v2", + "Animate_X_ReposeImage", + "Animate_X_ReposeImage_v2", + "Gen_align_pose", + "Gen_align_pose2", + "ReposeImage", + "UniAnimateImage", + "UniAnimateImageLong" + ], + { + "title_aux": "ComfyUI-UniAnimate-W" + } + ], + "https://github.com/Isi-dev/ComfyUI_Animation_Nodes_and_Workflows": [ + [ + "CLIPTextEncodeStyles", + "JoinVideos", + "MakeDrivingVideoForLivePortrait", + "MakePortraitWalk", + "MoveInOrOut", + "MoveLeftOrRight", + "MoveUpOrDown", + "Replace_Img_or_Vid_Bg_Assistant" + ], + { + "title_aux": "ComfyUI-Animation_Nodes_and_Workflows" + } + ], + "https://github.com/Isulion/ComfyUI_Isulion": [ + [ + "CustomTextNode", + "CustomTextNode \u2328\ufe0f", + "DisplayImageFromURL", + "IsuCollage_Node", + "Isulion Civitai Image Display", + "Isulion Civitai Model Explorer", + "Isulion Civitai Trending", + "IsulionActionGenerator", + "IsulionAlienWorldGenerator", + "IsulionAnimalBehaviorGenerator", + "IsulionAnimalRandom", + "IsulionArtStyleGenerator", + "IsulionArtifactGenerator", + "IsulionCivitaiImageDisplay", + "IsulionCivitaiModelExplorer", + "IsulionCivitaiTrending", + "IsulionClothingGenerator", + "IsulionCuteAnimalRandom", + "IsulionEmotionGenerator", + "IsulionEpochGenerator", + "IsulionFantasyRaceGenerator", + "IsulionHabitatGenerator", + "IsulionLoadImagesNode", + "IsulionMagicalEffectGenerator", + "IsulionMegaPromptV3", + "IsulionMultiplePromptGenerator", + "IsulionMythicalLocationGenerator", + "IsulionNegativePromptGenerator", + "IsulionProfessionGenerator", + "IsulionPromptEnhancer", + "IsulionSceneComposition", + "IsulionSpacecraftGenerator", + "IsulionStyleMixer", + "IsulionTechGenerator", + "IsulionTimeOfDayGenerator", + "IsulionVideoPromptGenerator", + "IsulionWeatherGenerator", + "\u29c9 IsulionOverlay", + "\ud83d\udca4 IsulionShutdown", + "\ud83e\udde9 IsulionQRCode" + ], + { + "title_aux": "ComfyUI_Isulion Random Prompt Generator" + } + ], + "https://github.com/IuvenisSapiens/ComfyUI_MiniCPM-V-2_6-int4": [ + [ + "DisplayText", + "LoadVideo", + "MiniCPM_VQA", + "MiniCPM_VQA_Polished", + "MultipleImagesInput", + "PreviewVideo" + ], + { + "title_aux": "ComfyUI_MiniCPM-V-2_6-int4" + } + ], + "https://github.com/IuvenisSapiens/ComfyUI_Qwen2-Audio-7B-Instruct-Int4": [ + [ + "AudioLoader", + "AudioPreviewer", + "Qwen2_AQA" + ], + { + "title_aux": "ComfyUI_Qwen2-Audio-7B-Instruct-Int4" + } + ], + "https://github.com/IuvenisSapiens/ComfyUI_Qwen2-VL-Instruct": [ + [ + "ImageLoader", + "MultiplePathsInput", + "Qwen2_VQA" + ], + { + "title_aux": "ComfyUI_Qwen2-VL-Instruct" + } + ], + "https://github.com/JEONG-JIWOO/ComfyUI_Eugene_Nodes": [ + [ + "DictBus", + "DictBusEdit", + "DictBusUnpack", + "DictMultilineSelect", + "DictTemplate", + "DictUpdate1", + "DictUpdate10", + "DictUpdate5", + "LoraPresetListLoader", + "LoraPresetLoader", + "LoraPresetSaver", + "LoraPresetSelector" + ], + { + "title_aux": "ComfyUI_Eugene_Nodes" + } + ], + "https://github.com/JPS-GER/ComfyUI_JPS-Nodes": [ + [ + "CLIPTextEncode SDXL Plus (JPS)", + "Conditioning Switch (JPS)", + "ControlNet Switch (JPS)", + "Crop Image Pipe (JPS)", + "Crop Image Settings (JPS)", + "Crop Image Square (JPS)", + "Crop Image TargetSize (JPS)", + "CtrlNet CannyEdge Pipe (JPS)", + "CtrlNet CannyEdge Settings (JPS)", + "CtrlNet MiDaS Pipe (JPS)", + "CtrlNet MiDaS Settings (JPS)", + "CtrlNet OpenPose Pipe (JPS)", + "CtrlNet OpenPose Settings (JPS)", + "CtrlNet ZoeDepth Pipe (JPS)", + "CtrlNet ZoeDepth Settings (JPS)", + "Disable Enable Switch (JPS)", + "Enable Disable Switch (JPS)", + "Generation TXT IMG Settings (JPS)", + "Get Date Time String (JPS)", + "Get Image Size (JPS)", + "IP Adapter Settings (JPS)", + "IP Adapter Settings Pipe (JPS)", + "IP Adapter Tiled Settings (JPS)", + "IP Adapter Tiled Settings Pipe (JPS)", + "IPA Switch (JPS)", + "Image Prepare Pipe (JPS)", + "Image Prepare Settings (JPS)", + "Image Switch (JPS)", + "ImageToImage Pipe (JPS)", + "ImageToImage Settings (JPS)", + "Images Masks MultiPipe (JPS)", + "InstantID Mask Prepare Pipe (JPS)", + "InstantID Mask Prepare Settings (JPS)", + "InstantID Pipe (JPS)", + "InstantID Pose Prepare Pipe (JPS)", + "InstantID Pose Prepare Settings (JPS)", + "InstantID Settings (JPS)", + "InstantID Source Prepare Pipe (JPS)", + "InstantID Source Prepare Settings (JPS)", + "Integer Switch (JPS)", + "Largest Int (JPS)", + "Latent Switch (JPS)", + "Lora Loader (JPS)", + "Mask Switch (JPS)", + "Model Switch (JPS)", + "Multiply Float Float (JPS)", + "Multiply Int Float (JPS)", + "Multiply Int Int (JPS)", + "Prepare Image (JPS)", + "Prepare Image Plus (JPS)", + "Prepare Image Tiled IPA (JPS)", + "Resolution Multiply (JPS)", + "Revision Settings (JPS)", + "Revision Settings Pipe (JPS)", + "SDXL Basic Settings (JPS)", + "SDXL Basic Settings Pipe (JPS)", + "SDXL Fundamentals MultiPipe (JPS)", + "SDXL Prompt Handling (JPS)", + "SDXL Prompt Handling Plus (JPS)", + "SDXL Prompt Styler (JPS)", + "SDXL Recommended Resolution Calc (JPS)", + "SDXL Resolutions (JPS)", + "SDXL Settings (JPS)", + "SDXL Settings Pipe (JPS)", + "Sampler Scheduler Settings (JPS)", + "Save Images Plus (JPS)", + "Substract Int Int (JPS)", + "Text Concatenate (JPS)", + "Text Prompt (JPS)", + "Text Prompt Combo (JPS)", + "Time Seed (JPS)", + "VAE Switch (JPS)" + ], + { + "author": "JPS", + "description": "Various nodes to handle SDXL Resolutions, SDXL Basic Settings, IP Adapter Settings, Revision Settings, SDXL Prompt Styler, Crop Image to Square, Crop Image to Target Size, Get Date-Time String, Resolution Multiply, Largest Integer, 5-to-1 Switches for Integer, Images, Latents, Conditioning, Model, VAE, ControlNet", + "nickname": "JPS Custom Nodes", + "title": "JPS Custom Nodes for ComfyUI", + "title_aux": "JPS Custom Nodes for ComfyUI" + } + ], + "https://github.com/JPrevots/ComfyUI-PhyCV": [ + [ + "PAGE", + "PST", + "VEVID" + ], + { + "title_aux": "ComfyUI-PhyCV" + } + ], + "https://github.com/JTriggerFish/ComfyLatentTools": [ + [ + "DownsampledAttentionGuidance", + "DownsampledLatentGuidance", + "GenericAttentionGuidance", + "LatentNormalizedLanczosResize" + ], + { + "title_aux": "Comfy Latent Tools" + } + ], + "https://github.com/JackEllie/ComfyUI_AI_Assistant": [ + [ + "apply_lighting_effects", + "clean_prompt_tags", + "noline_process", + "prompt_blacklist", + "prompt_sorting", + "resize_image_sdxl_ratio" + ], + { + "title_aux": "ComfyUI-AI-Assistant" + } + ], + "https://github.com/Jacky-MYQ/comfyui-DataCleaning": [ + [ + "CleanData" + ], + { + "title_aux": "comfyui-DataCleaning" + } + ], + "https://github.com/Jacky-MYQ/comfyui-rgb2cmyk": [ + [ + "RGB2CMYK" + ], + { + "title_aux": "RGB to CMYK for ComfyUI (Save as tif)" + } + ], + "https://github.com/Jaminanim/ComfyUI-Random-Int-Divisor-Node": [ + [ + "RandomIntegerNodeEfficient", + "RandomIntegerNodeEfficientAdvanced", + "RandomIntegerNodeList" + ], + { + "title_aux": "ComfyUI-Random-Int-Divisor-Node" + } + ], + "https://github.com/Jannchie/ComfyUI-J": [ + [ + "DiffusersCompelPromptEmbedding", + "DiffusersControlnetLoader", + "DiffusersControlnetUnit", + "DiffusersControlnetUnitStack", + "DiffusersDecoder", + "DiffusersGenerator", + "DiffusersPipeline", + "DiffusersPrepareLatents", + "DiffusersTextureInversionLoader", + "DiffusersXLPipeline", + "GetAverageColorFromImage", + "GetFilledColorImage" + ], + { + "title_aux": "ComfyUI-J" + } + ], + "https://github.com/Jannled/owl-vit-comfyui": [ + [ + "OWL_BBox_Visualizer", + "OWL_Load_Model", + "OWL_Objectness_Inference" + ], + { + "title_aux": "OWL-ViT ComfyUI" + } + ], + "https://github.com/JaredTherriault/ComfyUI-JNodes": [ + [ + "JNodes_AddOrSetMetaDataKey", + "JNodes_AnyToString", + "JNodes_AppendReversedFrames", + "JNodes_AudioInputOptions", + "JNodes_BooleanSelectorWithString", + "JNodes_BreakMediaInfo", + "JNodes_CheckpointSelectorWithString", + "JNodes_ConditioningInOut", + "JNodes_CreateStereoscopicImageFromDepth", + "JNodes_DiffusionModelSelector", + "JNodes_FloatLiteral", + "JNodes_GetCleanFilename", + "JNodes_GetComfyDirectory", + "JNodes_GetLeafDirectory", + "JNodes_GetOutputDirectory", + "JNodes_GetParameterFromList", + "JNodes_GetParameterGlobal", + "JNodes_GetTempDirectory", + "JNodes_ImageFormatSelector", + "JNodes_ImageSizeSelector", + "JNodes_IntLiteral", + "JNodes_JoinVideosInDirectory", + "JNodes_LoadVideo", + "JNodes_LoadVisualMediaFromPath", + "JNodes_LoadVisualMediaFromPath_Batch", + "JNodes_LoadVisualMediaFromPath_List", + "JNodes_LoraExtractor", + "JNodes_MediaInfoToString", + "JNodes_ModelInOut", + "JNodes_OutVideoInfo", + "JNodes_ParseDynamicPrompts", + "JNodes_ParseParametersToGlobalList", + "JNodes_ParseWildcards", + "JNodes_PromptBuilderSingleSubject", + "JNodes_RemoveCommentedText", + "JNodes_RemoveMetaDataKey", + "JNodes_RemoveParseableDataForInference", + "JNodes_SamplerSelectorWithString", + "JNodes_SaveImageWithOutput", + "JNodes_SaveVideo", + "JNodes_SaveVideoWithOptions", + "JNodes_SchedulerSelectorWithString", + "JNodes_SearchAndReplace", + "JNodes_SearchAndReplaceFromFile", + "JNodes_SearchAndReplaceFromList", + "JNodes_SelectRandomFileFromDirectory", + "JNodes_SeparateStringByDelimiters", + "JNodes_SetMetadataA1111", + "JNodes_SetNegativePromptInMetaData", + "JNodes_SetPositivePromptInMetaData", + "JNodes_SplitAndJoin", + "JNodes_StringLiteral", + "JNodes_SubdirectorySelector", + "JNodes_SyncedStringLiteral", + "JNodes_TokenCounter", + "JNodes_TrimAndStrip", + "JNodes_UploadVideo", + "JNodes_UploadVisualMedia", + "JNodes_VaeSelectorWithString" + ], + { + "title_aux": "ComfyUI-JNodes" + } + ], + "https://github.com/Jash-Vora/ComfyUI-GarmentDiT": [ + [ + "GarmentEnhancementNode" + ], + { + "title_aux": "FitDiT" + } + ], + "https://github.com/JcandZero/ComfyUI_GLM4Node": [ + [ + "GLM3_turbo_CHAT", + "GLM4_CHAT", + "GLM4_Vsion_IMGURL" + ], + { + "title_aux": "ComfyUI_GLM4Node" + } + ], + "https://github.com/Jcd1230/rembg-comfyui-node": [ + [ + "Image Remove Background (rembg)" + ], + { + "title_aux": "Rembg Background Removal Node for ComfyUI" + } + ], + "https://github.com/JerryOrbachJr/ComfyUI-RandomSize": [ + [ + "JOJR_RandomSize" + ], + { + "author": "JerryOrbachJr", + "description": "A ComfyUI custom node that randomly selects a height and width pair from a list in a config file", + "nickname": "Random Size", + "title": "Random Size", + "title_aux": "Random Size" + } + ], + "https://github.com/JettHu/ComfyUI-TCD": [ + [ + "TCDModelSamplingDiscrete" + ], + { + "title_aux": "ComfyUI-TCD" + } + ], + "https://github.com/JettHu/ComfyUI_TGate": [ + [ + "TGateApply", + "TGateApplyAdvanced", + "TGateApplySimple" + ], + { + "title_aux": "ComfyUI_TGate" + } + ], + "https://github.com/JiSenHua/ComfyUI-TD": [ + [ + "Comfy3DPacktoTD", + "Hy3DtoTD", + "ImagetoTD", + "ImagetoTD(JPEG)", + "LoadTDImage", + "Tripo3DtoTD", + "TripoSRtoTD", + "VideotoTD" + ], + { + "title_aux": "ComfyUI-TD" + } + ], + "https://github.com/Jint8888/Comfyui_JTnodes": [ + [ + "JT Find Text From Excel", + "JT Read From Excel", + "JTBrightness", + "JTImagesavetopath", + "JTSaveTextToExcel", + "JTSaveTextToFile", + "JTcounter", + "SiliconflowFree" + ], + { + "title_aux": "Comfyui_JTnodes" + } + ], + "https://github.com/JoeNavark/comfyui_custom_sigma_editor": [ + [ + "CustomSplineSigma", + "SigmaJoiner" + ], + { + "title_aux": "Custom Graph Sigma for ComfyUI" + } + ], + "https://github.com/JohanK66/ComfyUI-WebhookImage": [ + [ + "Notif-Webhook" + ], + { + "title_aux": "ComfyUI WebhookImage" + } + ], + "https://github.com/JohnDoeSmithee/ComfyUI-SoX-Mixdown": [ + [ + "SoxMixNode" + ], + { + "title_aux": "ComfyUI-SoX-Mixdown" + } + ], + "https://github.com/Jokimbe/ComfyUI-DrawThings-gRPC": [ + [ + "DrawThingsControlNet", + "DrawThingsLoRA", + "DrawThingsNegative", + "DrawThingsPositive", + "DrawThingsPrompt", + "DrawThingsRefiner", + "DrawThingsSampler", + "DrawThingsUpscaler" + ], + { + "title_aux": "ComfyUI-DrawThings-gRPC" + } + ], + "https://github.com/Jonseed/ComfyUI-Detail-Daemon": [ + [ + "DetailDaemonGraphSigmasNode", + "DetailDaemonSamplerNode", + "LyingSigmaSampler", + "MultiplySigmas" + ], + { + "title_aux": "ComfyUI-Detail-Daemon" + } + ], + "https://github.com/Jordach/comfy-plasma": [ + [ + "JDC_AutoContrast", + "JDC_BlendImages", + "JDC_BrownNoise", + "JDC_Contrast", + "JDC_EqualizeGrey", + "JDC_GaussianBlur", + "JDC_GreyNoise", + "JDC_Greyscale", + "JDC_ImageLoader", + "JDC_ImageLoaderMeta", + "JDC_PinkNoise", + "JDC_Plasma", + "JDC_PlasmaSampler", + "JDC_PowerImage", + "JDC_RandNoise", + "JDC_ResizeFactor" + ], + { + "title_aux": "comfy-plasma" + } + ], + "https://github.com/JosefKuchar/ComfyUI-AdvancedTiling": [ + [ + "AdvancedTiling", + "AdvancedTilingSettings", + "AdvancedTilingVAEDecode" + ], + { + "title_aux": "ComfyUI-AdvancedTiling" + } + ], + "https://github.com/JosephThomasParker/ComfyUI-DrawThingsWrapper": [ + [ + "DrawThingsGenerateFromPipeline", + "DrawThingsImg2Img", + "DrawThingsImg2ImgPipeline", + "DrawThingsPipelineAddControl", + "DrawThingsPipelineAddCustom", + "DrawThingsPipelineAddLora", + "DrawThingsTxt2Img", + "DrawThingsTxt2ImgPipeline" + ], + { + "title_aux": "ComfyUI-DrawThingsWrapper" + } + ], + "https://github.com/Julian-adv/WildDivide": [ + [ + "Attention couple wild divide", + "Comfy Divide", + "WildPromptGenerator", + "WildcardDivide", + "WildcardEncode" + ], + { + "author": "Julian Adventurer.", + "description": "This node is used to encode a wildcard string.", + "nickname": "WildDivide", + "title": "Wild Divide", + "title_aux": "Wild Divide" + } + ], + "https://github.com/JustLateNightAI/KeywordImageBlocker": [ + [ + "TagKeywordBlocker" + ], + { + "title_aux": "KeywordImageBlocker" + } + ], + "https://github.com/JustinMatters/comfyUI-JMNodes": [ + [ + "JMBinaryNot", + "JMIntegerToBooleans", + "JMNumberList", + "JMSWitchablePrompt" + ], + { + "title_aux": "ComfyUI JMNodes" + } + ], + "https://github.com/KAVVATARE/ComfyUI-Light-N-Color": [ + [ + "ControlNetSwitch", + "FluxLightingAndColor", + "FluxSamplerPuLID", + "ImageSwitch", + "LatentSwitch", + "LoadInputOutputImage" + ], + { + "title_aux": " ComfyUI-Light-N-Color" + } + ], + "https://github.com/KAVVATARE/ComfyUI_RightEyeDisparity": [ + [ + "RightEyeImageNode", + "VideoRightEyeNode" + ], + { + "title_aux": "RightEyeDisparity" + } + ], + "https://github.com/KERRY-YUAN/ComfyUI_Float_Animator": [ + [ + "Float_Animator" + ], + { + "title_aux": "ComfyUI_Float_Animator" + } + ], + "https://github.com/KERRY-YUAN/ComfyUI_Simple_Executor": [ + [ + "NodeAutoSampler", + "NodeImagePre", + "NodeImageResize" + ], + { + "title_aux": "NodeSimpleExecutor" + } + ], + "https://github.com/KERRY-YUAN/ComfyUI_Spark_TTS": [ + [ + "Spark_TTS_Clone", + "Spark_TTS_Creation" + ], + { + "title_aux": "ComfyUI_Spark_TTS" + } + ], + "https://github.com/KLL535/ComfyUI_SimpleButcher": [ + [ + "Simple Auto Bypass", + "Simple Extract Lora From Text", + "Simple Image Saver (as Forge)", + "Simple Load Image With Metadata", + "Simple Load Images from Dir", + "Simple Load Line From Text File", + "Simple Lora Loader", + "Simple Remove Think" + ], + { + "title_aux": "ComfyUI_SimpleButcher" + } + ], + "https://github.com/Kangkang625/ComfyUI-paint-by-example": [ + [ + "PaintbyExamplePipeLoader", + "PaintbyExampleSampler" + ], + { + "title_aux": "ComfyUI-Paint-by-Example" + } + ], + "https://github.com/KarmaSwint/ComfyUI-KarmaNodes": [ + [ + "Karma-Film-Grain", + "Karma-KSampler-Cycle", + "Karma-Kolors", + "Karma_Film_Grain", + "Karma_Kolors" + ], + { + "title_aux": "KarmaNodes" + } + ], + "https://github.com/Kayarte/AudioDriven-Latent-Space-Tools-for-ComfyUI": [ + [ + "AdvancedNoisePatterns", + "AudioNoiseMapper", + "LibrosaAnalysisNode", + "NoiseToLatentConverter" + ], + { + "title_aux": "AudioDriven-Latent-Space-Tools-for-ComfyUI" + } + ], + "https://github.com/Kayarte/GeoNodes/raw/refs/heads/main/GISDetectionNode.py": [ + [ + "GISDetectionNode" + ], + { + "title_aux": "GeoNodes" + } + ], + "https://github.com/Kesin11/ComfyUI-list-filter": [ + [ + "list_filter_FilterImageListByIndexList", + "list_filter_FilterStringListByIndexList", + "list_filter_FindAnyStrings", + "list_filter_FindNotAnyStrings", + "list_filter_StringToIndex", + "random_normal_dist" + ], + { + "title_aux": "ComfyUI-list-filter" + } + ], + "https://github.com/KewkLW/ComfyUI-kewky_tools": [ + [ + "CLIPInterrogator", + "FormattedPromptNode", + "ImageBatcher", + "LoadImagePlus", + "LoadVideoPlus", + "TensorDebugPlus", + "TextAppendNode", + "TextSearchNode", + "VRAM_Debug_Plus" + ], + { + "title_aux": "ComfyUI-kewky_tools" + } + ], + "https://github.com/Kidev/ComfyUI-Fisheye-effects": [ + [ + "Defisheye", + "Fisheye" + ], + { + "title_aux": "ComfyUI Fisheye Effects Nodes" + } + ], + "https://github.com/KohakuBlueleaf/z-tipo-extension": [ + [ + "TIPO", + "TIPOFormat", + "TIPOOperation" + ], + { + "title_aux": "TIPO-extension" + } + ], + "https://github.com/KoreTeknology/ComfyUI-Nai-Production-Nodes-Pack": [ + [ + "Brightness Image", + "ColorMatch2", + "Contrast Image", + "Get Text", + "Image Difference", + "ImageConcatenate", + "ImageDesaturate", + "ImageExtend", + "ImageFlip", + "ImageRotate", + "LoadImageNai", + "Math Operation", + "NoteAdvanced", + "Set Text" + ], + { + "title_aux": "ComfyUI Production Nodes Pack" + } + ], + "https://github.com/KoreTeknology/ComfyUI-Universal-Styler": [ + [ + "\ud83d\udee1\ufe0f Load Scripts from Database", + "\ud83d\udee1\ufe0f Save Script to Database (In progress)", + "\ud83d\udee1\ufe0f Set Main Channel" + ], + { + "title_aux": "ComfyUI Universal Styler" + } + ], + "https://github.com/Kosinkadink/ComfyUI-Advanced-ControlNet": [ + [ + "ACN_AdvancedControlNetApply", + "ACN_AdvancedControlNetApplySingle", + "ACN_AdvancedControlNetApplySingle_v2", + "ACN_AdvancedControlNetApply_v2", + "ACN_ControlNet++InputNode", + "ACN_ControlNet++LoaderAdvanced", + "ACN_ControlNet++LoaderSingle", + "ACN_ControlNetLoaderAdvanced", + "ACN_ControlNetLoaderWithLoraAdvanced", + "ACN_CtrLoRALoader", + "ACN_CustomControlNetWeightsFlux", + "ACN_CustomControlNetWeightsSD15", + "ACN_CustomT2IAdapterWeights", + "ACN_DefaultUniversalWeights", + "ACN_DiffControlNetLoaderAdvanced", + "ACN_ExtrasMiddleMult", + "ACN_ReferenceControlNet", + "ACN_ReferenceControlNetFinetune", + "ACN_ReferencePreprocessor", + "ACN_ScaledSoftControlNetWeights", + "ACN_SoftControlNetWeightsSD15", + "ACN_SoftT2IAdapterWeights", + "ACN_SparseCtrlIndexMethodNode", + "ACN_SparseCtrlLoaderAdvanced", + "ACN_SparseCtrlMergedLoaderAdvanced", + "ACN_SparseCtrlRGBPreprocessor", + "ACN_SparseCtrlSpreadMethodNode", + "ACN_SparseCtrlWeightExtras", + "ACN_TimestepKeyframeFromStrengthList", + "ACN_TimestepKeyframeInterpolation", + "ControlNetLoaderAdvanced", + "CustomControlNetWeights", + "CustomT2IAdapterWeights", + "DiffControlNetLoaderAdvanced", + "LatentKeyframe", + "LatentKeyframeBatchedGroup", + "LatentKeyframeGroup", + "LatentKeyframeTiming", + "LoadImagesFromDirectory", + "ScaledSoftControlNetWeights", + "ScaledSoftMaskedUniversalWeights", + "SoftControlNetWeights", + "SoftT2IAdapterWeights", + "TimestepKeyframe" + ], + { + "title_aux": "ComfyUI-Advanced-ControlNet" + } + ], + "https://github.com/Kosinkadink/ComfyUI-AnimateDiff-Evolved": [ + [ + "ADE_AdjustPEFullStretch", + "ADE_AdjustPEManual", + "ADE_AdjustPESweetspotStretch", + "ADE_AdjustWeightAllAdd", + "ADE_AdjustWeightAllMult", + "ADE_AdjustWeightIndivAdd", + "ADE_AdjustWeightIndivAttnAdd", + "ADE_AdjustWeightIndivAttnMult", + "ADE_AdjustWeightIndivMult", + "ADE_AncestralOptions", + "ADE_AnimateDiffCombine", + "ADE_AnimateDiffKeyframe", + "ADE_AnimateDiffLoRALoader", + "ADE_AnimateDiffLoaderGen1", + "ADE_AnimateDiffLoaderV1Advanced", + "ADE_AnimateDiffLoaderWithContext", + "ADE_AnimateDiffModelSettings", + "ADE_AnimateDiffModelSettingsAdvancedAttnStrengths", + "ADE_AnimateDiffModelSettingsSimple", + "ADE_AnimateDiffModelSettings_Release", + "ADE_AnimateDiffSamplingSettings", + "ADE_AnimateDiffSettings", + "ADE_AnimateDiffUniformContextOptions", + "ADE_AnimateDiffUnload", + "ADE_ApplyAnimateDiffModel", + "ADE_ApplyAnimateDiffModelSimple", + "ADE_ApplyAnimateDiffModelWithCameraCtrl", + "ADE_ApplyAnimateDiffModelWithPIA", + "ADE_ApplyAnimateLCMI2VModel", + "ADE_AttachLoraHookToCLIP", + "ADE_AttachLoraHookToConditioning", + "ADE_BatchedContextOptions", + "ADE_CFGExtrasPAG", + "ADE_CFGExtrasPAGSimple", + "ADE_CFGExtrasRescaleCFG", + "ADE_CFGExtrasRescaleCFGSimple", + "ADE_CameraCtrlAnimateDiffKeyframe", + "ADE_CameraManualPoseAppend", + "ADE_CameraPoseAdvanced", + "ADE_CameraPoseBasic", + "ADE_CameraPoseCombo", + "ADE_CombineLoraHooks", + "ADE_CombineLoraHooksEight", + "ADE_CombineLoraHooksFour", + "ADE_ConditioningCombine", + "ADE_ConditioningSetMask", + "ADE_ConditioningSetMaskAndCombine", + "ADE_ConditioningSetUnmaskedAndCombine", + "ADE_ContextExtras_ContextRef", + "ADE_ContextExtras_ContextRef_Keyframe", + "ADE_ContextExtras_ContextRef_KeyframeFromList", + "ADE_ContextExtras_ContextRef_KeyframeInterpolation", + "ADE_ContextExtras_ContextRef_ModeFirst", + "ADE_ContextExtras_ContextRef_ModeIndexes", + "ADE_ContextExtras_ContextRef_ModeSliding", + "ADE_ContextExtras_ContextRef_TuneAttn", + "ADE_ContextExtras_ContextRef_TuneAttnAdain", + "ADE_ContextExtras_NaiveReuse", + "ADE_ContextExtras_NaiveReuse_Keyframe", + "ADE_ContextExtras_NaiveReuse_KeyframeFromList", + "ADE_ContextExtras_NaiveReuse_KeyframeInterpolation", + "ADE_ContextExtras_Set", + "ADE_CustomCFG", + "ADE_CustomCFGKeyframe", + "ADE_CustomCFGKeyframeFromList", + "ADE_CustomCFGKeyframeInterpolation", + "ADE_CustomCFGKeyframeSimple", + "ADE_CustomCFGSimple", + "ADE_EmptyLatentImageLarge", + "ADE_InjectI2VIntoAnimateDiffModel", + "ADE_InjectPIAIntoAnimateDiffModel", + "ADE_InputPIA_Multival", + "ADE_InputPIA_PaperPresets", + "ADE_IterationOptsDefault", + "ADE_IterationOptsFreeInit", + "ADE_LoadAnimateDiffModel", + "ADE_LoadAnimateDiffModelWithCameraCtrl", + "ADE_LoadAnimateLCMI2VModel", + "ADE_LoadCameraPoses", + "ADE_LoadCameraPosesFromPath", + "ADE_LoopedUniformContextOptions", + "ADE_LoopedUniformViewOptions", + "ADE_LoraHookKeyframe", + "ADE_LoraHookKeyframeFromStrengthList", + "ADE_LoraHookKeyframeInterpolation", + "ADE_MultivalConvertToMask", + "ADE_MultivalDynamic", + "ADE_MultivalDynamicFloatInput", + "ADE_MultivalDynamicFloats", + "ADE_MultivalScaledMask", + "ADE_NoiseCalibration", + "ADE_NoiseLayerAdd", + "ADE_NoiseLayerAddWeighted", + "ADE_NoiseLayerNormalizedSum", + "ADE_NoiseLayerReplace", + "ADE_NoisedImageInjectOptions", + "ADE_NoisedImageInjection", + "ADE_PIA_AnimateDiffKeyframe", + "ADE_PairedConditioningCombine", + "ADE_PairedConditioningSetMask", + "ADE_PairedConditioningSetMaskAndCombine", + "ADE_PairedConditioningSetUnmaskedAndCombine", + "ADE_PerturbedAttentionGuidanceMultival", + "ADE_RawSigmaSchedule", + "ADE_RegisterLoraHook", + "ADE_RegisterLoraHookModelOnly", + "ADE_RegisterModelAsLoraHook", + "ADE_RegisterModelAsLoraHookModelOnly", + "ADE_ReplaceCameraParameters", + "ADE_ReplaceOriginalPoseAspectRatio", + "ADE_RescaleCFGMultival", + "ADE_SetLoraHookKeyframe", + "ADE_SigmaSchedule", + "ADE_SigmaScheduleSplitAndCombine", + "ADE_SigmaScheduleToSigmas", + "ADE_SigmaScheduleWeightedAverage", + "ADE_SigmaScheduleWeightedAverageInterp", + "ADE_StandardStaticContextOptions", + "ADE_StandardStaticViewOptions", + "ADE_StandardUniformContextOptions", + "ADE_StandardUniformViewOptions", + "ADE_TimestepsConditioning", + "ADE_UpscaleAndVAEEncode", + "ADE_UseEvolvedSampling", + "ADE_ViewsOnlyContextOptions", + "ADE_VisualizeContextOptionsK", + "ADE_VisualizeContextOptionsKAdv", + "ADE_VisualizeContextOptionsSCustom", + "AnimateDiffLoaderV1", + "CheckpointLoaderSimpleWithNoiseSelect" + ], + { + "title_aux": "AnimateDiff Evolved" + } + ], + "https://github.com/Kosinkadink/ComfyUI-VideoHelperSuite": [ + [ + "VHS_AudioToVHSAudio", + "VHS_BatchManager", + "VHS_DuplicateImages", + "VHS_DuplicateLatents", + "VHS_DuplicateMasks", + "VHS_GetImageCount", + "VHS_GetLatentCount", + "VHS_GetMaskCount", + "VHS_LoadAudio", + "VHS_LoadAudioUpload", + "VHS_LoadImagePath", + "VHS_LoadImages", + "VHS_LoadImagesPath", + "VHS_LoadVideo", + "VHS_LoadVideoFFmpeg", + "VHS_LoadVideoFFmpegPath", + "VHS_LoadVideoPath", + "VHS_MergeImages", + "VHS_MergeLatents", + "VHS_MergeMasks", + "VHS_PruneOutputs", + "VHS_SelectEveryNthImage", + "VHS_SelectEveryNthLatent", + "VHS_SelectEveryNthMask", + "VHS_SelectFilename", + "VHS_SelectImages", + "VHS_SelectLatents", + "VHS_SelectLatest", + "VHS_SelectMasks", + "VHS_SplitImages", + "VHS_SplitLatents", + "VHS_SplitMasks", + "VHS_Unbatch", + "VHS_VAEDecodeBatched", + "VHS_VAEEncodeBatched", + "VHS_VHSAudioToAudio", + "VHS_VideoCombine", + "VHS_VideoInfo", + "VHS_VideoInfoLoaded", + "VHS_VideoInfoSource" + ], + { + "title_aux": "ComfyUI-VideoHelperSuite" + } + ], + "https://github.com/Koushakur/ComfyUI-DenoiseChooser": [ + [ + "DenoiseChooser|Koushakur" + ], + { + "title_aux": "ComfyUI-DenoiseChooser" + } + ], + "https://github.com/KunmyonChoi/ComfyUI_S3_direct": [ + [ + "Direct Load Image From S3", + "Direct Save Image To S3", + "Save VHS Video to S3" + ], + { + "title_aux": "ComfyUI_S3_direct" + } + ], + "https://github.com/Kurdknight/Kurdknight_comfycheck": [ + [ + "SystemCheck", + "SystemViz" + ], + { + "title_aux": "KurdKnight ComfyUI System Check Node" + } + ], + "https://github.com/KwaiVGI/ComfyUI-KLingAI-API": [ + [ + "Client", + "Effects", + "Image Generator", + "Image2Video", + "KLingAI Preview Video", + "Lip Sync", + "Lip Sync Audio Input", + "Lip Sync Text Input", + "Text2Video", + "Video Extend", + "Virtual Try On" + ], + { + "title_aux": "ComfyUI-KLingAI-API" + } + ], + "https://github.com/Ky11le/draw_tools": [ + [ + "DetectInnerBox", + "PasteIntoFrame", + "TextBoxAutoWrap" + ], + { + "title_aux": "draw_tools" + } + ], + "https://github.com/Ky11le/ygo_tools": [ + [ + "DetectInnerBox", + "PasteIntoFrame", + "TextBoxAutoWrap" + ], + { + "title_aux": "ygo_tools" + } + ], + "https://github.com/KytraScript/ComfyUI_KytraWebhookHTTP": [ + [ + "SendToDiscordWebhook" + ], + { + "title_aux": "ComfyUI_KytraWebhookHTTP" + } + ], + "https://github.com/KytraScript/ComfyUI_MatAnyone_Kytra": [ + [ + "Kytra_Images_To_RGB", + "MatAnyoneVideoMatting" + ], + { + "title_aux": "ComfyUI_MatAnyone_Kytra" + } + ], + "https://github.com/LAOGOU-666/ComfyUI-LG_HotReload": [ + [ + "HotReload_Terminal" + ], + { + "title_aux": "ComfyUI-LG_HotReload" + } + ], + "https://github.com/LAOGOU-666/ComfyUI_LG_FFT": [ + [ + "LG_FFTNode", + "LG_IFFTNode" + ], + { + "title_aux": "ComfyUI_LG_FFT" + } + ], + "https://github.com/LAOGOU-666/Comfyui-LG_GroupExecutor": [ + [ + "GroupExecutorRepeater", + "GroupExecutorSender", + "GroupExecutorSingle", + "ImageListRepeater", + "ImageListSplitter", + "LG_AccumulatePreview", + "LG_FastPreview", + "LG_ImageReceiver", + "LG_ImageSender", + "MaskListRepeater", + "MaskListSplitter" + ], + { + "title_aux": "Comfyui-LG_GroupExecutor" + } + ], + "https://github.com/LAOGOU-666/Comfyui-LG_Relight": [ + [ + "LG_Relight", + "LG_Relight_Basic", + "LG_Relight_Ultra" + ], + { + "title_aux": "Comfyui-LG_Relight" + } + ], + "https://github.com/LAOGOU-666/Comfyui-Memory_Cleanup": [ + [ + "RAMCleanup", + "VRAMCleanup" + ], + { + "title_aux": "Comfyui-Memory_Cleanup" + } + ], + "https://github.com/LAOGOU-666/Comfyui_LG_Tools": [ + [ + "BridgePreviewNode", + "CachePreviewBridge", + "ColorAdjustment", + "FastCanvas", + "FastCanvasComposite", + "FastCanvasTool", + "GroupSwitcher", + "IPAdapterWeightTypes", + "ImageCropper", + "ImageSelector", + "ImageSizeAdjustment", + "InspyrenetRembgLoader", + "InspyrenetRembgProcess", + "LG_FloatRange", + "LG_InstallDependencies", + "LG_LatentBatchToList", + "LG_LoadImage", + "LG_Noise", + "LG_PipManager", + "LG_SaveImage", + "LazySwitch1way", + "LazySwitch2way", + "MuterSwitcher" + ], + { + "title_aux": "Comfyui_LG_Tools" + } + ], + "https://github.com/LEv145/images-grid-comfy-plugin": [ + [ + "GridAnnotation", + "ImageCombine", + "ImagesGridByColumns", + "ImagesGridByRows", + "LatentCombine" + ], + { + "title_aux": "ImagesGrid" + } + ], + "https://github.com/LK-168/comfyui_imgutils": [ + [ + "BBoxFilter", + "BBoxToMaskNode", + "CensorWithMask", + "ImgutilsAutoSegmenter", + "ImgutilsBBoxSegmenter", + "ImgutilsGenericDetector", + "MaskAttributeNodeLK", + "MaskCombineNodeLK", + "MaskEdgeNodeLK", + "MaskHelperLK", + "MaskInfoNodeLK", + "MaskMorphologyNodeLK", + "MaskToBBoxNode", + "SAMLoaderLK", + "SAMPredictorNode" + ], + { + "title_aux": "comfyui_imgutils" + } + ], + "https://github.com/LKbaba/ComfyUI-TuZi-Flux-Kontext": [ + [ + "FluxKontext_ImageToImage", + "FluxKontext_MultiImageToImage", + "FluxKontext_TextToImage" + ], + { + "title_aux": "ComfyUI-TuZi-Flux-Kontext" + } + ], + "https://github.com/LamEmil/ComfyUI_ASCIIArtNode": [ + [ + "ASCIIAnimationGenerator", + "ASCIIArtGenerator", + "ColorASCIIAnimationGenerator", + "RealisticColorASCIIAnimationGenerator", + "SequentialTwoPassTypingColorASCIIAnimation", + "TwoPassTypingColorASCIIAnimation", + "VideoToColorStaticASCIIArt", + "VideoToDynamicColorASCIIArt" + ], + { + "title_aux": "ComfyUI ASCII Art Nodes" + } + ], + "https://github.com/LaoMaoBoss/ComfyUI-WBLESS": [ + [ + "Inversed Switch", + "Switch" + ], + { + "title_aux": "ComfyUI-WBLESS" + } + ], + "https://github.com/LargeModGames/comfyui-smart-lora-downloader": [ + [ + "LoRAAutoDownloader", + "WorkflowLoRAScanner" + ], + { + "title_aux": "ComfyUI LoRA Auto Downloader" + } + ], + "https://github.com/LarryJane491/Image-Captioning-in-ComfyUI": [ + [ + "LoRA Caption Load", + "LoRA Caption Save" + ], + { + "title_aux": "Image-Captioning-in-ComfyUI" + } + ], + "https://github.com/LarryJane491/Lora-Training-in-Comfy": [ + [ + "Lora Training in Comfy (Advanced)", + "Lora Training in ComfyUI", + "Tensorboard Access" + ], + { + "title_aux": "Lora-Training-in-Comfy" + } + ], + "https://github.com/LatentSpaceDirective/ComfyUI-Texturaizer": [ + [ + "Texturaizer_ApplyControlNets", + "Texturaizer_ApplyStyleToPrompt", + "Texturaizer_CachedCNLoader", + "Texturaizer_CachedCheckpointLoader", + "Texturaizer_ClipEncodeSwitchVersion", + "Texturaizer_CombinedConditioningFromColors", + "Texturaizer_ExtractCNData", + "Texturaizer_GenerateNoise", + "Texturaizer_GetCNData", + "Texturaizer_GetClipModelName", + "Texturaizer_GetFluxGuidance", + "Texturaizer_GetIPAdapterData", + "Texturaizer_GetImageData", + "Texturaizer_GetJsonData", + "Texturaizer_GetLoraData", + "Texturaizer_GetMaterialTileData", + "Texturaizer_GetModelName", + "Texturaizer_GetPromptData", + "Texturaizer_GetRenderData", + "Texturaizer_GetSamplerData", + "Texturaizer_GetSegData", + "Texturaizer_GetStyleData", + "Texturaizer_GetVAEName", + "Texturaizer_IPAdapterEmbeds", + "Texturaizer_KSamplerAdvanced", + "Texturaizer_Placeholder", + "Texturaizer_PowerLoraLoader", + "Texturaizer_SendImage", + "Texturaizer_SetGlobalDir", + "Texturaizer_SigmasSelector", + "Texturaizer_SwitchAny", + "Texturaizer_SwitchLazy", + "Texturaizer_UseSDXL" + ], + { + "title_aux": "ComfyUI-Texturaizer" + } + ], + "https://github.com/Layer-norm/comfyui-lama-remover": [ + [ + "LamaRemover", + "LamaRemoverIMG" + ], + { + "title_aux": "Comfyui lama remover" + } + ], + "https://github.com/Legorobotdude/ComfyUI-VariationLab": [ + [ + "CFGExplorer", + "CheckpointExplorer", + "StepExplorer" + ], + { + "title_aux": "ComfyUI-VariationLab" + } + ], + "https://github.com/Lerc/canvas_tab": [ + [ + "Canvas_Tab", + "Send_To_Editor" + ], + { + "author": "Lerc", + "description": "This extension provides a full page image editor with mask support. There are two nodes, one to receive images from the editor and one to send images to the editor.", + "nickname": "Canvas Tab", + "title": "Canvas Tab", + "title_aux": "Canvas Tab" + } + ], + "https://github.com/LevelPixel/ComfyUI-LevelPixel": [ + [ + "BoolToInt|LP", + "BoolToString|LP", + "CLIP Text Encode Translate [LP]", + "CLIPTextEncodeTranslate|LP", + "Calculate Target Size By Mask [LP]", + "CalculateTargetSizeByMask|LP", + "Convert Bool To Int [LP]", + "Convert Bool To String [LP]", + "Convert Float To Int [LP]", + "Convert Float To String [LP]", + "Convert Int To Bool [LP]", + "Convert Int To Float [LP]", + "Convert Int To String [LP]", + "Convert String To Bool [LP]", + "Convert String To Combo [LP]", + "Convert String To Float [LP]", + "Convert String To Int [LP]", + "Convert String To Number [LP]", + "Count Objects [LP]", + "CountObjects|LP", + "Cropped Aspect Size Parameters [LP]", + "Cropped Forsed Size Parameters [LP]", + "Cropped Free Size Parameters [LP]", + "Cropped Ranged Size Parameters [LP]", + "CroppedAspectSizeParameters|LP", + "CroppedForsedSizeParameters|LP", + "CroppedFreeSizeParameters|LP", + "CroppedRangedSizeParameters|LP", + "Delay [LP]", + "Delay|LP", + "Extend Factor Parameters [LP]", + "ExtendFactorParameters|LP", + "Fast Checker Pattern [LP]", + "FastCheckerPattern|LP", + "File Counter [LP]", + "FileCounter|LP", + "Find Value From File [LP]", + "FindValueFromFile|LP", + "FloatToInt|LP", + "FloatToString|LP", + "Hard Model Unloader [LP]", + "HardModelUnloader|LP", + "HundredthsSimpleFloatSlider|LP", + "Image Loader From Path [LP]", + "Image Overlay [LP]", + "ImageLoaderFromPath|LP", + "ImageOverlay|LP", + "Inpaint Crop [LP]", + "Inpaint Stitch [LP]", + "InpaintCrop|LP", + "InpaintStitch|LP", + "IntToBool|LP", + "IntToFloat|LP", + "IntToString|LP", + "Keep Only English Tags [LP]", + "Keep Only English Words [LP]", + "KeepOnlyEnglishTags|LP", + "KeepOnlyEnglishWords|LP", + "Load Image [LP]", + "Load LoRA Tag [LP]", + "LoadImage|LP", + "LoraTagLoader|LP", + "Model Unloader [LP]", + "ModelUnloader|LP", + "Override CLIP Device [LP]", + "Override VAE Device [LP]", + "OverrideCLIPDevice|LP", + "OverrideVAEDevice|LP", + "Pipe In [LP]", + "Pipe Out [LP]", + "Pipe [LP]", + "PipeIn|LP", + "PipeOut|LP", + "Pipe|LP", + "Preview Image Bridge [LP]", + "PreviewImageForConditions|LP", + "Remove Banned Tags From Tags [LP]", + "Remove Banned Tags From Text [LP]", + "Remove Duplicate Tags [LP]", + "RemoveBannedTagsFromTags|LP", + "RemoveBannedTagsFromText|LP", + "RemoveDuplicateTags|LP", + "Resize Image To Target Size [LP]", + "Resize Image and Masks [LP]", + "ResizeImageAndMasks|LP", + "ResizeImageToTargetSize|LP", + "Resorting Tags [LP]", + "ResortingTags|LP", + "Seed [LP]", + "Seed|LP", + "Show Text Bridge [LP]", + "Show Text [LP]", + "ShowTextBridge|LP", + "ShowText|LP", + "Simple Float Slider - Hundredths Step [LP]", + "Simple Float Slider - Tenths Step [LP]", + "Simple Float Slider [LP]", + "SimpleFloatSlider|LP", + "Soft Model Unloader [LP]", + "SoftModelUnloader|LP", + "Split Compound Text [LP]", + "SplitCompoundText|LP", + "String Cycler [LP]", + "String [LP]", + "StringCycler|LP", + "StringToBool|LP", + "StringToCombo|LP", + "StringToFloat|LP", + "StringToInt|LP", + "StringToNumber|LP", + "String|LP", + "Tag Category Filter [LP]", + "Tag Category Keeper [LP]", + "Tag Category Remover [LP]", + "Tag Category [LP]", + "Tag Merger [LP]", + "Tag Remover [LP]", + "Tag Replace [LP]", + "Tag Switcher [LP]", + "TagCategoryFilter|LP", + "TagCategoryKeeper|LP", + "TagCategoryRemover|LP", + "TagCategory|LP", + "TagMerger|LP", + "TagRemover|LP", + "TagReplace|LP", + "TagSwitcher|LP", + "TenthsSimpleFloatSlider|LP", + "Text Choice Parser [LP]", + "Text Replace [LP]", + "Text To List [LP]", + "Text Translate [LP]", + "Text [LP]", + "TextChoiceParser|LP", + "TextReplace|LP", + "TextToList|LP", + "TextTranslateManualAll|LP", + "TextTranslateManual|LP", + "TextTranslate|LP", + "Text|LP" + ], + { + "title_aux": "ComfyUI Level Pixel" + } + ], + "https://github.com/LevelPixel/ComfyUI-LevelPixel-Advanced": [ + [ + "Autotagger [LP]", + "Autotagger|LP", + "Color Input [LP]", + "ColorInput|LP", + "Image Remove Background (BiRefNet) [LP]", + "Image Remove Background (RMBG) [LP]", + "Image Remove Background (rembg) [LP]", + "ImageRemoveBackgroundBiRefNet|LP", + "ImageRemoveBackgroundRMBG|LP", + "ImageRemoveBackground|LP", + "LLM Advanced [LP]", + "LLM Loader [LP]", + "LLM Sampler [LP]", + "LLMAdvanced|LP", + "LLMLoader|LP", + "LLMSampler|LP", + "LLava Advanced [LP]", + "LLava Clip Loader [LP]", + "LLava Loader [LP]", + "LLava Sampler Advanced [LP]", + "LLava Sampler Simple [LP]", + "LLava Simple [LP]", + "LLavaAdvanced|LP", + "LLavaClipLoader|LP", + "LLavaLoader|LP", + "LLavaSamplerAdvanced|LP", + "LLavaSamplerSimple|LP", + "LLavaSimple|LP", + "Multimodal Generator Advanced [LP]", + "MultimodalGeneratorAdvanced|LP", + "Recognize Anything (RAM) [LP]", + "RecognizeAnything(RAM)|LP" + ], + { + "title_aux": "ComfyUI Level Pixel Advanced" + } + ], + "https://github.com/Lhyejin/ComfyUI-Fill-Image-for-Outpainting": [ + [ + "FillImageForOutpainting" + ], + { + "title_aux": "ComfyUI-Fill-Image-for-Outpainting" + } + ], + "https://github.com/LiJT/ComfyUI-Gemini-Prompt-Generator-JT": [ + [ + "GeminiPromptGeneratorJT" + ], + { + "title_aux": "Gemini prompt generator JT version" + } + ], + "https://github.com/Light-x02/ComfyUI-FluxSettingsNode": [ + [ + "DisableNoise", + "FluxSettingsNode" + ], + { + "title_aux": "Flux Settings Node" + } + ], + "https://github.com/Light-x02/ComfyUI-Image-Metadata-Nodes": [ + [ + "ImageMetadataLoader", + "ImageMetadataSaver" + ], + { + "title_aux": "Image Metadata Nodes" + } + ], + "https://github.com/LightSketch-ai/ComfyUI-LivePortraitNode": [ + [ + "LightSketch Live Portrait", + "Preview Video" + ], + { + "title_aux": "ComfyUI-LivePortraitNode (Replicate API)" + } + ], + "https://github.com/Lightricks/ComfyUI-LTXVideo": [ + [ + "AddLatentGuide", + "ImageToCPU", + "LTXAttentioOverride", + "LTXAttentionBank", + "LTXAttnOverride", + "LTXFetaEnhance", + "LTXFlowEditCFGGuider", + "LTXFlowEditSampler", + "LTXForwardModelSamplingPred", + "LTXPerturbedAttention", + "LTXPrepareAttnInjections", + "LTXQ8Patch", + "LTXRFForwardODESampler", + "LTXRFReverseODESampler", + "LTXReverseModelSamplingPred", + "LTXVAdainLatent", + "LTXVAddGuideAdvanced", + "LTXVApplySTG", + "LTXVBaseSampler", + "LTXVExtendSampler", + "LTXVFilmGrain", + "LTXVInContextSampler", + "LTXVLatentUpsampler", + "LTXVLinearOverlapLatentTransition", + "LTXVLoopingSampler", + "LTXVMultiPromptProvider", + "LTXVPatcherVAE", + "LTXVPreprocessMasks", + "LTXVPromptEnhancer", + "LTXVPromptEnhancerLoader", + "LTXVQ8LoraModelLoader", + "LTXVSelectLatents", + "LTXVSetVideoLatentNoiseMasks", + "LTXVTiledSampler", + "LTXVTiledVAEDecode", + "ModifyLTXModel", + "STGAdvancedPresets", + "STGGuiderAdvanced", + "STGGuiderNode", + "Set VAE Decoder Noise" + ], + { + "title_aux": "ComfyUI-LTXVideo" + } + ], + "https://github.com/Limbicnation/ComfyUI-TransparencyBackgroundRemover": [ + [ + "TransparencyBackgroundRemover", + "TransparencyBackgroundRemoverBatch" + ], + { + "title_aux": "Transparency Background Remover" + } + ], + "https://github.com/Limbicnation/ComfyUIDepthEstimation": [ + [ + "DepthEstimationNode" + ], + { + "title_aux": "Depth Estimation Node" + } + ], + "https://github.com/Limbicnation/ComfyUI_FaceDetectionNode": [ + [ + "FaceDetectionNode", + "custom_nodes" + ], + { + "nodename_pattern": "FaceDetectionNode", + "title_aux": "ComfyUI Face Detection Node" + } + ], + "https://github.com/Limitex/ComfyUI-Calculation": [ + [ + "CenterCalculation", + "CreateQRCode" + ], + { + "title_aux": "ComfyUI-Calculation" + } + ], + "https://github.com/Limitex/ComfyUI-Diffusers": [ + [ + "CreateIntListNode", + "DiffusersClipTextEncode", + "DiffusersModelMakeup", + "DiffusersPipelineLoader", + "DiffusersSampler", + "DiffusersSchedulerLoader", + "DiffusersVaeLoader", + "LcmLoraLoader", + "StreamDiffusionCreateStream", + "StreamDiffusionFastSampler", + "StreamDiffusionSampler", + "StreamDiffusionWarmup" + ], + { + "title_aux": "ComfyUI-Diffusers" + } + ], + "https://github.com/Ling-APE/ComfyUI-PixelResolutionCalculator": [ + [ + "LatentSizeToPixelSize", + "PixelResolutionCalculator" + ], + { + "title_aux": "ComfyUI-PixelResolutionCalculator" + } + ], + "https://github.com/LingSss9/comfyui-merge": [ + [ + "MergeLoRAsKohyaSSLike", + "OnlyLoadLoRAsModel", + "SaveLoRAModels" + ], + { + "author": "cyberblackcat", + "description": "This extension provides some nodes to support merge lora, adjust Lora Block Weight.", + "nickname": "CBC", + "title": "merge", + "title_aux": "Comfyui-Merge-LoRA" + } + ], + "https://github.com/Loewen-Hob/rembg-comfyui-node-better": [ + [ + "Image Remove Background (rembg)" + ], + { + "title_aux": "Rembg Background Removal Node for ComfyUI (Better)" + } + ], + "https://github.com/LonicaMewinsky/ComfyUI-MakeFrame": [ + [ + "BreakFrames", + "BreakGrid", + "GetKeyFrames", + "MakeGrid", + "RandomImageFromDir" + ], + { + "title_aux": "ComfyBreakAnim" + } + ], + "https://github.com/LonicaMewinsky/ComfyUI-RawSaver": [ + [ + "SaveTifImage" + ], + { + "title_aux": "ComfyUI-RawSaver" + } + ], + "https://github.com/LoveEatCandy/COMFYUI-ReplacePartOfImage": [ + [ + "ReplacePartOfImage" + ], + { + "title_aux": "COMFYUI-ReplacePartOfImage" + } + ], + "https://github.com/Ltamann/ComfyUI-TBG-ETUR": [ + [ + "AIO_Preprocessor", + "AddFluxFlow", + "AnimeFace_SemSegPreprocessor", + "AnimeLineArtPreprocessor", + "AnyLineArtPreprocessor_aux", + "ApplyFluxRaveAttention", + "ApplyRefFlux", + "ApplyRegionalConds", + "BAE-NormalMapPreprocessor", + "BinaryPreprocessor", + "CannyEdgePreprocessor", + "ColorPreprocessor", + "ConfigureModifiedFlux", + "ControlNetAuxSimpleAddText", + "ControlNetPreprocessorSelector", + "CreateRegionalCond", + "DSINE-NormalMapPreprocessor", + "DepthAnythingPreprocessor", + "DepthAnythingV2Preprocessor", + "DiffusionEdge_Preprocessor", + "ExecuteAllControlNetPreprocessors", + "FakeScribblePreprocessor", + "FlowEditForwardSampler", + "FlowEditGuider", + "FlowEditReverseSampler", + "FlowEditSampler", + "FluxAttnOverride", + "FluxDeGuidance", + "FluxForwardODESampler", + "FluxInverseSampler", + "FluxNoiseMixer", + "FluxReverseODESampler", + "HEDPreprocessor", + "HintImageEnchance", + "ImageGenResolutionFromImage", + "ImageGenResolutionFromLatent", + "ImageIntensityDetector", + "ImageLuminanceDetector", + "InFluxFlipSigmas", + "InFluxModelSamplingPred", + "InpaintPreprocessor", + "JanusImageGeneration", + "JanusImageUnderstanding", + "JanusModelLoader", + "LeReS-DepthMapPreprocessor", + "LineArtPreprocessor", + "LineartStandardPreprocessor", + "M-LSDPreprocessor", + "Manga2Anime_LineArt_Preprocessor", + "MaskOptFlow", + "MediaPipe-FaceMeshPreprocessor", + "MeshGraphormer+ImpactDetector-DepthMapPreprocessor", + "MeshGraphormer-DepthMapPreprocessor", + "Metric3D-DepthMapPreprocessor", + "Metric3D-NormalMapPreprocessor", + "Metric_DepthAnythingV2Preprocessor", + "MiDaS-DepthMapPreprocessor", + "MiDaS-NormalMapPreprocessor", + "OneFormer-ADE20K-SemSegPreprocessor", + "OneFormer-COCO-SemSegPreprocessor", + "OpenposePreprocessor", + "OutFluxModelSamplingPred", + "PAGAttention", + "PatreonStatusCheck", + "PiDiNetPreprocessor", + "PixelPerfectResolution", + "PrepareAttnBank", + "PyraCannyPreprocessor", + "RFDoubleBlocksOverride", + "RFSingleBlocksOverride", + "RegionalStyleModelApply", + "SAMPreprocessor", + "SEGAttention", + "ScribblePreprocessor", + "Scribble_PiDiNet_Preprocessor", + "Scribble_XDoG_Preprocessor", + "SemSegPreprocessor", + "ShufflePreprocessor", + "TEEDPreprocessor", + "TTPlanet_TileGF_Preprocessor", + "TTPlanet_TileSimple_Preprocessor", + "TilePreprocessor", + "UniFormer-SemSegPreprocessor", + "Unimatch_OptFlowPreprocessor", + "UnloadOneModel", + "Zoe-DepthMapPreprocessor", + "Zoe_DepthAnythingPreprocessor" + ], + { + "title_aux": "TBG_Enhanced Tiled Upscaler & Refiner FLUX PRO" + } + ], + "https://github.com/Ltamann/ComfyUI-TBG-Takeaways": [ + [ + "BasicSchedulerNormalized", + "LogSigmaSamplerNode", + "LogSigmaStepSamplerNode", + "ModelSamplingFluxGradual", + "PolyExponentialSigmaAdder", + "TBG_FluxKontextStabilizer" + ], + { + "title_aux": "TBG\u2019s ComfyUI Development Takeaways" + } + ], + "https://github.com/LucipherDev/ComfyUI-AniDoc": [ + [ + "AniDocLoader", + "AniDocSampler", + "GetAniDocControlnetImages", + "LoadCoTracker" + ], + { + "title_aux": "ComfyUI-AniDoc" + } + ], + "https://github.com/LucipherDev/ComfyUI-Golden-Noise": [ + [ + "GoldenNoise" + ], + { + "title_aux": "ComfyUI-Golden-Noise" + } + ], + "https://github.com/LucipherDev/ComfyUI-TangoFlux": [ + [ + "TangoFluxLoader", + "TangoFluxSampler", + "TangoFluxVAEDecodeAndPlay" + ], + { + "title_aux": "ComfyUI-TangoFlux" + } + ], + "https://github.com/Ludobico/ComfyUI-ScenarioPrompt": [ + [ + "ScenarioPrompt" + ], + { + "title_aux": "ComfyUI-ScenarioPrompt" + } + ], + "https://github.com/LyazS/comfyui-anime-seg": [ + [ + "Anime Character Seg" + ], + { + "title_aux": "Anime Character Segmentation node for comfyui" + } + ], + "https://github.com/LyazS/comfyui-nettools": [ + [ + "NTL_LoadImagesBase64", + "NTL_SendImagesWebSocket" + ], + { + "title_aux": "net tool node for comfyui" + } + ], + "https://github.com/M1kep/ComfyLiterals": [ + [ + "Checkpoint", + "Float", + "Int", + "KepStringLiteral", + "Lora", + "Operation", + "String" + ], + { + "title_aux": "ComfyLiterals" + } + ], + "https://github.com/M1kep/ComfyUI-KepOpenAI": [ + [ + "KepOpenAI_ImageWithPrompt" + ], + { + "title_aux": "ComfyUI-KepOpenAI" + } + ], + "https://github.com/M1kep/ComfyUI-OtherVAEs": [ + [ + "OtherVAE_Taesd" + ], + { + "title_aux": "ComfyUI-OtherVAEs" + } + ], + "https://github.com/M1kep/Comfy_KepKitchenSink": [ + [ + "KepRotateImage" + ], + { + "title_aux": "Comfy_KepKitchenSink" + } + ], + "https://github.com/M1kep/Comfy_KepListStuff": [ + [ + "Empty Images", + "Image Overlay", + "ImageListLoader", + "Join Float Lists", + "Join Image Lists", + "KepStringList", + "KepStringListFromNewline", + "Kep_JoinListAny", + "Kep_RepeatList", + "Kep_ReverseList", + "Kep_VariableImageBuilder", + "List Length", + "Range(Num Steps) - Float", + "Range(Num Steps) - Int", + "Range(Step) - Float", + "Range(Step) - Int", + "Stack Images", + "XYAny", + "XYImage" + ], + { + "title_aux": "Comfy_KepListStuff" + } + ], + "https://github.com/M1kep/Comfy_KepMatteAnything": [ + [ + "MatteAnything_DinoBoxes", + "MatteAnything_GenerateVITMatte", + "MatteAnything_InitSamPredictor", + "MatteAnything_LoadDINO", + "MatteAnything_LoadVITMatteModel", + "MatteAnything_SAMLoader", + "MatteAnything_SAMMaskFromBoxes", + "MatteAnything_ToTrimap" + ], + { + "title_aux": "Comfy_KepMatteAnything" + } + ], + "https://github.com/M1kep/KepPromptLang": [ + [ + "Build Gif", + "Special CLIP Loader" + ], + { + "title_aux": "KepPromptLang" + } + ], + "https://github.com/MDMAchine/ComfyUI_MD_Nodes": [ + [ + "ACE_LatentVisualizer", + "APGGuiderForked", + "AdvancedAudioPreviewAndSave", + "HybridAdaptiveSigmas", + "MasteringChainNode", + "NoiseDecayScheduler_Custom", + "PingPongSampler_Custom", + "PingPongSampler_Custom_FBG", + "SceneGeniusAutocreator", + "SeedSaver" + ], + { + "title_aux": "MD Nodes" + } + ], + "https://github.com/MNeMoNiCuZ/ComfyUI-mnemic-nodes": [ + [ + "LoraTagLoader", + "ResolutionSelector", + "StringCleaning", + "StringTextExtractor", + "StringTextSplitter", + "TiktokenTokenizer", + "WildcardProcessor", + "\u26d4 Generate Negative Prompt", + "\u2702\ufe0f String Text Extractor", + "\u2702\ufe0f String Text Splitter", + "\u2728\ud83c\udf10 Groq ALM API - Translate [EN only]", + "\u2728\ud83d\udcac Groq LLM API", + "\u2728\ud83d\udcdd Groq ALM API - Transcribe", + "\u2728\ud83d\udcf7 Groq VLM API", + "\ud83c\udff7\ufe0f LoRA Loader Prompt Tags", + "\ud83d\udcbe Save Text File With Path", + "\ud83d\udcc1 Get File Path", + "\ud83d\udcd0 Resolution Image Size Selector", + "\ud83d\udcdd Wildcard Processor", + "\ud83d\udd20 Tiktoken Tokenizer Info", + "\ud83d\uddbc\ufe0f Download Image from URL", + "\ud83e\uddf9 String Cleaning" + ], + { + "title_aux": "ComfyUI-mnemic-nodes" + } + ], + "https://github.com/Makeezi/ComfyUI-promptLAB": [ + [ + "PromptLAB" + ], + { + "title_aux": "ComfyUI-promptLAB" + } + ], + "https://github.com/MakkiShizu/ComfyUI-Prompt-Wildcards": [ + [ + "makitextwildcards", + "makiwildcards", + "textconcatenate", + "textconcatenate_v2" + ], + { + "title_aux": "ComfyUI-Prompt-Wildcards" + } + ], + "https://github.com/MakkiShizu/ComfyUI-Qwen2_5-VL": [ + [ + "BatchImageLoaderToLocalFiles", + "DownloadAndLoadQwen2_5_VLModel", + "Qwen2_5_VL_Run", + "Qwen2_5_VL_Run_Advanced" + ], + { + "title_aux": "ComfyUI-Qwen2_5-VL" + } + ], + "https://github.com/MakkiShizu/comfyui_reimgsize": [ + [ + "Cropimg", + "Reimgsize", + "Resizebyratio" + ], + { + "title_aux": "comfyui_reimgsize" + } + ], + "https://github.com/Mamaaaamooooo/batchImg-rembg-ComfyUI-nodes": [ + [ + "Image Remove Background (rembg)" + ], + { + "title_aux": "Batch Rembg for ComfyUI" + } + ], + "https://github.com/ManglerFTW/ComfyI2I": [ + [ + "Color Transfer", + "Combine and Paste", + "Inpaint Segments", + "Mask Ops" + ], + { + "author": "ManglerFTW", + "title": "ComfyI2I", + "title_aux": "ComfyI2I" + } + ], + "https://github.com/MarcusNyne/m9-prompts-comfyui": [ + [ + "ScramblePrompts_m9", + "TweakWeights_m9" + ], + { + "title_aux": "m9-prompts-comfyui" + } + ], + "https://github.com/MariusKM/ComfyUI-BadmanNodes": [ + [ + "BadmanBrightness", + "BadmanCLIPTextEncodeSDXLRegion", + "BadmanDesaturate", + "BadmanDilateErodeMask", + "BadmanIO", + "BadmanIntUtil", + "BadmanMaskBlur", + "BadmanStringSelect", + "BadmanStringToInteger", + "BadmanWildCardProcessor", + "Badman_Blend", + "Badman_ColorTransferLab", + "Badman_Concat_String", + "Badman_HexGenerator", + "Badman_PalletteGenerator", + "Badman_Print", + "Badman_String" + ], + { + "title_aux": "ComfyUI-BadmanNodes" + } + ], + "https://github.com/MarkoCa1/ComfyUI-Text": [ + [ + "CombinationText", + "PlaceholderText", + "ReplaceText", + "ShowText" + ], + { + "title_aux": "ComfyUI-Text" + } + ], + "https://github.com/MarkoCa1/ComfyUI_Segment_Mask": [ + [ + "AutomaticMask(segment anything)" + ], + { + "title_aux": "ComfyUI_Segment_Mask" + } + ], + "https://github.com/Marksusu/ComfyUI_MTCLIPEncode": [ + [ + "MTCLIPEncode" + ], + { + "title_aux": "ComfyUI_MTCLIPEncode" + } + ], + "https://github.com/MartinDeanMoriarty/ComfyUI-DeanLogic": [ + [ + "ImageCount", + "ImageInputSwitch", + "ImageOutputSwitch", + "Int Compare" + ], + { + "title_aux": "ComfyUI-DeanLogic" + } + ], + "https://github.com/MaruPelkar/comfyui-conditioning-resizer": [ + [ + "ConditioningResizer" + ], + { + "title_aux": "ComfyUI Conditioning Resizer" + } + ], + "https://github.com/Mason-McGough/ComfyUI-Mosaica": [ + [ + "ApplyLUTToLabelImage", + "KMeans", + "LoadLUTFromMatplotlib", + "MeanShift", + "RandomLUT", + "Watershed" + ], + { + "title_aux": "Mosaica" + } + ], + "https://github.com/MasterDenis/VAE-Decode-Switch": [ + [ + "VAEDecodeSwitcher" + ], + { + "title_aux": "VAE Decode Switch for ComfyUI" + } + ], + "https://github.com/Mattabyte/ComfyUI-SecureApiCall": [ + [ + "SaveLatentToS3", + "SaveVideoFilesS3", + "SecureAPI-SecureAPI", + "SecureAPI-SecureAPI-AWS" + ], + { + "title_aux": "ComfyUI Secure API Call" + } + ], + "https://github.com/Maxed-Out-99/ComfyUI-MaxedOut": [ + [ + "Flux Empty Latent Image", + "Flux Image Scale To Total Pixels (Flux Safe)", + "FluxResolutionMatcher", + "Image Scale To Total Pixels (SDXL Safe)", + "LatentHalfMasks", + "Prompt With Guidance (Flux)", + "Sdxl Empty Latent Image" + ], + { + "title_aux": "ComfyUI-MaxedOut" + } + ], + "https://github.com/McKlinton2/comfyui-mcklinton-pack": [ + [ + "ColormaskNode", + "LoadFilteredImageBatch", + "MultiLayerComposeNode", + "SaveTextArrayToFiles" + ], + { + "title_aux": "ComfyUI McKlinton Pack \u2014 Mask Node" + } + ], + "https://github.com/Mcmillian/ComfyUI-SimpleToolsNodes": [ + [ + "GetModelStep", + "GlmPromptNode" + ], + { + "title_aux": "SimpleToolsNodes" + } + ], + "https://github.com/MeeeyoAI/ComfyUI_StringOps": [ + [ + "AddPrefixSuffix", + "AddPrefixSuffixToLines", + "BatchReplaceStrings", + "CheckSubstringPresence", + "CompareInt", + "ConditionalTextOutput", + "CountOccurrences", + "CustomCrop", + "DecodePreview", + "ExtractAndCombineLines", + "ExtractBeforeAfter", + "ExtractLinesByIndex", + "ExtractSpecificData", + "ExtractSpecificLines", + "ExtractSubstring", + "ExtractSubstringByIndices", + "FileCopyCutNode", + "FileDeleteNode", + "FileListAndSuffix", + "FileNameReplacer", + "FilterLinesBySubstrings", + "FilterLinesByWordCount", + "FindExcelData", + "FindFirstLineContent", + "FloatToInteger", + "GenerateNumbers", + "GenerateVideoPrompt", + "GenericImageLoader", + "GetCurrentTime", + "GetFloatParam", + "GetIntParam", + "GetRandomIntegerInRange", + "ImageAdjuster", + "ImageOverlayAlignment", + "LoadAndAdjustImage", + "MultiParamInputNode", + "NumberExtractor", + "ProcessString", + "RandomLineFromText", + "ReadExcelData", + "ReadExcelRowOrColumnDiff", + "ReadWebNode", + "RemoveContentBetweenChars", + "ReplaceMultiple", + "ReplaceNthOccurrence", + "SaveImagEX", + "SelectionParameter", + "ShuffleTextLines", + "SimpleRandomSeed", + "SimpleTextReplacer", + "SingleTextInput", + "SplitAndExtractText", + "SplitStringByDelimiter", + "TextConcatenation", + "TextConcatenator", + "TextConditionCheck", + "TextToImage", + "TextToList", + "WriteExcelData", + "WriteExcelImage", + "WriteToTxtFile" + ], + { + "title_aux": "ComfyUI_StringOps" + } + ], + "https://github.com/Meettya/ComfyUI-OneForOne": [ + [ + "OFO Image Fit" + ], + { + "title_aux": "ComfyUI-OneForOne" + } + ], + "https://github.com/MetaGLM/ComfyUI-ZhipuAI-Platform": [ + [ + "VideoReportData", + "VideoReportGenerate", + "VideoReportPull" + ], + { + "title_aux": "ComfyUI ZhipuAI Platform" + } + ], + "https://github.com/MicheleGuidi/ComfyUI-Contextual-SAM2": [ + [ + "Sam2ContextSegmentation", + "Sam2TiledSegmentation" + ], + { + "title_aux": "ComfyUI-Computer-Vision" + } + ], + "https://github.com/MiddleKD/ComfyUI-denoise-mask-scheduler": [ + [ + "ApplyDenoiseMaskSchedulerWithSigma", + "ApplyDenoiseMaskSchedulerWithStep", + "DynamicImageResize" + ], + { + "title_aux": "ComfyUI-denoise-mask-scheduler" + } + ], + "https://github.com/MiddleKD/ComfyUI-mem-safe-wrapper": [ + [ + "MakeModelMemorySafe-safewrapper", + "ResetModelPatcher-safewrapper", + "SimpleDummyModel-safewrapper", + "SimpleDummyRun-safewrapper" + ], + { + "title_aux": "ComfyUI-mem-safe-wrapper" + } + ], + "https://github.com/MiddleKD/ComfyUI-productfix": [ + [ + "ApplyLatentInjection", + "DetailTransferAdd", + "DetailTransferLatentAdd", + "DynamicImageResize", + "GetTextMask", + "ResetModelPatcherCalculateWeight", + "VQDecoder", + "VQEncoder", + "VQLoader" + ], + { + "title_aux": "ComfyUI-productfix" + } + ], + "https://github.com/MijnSpam/ComfyUI_SwapAndScale": [ + [ + "SwapAndScale" + ], + { + "title_aux": "Comfy swap and scale" + } + ], + "https://github.com/MijnSpam/UploadToPushOver": [ + [ + "UploadToPushOver" + ], + { + "title_aux": "Upload to PushOver" + } + ], + "https://github.com/MilitantHitchhiker/MilitantHitchhiker-SwitchbladePack": [ + [ + "FluxModelSave_v2", + "IntegratedRandomPromptGenerator", + "ModelAnalyserNode", + "TextAppender_v2" + ], + { + "author": "Militant Hitchhiker", + "description": "Militant Hitchhiker's multi-function nodes.", + "nickname": "Switchblade", + "title": "Switchblade Pack", + "title_aux": "MilitantHitchhiker-SwitchbladePack" + } + ], + "https://github.com/Mintbeer96/ComfyUI-KerasOCR": [ + [ + "KerasOCR" + ], + { + "title_aux": "ComfyUI-KerasOCR" + } + ], + "https://github.com/Miosp/ComfyUI-FBCNN": [ + [ + "JPEG artifacts removal FBCNN" + ], + { + "title_aux": "ComfyUI-FBCNN" + } + ], + "https://github.com/MitoshiroPJ/ComfyUI_save_image_sdli": [ + [ + "PreviewSdlImage", + "SaveSdlImage" + ], + { + "title_aux": "ComfyUI SaveImage SDLI" + } + ], + "https://github.com/MitoshiroPJ/comfyui_nearsighted_attention": [ + [ + "NearSightedAttention", + "NearSightedAttentionSimple", + "NearSightedTile", + "SlothfulAttention" + ], + { + "title_aux": "ComfyUI Nearsighted Attention" + } + ], + "https://github.com/Miyuutsu/comfyui-save-vpred": [ + [ + "CheckpointSaveVpred" + ], + { + "author": "miyuu", + "description": "Used to save SDXL V-Prediction models directly with correct tensors.", + "nickname": "vpred-save", + "title": "vpred-save", + "title_aux": "comfyui-save-vpred" + } + ], + "https://github.com/MohammadAboulEla/ComfyUI-iTools": [ + [ + "iToolsAddOverlay", + "iToolsCheckerBoard", + "iToolsCompareImage", + "iToolsGridFiller", + "iToolsKSampler", + "iToolsLineLoader", + "iToolsLoadImagePlus", + "iToolsLoadImages", + "iToolsLoadRandomImage", + "iToolsPreviewImage", + "iToolsPreviewText", + "iToolsPromptLoader", + "iToolsPromptRecord", + "iToolsPromptSaver", + "iToolsPromptStyler", + "iToolsPromptStylerExtra", + "iToolsRegexNode", + "iToolsTextReplacer", + "iToolsVaePreview" + ], + { + "title_aux": "ComfyUI-iTools" + } + ], + "https://github.com/MokkaBoss1/ComfyUI_Mokkaboss1": [ + [ + "AnimeCosplayDir", + "AspectRatioCondition", + "ChooseImage", + "Colors", + "CombinedCrop", + "ConnectFloat", + "ConnectImage", + "ConnectInteger", + "ConnectInteger2", + "ConnectLatent", + "ConnectString", + "CycleInteger", + "DirSelector", + "DoubleClipTextEncode", + "DoubleConditioningMixer", + "EmbeddingLoader", + "FilmCharDir", + "FlexEmptyLatent", + "FloatEvaluate", + "FuseImages", + "FuseImages2", + "HashText", + "HueSatLum", + "HueShift", + "ImageDimensions", + "ImageDimensionsBatch", + "ImageOverlayResized", + "ImageResizeLong", + "ImageZigzag", + "IndoorBackgrounds", + "IndoorDir", + "IntEvaluate", + "IntFloatDict", + "IntStringDict", + "JsonSearch", + "KillWorkflow", + "LandscapeBackgrounds", + "LandscapeDir", + "LinEqEval", + "MakeupStylesDir", + "Mbsampler", + "OptimalCrop", + "Overlay", + "PhotomontageA", + "PhotomontageB", + "PhotomontageC", + "PostSamplerCrop", + "PresetLoad", + "PresetRemove", + "PresetSave", + "PromptSwitcher", + "QuadClipTextEncode", + "RandomString", + "SDXLEmptyLatent", + "SavePrompt", + "SaveWithMetaData", + "SaveWithMetaData2", + "SearchReplace", + "SimplePrompts", + "SpecificStylesDir", + "SplitImages", + "StringJoin", + "TimeStamp", + "TintnShift", + "TricolorComposition", + "WorkflowSettings", + "WrapText", + "X_In_a_Dress", + "X_In_a_Suit", + "X_In_a_Suit)", + "ZoomCrop", + "imageborder" + ], + { + "title_aux": "Node Pack mostly for manipulating strings and integers" + } + ], + "https://github.com/MontagenAI/ComfyUI-Montagen": [ + [ + "MontagenAudioAdapter", + "MontagenAudioConvertResourceAdapter", + "MontagenAudioListAdapter", + "MontagenCreateTimeline", + "MontagenEdgeTTSNode", + "MontagenFishAudioCloneNode", + "MontagenFishAudioTTSNode", + "MontagenImageAdapter", + "MontagenImageListAdapter", + "MontagenRenderTimeline", + "MontagenResourceConvertAudioAdapter", + "MontagenSRTListParser", + "MontagenStickerAdapter", + "MontagenStickerListAdapter", + "MontagenTextAdapter", + "MontagenTextListAdapter", + "MontagenVideoAdapter", + "MontagenVideoListAdapter" + ], + { + "title_aux": "ComfyUI-Montagen" + } + ], + "https://github.com/MoonHugo/ComfyUI-BAGEL-Hugo": [ + [ + "BagelByHugo" + ], + { + "title_aux": "ComfyUI-BAGEL-Hugo" + } + ], + "https://github.com/MoonHugo/ComfyUI-BiRefNet-Hugo": [ + [ + "BiRefNet_Hugo" + ], + { + "title_aux": "ComfyUI-BiRefNet-Hugo" + } + ], + "https://github.com/MoonHugo/ComfyUI-FFmpeg": [ + [ + "AddAudio", + "AddImgWatermark", + "AddTextWatermark", + "ExtractAudio", + "Frames2Video", + "ImageCopy", + "ImagePath2Tensor", + "ImagesSave", + "LoadImageFromDir", + "MergingVideoByPlenty", + "MergingVideoByTwo", + "MultiCuttingVideo", + "PipVideo", + "SingleCuttingVideo", + "StitchingVideo", + "Video2Frames", + "VideoFlip", + "VideoTransition" + ], + { + "title_aux": "ComfyUI-FFmpeg" + } + ], + "https://github.com/MoonHugo/ComfyUI-StableAudioOpen": [ + [ + "Text2Audio" + ], + { + "title_aux": "ComfyUI-StableAudioOpen" + } + ], + "https://github.com/MovieLabs/comfyui-movielabs-util": [ + [ + "PublishAsset", + "PublishBlender" + ], + { + "title_aux": "MovieLabs ComfyUI Nodes for Publishing Workflow" + } + ], + "https://github.com/MrForExample/ComfyUI-3D-Pack": [ + [], + { + "nodename_pattern": "^\\[Comfy3D\\]", + "title_aux": "ComfyUI-3D-Pack" + } + ], + "https://github.com/MrForExample/ComfyUI-AnimateAnyone-Evolved": [ + [], + { + "nodename_pattern": "^\\[AnimateAnyone\\]", + "title_aux": "ComfyUI-AnimateAnyone-Evolved" + } + ], + "https://github.com/MrSamSeen/ComfyUI_SSBeforeAfterNode": [ + [ + "SSBeforeAndAfterVideo", + "SSBeforeAndAfterVideoWithDepthMap" + ], + { + "title_aux": "ComfyUI_SSBeforeAfterNode" + } + ], + "https://github.com/MrSamSeen/ComfyUI_SSStereoscope": [ + [ + "SBS_External_Depthmap_by_SamSeen", + "SBS_Image_Uploader", + "SBS_V2_by_SamSeen", + "SBS_Video_Combiner", + "SBS_Video_Uploader" + ], + { + "title_aux": "SideBySide_Stereoscope" + } + ], + "https://github.com/Munkyfoot/ComfyUI-TextOverlay": [ + [ + "Text Overlay" + ], + { + "title_aux": "ComfyUI-TextOverlay" + } + ], + "https://github.com/MuziekMagie/ComfyUI-Matchering": [ + [ + "Matchering", + "MatcheringAdvanced", + "MatcheringLimiterConfig" + ], + { + "title_aux": "ComfyUI-Matchering" + } + ], + "https://github.com/MzMaXaM/ComfyUi-MzMaXaM": [ + [ + "KSamplerWithVAE", + "SelectLatentSize1MP", + "SelectLatentSize2MP", + "TextEncode3in1", + "UpscaleImageBy1_5x", + "UpscaleLatentBy1_5x", + "selectLatentSizePlus" + ], + { + "title_aux": "ComfyUi-MzMaXaM" + } + ], + "https://github.com/N3rd00d/ComfyUI-Paint3D-Nodes": [ + [ + "3D_GenerateDepthImage", + "3D_GenerateInpaintMask", + "3D_GenerateInpaintUVMapMask", + "3D_GeneratePreviewVideo", + "3D_LoadMeshModel", + "3D_Projection", + "3D_SaveUVMapImage", + "3D_TrainConfig", + "3D_TrainConfigPipe" + ], + { + "title_aux": "ComfyUI-Paint3D-Nodes" + } + ], + "https://github.com/NMWave/ComfyUI-Nader-Tagging": [ + [ + "Load Text List", + "Split Sentences", + "Split Tags", + "Tag Alternating Combiner", + "Tag Duplicate Remover", + "Token Counter" + ], + { + "title_aux": "Image Captioning and Tagging Assistor Nodes" + } + ], + "https://github.com/NVIDIAGameWorks/ComfyUI-RTX-Remix": [ + [ + "RTXRemixCreateLayer", + "RTXRemixDefineLayerId", + "RTXRemixDeleteFile", + "RTXRemixEndContext", + "RTXRemixGetEditTarget", + "RTXRemixGetLayers", + "RTXRemixGetTextures", + "RTXRemixIngestTexture", + "RTXRemixInvertBool", + "RTXRemixLayerType", + "RTXRemixLayerTypes", + "RTXRemixMuteLayer", + "RTXRemixRemoveLayer", + "RTXRemixRestAPIDetails", + "RTXRemixSaveLayer", + "RTXRemixSetEditTarget", + "RTXRemixSetTexture", + "RTXRemixStartContext", + "RTXRemixStrToList", + "RTXRemixStringConcatenate", + "RTXRemixStringConstant", + "RTXRemixSwitch", + "RTXRemixTextureTypeToUSDAttribute", + "RTXRemixTexturesType", + "RTXRemixTexturesTypes" + ], + { + "title_aux": "ComfyUI-RTX-Remix" + } + ], + "https://github.com/NakamuraShippo/ComfyUI-NS-ManySliders": [ + [ + "NS_ManySliders" + ], + { + "title_aux": "ComfyUI-NS-ManySliders" + } + ], + "https://github.com/NakamuraShippo/ComfyUI-NS-PromptList": [ + [ + "NS-PromptList" + ], + { + "title_aux": "ComfyUI-PromptList" + } + ], + "https://github.com/NakamuraShippo/ComfyUI-NS-Util": [ + [ + "NS-FlexPreset" + ], + { + "title_aux": "ComfyUI-NS-ManySliders" + } + ], + "https://github.com/NeoDroleDeGueule/comfyui-image-mixer": [ + [ + "ImageLatentMixer" + ], + { + "title_aux": "comfyui-image-mixer" + } + ], + "https://github.com/NeoGriever/ComfyUI-NeoGriever": [ + [ + "NGs_BetterCLIPTextEncode", + "NGs_Checkerboard_Generator", + "NGs_Create_Solid_Color", + "NGs_Discord_Webhook", + "NGs_Fill_with_Color", + "NGs_Image_Progress_Bar", + "NGs_Multimask_Read", + "NGs_Multimask_Write", + "NGs_ResolutionProvider", + "NGs_Sliders_FLOAT", + "NGs_Sliders_INT", + "NGs_Sliders_PERCENTAGECUT", + "NGs_String_Operator", + "NGs_String_Squisher", + "NGs_Tag_Source", + "NGs_TextBox_JOIN", + "NGs_TextBox_SIMPLE", + "NGs_TextBox_x2", + "NGs_TextBox_x3", + "NGs_Text_Cut_String" + ], + { + "title_aux": "ComfyUI - NeoGriever" + } + ], + "https://github.com/NeonLightning/neonllama": [ + [ + "OllamaPromptFromIdea" + ], + { + "title_aux": "neonllama" + } + ], + "https://github.com/NeuralSamurAI/ComfyUI-Dimensional-Latent-Perlin": [ + [ + "NoisyLatentPerlinD" + ], + { + "title_aux": "Dimensional Latent Perlin for ComfyUI" + } + ], + "https://github.com/NeuralSamurAI/ComfyUI-FluxPseudoNegativePrompt": [ + [ + "FluxPseudoNegativeNode" + ], + { + "title_aux": "FluxPseudoNegative" + } + ], + "https://github.com/NeuralSamurAI/ComfyUI-PromptJSON": [ + [ + "PromptJSON" + ], + { + "title_aux": "PromptJSON Node for ComfyUI" + } + ], + "https://github.com/NeuralSamurAI/Comfyui-Superprompt-Unofficial": [ + [ + "SuperPrompterNode" + ], + { + "title_aux": "SuperPrompter Node for ComfyUI" + } + ], + "https://github.com/NeuroSenko/ComfyUI_LLM_SDXL_Adapter": [ + [ + "ApplyLLMToSDXLAdapter", + "LLMAdapterLoader", + "LLMModelLoader", + "LLMTextEncoder" + ], + { + "title_aux": "ComfyUI LLM SDXL Adapter" + } + ], + "https://github.com/NguynHungNguyen/Segment-Bedroom-Interior": [ + [ + "BedroomFurnitureMask" + ], + { + "title_aux": "Segment Any Bedroom Interior" + } + ], + "https://github.com/NicholasMcCarthy/ComfyUI_TravelSuite": [ + [ + "LatentTravel" + ], + { + "title_aux": "ComfyUI_TravelSuite" + } + ], + "https://github.com/Nikosis/ComfyUI-Nikosis-Nodes": [ + [ + "AspectRatioNikosis", + "PromptCameraAngleSelectorNikosis", + "PromptMultipleStylesSelectorNikosis", + "TextConcatenateNikosis" + ], + { + "title_aux": "ComfyUI-Nikosis-Nodes" + } + ], + "https://github.com/Nikosis/ComfyUI-Nikosis-Preprocessors": [ + [ + "DepthAnythingV2Nikosis", + "EdgePreprocessorNikosis", + "LaplacianPreprocessorNikosis", + "LineArtPreprocessorNikosis", + "LineArtSketchPreprocessorNikosis" + ], + { + "title_aux": "ComfyUI-Nikosis-Preprocessors" + } + ], + "https://github.com/NimaNzrii/comfyui-photoshop": [ + [ + "\ud83d\udd39 Photoshop RemoteConnection", + "\ud83d\udd39ClipPass", + "\ud83d\udd39Photoshop ComfyUI Plugin", + "\ud83d\udd39SendTo Photoshop Plugin", + "\ud83d\udd39modelPass" + ], + { + "title_aux": "comfyui-photoshop" + } + ], + "https://github.com/NimaNzrii/comfyui-popup_preview": [ + [ + "PreviewPopup" + ], + { + "title_aux": "comfyui-popup_preview" + } + ], + "https://github.com/Niutonian/ComfyUi-NoodleWebcam": [ + [ + "WebcamNode" + ], + { + "title_aux": "ComfyUi-NoodleWebcam" + } + ], + "https://github.com/Njbx/ComfyUI-LTX13B-Blockswap": [ + [ + "LTXBlockswap" + ], + { + "title_aux": "ComfyUI-LTX13B-Blockswap" + } + ], + "https://github.com/Nlar/ComfyUI_CartoonSegmentation": [ + [ + "AnimeSegmentation", + "KenBurnsConfigLoader", + "KenBurns_Processor", + "LoadImageFilename" + ], + { + "author": "Nels Larsen", + "description": "This extension offers a front end to the Cartoon Segmentation Project (https://github.com/CartoonSegmentation/CartoonSegmentation)", + "nickname": "CfyCS", + "title": "ComfyUI_CartoonSegmentation", + "title_aux": "ComfyUI_CartoonSegmentation" + } + ], + "https://github.com/Nojahhh/ComfyUI_GLM4_Wrapper": [ + [ + "GLM-4 Inferencing", + "GLM-4 Model Loader", + "GLM-4 Prompt Enhancer" + ], + { + "title_aux": "ComfyUI GLM-4 Wrapper" + } + ], + "https://github.com/NotHarroweD/Harronode": [ + [ + "Harronode" + ], + { + "author": "HarroweD and quadmoon (https://github.com/traugdor)", + "description": "This extension to ComfyUI will build a prompt for the Harrlogos LoRA for SDXL.", + "nickname": "Harronode", + "nodename_pattern": "Harronode", + "title": "Harrlogos Prompt Builder Node", + "title_aux": "Harrlogos Prompt Builder Node" + } + ], + "https://github.com/Nourepide/ComfyUI-Allor": [ + [ + "AlphaChanelAdd", + "AlphaChanelAddByMask", + "AlphaChanelAsMask", + "AlphaChanelRemove", + "AlphaChanelRestore", + "ClipClamp", + "ClipVisionClamp", + "ClipVisionOutputClamp", + "ConditioningClamp", + "ControlNetClamp", + "GligenClamp", + "ImageBatchCopy", + "ImageBatchFork", + "ImageBatchGet", + "ImageBatchJoin", + "ImageBatchPermute", + "ImageBatchRemove", + "ImageClamp", + "ImageCompositeAbsolute", + "ImageCompositeAbsoluteByContainer", + "ImageCompositeRelative", + "ImageCompositeRelativeByContainer", + "ImageContainer", + "ImageContainerInheritanceAdd", + "ImageContainerInheritanceMax", + "ImageContainerInheritanceScale", + "ImageContainerInheritanceSum", + "ImageDrawArc", + "ImageDrawArcByContainer", + "ImageDrawChord", + "ImageDrawChordByContainer", + "ImageDrawEllipse", + "ImageDrawEllipseByContainer", + "ImageDrawLine", + "ImageDrawLineByContainer", + "ImageDrawPieslice", + "ImageDrawPiesliceByContainer", + "ImageDrawPolygon", + "ImageDrawRectangle", + "ImageDrawRectangleByContainer", + "ImageDrawRectangleRounded", + "ImageDrawRectangleRoundedByContainer", + "ImageEffectsAdjustment", + "ImageEffectsGrayscale", + "ImageEffectsLensBokeh", + "ImageEffectsLensChromaticAberration", + "ImageEffectsLensOpticAxis", + "ImageEffectsLensVignette", + "ImageEffectsLensZoomBurst", + "ImageEffectsNegative", + "ImageEffectsSepia", + "ImageFilterBilateralBlur", + "ImageFilterBlur", + "ImageFilterBoxBlur", + "ImageFilterContour", + "ImageFilterDetail", + "ImageFilterEdgeEnhance", + "ImageFilterEdgeEnhanceMore", + "ImageFilterEmboss", + "ImageFilterFindEdges", + "ImageFilterGaussianBlur", + "ImageFilterGaussianBlurAdvanced", + "ImageFilterMax", + "ImageFilterMedianBlur", + "ImageFilterMin", + "ImageFilterMode", + "ImageFilterRank", + "ImageFilterSharpen", + "ImageFilterSmooth", + "ImageFilterSmoothMore", + "ImageFilterStackBlur", + "ImageNoiseBeta", + "ImageNoiseBinomial", + "ImageNoiseBytes", + "ImageNoiseGaussian", + "ImageSegmentation", + "ImageSegmentationCustom", + "ImageSegmentationCustomAdvanced", + "ImageText", + "ImageTextMultiline", + "ImageTextMultilineOutlined", + "ImageTextOutlined", + "ImageTransformCropAbsolute", + "ImageTransformCropCorners", + "ImageTransformCropRelative", + "ImageTransformPaddingAbsolute", + "ImageTransformPaddingRelative", + "ImageTransformResizeAbsolute", + "ImageTransformResizeClip", + "ImageTransformResizeRelative", + "ImageTransformRotate", + "ImageTransformTranspose", + "LatentClamp", + "MaskClamp", + "ModelClamp", + "StyleModelClamp", + "UpscaleModelClamp", + "VaeClamp" + ], + { + "title_aux": "Allor Plugin" + } + ], + "https://github.com/Nuked88/ComfyUI-N-Nodes": [ + [ + "CLIPTextEncodeAdvancedNSuite [n-suite]", + "DynamicPrompt [n-suite]", + "Float Variable [n-suite]", + "FrameInterpolator [n-suite]", + "GPT Loader Simple [n-suite]", + "GPT Sampler [n-suite]", + "ImagePadForOutpaintAdvanced [n-suite]", + "Integer Variable [n-suite]", + "Llava Clip Loader [n-suite]", + "LoadFramesFromFolder [n-suite]", + "LoadImageFromFolder [n-suite]", + "LoadVideo [n-suite]", + "SaveVideo [n-suite]", + "SetMetadataForSaveVideo [n-suite]", + "String Variable [n-suite]" + ], + { + "title_aux": "ComfyUI-N-Nodes" + } + ], + "https://github.com/NyaFuP/ComfyUI_Preview_Selector": [ + [ + "NFPreviewSelector" + ], + { + "title_aux": "NF Preview Selector" + } + ], + "https://github.com/NyaamZ/efficiency-nodes-ED": [ + [ + "Context To BasicPipe", + "Context To DetailerPipe", + "Control Net Script \ud83d\udcacED", + "Detailer (SEGS) \ud83d\udcacED", + "Efficient Loader \ud83d\udcacED", + "Embedding Stacker \ud83d\udcacED", + "FaceDetailer \ud83d\udcacED", + "Get Booru Tag \ud83d\udcacED", + "Int Holder \ud83d\udcacED", + "KSampler (Efficient) \ud83d\udcacED", + "KSampler Text \ud83d\udcacED", + "LoRA Stacker \ud83d\udcacED", + "Load Image \ud83d\udcacED", + "MaskDetailer \ud83d\udcacED", + "Refiner Script \ud83d\udcacED", + "Regional Processor \ud83d\udcacED", + "Regional Script \ud83d\udcacED", + "Regional Stacker \ud83d\udcacED", + "SUPIR Model Loader \ud83d\udcacED", + "SUPIR Sampler \ud83d\udcacED", + "Save Image \ud83d\udd14ED", + "Simple Text \ud83d\udcacED", + "TIPO Script \ud83d\udcacED", + "Ultimate SD Upscale \ud83d\udcacED", + "Wildcard Encode \ud83d\udcacED" + ], + { + "author": "NyaamZ", + "description": "Expansion of Efficiency Nodes for ComfyUI. Significant UX improvements.", + "nickname": "Efficiency Nodes ED", + "title": "Efficiency Nodes ExtendeD", + "title_aux": "Efficiency Nodes ExtendeD" + } + ], + "https://github.com/Off-Live/ComfyUI-off-suite": [ + [ + "Apply CLAHE", + "Cached Image Load From URL", + "CalcMaskBound", + "Crop Center wigh SEGS", + "Crop Center with SEGS", + "Dilate Mask for Each Face", + "GW Number Formatting", + "Grid Image from batch (OFF)", + "Image Crop Fit", + "Image Resize Fit", + "OFF SEGS to Image", + "Paste Face Segment to Image", + "Query Gender and Age", + "RandomSeedfromList", + "SEGS to Face Crop Data", + "Safe Mask to Image", + "VAE Encode For Inpaint V2", + "Watermarking" + ], + { + "title_aux": "ComfyUI-off-suite" + } + ], + "https://github.com/OneThingAI/ComfyUI_Onething_CV": [ + [ + "OneThingAI ImageToText" + ], + { + "title_aux": "ComfyUI OneThing CV Node" + } + ], + "https://github.com/OneThingAI/ComfyUI_Onething_Image": [ + [ + "OneThingAILoader" + ], + { + "title_aux": "ComfyUI OneThing AI Node" + } + ], + "https://github.com/OpalSky-AI/OpalSky_Nodes": [ + [ + "PromptAssistantOpalSky", + "StringSwitchOpalSky", + "string_switch_opalsky" + ], + { + "title_aux": "OpalSky Nodes" + } + ], + "https://github.com/OuticNZ/ComfyUI-Simple-Of-Complex": [ + [ + "Pipe From Parameters", + "Pipe To Parameters", + "Prompt Tidy", + "Text Switch 2 Way", + "Text With Context" + ], + { + "title_aux": "ComfyUI-Simple-Of-Complex" + } + ], + "https://github.com/PCMonsterx/ComfyUI-CSV-Loader": [ + [ + "Load Artists CSV", + "Load Artmovements CSV", + "Load Characters CSV", + "Load Colors CSV", + "Load Composition CSV", + "Load Lighting CSV", + "Load Negative CSV", + "Load Positive CSV", + "Load Settings CSV", + "Load Styles CSV" + ], + { + "title_aux": "ComfyUI-CSV-Loader" + } + ], + "https://github.com/PD19Anime/ComfyUI-PD19Anime-Nodes": [ + [ + "AdvancedEmptyLatentImage", + "AdvancedLoaderMultiple", + "AdvancedLoaderSingle", + "AdvancedModelLoader", + "AdvancedPromptSaver", + "AdvancedRandomNoise" + ], + { + "title_aux": "ComfyUI-PD19Anime-Nodes" + } + ], + "https://github.com/Pablerdo/ComfyUI-MultiCutAndDrag": [ + [ + "BatchImageToMask", + "LoadImageFromBase64", + "LoadImagesFromBase64Array", + "MapTrajectoriesToSegmentedMasks", + "MultiCutAndDragOnPath" + ], + { + "title_aux": "ComfyUI-MultiCutAndDrag" + } + ], + "https://github.com/Pablerdo/ComfyUI-ResizeZeptaPayload": [ + [ + "ResizeImageBatch", + "ResizeTrajectories" + ], + { + "title_aux": "ComfyUI-ResizeZeptaPayload" + } + ], + "https://github.com/Pablerdo/ComfyUI-StableVirtualCameraWrapper": [ + [ + "SVCFly", + "SVCFly_Bash" + ], + { + "title_aux": "Stable Virtual Camera" + } + ], + "https://github.com/Pablerdo/ComfyUI-ZeptaframePromptMerger": [ + [ + "MergePrompts" + ], + { + "title_aux": "ComfyUI-ZeptaframePromptMerger" + } + ], + "https://github.com/PanicTitan/ComfyUI-Fooocus-V2-Expansion": [ + [ + "FooocusV2Expansion" + ], + { + "title_aux": "ComfyUI-Fooocus-V2-Expansion" + } + ], + "https://github.com/PanicTitan/ComfyUI-Gallery": [ + [ + "GalleryNode" + ], + { + "title_aux": "ComfyUI-Gallery" + } + ], + "https://github.com/Parameshvadivel/ComfyUI-SVGview": [ + [ + "SVGPreview" + ], + { + "title_aux": "ComfyUI-SVGview" + } + ], + "https://github.com/ParisNeo/lollms_nodes_suite": [ + [ + "Artbot", + "Lollms_Text_Gen", + "Lollms_Text_Saver", + "RandomizeVideo" + ], + { + "title_aux": "lollms_nodes_suite" + } + ], + "https://github.com/ParmanBabra/ComfyUI-Malefish-Custom-Scripts": [ + [ + "CSVPromptsLoader", + "CombinePrompt", + "MultiLoraLoader", + "RandomPrompt" + ], + { + "title_aux": "ComfyUI-Malefish-Custom-Scripts" + } + ], + "https://github.com/PauldeLavallaz/comfyui_claude_prompt_generator": [ + [ + "ClaudeCustomPrompt" + ], + { + "title_aux": "Claude Prompt Generator" + } + ], + "https://github.com/PenguinTeo/Comfyui-TextEditor-Penguin": [ + [ + "PenguinTextOnImage" + ], + { + "title_aux": "Comfyui-TextEditor-Penguin" + } + ], + "https://github.com/Pfaeff/pfaeff-comfyui": [ + [ + "AstropulsePixelDetector", + "BackgroundRemover", + "ImagePadForBetterOutpaint", + "Inpainting", + "InpaintingPipelineLoader" + ], + { + "title_aux": "pfaeff-comfyui" + } + ], + "https://github.com/Phando/ComfyUI-PhandoNodes": [ + [ + "SearchBySubstring", + "TextConcatenateDynamic" + ], + { + "title_aux": "ComfyUI-PhandoNodes" + } + ], + "https://github.com/Pheat-AI/Remade_nodes": [ + [ + "Batch Enlarged Overlay", + "Batch Image Blend by Mask", + "Batch Image Overlay", + "CannyImageCropper", + "MaskBoundingBox", + "Place Canny On Canvas", + "REMADE Batch Color Blend", + "REMADE Batch Image Blend", + "REMADE Batch Image Composite Masked", + "REMADE Batch Image Select Channel", + "Remove Black To Transparent", + "Shrink Canny Image" + ], + { + "title_aux": "Remade_nodes" + } + ], + "https://github.com/PiggyDance/ComfyUI_OpenCV": [ + [ + "OpenCV_CvtColor", + "OpenCV_GaussianBlur", + "OpenCV_MedianBlur" + ], + { + "title_aux": "ComfyUI_OpenCV" + } + ], + "https://github.com/Pigidiy/ComfyUI-LikeSpiderAI-SaveMP3": [ + [ + "SaveAudioAsMP3" + ], + { + "title_aux": "ComfyUI-LikeSpiderAI-SaveMP3" + } + ], + "https://github.com/Pigidiy/ComfyUI-LikeSpiderAI-UI": [ + [ + "AudioExport" + ], + { + "title_aux": "ComfyUI-LikeSpiderAI-UI" + } + ], + "https://github.com/PixelFunAI/ComfyUI_PixelFun": [ + [ + "HunyuanLoadAndEditLoraBlocks", + "HunyuanLoadFromBlockCache", + "HunyuanLoraFromJson", + "HunyuanLoraFromPrompt" + ], + { + "title_aux": "Hunyuan LoRA Loader Nodes" + } + ], + "https://github.com/PixelML/ComfyUI-PixelML-CustomNodes": [ + [ + "AgenticflowAIVariable", + "BooleanInput_PixelML", + "FloatInput_PixelML", + "IntegerInput_PixelML", + "LoadImageFromURL_PixelML", + "SaveImage_PixelML", + "StringInput_PixelML" + ], + { + "title_aux": "PixelML ComfyUI Nodes" + } + ], + "https://github.com/PnthrLeo/comfyUI-PL-data-tools": [ + [ + "AreasGenerator", + "BatchImageGetter", + "CloseImagesSearcher" + ], + { + "title_aux": "comfyUI-PL-data-tools" + } + ], + "https://github.com/Poseidon-fan/ComfyUI-RabbitMQ-Publisher": [ + [ + "Publish Image To RabbitMQ" + ], + { + "title_aux": "ComfyUI-RabbitMQ-Publisher" + } + ], + "https://github.com/Positliver/comfyui-zegr": [ + [ + "ZEGR_ALI_UF", + "ZEGR_LF", + "ZEGR_WD" + ], + { + "title_aux": "comfyui-zegr" + } + ], + "https://github.com/PowerHouseMan/ComfyUI-AdvancedLivePortrait": [ + [ + "AdvancedLivePortrait", + "ExpData", + "ExpressionEditor", + "LoadExpData", + "PrintExpData:", + "SaveExpData" + ], + { + "title_aux": "ComfyUI-AdvancedLivePortrait" + } + ], + "https://github.com/PressWagon/ComfyUI-StringsAndThings": [ + [ + "DebugString", + "FormatConcatStrings", + "FormattingSingle", + "FourierAnalysisNode", + "ImageDifference", + "MosaicEffectNode", + "PWLoraNameCollector", + "PWLoraSelector", + "TextEmbeddingsInterrogator" + ], + { + "title_aux": "ComfyUI-StringsAndThings" + } + ], + "https://github.com/ProGamerGov/ComfyUI_preview360panorama": [ + [ + "PanoramaVideoViewerNode", + "PanoramaViewerNode" + ], + { + "title_aux": "Preview 360 Panorama for ComfyUI" + } + ], + "https://github.com/ProGamerGov/ComfyUI_pytorch360convert": [ + [ + "Crop 360 to 180 Equirectangular", + "Crop Image with Coords", + "Crop Stereo to Monoscopic", + "Cubemap to Equirectangular", + "Equirectangular Rotation", + "Equirectangular to Cubemap", + "Equirectangular to Perspective", + "Masked Diff C2E", + "Merge Monoscopic into Stereo", + "Pad 180 to 360 Equirectangular", + "Paste Image with Coords", + "Roll Image Axes", + "Split Cubemap Faces", + "Stack Cubemap Faces" + ], + { + "title_aux": "PyTorch 360\u00b0 Image Conversion Toolkit for ComfyUI" + } + ], + "https://github.com/PrunaAI/ComfyUI_pruna": [ + [ + "CacheModelAdaptive", + "CacheModelAuto", + "CacheModelPeriodic", + "PrunaCompileModel" + ], + { + "title_aux": "Pruna nodes for ComfyUI" + } + ], + "https://github.com/Pseudotools/Pseudocomfy": [ + [ + "PseudoApplyDenseDiffusionSDXL", + "PseudoApplyIPAdaperSDXL", + "PseudoConcatStrings", + "PseudoFloatToInt", + "PseudoIPAdapterUnifiedLoaderClone", + "PseudoLoadModelSnapshot", + "PseudoMaskAggregate", + "PseudoMaskBlur", + "PseudoMaskClamp", + "PseudoMaskInvert", + "PseudoMaskRemap", + "PseudoMaskReshape", + "PseudoPreviewStrings", + "PseudoProcessEnvironmentalPrompts", + "PseudoProcessImagePrompt", + "PseudoProcessMaterialPrompts", + "PseudoRemapNormalizedFloat", + "PseudoSaveImageWithEmbeddedMasks", + "PseudoUnpackModelSnapshot" + ], + { + "title_aux": "Pseudocomfy" + } + ], + "https://github.com/Q-Bug4/Comfyui-Qb-DateNodes": [ + [ + "DateTimeFormatterNode" + ], + { + "title_aux": "Comfyui-Qb-Date-Nodes" + } + ], + "https://github.com/Q-Bug4/Comfyui-Simple-Json-Node": [ + [ + "JSONArrayIteratorNode", + "JSONGeneratorNode", + "JSONKeyCheckerNode", + "JSONLengthNode", + "JSONMergeNode", + "JSONModifierNode", + "JSONObjectIteratorNode", + "JSONParserNode", + "JSONStringifierNode", + "RandomJSONValueNode" + ], + { + "title_aux": "Simple JSON Parser Node for ComfyUI" + } + ], + "https://github.com/Q-Bug4/comfyui-qbug-batch": [ + [ + "CrossJoinSelector", + "ListFiles", + "NoPreviewSaveImage" + ], + { + "title_aux": "comfyui-qbug-batch" + } + ], + "https://github.com/QaisMalkawi/ComfyUI-QaisHelper": [ + [ + "Bool Binary Operation", + "Bool Unary Operation", + "Item Debugger", + "Item Switch", + "Nearest SDXL Resolution", + "SDXL Resolution", + "Size Swapper" + ], + { + "title_aux": "ComfyUI-Qais-Helper" + } + ], + "https://github.com/QijiTec/ComfyUI-RED-UNO": [ + [ + "REDUNOGenerate", + "REDUNOModelLoader" + ], + { + "title_aux": "ComfyUI-RED-UNO" + } + ], + "https://github.com/R5-Revo/llm-node-comfyui": [ + [ + "UniversalLLMNode" + ], + { + "title_aux": "Universal LLM Node for ComfyUI" + } + ], + "https://github.com/Raapys/ComfyUI-LatentGC_Aggressive": [ + [ + "LatentGC" + ], + { + "title_aux": "LatentGC Aggressive" + } + ], + "https://github.com/RamonGuthrie/ComfyUI-RBG-ImageStitchPlus": [ + [ + "RBGImageStitchPlus", + "RBGPadPro" + ], + { + "title_aux": "ComfyUI-RBG-ImageStitchPlus" + } + ], + "https://github.com/Ravenmelt/ComfyUI-Rodin": [ + [ + "LoadRodinAPIKEY", + "Preview_3DMesh", + "PromptForRodin", + "RodinImage3D", + "RodinMultipleImage3D", + "RodinText3D" + ], + { + "title_aux": "ComfyUI-Rodin" + } + ], + "https://github.com/Raykosan/ComfyUI_RS-SaturationNode": [ + [ + "RS_SaturationSwitch" + ], + { + "title_aux": "ComfyUI_RS-SaturationNode" + } + ], + "https://github.com/Raykosan/ComfyUI_RaykoStudio": [ + [ + "RS_RusTextOverlay" + ], + { + "title_aux": "ComfyUI_RaykoStudio" + } + ], + "https://github.com/RaymondProduction/comfyui-zerna-pack": [ + [ + "CLIPDynamicPromptEncoder //Zerna Pack", + "DynamicPromptInjector //Zerna Pack", + "LastImage //Zerna Pack", + "UnzipPrompt //Zerna Pack" + ], + { + "author": "Raymond", + "description": "A set of nodes for batch processing of text and images.", + "nickname": "Zerna Pack", + "title": "Zerna Pack", + "title_aux": "Zerna Pack" + } + ], + "https://github.com/ReBeating/ComfyUI-Artist-Selector": [ + [ + "LoadArtistTag" + ], + { + "title_aux": "ComfyUI-Artist-Selector" + } + ], + "https://github.com/Reithan/negative_rejection_steering": [ + [ + "NRS" + ], + { + "title_aux": "Negative Rejection Steering" + } + ], + "https://github.com/RenderRift/ComfyUI-RenderRiftNodes": [ + [ + "AnalyseMetadata", + "DateIntegerNode", + "DisplayMetaOptions", + "LoadImageWithMeta", + "MetadataOverlayNode", + "VideoPathMetaExtraction" + ], + { + "title_aux": "ComfyUI-RenderRiftNodes" + } + ], + "https://github.com/RhizoNymph/ComfyUI-CLIPSlider": [ + [ + "CLIPSlider" + ], + { + "title_aux": "ComfyUI-CLIPSlider" + } + ], + "https://github.com/RhizoNymph/ComfyUI-ColorWheel": [ + [ + "AccurateColorWheelNode" + ], + { + "title_aux": "ComfyUI-ColorWheel" + } + ], + "https://github.com/RhizoNymph/ComfyUI-Latte": [ + [ + "LatteVideoGenerator" + ], + { + "title_aux": "ComfyUI-Latte" + } + ], + "https://github.com/RiceRound/ComfyUI_CryptoCat": [ + [ + "CryptoCatImage", + "DecodeCryptoNode", + "ExcuteCryptoNode", + "RandomSeedNode", + "SaveCryptoBridgeNode", + "SaveCryptoNode" + ], + { + "title_aux": "ComfyUI Compression and Encryption Node" + } + ], + "https://github.com/RiceRound/ComfyUI_RiceRound": [ + [ + "RiceRoundAdvancedChoiceNode", + "RiceRoundBooleanNode", + "RiceRoundDecryptNode", + "RiceRoundDownloadImageAndMaskNode", + "RiceRoundDownloadImageNode", + "RiceRoundDownloadMaskNode", + "RiceRoundEncryptNode", + "RiceRoundFloatNode", + "RiceRoundImageBridgeNode", + "RiceRoundImageNode", + "RiceRoundImageUrlNode", + "RiceRoundInputTextNode", + "RiceRoundIntNode", + "RiceRoundMaskBridgeNode", + "RiceRoundOutputBooleanNode", + "RiceRoundOutputFloatNode", + "RiceRoundOutputImageBridgeNode", + "RiceRoundOutputImageNode", + "RiceRoundOutputIntNode", + "RiceRoundOutputMaskBridgeNode", + "RiceRoundOutputTextNode", + "RiceRoundRandomSeedNode", + "RiceRoundSimpleChoiceNode", + "RiceRoundSimpleImageNode", + "RiceRoundStrToBooleanNode", + "RiceRoundStrToFloatNode", + "RiceRoundStrToIntNode", + "RiceRoundUploadImageNode" + ], + { + "title_aux": "RiceRound Cloud Node" + } + ], + "https://github.com/Rinsanga1/comfyui-florence2xy": [ + [ + "Florence2toCoordinatesButxy", + "LoadImageWithName" + ], + { + "title_aux": "comfyui-florence2xy" + } + ], + "https://github.com/RodrigoSKohl/ComfyUI-Panoramic-ImgStitcher": [ + [ + "Image Stitching Node" + ], + { + "title_aux": "Panoramic Image Stitcher" + } + ], + "https://github.com/RodrigoSKohl/InteriorDesign-for-ComfyUI": [ + [ + "Control Items", + "Image Normalize", + "Interior Design Segmentator" + ], + { + "title_aux": "Interior Design for Comfyui" + } + ], + "https://github.com/RodrigoSKohl/comfyui-tryoff-anyone": [ + [ + "TryOffAnyoneNode" + ], + { + "title_aux": "TryOff Anyone" + } + ], + "https://github.com/RomanKuschanow/ComfyUI-Advanced-Latent-Control": [ + [ + "LatentAddTransform", + "LatentInterpolateTransform", + "LatentMirror", + "LatentNormalize", + "LatentShift", + "MirrorTransform", + "MultiplyTransform", + "OffsetCombine", + "OneTimeLatentAddTransform", + "OneTimeLatentInterpolateTransform", + "OneTimeMirrorTransform", + "OneTimeMultiplyTransform", + "OneTimeShiftTransform", + "ShiftTransform", + "TransformHijack", + "TransformOffset", + "TransformSampler", + "TransformSamplerAdvanced", + "TransformsCombine" + ], + { + "title_aux": "Advanced Latent Control" + } + ], + "https://github.com/Ron-Digital/ComfyUI-SceneGenerator": [ + [ + "Scene Generator" + ], + { + "title_aux": "ComfyUI-SceneGenerator" + } + ], + "https://github.com/Runware/ComfyUI-Runware": [ + [ + "Runware API Manager", + "Runware Background Removal", + "Runware ControlNet", + "Runware ControlNet Combine", + "Runware ControlNet PreProcessor", + "Runware DeepCache", + "Runware Embedding Search", + "Runware Embeddings Combine", + "Runware IPAdapter", + "Runware IPAdapters Combine", + "Runware Image Caption", + "Runware Image Inference", + "Runware Image Masking", + "Runware Image Upscaler", + "Runware Imagen Inference", + "Runware Kontext Inference", + "Runware Lora Combine", + "Runware Lora Search", + "Runware Model Search", + "Runware Multi Inference", + "Runware Outpaint", + "Runware PhotoMaker V2", + "Runware Reference Images", + "Runware Refiner", + "Runware TeaCache", + "Runware VAE Search" + ], + { + "title_aux": "Runware.ai ComfyUI Inference API Integration" + } + ], + "https://github.com/Ryuukeisyou/comfyui_face_parsing": [ + [ + "BBoxDecompose(FaceParsing)", + "BBoxDetect(FaceParsing)", + "BBoxDetectorLoader(FaceParsing)", + "BBoxListItemSelect(FaceParsing)", + "BBoxResize(FaceParsing)", + "ColorAdjust(FaceParsing)", + "FaceParse(FaceParsing)", + "FaceParsingModelLoader(FaceParsing)", + "FaceParsingProcessorLoader(FaceParsing)", + "FaceParsingResultsParser(FaceParsing)", + "GuidedFilter(FaceParsing)", + "ImageCropWithBBox(FaceParsing)", + "ImageCropWithBBoxList(FaceParsing)", + "ImageInsertWithBBox(FaceParsing)", + "ImageListSelect(FaceParsing)", + "ImagePadWithBBox(FaceParsing)", + "ImageResizeCalculator(FaceParsing)", + "ImageResizeWithBBox(FaceParsing)", + "ImageSize(FaceParsing)", + "LatentCropWithBBox(FaceParsing)", + "LatentInsertWithBBox(FaceParsing)", + "LatentSize(FaceParsing)", + "MaskBatchComposite(FaceParsing)", + "MaskBlackOut(FaceParsing)", + "MaskBorderDissolve(FaceParsing)", + "MaskBorderDissolveAdvanced(FaceParsing)", + "MaskComposite(FaceParsing)", + "MaskCropWithBBox(FaceParsing)", + "MaskInsertWithBBox(FaceParsing)", + "MaskListSelect(FaceParsing)", + "MaskToBBoxList(FaceParsing)", + "SkinDetectTraditional(FaceParsing)" + ], + { + "title_aux": "comfyui_face_parsing" + } + ], + "https://github.com/Ryuukeisyou/comfyui_io_helpers": [ + [ + "ImageLoadAsMaskByPath(IOHelpers)", + "ImageLoadByPath(IOHelpers)", + "ImageLoadFromBase64(IOHelpers)", + "ImageSaveAsBase64(IOHelpers)", + "ImageSaveToPath(IOHelpers)", + "TypeConversion(IOHelpers)", + "VHSFileNamesToStrings(IOHelpers)" + ], + { + "title_aux": "comfyui_io_helpers" + } + ], + "https://github.com/S4MUEL-404/ComfyUI-S4Tool-Image": [ + [ + "ImageBlendWithAlpha", + "ImageColor", + "ImageCombine", + "ImageCropToFit", + "ImageFromBase64", + "ImageMaskExpand", + "ImageOverlay", + "ImagePalette", + "ImagePalette631", + "ImagePrimaryColor", + "ImageTilingPattern", + "ImageToBase64" + ], + { + "title_aux": "ComfyUI S4Tool Image" + } + ], + "https://github.com/SEkINVR/ComfyUI-SaveAs": [ + [ + "ComfyUISaveAs" + ], + { + "title_aux": "ComfyUI SaveAS" + } + ], + "https://github.com/SKBv0/ComfyUI_SKBundle": [ + [ + "AspectRatioAdvanced", + "DisplayEverything", + "ImageComparer", + "LensFlare", + "MultiFloat", + "MultiTextNode", + "PaintPro", + "SKB_AnySwitch", + "SeamlessTexture", + "TextBox", + "TitlePlus" + ], + { + "title_aux": "ComfyUI SKBundle" + } + ], + "https://github.com/SLAPaper/ComfyUI-Image-Selector": [ + [ + "ImageDuplicator", + "ImageSelector", + "LatentDuplicator", + "LatentSelector" + ], + { + "title_aux": "ComfyUI-Image-Selector" + } + ], + "https://github.com/SOELexicon/ComfyUI-LexMSDBNodes": [ + [ + "MSSqlSelectNode", + "MSSqlTableNode" + ], + { + "title_aux": "LexMSDBNodes" + } + ], + "https://github.com/SOELexicon/ComfyUI-LexTools": [ + [ + "AesthetlcScoreSorter", + "AgeClassifierNode", + "ArtOrHumanClassifierNode", + "CalculateAestheticScore", + "DocumentClassificationNode", + "FoodCategoryClassifierNode", + "ImageAspectPadNode", + "ImageCaptioning", + "ImageFilterByFloatScoreNode", + "ImageFilterByIntScoreNode", + "ImageQualityScoreNode", + "ImageRankingNode", + "ImageScaleToMin", + "LoadAesteticModel", + "MD5ImageHashNode", + "NSFWClassifierNode", + "SamplerPropertiesNode", + "ScoreConverterNode", + "SeedIncrementerNode", + "SegformerNode", + "SegformerNodeMasks", + "SegformerNodeMergeSegments", + "StepCfgIncrementNode", + "WatermarkDetectionNode" + ], + { + "title_aux": "ComfyUI-LexTools" + } + ], + "https://github.com/SS-snap/ComfyUI-Ad_scheduler": [ + [ + "AD_Scheduler" + ], + { + "title_aux": "ComfyUI-Ad-scheduler" + } + ], + "https://github.com/SS-snap/ComfyUI-LBW_flux": [ + [ + "LoraBlockWeight_Flux" + ], + { + "title_aux": "ComfyUI-LBW_flux" + } + ], + "https://github.com/SS-snap/ComfyUI-Snap_Processing": [ + [ + "AreaCalculator", + "PyQtCanvasNode", + "Snapload" + ], + { + "title_aux": "Snap Processing for Comfyui" + } + ], + "https://github.com/SS-snap/Comfyui_SSsnap_pose-Remapping": [ + [ + "ApplyPoseDiff", + "CalcScaledPoseDiff", + "PoseDiffCalculator" + ], + { + "title_aux": "Comfyui_SSsnap_pose-Remapping" + } + ], + "https://github.com/SXQBW/ComfyUI-Qwen": [ + [ + "Qwen2_Chat_Zho", + "Qwen2_ModelLoader_Zho", + "Qwen2_Zho" + ], + { + "title_aux": "ComfyUI-Qwen" + } + ], + "https://github.com/SXQBW/ComfyUI-Qwen-Omni": [ + [ + "QwenOmniCombined", + "VideoUploader" + ], + { + "title_aux": "ComfyUI-Qwen-Omni" + } + ], + "https://github.com/SXQBW/ComfyUI-Qwen-VL": [ + [ + "QwenVisionParser" + ], + { + "title_aux": "ComfyUI-Qwen-VL" + } + ], + "https://github.com/SamKhoze/ComfyUI-DeepFuze": [ + [ + "DeepFuze Save", + "DeepFuzeAdavance", + "DeepFuzeFaceSwap", + "DeepfuzePreview", + "LLM_node", + "PlayBackAudio", + "TTS_generation" + ], + { + "title_aux": "DeepFuze" + } + ], + "https://github.com/SamTyurenkov/comfyui_chatgpt": [ + [ + "ChatGPTImageGenerationNode", + "ImageToBase64" + ], + { + "title_aux": "comfyui_chatgpt" + } + ], + "https://github.com/San4itos/ComfyUI-Save-Images-as-Video": [ + [ + "SaveFramesToVideoFFmpeg_san4itos" + ], + { + "title_aux": "Save Images to Video (FFmpeg) for ComfyUI" + } + ], + "https://github.com/SanDiegoDude/ComfyUI-DeepStereo": [ + [ + "ColorPickerNode", + "DepthMapProcessor", + "ImageEffectsTransformer", + "ImageResizeAndTransform", + "MiDaSDepthEstimator", + "ProceduralTextureGenerator", + "RandomDotStereogramGenerator", + "RandomNoiseGenerator", + "StereogramGenerator", + "TextureTransformer" + ], + { + "title_aux": "ComfyUI-DeepStereo" + } + ], + "https://github.com/SanDiegoDude/ComfyUI-Kontext-API": [ + [ + "FalKontextMaxMultiImageNode", + "KontextAPINode" + ], + { + "title_aux": "ComfyUI-Kontext-API" + } + ], + "https://github.com/SanDiegoDude/ComfyUI-SaveAudioMP3": [ + [ + "SaveAudioMP3" + ], + { + "title_aux": "ComfyUI-SaveAudioMP3" + } + ], + "https://github.com/Santodan/santodan-custom-nodes-comfyui": [ + [ + "LoRACachePreloader", + "RandomLoRACustom", + "RandomLoRAFolder" + ], + { + "title_aux": "Santodan Random LoRA Node" + } + ], + "https://github.com/SayanoAI/Comfy-RVC": [ + [ + "Any2ListNode", + "AudioBatchValueNode", + "AudioInfoNode", + "AudioTranscriptionNode", + "BatchedTranscriptionEncoderNode", + "DownloadAudio", + "ImageRepeatInterleavedNode", + "LatentRepeatInterleavedNode", + "List2AnyNode", + "LoadHubertModel", + "LoadPitchExtractionParams", + "LoadRVCModelNode", + "LoadWhisperModelNode", + "MergeAudioNode", + "MergeImageBatches", + "MergeLatentBatches", + "MuseAudioFeatureExtractionNode", + "MuseImageFeatureExtractionNode", + "MuseTalkNode", + "ProcessAudioNode", + "RVC-Studio.LoadAudio", + "RVC-Studio.PreviewAudio", + "RVCNode", + "RVCProcessDatasetNode", + "RVCTrainModelNode", + "RVCTrainParamsNode", + "SimpleMathNode", + "SliceNode", + "SortImagesNode", + "UVR5Node", + "ZipNode" + ], + { + "title_aux": "Comfy-RVC" + } + ], + "https://github.com/Sayene/comfyui-base64-to-image-size": [ + [ + "LoadImageFromBase64Size" + ], + { + "title_aux": "comfyui-base64-to-image-size" + } + ], + "https://github.com/Scholar01/ComfyUI-Keyframe": [ + [ + "KeyframeApply", + "KeyframeInterpolationPart", + "KeyframePart" + ], + { + "title_aux": "SComfyUI-Keyframe" + } + ], + "https://github.com/Scorpinaus/ComfyUI-DiffusersLoader": [ + [ + "CombinedDiffusersLoader", + "DiffusersClipLoader", + "DiffusersUNETLoader", + "DiffusersVAELoader" + ], + { + "title_aux": "ComfyUI-DiffusersLoader" + } + ], + "https://github.com/ScreamingHawk/comfyui-ollama-prompt-encode": [ + [ + "OllamaCLIPTextEncode", + "OllamaPromptGenerator" + ], + { + "author": "Michael Standen", + "description": "Use AI to generate prompts and perform CLIP text encoding", + "nickname": "Ollama Prompt Encode", + "title": "Ollama Prompt Encode", + "title_aux": "Ollama Prompt Encode" + } + ], + "https://github.com/SeaArtLab/ComfyUI-Long-CLIP": [ + [ + "LongCLIPTextEncodeFlux", + "SeaArtLongClip", + "SeaArtLongXLClipMerge" + ], + { + "title_aux": "ComfyUI-Long-CLIP" + } + ], + "https://github.com/SeanScripts/ComfyUI-PixtralLlamaMolmoVision": [ + [ + "AutoVisionModelLoader", + "JoinString", + "LlamaVisionGenerateText", + "LlamaVisionModelLoader", + "MolmoGenerateText", + "MolmoModelLoader", + "ParseBoundingBoxes", + "ParsePoints", + "PixtralGenerateText", + "PixtralImageEncode", + "PixtralModelLoader", + "PixtralTextEncode", + "PlotPoints", + "RegexFindAll", + "RegexSearch", + "RegexSplitString", + "RegexSubstitution", + "SelectIndex", + "SliceList" + ], + { + "title_aux": "ComfyUI-PixtralLlamaMolmoVision" + } + ], + "https://github.com/SeanScripts/ComfyUI-Unload-Model": [ + [ + "UnloadAllModels", + "UnloadModel" + ], + { + "title_aux": "ComfyUI-Unload-Model" + } + ], + "https://github.com/SeargeDP/ComfyUI_Searge_LLM": [ + [ + "Searge_AdvOptionsNode", + "Searge_LLM_Node", + "Searge_Output_Node" + ], + { + "title_aux": "Searge-LLM for ComfyUI v1.0" + } + ], + "https://github.com/SeargeDP/SeargeSDXL": [ + [ + "SeargeAdvancedParameters", + "SeargeCheckpointLoader", + "SeargeConditionMixing", + "SeargeConditioningMuxer2", + "SeargeConditioningMuxer5", + "SeargeConditioningParameters", + "SeargeControlnetAdapterV2", + "SeargeControlnetModels", + "SeargeCustomAfterUpscaling", + "SeargeCustomAfterVaeDecode", + "SeargeCustomPromptMode", + "SeargeDebugPrinter", + "SeargeEnablerInputs", + "SeargeFloatConstant", + "SeargeFloatMath", + "SeargeFloatPair", + "SeargeFreeU", + "SeargeGenerated1", + "SeargeGenerationParameters", + "SeargeHighResolution", + "SeargeImage2ImageAndInpainting", + "SeargeImageAdapterV2", + "SeargeImageSave", + "SeargeImageSaving", + "SeargeInput1", + "SeargeInput2", + "SeargeInput3", + "SeargeInput4", + "SeargeInput5", + "SeargeInput6", + "SeargeInput7", + "SeargeIntegerConstant", + "SeargeIntegerMath", + "SeargeIntegerPair", + "SeargeIntegerScaler", + "SeargeLatentMuxer3", + "SeargeLoraLoader", + "SeargeLoras", + "SeargeMagicBox", + "SeargeModelSelector", + "SeargeOperatingMode", + "SeargeOutput1", + "SeargeOutput2", + "SeargeOutput3", + "SeargeOutput4", + "SeargeOutput5", + "SeargeOutput6", + "SeargeOutput7", + "SeargeParameterProcessor", + "SeargePipelineStart", + "SeargePipelineTerminator", + "SeargePreviewImage", + "SeargePromptAdapterV2", + "SeargePromptCombiner", + "SeargePromptStyles", + "SeargePromptText", + "SeargeSDXLBasePromptEncoder", + "SeargeSDXLImage2ImageSampler", + "SeargeSDXLImage2ImageSampler2", + "SeargeSDXLPromptEncoder", + "SeargeSDXLRefinerPromptEncoder", + "SeargeSDXLSampler", + "SeargeSDXLSampler2", + "SeargeSDXLSamplerV3", + "SeargeSamplerAdvanced", + "SeargeSamplerInputs", + "SeargeSaveFolderInputs", + "SeargeSeparator", + "SeargeStylePreprocessor", + "SeargeTextInputV2", + "SeargeUpscaleModelLoader", + "SeargeUpscaleModels", + "SeargeVAELoader" + ], + { + "title_aux": "SeargeSDXL" + } + ], + "https://github.com/Seedsa/Fooocus_Nodes": [ + [ + "BasicScheduler", + "CLIPLoader", + "CLIPMergeSimple", + "CLIPSave", + "CLIPSetLastLayer", + "CLIPTextEncode", + "CLIPTextEncodeSDXL", + "CLIPTextEncodeSDXLRefiner", + "CLIPVisionEncode", + "CLIPVisionLoader", + "Canny", + "CheckpointLoader", + "CheckpointLoaderSimple", + "CheckpointSave", + "ConditioningAverage", + "ConditioningCombine", + "ConditioningConcat", + "ConditioningSetArea", + "ConditioningSetAreaPercentage", + "ConditioningSetMask", + "ConditioningSetTimestepRange", + "ConditioningZeroOut", + "ControlNetApply", + "ControlNetApplyAdvanced", + "ControlNetLoader", + "CropMask", + "DiffControlNetLoader", + "DiffusersLoader", + "DualCLIPLoader", + "EmptyImage", + "EmptyLatentImage", + "ExponentialScheduler", + "FeatherMask", + "FlipSigmas", + "Fooocus ApplyImagePrompt", + "Fooocus Controlnet", + "Fooocus Describe", + "Fooocus Expansion", + "Fooocus ImagePrompt", + "Fooocus Inpaint", + "Fooocus KSampler", + "Fooocus Loader", + "Fooocus LoraStack", + "Fooocus PipeOut", + "Fooocus PreKSampler", + "Fooocus Styles", + "Fooocus Upscale", + "Fooocus detailerFix", + "Fooocus negative", + "Fooocus positive", + "Fooocus preDetailerFix", + "Fooocus samLoaderPipe", + "Fooocus ultralyticsDetectorPipe", + "FreeU", + "FreeU_V2", + "GLIGENLoader", + "GLIGENTextBoxApply", + "GrowMask", + "HyperTile", + "HypernetworkLoader", + "ImageBatch", + "ImageBlend", + "ImageBlur", + "ImageColorToMask", + "ImageCompositeMasked", + "ImageCrop", + "ImageInvert", + "ImageOnlyCheckpointLoader", + "ImageOnlyCheckpointSave", + "ImagePadForOutpaint", + "ImageQuantize", + "ImageScale", + "ImageScaleBy", + "ImageScaleToTotalPixels", + "ImageSharpen", + "ImageToMask", + "ImageUpscaleWithModel", + "InpaintModelConditioning", + "InvertMask", + "JoinImageWithAlpha", + "KSampler", + "KSamplerAdvanced", + "KSamplerSelect", + "KarrasScheduler", + "LatentAdd", + "LatentBatch", + "LatentBatchSeedBehavior", + "LatentBlend", + "LatentComposite", + "LatentCompositeMasked", + "LatentCrop", + "LatentFlip", + "LatentFromBatch", + "LatentInterpolate", + "LatentMultiply", + "LatentRotate", + "LatentSubtract", + "LatentUpscale", + "LatentUpscaleBy", + "LoadImage", + "LoadImageMask", + "LoadLatent", + "LoraLoader", + "LoraLoaderModelOnly", + "MaskComposite", + "MaskToImage", + "ModelMergeAdd", + "ModelMergeBlocks", + "ModelMergeSimple", + "ModelMergeSubtract", + "ModelSamplingContinuousEDM", + "ModelSamplingDiscrete", + "PatchModelAddDownscale", + "PerpNeg", + "PhotoMakerEncode", + "PhotoMakerLoader", + "PolyexponentialScheduler", + "PorterDuffImageComposite", + "PreviewImage", + "RebatchImages", + "RebatchLatents", + "RepeatImageBatch", + "RepeatLatentBatch", + "RescaleCFG", + "SDTurboScheduler", + "SD_4XUpscale_Conditioning", + "SVD_img2vid_Conditioning", + "SamplerCustom", + "SamplerDPMPP_2M_SDE", + "SamplerDPMPP_SDE", + "SaveAnimatedPNG", + "SaveAnimatedWEBP", + "SaveImage", + "SaveLatent", + "SelfAttentionGuidance", + "SetLatentNoiseMask", + "SolidMask", + "SplitImageWithAlpha", + "SplitSigmas", + "StableZero123_Conditioning", + "StableZero123_Conditioning_Batched", + "StyleModelApply", + "StyleModelLoader", + "TomePatchModel", + "UNETLoader", + "UpscaleModelLoader", + "VAEDecode", + "VAEDecodeTiled", + "VAEEncode", + "VAEEncodeForInpaint", + "VAEEncodeTiled", + "VAELoader", + "VAESave", + "VPScheduler", + "VideoLinearCFGGuidance", + "unCLIPCheckpointLoader", + "unCLIPConditioning" + ], + { + "title_aux": "ComfyUI Fooocus Nodes" + } + ], + "https://github.com/Sekiun/ComfyUI-WebpToPNGSequence": [ + [ + "WebpToPngSequence" + ], + { + "title_aux": "ComfyUI-WebpToPNGSequence" + } + ], + "https://github.com/Semper-Sursum/HF-Flux-ComfyUI": [ + [ + "HuggingFaceTextToImage" + ], + { + "title_aux": "HF-Flux-ComfyUI" + } + ], + "https://github.com/ServiceStack/comfy-asset-downloader": [ + [ + "AssetDownloader" + ], + { + "title_aux": "ComfyUI Asset Downloader" + } + ], + "https://github.com/Shadetail/ComfyUI_Eagleshadow": [ + [ + "Batch 12 Images", + "Detect Transparency", + "Fix Checkpoint Name", + "ImageLinearGammaCompositeMasked", + "KSampler Same Noise", + "MaskGlow", + "OffsetImage", + "Round Float to String", + "SaveImageToFolder", + "Select ControlNet", + "Select Model 20", + "Simple Load Image Batch" + ], + { + "title_aux": "Eagleshadow Custom Nodes" + } + ], + "https://github.com/Shakker-Labs/ComfyUI-IPAdapter-Flux": [ + [ + "ApplyIPAdapterFlux", + "ApplyIPAdapterFluxAdvanced", + "IPAdapterFluxLoader", + "IPAdapterFluxLoaderAdvanced" + ], + { + "title_aux": "ComfyUI-IPAdapter-Flux" + } + ], + "https://github.com/Shannooty/ComfyUI-Timer-Nodes": [ + [ + "TimerStart", + "TimerStringConcat" + ], + { + "title_aux": "ComfyUI Timer Nodes" + } + ], + "https://github.com/SherryXieYuchen/ComfyUI-Image-Inpainting": [ + [ + "CropImageByRect", + "INPAINT_ColorCorrection", + "INPAINT_CropImage", + "INPAINT_InpaintingWithModel", + "INPAINT_LoadModel", + "INPAINT_PasteBackCropImage", + "INPAINT_VAEDecode", + "INPAINT_VAEEncode", + "ImagePostprocess", + "ImagePreprocess" + ], + { + "title_aux": "ComfyUI-Image-Inpainting" + } + ], + "https://github.com/Shiba-2-shiba/ComfyUI-Magcache-for-SDXL": [ + [ + "MagCacheSDXL", + "MagCacheSDXLCalibration" + ], + { + "title_aux": "ComfyUI-Magcache-for-SDXL" + } + ], + "https://github.com/Shiba-2-shiba/ComfyUI_DiffusionModel_fp8_converter": [ + [ + "ClipFP8ConverterNode", + "ModelFP8ConverterNode" + ], + { + "title_aux": "ComfyUI_DiffusionModel_fp8_converter" + } + ], + "https://github.com/Shiba-2-shiba/ComfyUI_FreeU_V2_timestepadd": [ + [ + "FreeU_V2_timestepadd" + ], + { + "title_aux": "ComfyUI_FreeU_V2_timestepadd" + } + ], + "https://github.com/Shiba-2-shiba/comfyui-color-ascii-art-node": [ + [ + "ASCIIArtNodeV3" + ], + { + "title_aux": "ComfyUI-color-ascii-art-node" + } + ], + "https://github.com/Shibiko-AI/ShibikoAI-ComfyUI-Tools": [ + [ + "BboxInsertImage", + "BboxSplit", + "Cascade", + "ImageFilters", + "Luts", + "LutsAdvanced", + "RemoveAreaByMask", + "RemoveBackground", + "SeedGenerator", + "Waifu2x" + ], + { + "title_aux": "Shibiko AI ComfyUI Tools" + } + ], + "https://github.com/ShinChven/sc-comfy-nodes": [ + [ + "Rescale Node", + "Width & Height" + ], + { + "title_aux": "ShinChven's Custom Nodes Package" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-Apply_Style_Model_Adjust": [ + [ + "ApplyStyleModelAdjust" + ], + { + "title_aux": "Apply Style Model Adjust for ComfyUI" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-AstralAnimator": [ + [ + "AstralAnimator" + ], + { + "title_aux": "ComfyUI-AstralAnimator" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-Audio_Quality_Enhancer": [ + [ + "AudioQualityEffects", + "AudioQualityEnhancer" + ], + { + "title_aux": "ComfyUI-Audio_Quality_Enhancer" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-CohernetVideoSampler": [ + [ + "CohernetVideoSampler" + ], + { + "title_aux": "ComfyUI Coherent Video Sampler Node" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-DeepSeek_R1-Chat": [ + [ + "ComfyUIDeepSeekChat" + ], + { + "title_aux": "ComfyUI DeepSeek_R1 Chat Node" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-EmptyHunyuanLatent": [ + [ + "EmptyHunyuanLatentForImage", + "EmptyHunyuanLatentForVideo" + ], + { + "title_aux": "ComfyUI-EmptyHunyuanLatent" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-FramePackWrapper_Plus": [ + [ + "DownloadAndLoadFramePackModel", + "FramePackFindNearestBucket", + "FramePackLoraSelect", + "FramePackSampler", + "FramePackSampler_F1", + "FramePackTimestampedTextEncode", + "FramePackTorchCompileSettings", + "LoadFramePackModel" + ], + { + "title_aux": "ComfyUI-FramePackWrapper_Plus" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-FreeMemory": [ + [ + "FreeMemoryCLIP", + "FreeMemoryImage", + "FreeMemoryLatent", + "FreeMemoryModel", + "FreeMemoryString" + ], + { + "title_aux": "ComfyUI-FreeMemory" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-FreeVC_wrapper": [ + [ + "FreeVC Voice Conversion" + ], + { + "title_aux": "ComfyUI-FreeVC_wrapper" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-Gemini_Flash_2.0_Exp": [ + [ + "AudioRecorder", + "GeminiFlash" + ], + { + "title_aux": "ComfyUI-Gemini_Flash_2.0_Exp" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-Gemini_TTS": [ + [ + "GeminiTTS" + ], + { + "title_aux": "ComfyUI-Gemini_TTS" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-HunyuanVideoSamplerSave": [ + [ + "EmptyVideoLatentForHunyuan", + "HunyuanVideoSamplerSave", + "ImageMotionInfluance", + "ResizeImageForHunyuan" + ], + { + "title_aux": "ComfyUI-HunyuanVideoSamplerSave" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-HunyuanVideoStyler": [ + [ + "HunyuanVideoStyler" + ], + { + "title_aux": "ComfyUI-HunyuanVideoStyler" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-ImageMotionGuider": [ + [ + "ImageMotionGuider" + ], + { + "title_aux": "ComfyUI-ImageMotionGuider" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-Janus_pro_vision": [ + [ + "UnifiedVisionAnalyzer", + "VisionModelLoader" + ], + { + "title_aux": "ComfyUI Janus Pro Vision" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-JoyHallo_wrapper": [ + [ + "JoyHallo_wrapper" + ], + { + "title_aux": "ComfyUI-JoyHallo_wrapper" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-LatentSyncWrapper": [ + [ + "LatentSyncNode", + "VideoLengthAdjuster" + ], + { + "title_aux": "ComfyUI-LatentSyncWrapper" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-Orpheus-TTS": [ + [ + "OrpheusAudioEffects", + "OrpheusGenerate", + "OrpheusModelLoader" + ], + { + "title_aux": "ComfyUI-Orpheus-TTS" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-PS_Flatten_Image": [ + [ + "FlattenImage" + ], + { + "title_aux": "ComfyUI-PS_Flatten_Image" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-PixArt_XL": [ + [ + "PA_BaseModelLoader_fromhub", + "PA_Generation" + ], + { + "title_aux": "ComfyUI-PixArt_XL" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-SVDResizer": [ + [ + "SVDRsizer" + ], + { + "title_aux": "ComfyUI-SVDResizer" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-ThinkSound_Wrapper": [ + [ + "ThinkSoundFeatureUtilsLoader", + "ThinkSoundModelLoader", + "ThinkSoundSampler" + ], + { + "title_aux": "ComfyUI-ThinkSound_Wrapper" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-Veo2-Experimental": [ + [ + "VeoTextToVideo", + "VeoToVHS", + "VeoVideoPreview" + ], + { + "title_aux": "ComfyUI-Veo2-Experimental" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-VideoUpscale_WithModel": [ + [ + "Free_Video_Memory", + "Video_Upscale_With_Model" + ], + { + "title_aux": "ComfyUI-VideoUpscale_WithModel" + } + ], + "https://github.com/ShmuelRonen/ComfyUI-WanVideoKsampler": [ + [ + "WanVideoKsampler" + ], + { + "title_aux": "ComfyUI-WanVideoKsampler" + } + ], + "https://github.com/ShmuelRonen/ComfyUI_ChatterBox_Voice": [ + [ + "ChatterBoxVoiceCapture", + "ChatterBoxVoiceTTS", + "ChatterBoxVoiceVC" + ], + { + "title_aux": "ComfyUI_ChatterBox_Voice" + } + ], + "https://github.com/ShmuelRonen/ComfyUI_Flux_1.1_RAW_API": [ + [ + "FluxPro11WithFinetune" + ], + { + "title_aux": "ComfyUI Flux 1.1 Ultra & Raw Node" + } + ], + "https://github.com/ShmuelRonen/ComfyUI_Gemini_Flash": [ + [ + "Gemini_Flash_002" + ], + { + "title_aux": "ComfyUI_Gemini_Flash" + } + ], + "https://github.com/ShmuelRonen/ComfyUI_Hedra": [ + [ + "HedraImageToVideo" + ], + { + "title_aux": "ComfyUI Hedra Node" + } + ], + "https://github.com/ShmuelRonen/ComfyUI_pixtral_large": [ + [ + "ComfyUIPixtralLarge", + "MultiImagesInput", + "preview_text" + ], + { + "title_aux": "ComfyUI Pixtral Large Extension" + } + ], + "https://github.com/ShmuelRonen/ComfyUI_pixtral_vision": [ + [ + "ComfyUIPixtralVision", + "MultiImagesInput", + "preview_text" + ], + { + "title_aux": "ComfyUI_pixtral_vision" + } + ], + "https://github.com/ShmuelRonen/ComfyUI_wav2lip": [ + [ + "LoadAudio", + "Wav2Lip" + ], + { + "title_aux": "Wav2Lip Node for ComfyUI" + } + ], + "https://github.com/ShmuelRonen/DJ_VideoAudioMixer": [ + [ + "DJ_VideoAudioMixer" + ], + { + "title_aux": "DJ_VideoAudioMixer" + } + ], + "https://github.com/ShmuelRonen/FluxKontextCreator": [ + [ + "FluxKontextCreator", + "FluxKontextCreatorExperimental" + ], + { + "title_aux": "Flux Kontext Creator for ComfyUI" + } + ], + "https://github.com/ShmuelRonen/comfyui-openai_fm": [ + [ + "OpenAIFMNode" + ], + { + "title_aux": "comfyui-openai_fm" + } + ], + "https://github.com/ShmuelRonen/google_moogle": [ + [ + "googletrans" + ], + { + "title_aux": "Google Moogle" + } + ], + "https://github.com/Shraknard/ComfyUI-Remover": [ + [ + "Remover" + ], + { + "title_aux": "ComfyUI-Remover" + } + ], + "https://github.com/Siberpone/lazy-pony-prompter": [ + [ + "LPP_Danbooru", + "LPP_Deleter", + "LPP_Derpibooru", + "LPP_E621", + "LPP_Loader_Danbooru", + "LPP_Loader_Derpibooru", + "LPP_Loader_E621", + "LPP_Saver" + ], + { + "title_aux": "Lazy Pony Prompter" + } + ], + "https://github.com/Siempreflaco/ComfyUI-NCNodes": [ + [ + "Load3DMesh", + "NCAudioRecorderNode", + "NCImageProcessor", + "NCIncrementINT", + "NCLineCounter" + ], + { + "title_aux": "ComfyUI-NCNodes" + } + ], + "https://github.com/Sieyalixnet/ComfyUI_Textarea_Loaders": [ + [ + "CheckPointLoader_Text", + "EmptyLatentImage_Text", + "LoRALoader_Text", + "LoadImage_Text" + ], + { + "title_aux": "ComfyUI_Textarea_Loaders" + } + ], + "https://github.com/SignalCha1n/comfyui-ComfySnap": [ + [ + "FaceAvoidRandomY", + "LowQualityDigitalLook", + "SnapBasicFilters", + "SnapTextOverlay" + ], + { + "title_aux": "Snap Style Nodes for ComfyUI" + } + ], + "https://github.com/SijieMei/ComfyUI-promptHistory": [ + [ + "PromptHistory" + ], + { + "title_aux": "ComfyUI-Prompt-History" + } + ], + "https://github.com/SimonHeese/ComfyUI_AnimationNodes/raw/refs/heads/main/animated_offset_pad.py": [ + [ + "AnimatedOffsetPadding" + ], + { + "title_aux": "ComfyUI_AnimationNodes" + } + ], + "https://github.com/Sinphaltimus/comfyui_fedcoms_node_pack": [ + [ + "EnhancedModelMetadataReader", + "ModelDataExtractor", + "ModelMetadataReader" + ], + { + "title_aux": "comfyui_fedcoms_node_pack" + } + ], + "https://github.com/SipherAGI/comfyui-animatediff": [ + [ + "AnimateDiffCombine", + "AnimateDiffLoraLoader", + "AnimateDiffModuleLoader", + "AnimateDiffSampler", + "AnimateDiffSlidingWindowOptions", + "ImageSizeAndBatchSize", + "LoadVideo" + ], + { + "title_aux": "AnimateDiff" + } + ], + "https://github.com/SlackinJack/asyncdiff_comfyui": [ + [ + "ADADSampler", + "ADControlNetLoader", + "ADIPAdapterLoader", + "ADLoraLoader", + "ADModelLoader", + "ADMultiLoraCombiner", + "ADPipelineConfig", + "ADSDSampler", + "ADSDUpscaleSampler", + "ADSVDSampler", + "ADSchedulerSelector" + ], + { + "title_aux": "asyncdiff_comfyui" + } + ], + "https://github.com/SlackinJack/distrifuser_comfyui": [ + [ + "DFPipelineConfig", + "DFSampler" + ], + { + "title_aux": "distrifuser_comfyui" + } + ], + "https://github.com/SleeeepyZhou/ComfyUI-CNtranslator": [ + [ + "CNtranslator", + "TextShow" + ], + { + "title_aux": "CNtranslator" + } + ], + "https://github.com/Slickytail/ComfyUI-InstantX-IPAdapter-SD3": [ + [ + "ApplyIPAdapterSD3", + "IPAdapterSD3Loader" + ], + { + "title_aux": "ComfyUI-InstantX-IPAdapter-SD3" + } + ], + "https://github.com/Slickytail/ComfyUI-RegionalAdaptiveSampling": [ + [ + "RegionalAdaptiveSampling" + ], + { + "title_aux": "ComfyUI-RegionalAdaptiveSampling" + } + ], + "https://github.com/Smirnov75/ComfyUI-mxToolkit": [ + [ + "mxSeed", + "mxSlider", + "mxSlider2D", + "mxStop" + ], + { + "title_aux": "ComfyUI-mxToolkit" + } + ], + "https://github.com/Smuzzies/comfyui_meme_maker": [ + [ + "MemeMaker" + ], + { + "title_aux": "comfyui_meme_maker" + } + ], + "https://github.com/SoftMeng/ComfyUI-DeepCache-Fix": [ + [ + "DeepCache_Fix" + ], + { + "title_aux": "ComfyUI-DeepCache-Fix" + } + ], + "https://github.com/SoftMeng/ComfyUI-PIL": [ + [ + "PIL Effects (Mexx)", + "PIL Merge Image (Mexx)", + "PIL Remove Black Dots (Mexx)", + "PIL TITLE (Mexx)" + ], + { + "title_aux": "ComfyUI-PIL" + } + ], + "https://github.com/SoftMeng/ComfyUI_ImageToText": [ + [ + "ComfyUI_ImageToText" + ], + { + "title_aux": "ComfyUI_ImageToText" + } + ], + "https://github.com/SoftMeng/ComfyUI_Mexx_Poster": [ + [ + "ComfyUI_Mexx_Poster" + ], + { + "title_aux": "ComfyUI_Mexx_Poster" + } + ], + "https://github.com/SoftMeng/ComfyUI_Mexx_Styler": [ + [ + "MexxSDXLPromptStyler", + "MexxSDXLPromptStylerAdvanced" + ], + { + "title_aux": "ComfyUI_Mexx_Styler" + } + ], + "https://github.com/SongGuo11/ComfyUI-SaveAnything-SG11": [ + [ + "SG11_SaveAnything" + ], + { + "title_aux": "ComfyUI SaveAnything Node (SG11)" + } + ], + "https://github.com/Sorcerio/MBM-Music-Visualizer": [ + [ + "id", + "mbmAudioFeatureCalculator", + "mbmAudioLoader", + "mbmImageConcat", + "mbmPromptSequenceBuilder", + "mbmPromptSequenceBuilderAdv", + "mbmPromptSequenceInterpolator", + "mbmPromptSequenceLoader", + "mbmPromptSequenceRenderer" + ], + { + "title_aux": "MBM's Music Visualizer" + } + ], + "https://github.com/SozeInc/ComfyUI-Mobile": [ + [ + "Mobile_Settings_Launcher_Data", + "Send Notification (Mobile)", + "Settings Launcher (Mobile)", + "Ultimate Concat (Mobile)" + ], + { + "title_aux": "ComfyUI-Mobile" + } + ], + "https://github.com/SozeInc/ComfyUI_Soze": [ + [ + "Alpha Crop and Position Image", + "CSV Reader", + "CSV Reader X Checkpoint", + "CSV Reader X Lora", + "CSV Writer", + "Checkpoint File Loader", + "ComfyDeploy API Node Image-Prompt 2 Image", + "Empty Images", + "Get Most Common Image Colors", + "Image Batch Process Switch", + "Image List Loader", + "Image Overlay", + "Is Input In List", + "Load Image", + "Load Image From URL", + "Load Images From Folder", + "Lora File Loader", + "Multiline Concatenate Strings", + "Output Filename", + "Pad Mask", + "Prompt Cache", + "Range(Num Steps) - Float", + "Range(Num Steps) - Int", + "Range(Step) - Float", + "Range(Step) - Int", + "Shrink Image", + "Special Character Replacer", + "Text Contains (Return Bool)", + "Text Contains (Return String)", + "Variable Image Builder", + "XY Any", + "XY Image" + ], + { + "title_aux": "Quality of Life Nodes for ComfyUI" + } + ], + "https://github.com/SparknightLLC/ComfyUI-ConditionalInterrupt": [ + [ + "Conditional Interrupt" + ], + { + "title_aux": "ComfyUI-ConditionalInterrupt" + } + ], + "https://github.com/SparknightLLC/ComfyUI-GPENO": [ + [ + "GPENO Face Restoration" + ], + { + "author": "yangxy (yangtao9009@gmail.com)", + "title_aux": "ComfyUI-GPENO" + } + ], + "https://github.com/SparknightLLC/ComfyUI-ImageAutosize": [ + [ + "ImageAutosize" + ], + { + "title_aux": "ComfyUI-ImageAutosize" + } + ], + "https://github.com/SparknightLLC/ComfyUI-ImageAutotone": [ + [ + "ImageAutotone" + ], + { + "title_aux": "ComfyUI-ImageAutotone" + } + ], + "https://github.com/SparknightLLC/ComfyUI-LatentClamp": [ + [ + "LatentClamp" + ], + { + "title_aux": "ComfyUI-LatentClamp" + } + ], + "https://github.com/SparknightLLC/ComfyUI-MaskArbiter": [ + [ + "GroundingDinoSAM2SegmentList", + "MaskArbiter" + ], + { + "title_aux": "ComfyUI-MaskArbiter" + } + ], + "https://github.com/SparknightLLC/ComfyUI-WeightedRandomChoice": [ + [ + "WeightedRandomChoice" + ], + { + "title_aux": "ComfyUI-WeightedRandomChoice" + } + ], + "https://github.com/SpenserCai/ComfyUI-FunAudioLLM": [ + [ + "CosyVoiceCrossLingualNode", + "CosyVoiceInstructNode", + "CosyVoiceLoadSpeakerModelFromUrlNode", + "CosyVoiceLoadSpeakerModelNode", + "CosyVoiceSFTNode", + "CosyVoiceSaveSpeakerModelNode", + "CosyVoiceZeroShotNode", + "SenseVoiceNode" + ], + { + "title_aux": "ComfyUI-FunAudioLLM" + } + ], + "https://github.com/Stability-AI/ComfyUI-SAI_API": [ + [ + "Stability Conservative Upscale", + "Stability Control Sketch", + "Stability Control Structure", + "Stability Control Style", + "Stability Creative Upscale", + "Stability Erase", + "Stability Fast Upscale", + "Stability Image Core", + "Stability Image Ultra", + "Stability Inpainting", + "Stability Outpainting", + "Stability Remove Background", + "Stability Replace Background and Relight", + "Stability SD3", + "Stability Search And Recolor", + "Stability Search and Replace" + ], + { + "title_aux": "Stability API nodes for ComfyUI" + } + ], + "https://github.com/Stability-AI/stability-ComfyUI-nodes": [ + [ + "ColorBlend", + "ControlLoraSave", + "GetImageSize" + ], + { + "title_aux": "stability-ComfyUI-nodes" + } + ], + "https://github.com/StableLlama/ComfyUI-basic_data_handling": [ + [ + "Basic data handling: Boolean And", + "Basic data handling: Boolean Nand", + "Basic data handling: Boolean Nor", + "Basic data handling: Boolean Not", + "Basic data handling: Boolean Or", + "Basic data handling: Boolean Xor", + "Basic data handling: CastToBoolean", + "Basic data handling: CastToDict", + "Basic data handling: CastToFloat", + "Basic data handling: CastToInt", + "Basic data handling: CastToList", + "Basic data handling: CastToSet", + "Basic data handling: CastToString", + "Basic data handling: CompareLength", + "Basic data handling: ContinueFlow", + "Basic data handling: DataListAll", + "Basic data handling: DataListAny", + "Basic data handling: DataListAppend", + "Basic data handling: DataListContains", + "Basic data handling: DataListCount", + "Basic data handling: DataListCreate", + "Basic data handling: DataListCreateFromBoolean", + "Basic data handling: DataListCreateFromFloat", + "Basic data handling: DataListCreateFromInt", + "Basic data handling: DataListCreateFromString", + "Basic data handling: DataListEnumerate", + "Basic data handling: DataListExtend", + "Basic data handling: DataListFilter", + "Basic data handling: DataListFilterSelect", + "Basic data handling: DataListFirst", + "Basic data handling: DataListGetItem", + "Basic data handling: DataListIndex", + "Basic data handling: DataListInsert", + "Basic data handling: DataListLast", + "Basic data handling: DataListLength", + "Basic data handling: DataListMax", + "Basic data handling: DataListMin", + "Basic data handling: DataListPop", + "Basic data handling: DataListPopRandom", + "Basic data handling: DataListRange", + "Basic data handling: DataListRemove", + "Basic data handling: DataListReverse", + "Basic data handling: DataListSetItem", + "Basic data handling: DataListSlice", + "Basic data handling: DataListSort", + "Basic data handling: DataListSum", + "Basic data handling: DataListToList", + "Basic data handling: DataListToSet", + "Basic data handling: DataListZip", + "Basic data handling: DictCompare", + "Basic data handling: DictContainsKey", + "Basic data handling: DictCreate", + "Basic data handling: DictCreateFromBoolean", + "Basic data handling: DictCreateFromFloat", + "Basic data handling: DictCreateFromInt", + "Basic data handling: DictCreateFromItemsDataList", + "Basic data handling: DictCreateFromItemsList", + "Basic data handling: DictCreateFromLists", + "Basic data handling: DictCreateFromString", + "Basic data handling: DictExcludeKeys", + "Basic data handling: DictFilterByKeys", + "Basic data handling: DictFromKeys", + "Basic data handling: DictGet", + "Basic data handling: DictGetKeysValues", + "Basic data handling: DictGetMultiple", + "Basic data handling: DictInvert", + "Basic data handling: DictItems", + "Basic data handling: DictKeys", + "Basic data handling: DictLength", + "Basic data handling: DictMerge", + "Basic data handling: DictPop", + "Basic data handling: DictPopItem", + "Basic data handling: DictPopRandom", + "Basic data handling: DictRemove", + "Basic data handling: DictSet", + "Basic data handling: DictSetDefault", + "Basic data handling: DictUpdate", + "Basic data handling: DictValues", + "Basic data handling: Equal", + "Basic data handling: ExecutionOrder", + "Basic data handling: FloatAdd", + "Basic data handling: FloatAsIntegerRatio", + "Basic data handling: FloatCreate", + "Basic data handling: FloatDivide", + "Basic data handling: FloatDivideSafe", + "Basic data handling: FloatFromHex", + "Basic data handling: FloatHex", + "Basic data handling: FloatIsInteger", + "Basic data handling: FloatMultiply", + "Basic data handling: FloatPower", + "Basic data handling: FloatRound", + "Basic data handling: FloatSubtract", + "Basic data handling: FlowSelect", + "Basic data handling: ForceCalculation", + "Basic data handling: GreaterThan", + "Basic data handling: GreaterThanOrEqual", + "Basic data handling: IfElifElse", + "Basic data handling: IfElse", + "Basic data handling: IntAdd", + "Basic data handling: IntBitCount", + "Basic data handling: IntBitLength", + "Basic data handling: IntCreate", + "Basic data handling: IntCreateWithBase", + "Basic data handling: IntDivide", + "Basic data handling: IntDivideSafe", + "Basic data handling: IntFromBytes", + "Basic data handling: IntModulus", + "Basic data handling: IntMultiply", + "Basic data handling: IntPower", + "Basic data handling: IntSubtract", + "Basic data handling: IntToBytes", + "Basic data handling: IsNull", + "Basic data handling: LessThan", + "Basic data handling: LessThanOrEqual", + "Basic data handling: ListAll", + "Basic data handling: ListAny", + "Basic data handling: ListAppend", + "Basic data handling: ListContains", + "Basic data handling: ListCount", + "Basic data handling: ListCreate", + "Basic data handling: ListCreateFromBoolean", + "Basic data handling: ListCreateFromFloat", + "Basic data handling: ListCreateFromInt", + "Basic data handling: ListCreateFromString", + "Basic data handling: ListEnumerate", + "Basic data handling: ListExtend", + "Basic data handling: ListFirst", + "Basic data handling: ListGetItem", + "Basic data handling: ListIndex", + "Basic data handling: ListInsert", + "Basic data handling: ListLast", + "Basic data handling: ListLength", + "Basic data handling: ListMax", + "Basic data handling: ListMin", + "Basic data handling: ListPop", + "Basic data handling: ListPopRandom", + "Basic data handling: ListRange", + "Basic data handling: ListRemove", + "Basic data handling: ListReverse", + "Basic data handling: ListSetItem", + "Basic data handling: ListSlice", + "Basic data handling: ListSort", + "Basic data handling: ListSum", + "Basic data handling: ListToDataList", + "Basic data handling: ListToSet", + "Basic data handling: MathAbs", + "Basic data handling: MathAcos", + "Basic data handling: MathAsin", + "Basic data handling: MathAtan", + "Basic data handling: MathAtan2", + "Basic data handling: MathCeil", + "Basic data handling: MathCos", + "Basic data handling: MathDegrees", + "Basic data handling: MathE", + "Basic data handling: MathExp", + "Basic data handling: MathFloor", + "Basic data handling: MathFormula", + "Basic data handling: MathLog", + "Basic data handling: MathLog10", + "Basic data handling: MathMax", + "Basic data handling: MathMin", + "Basic data handling: MathPi", + "Basic data handling: MathRadians", + "Basic data handling: MathSin", + "Basic data handling: MathSqrt", + "Basic data handling: MathTan", + "Basic data handling: NotEqual", + "Basic data handling: NumberInRange", + "Basic data handling: PathAbspath", + "Basic data handling: PathBasename", + "Basic data handling: PathCommonPrefix", + "Basic data handling: PathDirname", + "Basic data handling: PathExists", + "Basic data handling: PathExpandVars", + "Basic data handling: PathGetCwd", + "Basic data handling: PathGetExtension", + "Basic data handling: PathGetSize", + "Basic data handling: PathGlob", + "Basic data handling: PathIsAbsolute", + "Basic data handling: PathIsDir", + "Basic data handling: PathIsFile", + "Basic data handling: PathJoin", + "Basic data handling: PathListDir", + "Basic data handling: PathLoadImageRGB", + "Basic data handling: PathLoadImageRGBA", + "Basic data handling: PathLoadMaskFromAlpha", + "Basic data handling: PathLoadMaskFromGreyscale", + "Basic data handling: PathLoadStringFile", + "Basic data handling: PathNormalize", + "Basic data handling: PathRelative", + "Basic data handling: PathSaveImageRGB", + "Basic data handling: PathSaveImageRGBA", + "Basic data handling: PathSaveStringFile", + "Basic data handling: PathSetExtension", + "Basic data handling: PathSplit", + "Basic data handling: PathSplitExt", + "Basic data handling: RegexFindallDataList", + "Basic data handling: RegexFindallList", + "Basic data handling: RegexGroupDict", + "Basic data handling: RegexSearchGroupsDataList", + "Basic data handling: RegexSearchGroupsList", + "Basic data handling: RegexSplitDataList", + "Basic data handling: RegexSplitList", + "Basic data handling: RegexSub", + "Basic data handling: RegexTest", + "Basic data handling: SetAdd", + "Basic data handling: SetAll", + "Basic data handling: SetAny", + "Basic data handling: SetContains", + "Basic data handling: SetCreate", + "Basic data handling: SetCreateFromBoolean", + "Basic data handling: SetCreateFromFloat", + "Basic data handling: SetCreateFromInt", + "Basic data handling: SetCreateFromString", + "Basic data handling: SetDifference", + "Basic data handling: SetDiscard", + "Basic data handling: SetEnumerate", + "Basic data handling: SetIntersection", + "Basic data handling: SetIsDisjoint", + "Basic data handling: SetIsSubset", + "Basic data handling: SetIsSuperset", + "Basic data handling: SetLength", + "Basic data handling: SetPop", + "Basic data handling: SetPopRandom", + "Basic data handling: SetRemove", + "Basic data handling: SetSum", + "Basic data handling: SetSymmetricDifference", + "Basic data handling: SetToDataList", + "Basic data handling: SetToList", + "Basic data handling: SetUnion", + "Basic data handling: StringCapitalize", + "Basic data handling: StringCasefold", + "Basic data handling: StringCenter", + "Basic data handling: StringComparison", + "Basic data handling: StringConcat", + "Basic data handling: StringCount", + "Basic data handling: StringDataListJoin", + "Basic data handling: StringDecode", + "Basic data handling: StringEncode", + "Basic data handling: StringEndswith", + "Basic data handling: StringEscape", + "Basic data handling: StringExpandtabs", + "Basic data handling: StringFind", + "Basic data handling: StringFormatMap", + "Basic data handling: StringIn", + "Basic data handling: StringIsAlnum", + "Basic data handling: StringIsAlpha", + "Basic data handling: StringIsAscii", + "Basic data handling: StringIsDecimal", + "Basic data handling: StringIsDigit", + "Basic data handling: StringIsIdentifier", + "Basic data handling: StringIsLower", + "Basic data handling: StringIsNumeric", + "Basic data handling: StringIsPrintable", + "Basic data handling: StringIsSpace", + "Basic data handling: StringIsTitle", + "Basic data handling: StringIsUpper", + "Basic data handling: StringLength", + "Basic data handling: StringListJoin", + "Basic data handling: StringLjust", + "Basic data handling: StringLower", + "Basic data handling: StringLstrip", + "Basic data handling: StringRemoveprefix", + "Basic data handling: StringRemovesuffix", + "Basic data handling: StringReplace", + "Basic data handling: StringRfind", + "Basic data handling: StringRjust", + "Basic data handling: StringRsplitDataList", + "Basic data handling: StringRsplitList", + "Basic data handling: StringRstrip", + "Basic data handling: StringSplitDataList", + "Basic data handling: StringSplitList", + "Basic data handling: StringSplitlinesDataList", + "Basic data handling: StringSplitlinesList", + "Basic data handling: StringStartswith", + "Basic data handling: StringStrip", + "Basic data handling: StringSwapcase", + "Basic data handling: StringTitle", + "Basic data handling: StringUnescape", + "Basic data handling: StringUpper", + "Basic data handling: StringZfill", + "Basic data handling: SwitchCase", + "Basic data handling: TimeAddDelta", + "Basic data handling: TimeDelta", + "Basic data handling: TimeDifference", + "Basic data handling: TimeExtract", + "Basic data handling: TimeFormat", + "Basic data handling: TimeNow", + "Basic data handling: TimeParse", + "Basic data handling: TimeSubtractDelta", + "Basic data handling: TimeToUnix", + "Basic data handling: UnixToTime" + ], + { + "title_aux": "Basic data handling" + } + ], + "https://github.com/StarAsh042/ComfyUI_RollingArtist": [ + [ + "RollingArtist" + ], + { + "title_aux": "ComfyUI_RollingArtist" + } + ], + "https://github.com/StarMagicAI/comfyui_tagger": [ + [ + "DownloadAndLoadFlorence2Lora_jsonL", + "DownloadAndLoadFlorence2Model_jsonL", + "Florence2ModelLoader_jsonL", + "Florence2Run_jsonL", + "batch_text_save_jsonL" + ], + { + "title_aux": "ComfyUI-tagger" + } + ], + "https://github.com/Starnodes2024/ComfyUI_StarNodes": [ + [ + "AdaptiveDetailEnhancement", + "DetailStarDaemon", + "FluxFillSampler", + "FluxStartSettings", + "Fluxstarsampler", + "OllamaModelChooser", + "SD35StartSettings", + "SDXLStartSettings", + "SDstarsampler", + "Star Face Loader", + "Star3LoRAs", + "StarConditioningLoader", + "StarConditioningSaver", + "StarDeleteSamplerSettings", + "StarDenoiseSlider", + "StarDivisibleDimension", + "StarEasyTextStorage", + "StarFiveWildcards", + "StarGridCaptionsBatcher", + "StarGridComposer", + "StarGridImageBatcher", + "StarImageSwitch", + "StarImageSwitch2", + "StarInfiniteYouAdvancedPatchMaker", + "StarInfiniteYouApply", + "StarInfiniteYouFaceSwapMod", + "StarInfiniteYouPatch", + "StarInfiniteYouPatchCombine", + "StarInfiniteYouSaver", + "StarLatentSwitch", + "StarLoadSamplerSettings", + "StarNewsScraper", + "StarPSDSaver", + "StarPSDSaver2", + "StarPaletteExtractor", + "StarSaveSamplerSettings", + "StarTextFilter", + "StarTextInput", + "StarWildcardsAdvanced", + "Star_Image2Latent", + "Star_Show_Last_Frame", + "Starnodes_Aspect_Ratio", + "Starnodes_Aspect_Ratio_Advanced", + "Starnodes_Aspect_Video_Ratio", + "Starupscale" + ], + { + "title_aux": "ComfyUI_StarNodes" + } + ], + "https://github.com/StartHua/ComfyUI_OOTDiffusion_CXH": [ + [ + "Ood_CXH" + ], + { + "title_aux": "ComfyUI_OOTDiffusion_CXH" + } + ], + "https://github.com/StartHua/ComfyUI_PCDMs": [ + [ + "PCDMS_CXH" + ], + { + "title_aux": "ComfyUI_PCDMs" + } + ], + "https://github.com/StartHua/ComfyUI_Seg_VITON": [ + [ + "segformer_agnostic", + "segformer_clothes", + "segformer_remove_bg", + "stabel_vition" + ], + { + "title_aux": "ComfyUI_Seg_VITON" + } + ], + "https://github.com/StartHua/Comfyui_CXH_DeepLX": [ + [ + "CXH_DeepLX_Free", + "CXH_DeepLX_translate" + ], + { + "title_aux": "Comfyui_CXH_DeepLX" + } + ], + "https://github.com/StartHua/Comfyui_CXH_FluxLoraMerge": [ + [ + "CXH_Lora_Merge" + ], + { + "title_aux": "Comfyui_CXH_FluxLoraMerge" + } + ], + "https://github.com/StartHua/Comfyui_CXH_Phi_3.5": [ + [ + "CXH_Phi_Run", + "CXH_Phi_chat_load", + "CXH_Phi_chat_min", + "CXH_Phi_load" + ], + { + "title_aux": "Comfyui_CXH_Phi_3.5" + } + ], + "https://github.com/StartHua/Comfyui_Gemini2": [ + [ + "CXH_Gemini2_TX", + "CXH_Gemini2_Vision", + "CXH_Local_Prompt" + ], + { + "title_aux": "Comfyui_Gemini2" + } + ], + "https://github.com/StartHua/Comfyui_joytag": [ + [ + "CXH_JoyTag" + ], + { + "title_aux": "Comfyui_joytag" + } + ], + "https://github.com/StartHua/Comfyui_segformer_b2_clothes": [ + [ + "segformer_b2_clothes", + "segformer_b3_fashion" + ], + { + "title_aux": "comfyui_segformer_b2_clothes" + } + ], + "https://github.com/Steudio/ComfyUI_Steudio": [ + [ + "Combine Tiles", + "Display UI", + "Divide Image and Select Tile", + "Divide and Conquer Algorithm", + "Load Images into List", + "Ratio Calculator", + "Ratio to Size", + "Seed Shifter", + "Sequence Generator", + "Simple Config" + ], + { + "title_aux": "ComfyUI Steudio" + } + ], + "https://github.com/Style-Mosaic/dino-x-comfyui-node": [ + [ + "DinoxDetector" + ], + { + "title_aux": "ComfyUI DINO-X Detector Node" + } + ], + "https://github.com/SuperBeastsAI/ComfyUI-SuperBeasts": [ + [ + "Deflicker - Experimental (SuperBeasts.AI)", + "HDR Effects (SuperBeasts.AI)", + "Image Batch Manager (SuperBeasts.AI)", + "Make Resized Mask Batch (SuperBeasts.AI)", + "Mask Batch Manager (SuperBeasts.AI)", + "Pixel Deflicker - Experimental (SuperBeasts.AI)", + "SB Load Model (SuperBeasts.AI)", + "String List Manager (SuperBeasts.AI)", + "Super Pop Color Adjustment (SuperBeasts.AI)", + "Super Pop Residual Blend (SuperBeasts.AI)" + ], + { + "title_aux": "ComfyUI-SuperBeasts" + } + ], + "https://github.com/SuperMasterBlasterLaser/ComfyUI_YOLO_Classifiers": [ + [ + "YOLO Classifier Model Loader", + "YOLO Classify" + ], + { + "title_aux": "ComfyUI_YOLO_Classifiers" + } + ], + "https://github.com/Suzie1/ComfyUI_Comfyroll_CustomNodes": [ + [ + "CR 8 Channel In", + "CR 8 Channel Out", + "CR Apply ControlNet", + "CR Apply LoRA Stack", + "CR Apply Model Merge", + "CR Apply Multi Upscale", + "CR Apply Multi-ControlNet", + "CR Arabic Text RTL", + "CR Aspect Ratio", + "CR Aspect Ratio Banners", + "CR Aspect Ratio SDXL", + "CR Aspect Ratio Social Media", + "CR Batch Images From List", + "CR Batch Process Switch", + "CR Binary Pattern", + "CR Binary To Bit List", + "CR Bit Schedule", + "CR Central Schedule", + "CR Checker Pattern", + "CR Clamp Value", + "CR Clip Input Switch", + "CR Color Bars", + "CR Color Gradient", + "CR Color Panel", + "CR Color Tint", + "CR Combine Prompt", + "CR Combine Schedules", + "CR Comic Panel Templates", + "CR Composite Text", + "CR Conditioning Input Switch", + "CR Conditioning Mixer", + "CR ControlNet Input Switch", + "CR Current Frame", + "CR Cycle Images", + "CR Cycle Images Simple", + "CR Cycle LoRAs", + "CR Cycle Models", + "CR Cycle Text", + "CR Cycle Text Simple", + "CR Data Bus In", + "CR Data Bus Out", + "CR Debatch Frames", + "CR Diamond Panel", + "CR Draw Perspective Text", + "CR Draw Pie", + "CR Draw Shape", + "CR Draw Text", + "CR Encode Scheduled Prompts", + "CR Feathered Border", + "CR Float Range List", + "CR Float To Integer", + "CR Float To String", + "CR Font File List", + "CR Get Parameter From Prompt", + "CR Gradient Float", + "CR Gradient Integer", + "CR Half Drop Panel", + "CR Halftone Filter", + "CR Halftone Grid", + "CR Hires Fix Process Switch", + "CR Image Border", + "CR Image Grid Panel", + "CR Image Input Switch", + "CR Image Input Switch (4 way)", + "CR Image List", + "CR Image List Simple", + "CR Image Output", + "CR Image Panel", + "CR Image Pipe Edit", + "CR Image Pipe In", + "CR Image Pipe Out", + "CR Image Size", + "CR Img2Img Process Switch", + "CR Increment Float", + "CR Increment Integer", + "CR Index", + "CR Index Increment", + "CR Index Multiply", + "CR Index Reset", + "CR Input Text List", + "CR Integer Multiple", + "CR Integer Range List", + "CR Integer To String", + "CR Interpolate Latents", + "CR Intertwine Lists", + "CR Keyframe List", + "CR Latent Batch Size", + "CR Latent Input Switch", + "CR LoRA List", + "CR LoRA Stack", + "CR Load Animation Frames", + "CR Load Flow Frames", + "CR Load GIF As List", + "CR Load Image List", + "CR Load Image List Plus", + "CR Load LoRA", + "CR Load Prompt Style", + "CR Load Schedule From File", + "CR Load Scheduled ControlNets", + "CR Load Scheduled LoRAs", + "CR Load Scheduled Models", + "CR Load Text List", + "CR Mask Text", + "CR Math Operation", + "CR Model Input Switch", + "CR Model List", + "CR Model Merge Stack", + "CR Module Input", + "CR Module Output", + "CR Module Pipe Loader", + "CR Multi Upscale Stack", + "CR Multi-ControlNet Stack", + "CR Multiline Text", + "CR Output Flow Frames", + "CR Output Schedule To File", + "CR Overlay Text", + "CR Overlay Transparent Image", + "CR Page Layout", + "CR Pipe Switch", + "CR Polygons", + "CR Prompt List", + "CR Prompt List Keyframes", + "CR Prompt Scheduler", + "CR Prompt Text", + "CR Radial Gradient", + "CR Random Hex Color", + "CR Random LoRA Stack", + "CR Random Multiline Colors", + "CR Random Multiline Values", + "CR Random Panel Codes", + "CR Random RGB", + "CR Random RGB Gradient", + "CR Random Shape Pattern", + "CR Random Weight LoRA", + "CR Repeater", + "CR SD1.5 Aspect Ratio", + "CR SDXL Aspect Ratio", + "CR SDXL Base Prompt Encoder", + "CR SDXL Prompt Mix Presets", + "CR SDXL Prompt Mixer", + "CR SDXL Style Text", + "CR Save Text To File", + "CR Schedule Input Switch", + "CR Schedule To ScheduleList", + "CR Seamless Checker", + "CR Seed", + "CR Seed to Int", + "CR Select Font", + "CR Select ISO Size", + "CR Select Model", + "CR Select Resize Method", + "CR Set Switch From String", + "CR Set Value On Binary", + "CR Set Value On Boolean", + "CR Set Value on String", + "CR Simple Banner", + "CR Simple Binary Pattern", + "CR Simple Binary Pattern Simple", + "CR Simple Image Compare", + "CR Simple List", + "CR Simple Meme Template", + "CR Simple Prompt List", + "CR Simple Prompt List Keyframes", + "CR Simple Prompt Scheduler", + "CR Simple Schedule", + "CR Simple Text Panel", + "CR Simple Text Scheduler", + "CR Simple Text Watermark", + "CR Simple Titles", + "CR Simple Value Scheduler", + "CR Split String", + "CR Starburst Colors", + "CR Starburst Lines", + "CR String To Boolean", + "CR String To Combo", + "CR String To Number", + "CR Style Bars", + "CR Switch Model and CLIP", + "CR Text", + "CR Text Blacklist", + "CR Text Concatenate", + "CR Text Cycler", + "CR Text Input Switch", + "CR Text Input Switch (4 way)", + "CR Text Length", + "CR Text List", + "CR Text List Simple", + "CR Text List To String", + "CR Text Operation", + "CR Text Replace", + "CR Text Scheduler", + "CR Thumbnail Preview", + "CR Trigger", + "CR Upscale Image", + "CR VAE Decode", + "CR VAE Input Switch", + "CR Value", + "CR Value Cycler", + "CR Value Scheduler", + "CR Vignette Filter", + "CR XY From Folder", + "CR XY Index", + "CR XY Interpolate", + "CR XY List", + "CR XY Product", + "CR XY Save Grid Image", + "CR XYZ Index", + "CR_Aspect Ratio For Print" + ], + { + "author": "Suzie1", + "description": "175 custom nodes for artists, designers and animators.", + "nickname": "Comfyroll Studio", + "title": "Comfyroll Studio", + "title_aux": "Comfyroll Studio" + } + ], + "https://github.com/Sxela/ComfyWarp": [ + [ + "ApplyMask", + "ApplyMaskConditional", + "ApplyMaskLatent", + "ApplyMaskLatentConditional", + "ExtractFlowAndMixConsistencyMaps", + "ExtractOpticalFlow", + "FixedQueue", + "KeyframedFlowApplication", + "LoadFrame", + "LoadFrameFromDataset", + "LoadFrameFromFolder", + "LoadFramePairFromDataset", + "LoadFrameSequence", + "MakeFrameDataset", + "MakePaths", + "MixConsistencyMaps", + "OffsetNumber", + "RenderVideo", + "ResizeToFit", + "SaveFrame", + "SchedulerFloat", + "SchedulerInt", + "SchedulerString", + "WarpFrame" + ], + { + "title_aux": "ComfyWarp" + } + ], + "https://github.com/SykkoAtHome/ComfyUI_FaceProcessor": [ + [ + "FaceFitAndRestore", + "FaceTracker", + "FaceWrapper", + "HighPassFilter", + "ImageFeeder" + ], + { + "title_aux": "Face Processor for ComfyUI" + } + ], + "https://github.com/T-Ph525/ComfyUI-Underage-Filter": [ + [ + "AgeCheckerNode", + "MultiTypeGateNode", + "UnderageFilterNode" + ], + { + "title_aux": "Underage Filter" + } + ], + "https://github.com/TFL-TFL/ComfyUI_Text_Translation": [ + [ + "Get_Translator", + "Text", + "Text_Concatenate", + "Text_Switch", + "Text_Translation", + "Text_Translation_V2", + "Text_Translation_V2_Full" + ], + { + "title_aux": "ComfyUI_Text_Translation" + } + ], + "https://github.com/THtianhao/ComfyUI-FaceChain": [ + [ + "FC CropAndPaste", + "FC CropBottom", + "FC CropToOrigin", + "FC FaceDetectCrop", + "FC FaceFusion", + "FC FaceSegAndReplace", + "FC FaceSegment", + "FC MaskOP", + "FC RemoveCannyFace", + "FC ReplaceByMask", + "FC StyleLoraLoad" + ], + { + "title_aux": "ComfyUI-FaceChain" + } + ], + "https://github.com/THtianhao/ComfyUI-Portrait-Maker": [ + [ + "PM_BoxCropImage", + "PM_ColorTransfer", + "PM_ExpandMaskBox", + "PM_FaceFusion", + "PM_FaceShapMatch", + "PM_FaceSkin", + "PM_GetImageInfo", + "PM_ImageResizeTarget", + "PM_ImageScaleShort", + "PM_MakeUpTransfer", + "PM_MaskDilateErode", + "PM_MaskMerge2Image", + "PM_PortraitEnhancement", + "PM_RatioMerge2Image", + "PM_ReplaceBoxImg", + "PM_RetinaFace", + "PM_Similarity", + "PM_SkinRetouching", + "PM_SuperColorTransfer", + "PM_SuperMakeUpTransfer" + ], + { + "title_aux": "ComfyUI-Portrait-Maker" + } + ], + "https://github.com/TJ16th/comfyUI_TJ_NormalLighting": [ + [ + "EulerLightingNode" + ], + { + "title_aux": "comfyUI_TJ_NormalLighting" + } + ], + "https://github.com/TKRLAB/ComfyUI_Prompt_List_JSON": [ + [ + "ComfyUI_Prompt_JSON" + ], + { + "author": "TKRLAB", + "description": "ComfyUI JSON-based prompt management tool.", + "title": "ComfyUI_Prompt_List_JSON", + "title_aux": "Prompt List JSON" + } + ], + "https://github.com/TMElyralab/Comfyui-MusePose": [ + [ + "filenamestring", + "musepose", + "museposealign" + ], + { + "title_aux": "Comfyui-MusePose" + } + ], + "https://github.com/TRI3D-LC/ComfyUI-MiroBoard": [ + [ + "add-image-miro-board" + ], + { + "title_aux": "ComfyUI-MiroBoard" + } + ], + "https://github.com/TRI3D-LC/tri3d-comfyui-nodes": [ + [ + "TRI3D_CutByMaskAspectRatio", + "get_histogram_limits", + "main_light_layer", + "main_scaled_paste", + "simple_rescale_histogram", + "tri3d-HistogramEqualization", + "tri3d-LAB_2_RGB", + "tri3d-RGB_2_LAB", + "tri3d-adjust-neck", + "tri3d-atr-parse", + "tri3d-atr-parse-batch", + "tri3d-bgremove-mega", + "tri3d-clean_mask", + "tri3d-clear-memory", + "tri3d-clipdrop-bgremove-api", + "tri3d-clipdrop-bgreplace-api", + "tri3d-composite-image-splitter", + "tri3d-dwpose", + "tri3d-extract-hand", + "tri3d-extract-masks-batch", + "tri3d-extract-parts-batch", + "tri3d-extract-parts-batch2", + "tri3d-extract-parts-mask-batch", + "tri3d-extract-pascal-parts-batch", + "tri3d-extract_pose_part", + "tri3d-face-recognise", + "tri3d-flexible_color_extract", + "tri3d-float-to-image", + "tri3d-fuzzification", + "tri3d-get_histogram_limits", + "tri3d-get_mean_and_standard_deviation", + "tri3d-get_threshold_for_bg_swap", + "tri3d-image-mask-2-box", + "tri3d-image-mask-box-2-image", + "tri3d-interaction-canny", + "tri3d-levindabhi-cloth-seg", + "tri3d-load-pose-json", + "tri3d-load_AEMatter_Model", + "tri3d-luminosity-match", + "tri3d-main_transparent_background", + "tri3d-photoroom-bgremove-api", + "tri3d-pose-adaption", + "tri3d-pose-to-image", + "tri3d-position-hands", + "tri3d-position-parts-batch", + "tri3d-position-pascal-parts-batch", + "tri3d-recolor-mask", + "tri3d-recolor-mask-LAB_space", + "tri3d-recolor-mask-LAB_space_manual", + "tri3d-recolor-mask-RGB_space", + "tri3d-renormalize_array", + "tri3d-run_AEMatter_inference", + "tri3d-scaled-paste", + "tri3d-scaled-paste_unsafe", + "tri3d-simple_bg_swap", + "tri3d-simple_rescale_histogram", + "tri3d-skin-feathered-padded-mask", + "tri3d-swap-pixels", + "tri3d_CutByMaskAspectRatio", + "tri3d_H_Stack_Images", + "tri3d_Image_extend", + "tri3d_MaskAreaPercentage", + "tri3d_NSFWFilter", + "tri3d_NarrowfyImage", + "tri3d_Remove_Small_Mask_Islands", + "tri3d_SaveFlattenedPoseKpsAsJsonFile", + "tri3d_SaveImage_absolute", + "tri3d_SaveText_absolute", + "tri3d_Skip_HeadMask", + "tri3d_Skip_HeadMask_AddNeck", + "tri3d_Skip_LipMask", + "tri3d_SmartBox", + "tri3d_Smart_Depth", + "tri3d_StringContains", + "tri3d_Wait_And_Read_File", + "tri3d_extract_facer_mask", + "tri3d_fill_mask", + "tri3d_is_only_trouser", + "tri3d_position_pose_part" + ], + { + "title_aux": "tri3d-comfyui-nodes" + } + ], + "https://github.com/TTPlanetPig/Comfyui_Hunyuan3D": [ + [ + "GifImageViewerNode", + "Hunyuan3DNode", + "SquareImage" + ], + { + "title_aux": "Comfyui_Hunyuan3D" + } + ], + "https://github.com/TTPlanetPig/Comfyui_JC2": [ + [ + "ExtraOptionsNode", + "ExtraOptionsNode_Beta", + "JoyCaption2", + "JoyCaption2_simple", + "JoyCaptionBetaOne_Full", + "JoyCaptionBetaOne_Simple" + ], + { + "title_aux": "Comfyui_JC2" + } + ], + "https://github.com/TTPlanetPig/Comfyui_Object_Detect_QWen_VL": [ + [ + "BBoxesToSAM2", + "DownloadAndLoadQwenModel", + "QwenVLDetection" + ], + { + "title_aux": "ComfyUI Qwen2.5-VL Object Detection Node" + } + ], + "https://github.com/TTPlanetPig/Comfyui_Object_Migration": [ + [ + "TTP_Expand_And_Mask", + "TTP_text_mix" + ], + { + "title_aux": "Clothing Migration Kit" + } + ], + "https://github.com/TTPlanetPig/Comfyui_TTP_CN_Preprocessor": [ + [ + "TTPlanet_Tile_Preprocessor_GF", + "TTPlanet_Tile_Preprocessor_Simple", + "TTPlanet_Tile_Preprocessor_cufoff", + "TTPlanet_inpainting_Preprecessor" + ], + { + "title_aux": "for comfyui image proprocessor" + } + ], + "https://github.com/TTPlanetPig/Comfyui_TTP_Toolset": [ + [ + "TTP_CoordinateSplitter", + "TTP_Expand_And_Mask", + "TTP_Image_Assy", + "TTP_Image_Tile_Batch", + "TTP_Tile_image_size", + "TTP_condsetarea_merge", + "TTP_condsetarea_merge_test", + "TTP_condtobatch", + "TTP_text_mix", + "TTPlanet_Tile_Preprocessor_Simple", + "TeaCacheHunyuanVideoSampler" + ], + { + "title_aux": "Comfyui_TTP_Toolset" + } + ], + "https://github.com/TTPlanetPig/TTP_Comfyui_FramePack_SE": [ + [ + "TTPlanet_FramePack" + ], + { + "title_aux": "TTP_Comfyui_FramePack_SE" + } + ], + "https://github.com/TW-CUI/TW-CUI-Util": [ + [ + "TWCUI_Util_CommonSDXLResolutions", + "TWCUI_Util_FloatLiteral", + "TWCUI_Util_GenerationParameters", + "TWCUI_Util_GenerationPrompts", + "TWCUI_Util_IntLiteral", + "TWCUI_Util_ModelVAELORALoader", + "TWCUI_Util_ModelVAELoader", + "TWCUI_Util_MultilineStringLiteral", + "TWCUI_Util_SaveImage", + "TWCUI_Util_SaveImageAdvanced", + "TWCUI_Util_StringLiteral" + ], + { + "title_aux": "TW-CUI-Util" + } + ], + "https://github.com/TZOOTZ/ComfyUI-TZOOTZ_VHS": [ + [ + "TZOOTZ_VHSNode" + ], + { + "title_aux": "TZOOTZ VHS Effect Node" + } + ], + "https://github.com/TaiTair/comfyui-simswap": [ + [ + "Simswap", + "SimswapBuildFaceModel", + "SimswapFaceSwapOpt", + "SimswapImageDublicator", + "SimswapLoadFaceModel", + "SimswapMaskHelper", + "SimswapOptions", + "SimswapRestoreFace", + "SimswapSaveFaceModel" + ], + { + "title_aux": "Simswap Node for ComfyUI" + } + ], + "https://github.com/Taithrah/ComfyUI_Fens_Simple_Nodes": [ + [ + "FensTokenCounter", + "OptiEmptyLatent" + ], + { + "title_aux": "Fens-Simple-Nodes" + } + ], + "https://github.com/Taremin/comfyui-prompt-config": [ + [ + "PromptEdit", + "PromptGenerationConfig" + ], + { + "title_aux": "comfyui-prompt-config" + } + ], + "https://github.com/Taremin/comfyui-prompt-extranetworks": [ + [ + "PromptControlNetApply", + "PromptControlNetPrepare", + "PromptExtraNetworks" + ], + { + "title_aux": "ComfyUI Prompt ExtraNetworks" + } + ], + "https://github.com/Taremin/comfyui-string-tools": [ + [ + "StringToolsBalancedChoice", + "StringToolsConcat", + "StringToolsRandomChoice", + "StringToolsString", + "StringToolsText" + ], + { + "title_aux": "ComfyUI String Tools" + } + ], + "https://github.com/Taremin/webui-monaco-prompt": [ + [ + "WebuiMonacoPromptFind", + "WebuiMonacoPromptReplace" + ], + { + "title_aux": "WebUI Monaco Prompt" + } + ], + "https://github.com/TeaCrab/ComfyUI-TeaNodes": [ + [ + "TC_ColorFill", + "TC_CropTo", + "TC_EqualizeCLAHE", + "TC_ImageResize", + "TC_ImageScale", + "TC_KorniaGamma", + "TC_RandomColorFill", + "TC_SizeApproximation" + ], + { + "title_aux": "ComfyUI-TeaNodes" + } + ], + "https://github.com/TemryL/ComfyS3": [ + [ + "DownloadFileS3", + "LoadImageS3", + "SaveImageS3", + "SaveVideoFilesS3", + "UploadFileS3" + ], + { + "title_aux": "ComfyS3" + } + ], + "https://github.com/TemryL/ComfyUI-IDM-VTON": [ + [ + "IDM-VTON", + "PipelineLoader" + ], + { + "title_aux": "ComfyUI-IDM-VTON [WIP]" + } + ], + "https://github.com/Temult/TWanSigmaGraph": [ + [ + "TWanSigmaGraph" + ], + { + "title_aux": "TWanSigmaGraph" + } + ], + "https://github.com/TencentQQGYLab/ComfyUI-ELLA": [ + [ + "CombineClipEllaEmbeds", + "ConcatConditionEllaEmbeds", + "ConditionToEllaEmbeds", + "ELLALoader", + "EllaApply", + "EllaCombineEmbeds", + "EllaEncode", + "EllaTextEncode", + "SetEllaTimesteps", + "T5TextEncode #ELLA", + "T5TextEncoderLoader #ELLA" + ], + { + "title_aux": "ComfyUI-ELLA" + } + ], + "https://github.com/Tensor-Art/ComfyUI_TENSOR_ART": [ + [ + "TA_AIToolsNode", + "TA_ExecuteNode", + "TA_UploadImageNode" + ], + { + "title_aux": "ComfyUI_TENSOR_ART" + } + ], + "https://github.com/TensorKaze/ComfyUI-TkNodes": [ + [ + "FluxAdvancedSampler", + "FluxLatentSampler", + "LoadImageAndScaleToTotalPixels", + "LoadModelAndUpscaleImage", + "MultiLatentSelector", + "MultiModelLoader", + "RepeatLatentBatchOptional", + "VAEEncodeOptional" + ], + { + "title_aux": "ComfyUI-TkNodes" + } + ], + "https://github.com/TheBarret/ZSuite": [ + [ + "ZSuite: Prompter", + "ZSuite: RF Noise", + "ZSuite: SeedMod" + ], + { + "title_aux": "ZSuite" + } + ], + "https://github.com/TheBill2001/comfyui-upscale-by-model": [ + [ + "UpscaleImageByUsingModel" + ], + { + "author": "Tr\u1ea7n Nam Tu\u1ea5n", + "description": "This custom node allow upscaling an image by a factor using a model.", + "nickname": "Upscale Image By (Using Model)", + "title": "Upscale Image By (Using Model)", + "title_aux": "comfyui-upscale-by-model" + } + ], + "https://github.com/TheLustriVA/ComfyUI-Image-Size-Tools": [ + [ + "FluxResolutionNode", + "ImageSizeDetectorNode", + "SD15ResolutionNode", + "SDXLResolutionNode", + "WAN21AdvancedResolutionNode", + "WAN21ResolutionNode" + ], + { + "title_aux": "ComfyUI Image Size Tool" + } + ], + "https://github.com/TheMistoAI/ComfyUI-Anyline": [ + [ + "AnyLinePreprocessor" + ], + { + "title_aux": "Anyline" + } + ], + "https://github.com/TheWhykiki/Whykiki-ComfyUIToolset": [ + [ + "SequentialImageLoaderV8" + ], + { + "title_aux": "Whykiki ComfyUI Toolset" + } + ], + "https://github.com/ThepExcel/aiangelgallery-comfyui": [ + [ + "ThepExcel_AiAngel_MultilineTextChoiceNode" + ], + { + "title_aux": "Multiline Text Choice Node for ComfyUI" + } + ], + "https://github.com/ThereforeGames/ComfyUI-Unprompted": [ + [ + "Unprompted", + "UnpromptedSetRack" + ], + { + "title_aux": "ComfyUI-Unprompted" + } + ], + "https://github.com/TiamaTiramisu/risutools": [ + [ + "CheckFileNamePrefixExists", + "LoadImageFromText", + "LoadLastFileNamePrefix", + "UUIDGenerator" + ], + { + "title_aux": "RisuTools" + } + ], + "https://github.com/TinyTerra/ComfyUI_tinyterraNodes": [ + [ + "ttN KSampler_v2", + "ttN advPlot combo", + "ttN advPlot images", + "ttN advPlot merge", + "ttN advPlot range", + "ttN advPlot string", + "ttN advanced xyPlot", + "ttN compareInput", + "ttN concat", + "ttN conditioning", + "ttN debugInput", + "ttN float", + "ttN hiresfixScale", + "ttN imageOutput", + "ttN imageREMBG", + "ttN int", + "ttN multiModelMerge", + "ttN pipe2BASIC", + "ttN pipe2DETAILER", + "ttN pipeEDIT", + "ttN pipeEncodeConcat", + "ttN pipeIN", + "ttN pipeKSampler", + "ttN pipeKSamplerAdvanced", + "ttN pipeKSamplerAdvanced_v2", + "ttN pipeKSamplerSDXL", + "ttN pipeKSamplerSDXL_v2", + "ttN pipeKSampler_v2", + "ttN pipeLoader", + "ttN pipeLoaderSDXL", + "ttN pipeLoaderSDXL_v2", + "ttN pipeLoader_v2", + "ttN pipeLoraStack", + "ttN pipeOUT", + "ttN seed", + "ttN text", + "ttN text3BOX_3WAYconcat", + "ttN text7BOX_concat", + "ttN textCycleLine", + "ttN textDebug", + "ttN textOutput", + "ttN tinyLoader", + "ttN xyPlot" + ], + { + "author": "tinyterra", + "description": "This extension offers extensive xyPlot, various pipe nodes, fullscreen image viewer based on node history, dynamic widgets, interface customization, and more.", + "nickname": "\ud83c\udf0f", + "nodename_pattern": "^ttN ", + "title": "tinyterraNodes", + "title_aux": "ComfyUI_tinyterraNodes" + } + ], + "https://github.com/Tlant/ComfyUI-OllamaPromptsGeneratorTlant": [ + [ + "LoadImageAndExtractMetadataTlant", + "LoadRandomTxtFileTlant", + "LoadRandomTxtFileTlantV2", + "LoadRandomTxtFileTlantV3", + "LoadSequencedTxtFileTlant", + "LoadSpecificTxtFileTlant", + "OllamaPromptsGeneratorTlant", + "OllamaSimpleTextGeneratorTlant", + "RandomImageLoaderTlant", + "ReasoningLLMOutputCleaner", + "SaveImagePairForKontext", + "StringFormatterTlant" + ], + { + "title_aux": "ComfyUI-OllamaPromptsGeneratorTlant" + } + ], + "https://github.com/ToTheBeginning/ComfyUI-DreamO": [ + [ + "ApplyDreamO", + "DreamOProcessorLoader", + "DreamORefEncode" + ], + { + "title_aux": "DreamO Comfyui" + } + ], + "https://github.com/Tr1dae/ComfyUI-Dequality": [ + [ + "Dequality" + ], + { + "title_aux": "ComfyUI-Dequality" + } + ], + "https://github.com/Trgtuan10/ComfyUI_YoloSegment_Mask": [ + [ + "Object Mask" + ], + { + "title_aux": "ComfyUI_YoloSegment_Mask" + } + ], + "https://github.com/Tropfchen/ComfyUI-Embedding_Picker": [ + [ + "EmbeddingPicker" + ], + { + "title_aux": "Embedding Picker" + } + ], + "https://github.com/Tropfchen/ComfyUI-yaResolutionSelector": [ + [ + "YARS", + "YARSAdv" + ], + { + "title_aux": "YARS: Yet Another Resolution Selector" + } + ], + "https://github.com/TrophiHunter/ComfyUI_Photography_Nodes": [ + [ + "Bloom", + "Bloom Lens Flares", + "Chromatic Aberration", + "Contrast Adaptive Sharpening", + "Contrast Brightness", + "Depth of Field", + "Get Watermark", + "Halation", + "Lens Dirt", + "Lens Distortion", + "Levels Adjustment", + "Lut", + "Manga Toner", + "Monitor Filter", + "Multi Scale Contrast", + "NTSC Filter", + "Noise", + "Physically Accurate Lens Dirt", + "Pixel Art", + "Saturation Vibrance", + "Sensor Dust", + "Sharpen Simple", + "Sharpen Unsharp Mask", + "Tint", + "VHS Chroma Smear", + "VHS Degrade", + "Vignette Effect", + "Watermark" + ], + { + "title_aux": "Photography Nodes" + } + ], + "https://github.com/Trung0246/ComfyUI-0246": [ + [ + "0246.Beautify", + "0246.BoxRange", + "0246.CastReroute", + "0246.Cloud", + "0246.Count", + "0246.Highway", + "0246.HighwayBatch", + "0246.Hold", + "0246.Hub", + "0246.Junction", + "0246.JunctionBatch", + "0246.Loop", + "0246.Merge", + "0246.Meta", + "0246.RandomInt", + "0246.Script", + "0246.ScriptNode", + "0246.ScriptPile", + "0246.ScriptRule", + "0246.Stringify", + "0246.Switch", + "0246.Tag" + ], + { + "author": "Trung0246", + "description": "Random nodes for ComfyUI I made to solve my struggle with ComfyUI (ex: pipe, process). Have varying quality.", + "nickname": "ComfyUI-0246", + "title": "ComfyUI-0246", + "title_aux": "ComfyUI-0246" + } + ], + "https://github.com/Ttl/ComfyUi_NNLatentUpscale": [ + [ + "NNLatentUpscale" + ], + { + "preemptions": [ + "NNLatentUpscale" + ], + "title_aux": "ComfyUI Neural Network Latent Upscale" + } + ], + "https://github.com/TylerZoro/SD3-Scaling": [ + [ + "SD3ImageScaleToTotalPixels" + ], + { + "title_aux": "SD3-Scaling" + } + ], + "https://github.com/Umikaze-job/select_folder_path_easy": [ + [ + "SelectFolderPathEasy" + ], + { + "title_aux": "select_folder_path_easy" + } + ], + "https://github.com/VAST-AI-Research/ComfyUI-Tripo": [ + [ + "TripoAPIDraft", + "TripoAnimateRetargetNode", + "TripoAnimateRigNode", + "TripoConvertNode", + "TripoMeshCompletion", + "TripoMeshSegmentation", + "TripoRefineModel", + "TripoSmartLowPoly", + "TripoStylizeModel", + "TripoTextureModel" + ], + { + "title_aux": "Tripo for ComfyUI" + } + ], + "https://github.com/VK/vk-nodes": [ + [ + "PrepareJobs", + "SketchyText", + "SketchyThumbnail", + "TiledConfigNode", + "TiledCropNode", + "TiledRenderNode", + "TiledSetupNode", + "VKLoadAudio" + ], + { + "title_aux": "VK Nodes" + } + ], + "https://github.com/Vaibhavs10/ComfyUI-DDUF": [ + [ + "DDUFLoader", + "DiffusersModelMakeup", + "DiffusersPipelineLoader", + "DiffusersSchedulerLoader", + "DiffusersSimpleSampler" + ], + { + "title_aux": "ComfyUI-DDUF" + } + ], + "https://github.com/VangengLab/ComfyUI-LivePortrait_v2": [ + [ + "LivePortraitProcess_animal" + ], + { + "title_aux": "ComfyUI-LivePortrait_v2" + } + ], + "https://github.com/VangengLab/ComfyUI-LivePortrait_v3": [ + [ + "LivePortraitp2p" + ], + { + "title_aux": "ComfyUI-LivePortrait_v3" + } + ], + "https://github.com/Vaporbook/ComfyUI-SaveImage-PP": [ + [ + "SaveImagePP" + ], + { + "title_aux": "ComfyUI-SaveImage-PP" + } + ], + "https://github.com/VertexAnomaly/ComfyUI_ImageSentinel": [ + [ + "ImageSentinel" + ], + { + "title_aux": "ComfyUI_ImageSentinel" + } + ], + "https://github.com/VertexStudio/roblox-comfyui-nodes": [ + [ + "FirstLetterNode", + "FlowNodes", + "MirrorEffectNode", + "SaveImageNode", + "ScaleImageNode", + "SwitchImageNode", + "SwitchTextNode", + "TextToImageNode" + ], + { + "title_aux": "roblox-comfyui-nodes" + } + ], + "https://github.com/VikramxD/VEnhancer-ComfyUI-Wrapper": [ + [ + "MultiGPUInference", + "MultiGPUVEnhancerLoader", + "SingleGPUInference", + "SingleGPUVEnhancerLoader", + "VideoLoader", + "VideoSaver" + ], + { + "title_aux": "VEnhancer ComfyUI Extension" + } + ], + "https://github.com/Visionatrix/ComfyUI-Gemini": [ + [ + "ConcatText_Zho", + "DisplayText_Zho", + "Gemini_15P_API_S_Advance_Zho", + "Gemini_15P_API_S_Chat_Advance_Zho", + "Gemini_API_Chat_Zho", + "Gemini_API_S_Chat_Zho", + "Gemini_API_S_Vsion_ImgURL_Zho", + "Gemini_API_S_Zho", + "Gemini_API_Vsion_ImgURL_Zho", + "Gemini_API_Zho", + "Gemini_FileUpload_API_S_Zho", + "Gemini_File_API_S_Zho" + ], + { + "title_aux": "ComfyUI-Gemini" + } + ], + "https://github.com/Visionatrix/ComfyUI-RemoteVAE": [ + [ + "RemoteVAEDecode" + ], + { + "title_aux": "ComfyUI-RemoteVAE" + } + ], + "https://github.com/Visionatrix/ComfyUI-Visionatrix": [ + [ + "StyleAlignedBatchAlign", + "VixCheckboxLogic", + "VixDictionaryConvert", + "VixDictionaryGet", + "VixDictionaryNew", + "VixDictionaryUpdate", + "VixDynamicLoraDefinition", + "VixImageFilters", + "VixMultilineText", + "VixTextConcatenate", + "VixTextReplace", + "VixUiAspectRatioSelector", + "VixUiCheckbox", + "VixUiCheckboxLogic", + "VixUiList", + "VixUiListLogic", + "VixUiPrompt", + "VixUiRangeFloat", + "VixUiRangeInt", + "VixUiRangeScaleFloat", + "VixUiWorkflowMetadata" + ], + { + "title_aux": "ComfyUI-Visionatrix" + } + ], + "https://github.com/VrchStudio/comfyui-web-viewer": [ + [ + "VrchAnyOSCControlNode", + "VrchAudioChannelLoaderNode", + "VrchAudioConcatNode", + "VrchAudioGenresNode", + "VrchAudioRecorderNode", + "VrchAudioSaverNode", + "VrchAudioWebViewerNode", + "VrchBooleanKeyControlNode", + "VrchChannelOSCControlNode", + "VrchChannelX4OSCControlNode", + "VrchDelayOSCControlNode", + "VrchFloatKeyControlNode", + "VrchFloatOSCControlNode", + "VrchFloatRemapNode", + "VrchGamepadLoaderNode", + "VrchImageChannelLoaderNode", + "VrchImageFlipBookWebViewerNode", + "VrchImagePreviewBackgroundNewNode", + "VrchImagePreviewBackgroundNode", + "VrchImageSaverNode", + "VrchImageSwitchOSCControlNode", + "VrchImageWebSocketChannelLoaderNode", + "VrchImageWebSocketWebViewerNode", + "VrchImageWebViewerNode", + "VrchInstantQueueKeyControlNode", + "VrchIntKeyControlNode", + "VrchIntOSCControlNode", + "VrchIntRemapNode", + "VrchJsonUrlLoaderNode", + "VrchJsonWebSocketChannelLoaderNode", + "VrchJsonWebSocketSenderNode", + "VrchMicLoaderNode", + "VrchMidiDeviceLoaderNode", + "VrchModelWebViewerNode", + "VrchOSCControlSettingsNode", + "VrchSwitchOSCControlNode", + "VrchTextConcatOSCControlNode", + "VrchTextKeyControlNode", + "VrchTextSrtPlayerNode", + "VrchTextSwitchOSCControlNode", + "VrchTriggerToggleNode", + "VrchTriggerToggleX4Node", + "VrchTriggerToggleX8Node", + "VrchVideoWebViewerNode", + "VrchWebSocketServerNode", + "VrchWebViewerNode", + "VrchXYOSCControlNode", + "VrchXYZOSCControlNode", + "VrchXboxControllerNode" + ], + { + "title_aux": "ComfyUI Web Viewer" + } + ], + "https://github.com/VykosX/ControlFlowUtils": [ + [ + "Cycle", + "CycleContinue", + "CycleEnd", + "DataMonitor", + "FallbackAnyBatch", + "FallbackImagePreviewer", + "FolderSearch", + "GarbageCollector", + "HaltExecution", + "IfConditionSelector", + "ImageResolutionAdjust", + "InvertCondition", + "LoopClose", + "LoopOpen", + "LoraSelector", + "MemoryStorage", + "ModelSelector", + "NullInput", + "NullOutput", + "ReadTextFile", + "SaveTextFile", + "SimpleToggle", + "StringOperation", + "UniversalSwitch", + "UnloadModels", + "VAESelector", + "Wait" + ], + { + "title_aux": "ControlFlowUtils" + } + ], + "https://github.com/WASasquatch/ComfyUI_Preset_Merger": [ + [ + "Preset_Model_Merge" + ], + { + "title_aux": "ComfyUI Preset Merger" + } + ], + "https://github.com/WASasquatch/FreeU_Advanced": [ + [ + "FreeU (Advanced)", + "FreeU_V2 (Advanced)" + ], + { + "title_aux": "FreeU_Advanced" + } + ], + "https://github.com/WASasquatch/PPF_Noise_ComfyUI": [ + [ + "Blend Latents (PPF Noise)", + "Cross-Hatch Power Fractal (PPF Noise)", + "Images as Latents (PPF Noise)", + "Perlin Power Fractal Latent (PPF Noise)" + ], + { + "title_aux": "PPF_Noise_ComfyUI" + } + ], + "https://github.com/WASasquatch/PowerNoiseSuite": [ + [ + "Blend Latents (PPF Noise)", + "Cross-Hatch Power Fractal (PPF Noise)", + "Cross-Hatch Power Fractal Settings (PPF Noise)", + "Images as Latents (PPF Noise)", + "Latent Adjustment (PPF Noise)", + "Latents to CPU (PPF Noise)", + "Linear Cross-Hatch Power Fractal (PPF Noise)", + "Perlin Power Fractal Latent (PPF Noise)", + "Perlin Power Fractal Settings (PPF Noise)", + "Power KSampler Advanced (PPF Noise)", + "Power-Law Noise (PPF Noise)" + ], + { + "title_aux": "Power Noise Suite for ComfyUI" + } + ], + "https://github.com/WASasquatch/WAS_Extras": [ + [ + "BLVAEEncode", + "CLIPTextEncodeList", + "CLIPTextEncodeSequence2", + "ConditioningBlend", + "DebugInput", + "KSamplerSeq", + "KSamplerSeq2", + "VAEEncodeForInpaint (WAS)", + "VividSharpen", + "VividSharpenV2" + ], + { + "title_aux": "WAS_Extras" + } + ], + "https://github.com/WASasquatch/face-upscaling-and-seamless-embedding": [ + [ + "FUSEGenericKSampler", + "FUSEKSampler", + "FUSESamplerMaskOptions" + ], + { + "title_aux": "FUSE Face Enhancer" + } + ], + "https://github.com/WUYUDING2583/ComfyUI-Save-Image-Callback": [ + [ + "Save Image With Callback" + ], + { + "title_aux": "Save Image With Callback" + } + ], + "https://github.com/WX-NPS1598/ComfyUI-Auto_Crop_By_NPS": [ + [ + "AutoCropByNPS" + ], + { + "title_aux": "Auto Crop By NPS" + } + ], + "https://github.com/WaddingtonHoldings/ComfyUI-InstaSD": [ + [ + "GPTImage1Generate", + "InstaCBoolean", + "InstaCFloat", + "InstaCInteger", + "InstaCLoadImageFromS3", + "InstaCLoraLoader", + "InstaCSaveImageToS3", + "InstaCSeed", + "InstaCText", + "InstaCTextML", + "InstaLoadImageLocal", + "InstaLoadImageWithMask", + "InstaPromptMultipleStyleSelector", + "InstaPromptStyleSelector", + "LoadVideo", + "PreViewVideo" + ], + { + "title_aux": "InstaSD nodes for ComfyUI" + } + ], + "https://github.com/WainWong/ComfyUI-Loop-image": [ + [ + "CyberEve_BatchImageLoopClose", + "CyberEve_BatchImageLoopOpen", + "CyberEve_LoopIndexSwitch", + "CyberEve_MaskMerge", + "CyberEve_MaskSegmentation", + "CyberEve_SingleImageLoopClose", + "CyberEve_SingleImageLoopOpen" + ], + { + "title_aux": "ComfyUI-Loop-image" + } + ], + "https://github.com/Wakfull33/ComfyUI-SaveImageCivitAI": [ + [ + "SaveCivitai" + ], + { + "title_aux": "ComfyUI-SaveImageCivitAI" + } + ], + "https://github.com/WangPengxing/ComfyUI_WPX_Node": [ + [ + "AnimalContour", + "AnimalContourSilhouette", + "CircleContour", + "DetermineRowsAndCols", + "PenetrateStyle", + "RectangleContour", + "SplitMaskElements", + "SplitStickers" + ], + { + "title_aux": "ComfyUI WPX Nodes" + } + ], + "https://github.com/WarpedAnimation/ComfyUI-WarpedToolset": [ + [ + "WarpedAdvancedSamplerBatch", + "WarpedBundleAllVideoImages", + "WarpedBundleVideoImages", + "WarpedCLIPVisionLoader", + "WarpedCheckpointLoader", + "WarpedCreateEmptyImageBatch", + "WarpedCreateEmptyLatentBatch", + "WarpedCreateSpecialImageBatch", + "WarpedDualCLIPLoader", + "WarpedDualEncoder", + "WarpedFramepackLoraSelectBatch", + "WarpedFramepackMultiLoraSelect", + "WarpedFramepackMultiLoraSelectExt", + "WarpedFramepackSampler", + "WarpedGetImageFromVideo", + "WarpedGetTwoImagesFromVideo", + "WarpedHunyuanImageToVideo", + "WarpedHunyuanLoraAvgMerge", + "WarpedHunyuanLoraBatchMerge", + "WarpedHunyuanLoraConvert", + "WarpedHunyuanLoraConvertKeys", + "WarpedHunyuanLoraMerge", + "WarpedHunyuanMultiLoraAvgMerge", + "WarpedHunyuanMultiLoraLoader", + "WarpedHunyuanMultiLoraMerge", + "WarpedHunyuanMultiLoraMixer", + "WarpedHunyuanMultiLoraMixerExt", + "WarpedHunyuanMultiLoraMixerExt2", + "WarpedHunyuanVideoLoraLoader", + "WarpedImageNoiseAugmentation", + "WarpedImageResize", + "WarpedImageScaleToSide", + "WarpedLeapfusionHunyuanI2V", + "WarpedLoadFramePackModel", + "WarpedLoadLorasBatchByPrefix", + "WarpedLoadVideosBatch", + "WarpedLoraKeysAndMetadataReader", + "WarpedLoraReSave", + "WarpedMultiLoraLoader", + "WarpedNumericalConversion", + "WarpedReverseImageBatch", + "WarpedSamplerCustomAdv", + "WarpedSamplerCustomAdvLatent", + "WarpedSaveAnimatedPng", + "WarpedUpscaleWithModel", + "WarpedVAELoader", + "WarpedWanImageToVideo", + "WarpedWanLoadAndEditLoraBlocks", + "WarpedWanLoraMerge" + ], + { + "title_aux": "ComfyUI-WarpedToolset" + } + ], + "https://github.com/WaveSpeedAI/wavespeed-comfyui": [ + [ + "WaveSpeedAI BytedanceSeedanceLiteI2VNode", + "WaveSpeedAI BytedanceSeedanceLiteT2VNode", + "WaveSpeedAI BytedanceSeedanceProI2VNode", + "WaveSpeedAI BytedanceSeedanceProT2VNode", + "WaveSpeedAI Client", + "WaveSpeedAI DiaTTSNode", + "WaveSpeedAI Flux Image2Image", + "WaveSpeedAI Flux Loras", + "WaveSpeedAI Flux Text2Image", + "WaveSpeedAI FluxControlLoraCannyNode", + "WaveSpeedAI FluxControlLoraDepthNode", + "WaveSpeedAI FluxControlnetUnionPro2_0Node", + "WaveSpeedAI FluxDevFillNode", + "WaveSpeedAI FluxDevLoraNode", + "WaveSpeedAI FluxDevLoraUltraFastNode", + "WaveSpeedAI FluxDevNode", + "WaveSpeedAI FluxDevUltraFastNode", + "WaveSpeedAI FluxProReduxNode", + "WaveSpeedAI FluxReduxDevNode", + "WaveSpeedAI FluxSchnellLoraNode", + "WaveSpeedAI FluxSchnellNode", + "WaveSpeedAI FramepackNode", + "WaveSpeedAI GhibliNode", + "WaveSpeedAI GoogleVeo3FastNode", + "WaveSpeedAI GoogleVeo3Node", + "WaveSpeedAI HidreamE1FullNode", + "WaveSpeedAI HidreamI1DevNode", + "WaveSpeedAI HidreamI1FullNode", + "WaveSpeedAI Hunyuan3DV2MultiViewNode", + "WaveSpeedAI HunyuanCustomRef2V480pNode", + "WaveSpeedAI HunyuanCustomRef2V720pNode", + "WaveSpeedAI HunyuanVideoI2VNode", + "WaveSpeedAI HunyuanVideoT2VNode", + "WaveSpeedAI InstantCharacterNode", + "WaveSpeedAI KwaivgiKlingV16I2VProNode", + "WaveSpeedAI KwaivgiKlingV16I2VStandardNode", + "WaveSpeedAI KwaivgiKlingV16T2VStandardNode", + "WaveSpeedAI KwaivgiKlingV21I2vMasterNode", + "WaveSpeedAI KwaivgiKlingV21I2vProNode", + "WaveSpeedAI KwaivgiKlingV21I2vStandardNode", + "WaveSpeedAI KwaivgiKlingV21T2vMasterNode", + "WaveSpeedAI LtxVideoV097I2V480pNode", + "WaveSpeedAI LtxVideoV097I2V720pNode", + "WaveSpeedAI MMAudioV2Node", + "WaveSpeedAI Magi124bNode", + "WaveSpeedAI Minimax Image2Video", + "WaveSpeedAI MinimaxVideo01Node", + "WaveSpeedAI NightmareAIRealESRGANNode", + "WaveSpeedAI Preview Video", + "WaveSpeedAI SDXLLoraNode", + "WaveSpeedAI SDXLNode", + "WaveSpeedAI Save Audio", + "WaveSpeedAI SeedEditV3Node", + "WaveSpeedAI SeedreamV3Node", + "WaveSpeedAI SkyReelsV1Node", + "WaveSpeedAI Step1xEditNode", + "WaveSpeedAI UnoNode", + "WaveSpeedAI Upload Image", + "WaveSpeedAI Veo2I2vNode", + "WaveSpeedAI Veo2T2vNode", + "WaveSpeedAI ViduImageToVideo20Node", + "WaveSpeedAI ViduReferenceToVideo20Node", + "WaveSpeedAI ViduStartEndToVideo20Node", + "WaveSpeedAI Wan Image2Video", + "WaveSpeedAI Wan Loras", + "WaveSpeedAI Wan Text2Video", + "WaveSpeedAI Wan2114BVaceNode", + "WaveSpeedAI Wan21I2V480pLoraNode", + "WaveSpeedAI Wan21I2V480pLoraUltraFastNode", + "WaveSpeedAI Wan21I2V480pNode", + "WaveSpeedAI Wan21I2V480pUltraFastNode", + "WaveSpeedAI Wan21I2V720pLoraNode", + "WaveSpeedAI Wan21I2V720pLoraUltraFastNode", + "WaveSpeedAI Wan21I2V720pNode", + "WaveSpeedAI Wan21I2V720pUltraFastNode", + "WaveSpeedAI Wan21T2V480pLoraNode", + "WaveSpeedAI Wan21T2V480pLoraUltraFastNode", + "WaveSpeedAI Wan21T2V480pUltraFastNode", + "WaveSpeedAI Wan21T2V720pLoraNode", + "WaveSpeedAI Wan21T2V720pLoraUltraFastNode", + "WaveSpeedAI Wan21T2V720pNode", + "WaveSpeedAI Wan21T2V720pUltraFastNode" + ], + { + "title_aux": "wavespeed-comfyui" + } + ], + "https://github.com/WebDev9000/WebDev9000-Nodes": [ + [ + "IgnoreBraces", + "SettingsSwitch" + ], + { + "title_aux": "WebDev9000-Nodes" + } + ], + "https://github.com/Wenaka2004/ComfyUI-TagClassifier": [ + [ + "LLMProcessingNode" + ], + { + "title_aux": "ComfyUI-TagClassifier" + } + ], + "https://github.com/Wicloz/ComfyUI-Simply-Nodes": [ + [ + "WF_ConditionalLoraLoader", + "WF_FixupPixelArt", + "WF_MultilineText", + "WF_RandomStyle", + "WF_ResolutionSDXL", + "WF_TextFlow" + ], + { + "title_aux": "ComfyUI Simply Nodes" + } + ], + "https://github.com/Windecay/ComfyUI-ReservedVRAM": [ + [ + "ReservedVRAMSetter" + ], + { + "title_aux": "ComfyUI-ReservedVRAM" + } + ], + "https://github.com/X-School-Academy/X-FluxAgent": [ + [ + "X-FluxAgent.AICodeGenNode", + "X-FluxAgent.OpenAIChatnNode", + "X-FluxAgent.RichTextNode", + "X-FluxAgent.SaveTextNode" + ], + { + "title_aux": "X-FluxAgent" + } + ], + "https://github.com/X-T-E-R/ComfyUI-EasyCivitai-XTNodes": [ + [ + "CheckpointLoaderSimpleWithPreviews", + "CivitaiCheckpointLoaderSimple", + "CivitaiLoraLoader", + "CivitaiLoraLoaderStacked", + "CivitaiLoraLoaderStackedAdvanced", + "LoraLoaderStackedAdvancedWithPreviews", + "LoraLoaderStackedWithPreviews", + "LoraLoaderWithPreviews", + "XTNodesCleanPrompt", + "XTNodesPromptConcatenate" + ], + { + "title_aux": "ComfyUI Easy Civitai (XTNodes)" + } + ], + "https://github.com/XLabs-AI/x-flux-comfyui": [ + [ + "ApplyAdvancedFluxControlNet", + "ApplyAdvancedFluxIPAdapter", + "ApplyFluxControlNet", + "ApplyFluxIPAdapter", + "FluxLoraLoader", + "LoadFluxControlNet", + "LoadFluxIPAdapter", + "XlabsSampler" + ], + { + "title_aux": "x-flux-comfyui" + } + ], + "https://github.com/XWAVEart/comfyui-xwave-xlitch-nodes": [ + [ + "XWAVECellularNoiseNode", + "XWAVEPixelate", + "XWaveChromaticAberration", + "XWaveColorChannelManipulation", + "XWaveColorFilter", + "XWaveColorShiftExpansion", + "XWaveCurvedHueShift", + "XWaveGaussianBlur", + "XWaveHistogramGlitch", + "XWaveJPEGArtifacts", + "XWaveNoiseEffect", + "XWavePosterize", + "XWaveRGBChannelShift", + "XWaveSharpen" + ], + { + "title_aux": "ComfyUI XWAVE Nodes" + } + ], + "https://github.com/XchanBik/ComfyUI_SimpleBridgeNode": [ + [ + "LoraTextLoader", + "SimpleBridgeLoadNode", + "SimpleBridgeStoreNode" + ], + { + "description": "A custom node for ComfyUI to store and retrieve data dynamically.", + "nickname": "SimpleBridgeNode", + "title": "SimpleBridgeNode", + "title_aux": "ComfyUI_SimpleBridgeNode" + } + ], + "https://github.com/Xclbr7/ComfyUI-Merlin": [ + [ + "GeminiPromptExpander", + "Magic Photo Prompter \ud83e\ude84" + ], + { + "title_aux": "ComfyUI-Merlin: Magic Photo Prompter" + } + ], + "https://github.com/Xiangyu-CAS/HandFixer": [ + [ + "MediapipeHandNode" + ], + { + "title_aux": "HandFixer" + } + ], + "https://github.com/XieJunchen/comfyUI_LLM": [ + [ + "AppendImagesToBatch", + "CloudImageUploadNode", + "CloudImagesToVideoAndUpload", + "CloudVideoUploadNode", + "ComfyUI_LLM_Ollama", + "CreateEmptyImageBatch", + "DeepSeek_Online", + "GetFirstImageFromBatch", + "GetVideoClipByIndex", + "LoadGifFromLocal", + "LoadImgFromUrl", + "RemoveFirstOrLastImageFromBatch", + "SplitVideoByFrames", + "StringArrayFormatter", + "StringArrayIndexer" + ], + { + "title_aux": "comfyUI_LLM" + } + ], + "https://github.com/Xkipper/ComfyUI_SkipperNodes": [ + [ + "Embedding Stack", + "Simple Box" + ], + { + "title_aux": "ComfyUI_SkipperNodes" + } + ], + "https://github.com/XmYx/ComfyUI-SmolLM3": [ + [ + "SmolLM3ModelLoader", + "SmolLM3Sampler", + "SmolLM3SimpleGenerate" + ], + { + "title_aux": "ComfyUI-SmolLM3" + } + ], + "https://github.com/XmYx/deforum-comfy-nodes": [ + [ + "DeforumAddNoiseNode", + "DeforumAnimParamsNode", + "DeforumAreaPromptNode", + "DeforumBaseParamsNode", + "DeforumCacheLatentNode", + "DeforumCadenceNode", + "DeforumCadenceParamsNode", + "DeforumColorMatchNode", + "DeforumColorParamsNode", + "DeforumConditioningBlendNode", + "DeforumDepthParamsNode", + "DeforumDiffusionParamsNode", + "DeforumFILMInterpolationNode", + "DeforumFrameWarpNode", + "DeforumGetCachedLatentNode", + "DeforumHybridMotionNode", + "DeforumHybridParamsNode", + "DeforumHybridScheduleNode", + "DeforumIteratorNode", + "DeforumKSampler", + "DeforumLoadVideo", + "DeforumNoiseParamsNode", + "DeforumPromptNode", + "DeforumSeedNode", + "DeforumSetVAEDownscaleRatioNode", + "DeforumSimpleInterpolationNode", + "DeforumSingleSampleNode", + "DeforumTranslationParamsNode", + "DeforumVideoSaveNode" + ], + { + "title_aux": "Deforum Nodes" + } + ], + "https://github.com/Xyem/Xycuno-Oobabooga": [ + [ + "Oobabooga" + ], + { + "title_aux": "Xycuno Oobabooga" + } + ], + "https://github.com/YOUR-WORST-TACO/ComfyUI-TacoNodes": [ + [ + "Example", + "TacoAnimatedLoader", + "TacoGifMaker", + "TacoImg2ImgAnimatedLoader", + "TacoImg2ImgAnimatedProcessor", + "TacoLatent" + ], + { + "title_aux": "ComfyUI-TacoNodes" + } + ], + "https://github.com/YRIKKA/ComfyUI-InferenceTimeScaling": [ + [ + "InferenceTimeScaler", + "LoadCLIPScoreVerifier", + "LoadImageRewardVerifier", + "LoadQwenVLMVerifier" + ], + { + "title_aux": "ComfyUI-InferenceTimeScaling" + } + ], + "https://github.com/Yahweasel/ComfyUI-MinDalle": [ + [ + "MinDalleNode" + ], + { + "title_aux": "ComfyUI-MinDalle" + } + ], + "https://github.com/Yanick112/ComfyUI-ToSVG": [ + [ + "TS_ImageQuantize", + "TS_ImageToSVGStringBW_Potracer", + "TS_ImageToSVGStringBW_Vtracer", + "TS_ImageToSVGStringColor_Vtracer", + "TS_SVGBytesIOToString", + "TS_SVGPathSimplify", + "TS_SVGStringPreview", + "TS_SVGStringToImage", + "TS_SVGStringToSVGBytesIO", + "TS_SaveSVGString" + ], + { + "title_aux": "ComfyUI-ToSVG" + } + ], + "https://github.com/YaroslavIv/comfyui_swd": [ + [ + "SwDSelector" + ], + { + "title_aux": "SwD Preset Selector for ComfyUI" + } + ], + "https://github.com/YarvixPA/ComfyUI-NeuralMedia": [ + [ + "ApplyStyleModelEnhanced", + "ApplyStyleModelSimple", + "BatchImagesNode", + "FrameCalculator", + "InpaintConditioningNode", + "LoadImagesFromFolderNode", + "Prepimg2Vid", + "RemoveBackgroundNode", + "SaveCaptionsImages", + "SaveImageAdvance", + "StitchImages", + "StitchImagesAndMask", + "TextFieldNode", + "TileCheckpointPatchNode", + "UnstitchImages", + "UnstitchImagesAndMask", + "UpscaleImageWithModel", + "VTracerImageVectorizerNode", + "VacePatchLoader" + ], + { + "title_aux": "ComfyUI-NeuralMedia" + } + ], + "https://github.com/YinBailiang/MergeBlockWeighted_fo_ComfyUI": [ + [ + "MergeBlockWeighted" + ], + { + "title_aux": "MergeBlockWeighted_fo_ComfyUI" + } + ], + "https://github.com/Yo1up/Diffusion-Model-Detailer": [ + [ + "DetailModelUnwrapperNode", + "DetailModelWrapperNode" + ], + { + "title_aux": "Diffusion-Model-Detailer" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-AniSora": [ + [ + "AniSora", + "AniSoraPrompt", + "LoadAniSoraModel", + "SaveAniSora" + ], + { + "title_aux": "ComfyUI-AniSora" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-AudioX": [ + [ + "AudioXPrompt", + "Condition", + "Generate", + "LoadAudioXAudio", + "LoadAudioXModel", + "LoadAudioXVideo", + "SaveAudioXAudio" + ], + { + "title_aux": "ComfyUI-AudioX" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-Bagel": [ + [ + "BagelPrompt", + "ImageEditing", + "ImageGeneration", + "ImageThinkEditing", + "ImageThinkGeneration", + "ImageUnderstanding", + "LoadBAGELModel", + "LoadEditImage" + ], + { + "title_aux": "ComfyUI-Bagel" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-ChatterboxTTS": [ + [ + "ChatterboxAudioPrompt", + "ChatterboxPrompt", + "ChatterboxTTS", + "ChatterboxVC", + "LoadChatterboxAudio", + "LoadChatterboxTTSModel", + "LoadChatterboxTargetAudio", + "LoadChatterboxVCModel", + "SaveChatterboxAudio" + ], + { + "title_aux": "ComfyUI-ChatterboxTTS" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-Cobra": [ + [ + "ColorizeImage", + "DrawColorHint", + "ExtractLineArt", + "GetColorValue", + "LoadCobraModel" + ], + { + "title_aux": "ComfyUI-Cobra" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-Dia": [ + [ + "DiaTTS", + "InputDiaText", + "LoadDiaAudio", + "LoadDiaModel", + "SaveDiaAudio" + ], + { + "title_aux": "ComfyUI-Dia" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-Direct3D-S2": [ + [ + "Direct3DS2", + "LoadDirect3DS2Image", + "LoadDirect3DS2Model", + "SaveDirect3DS2Mesh" + ], + { + "title_aux": "ComfyUI-Direct3D-S2" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-HiDream-I1": [ + [ + "GenerateHiDreamImage", + "LoadHiDreamModel", + "SaveHiDreamImage" + ], + { + "title_aux": "ComfyUI-HiDream-I1" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-Hunyuan3D-2.1": [ + [ + "Hunyuan3DShapeGeneration", + "Hunyuan3DTexureSynthsis", + "LoadHunyuan3DImage", + "LoadHunyuan3DModel" + ], + { + "title_aux": "ComfyUI-Hunyuan3D-2.1" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-HunyuanPortrait": [ + [ + "HunyuanPortrait", + "LoadHunyuanPortraitConfig", + "LoadHunyuanPortraitImage", + "LoadHunyuanPortraitVideo" + ], + { + "title_aux": "ComfyUI-HunyuanPortrait" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-Kimi-VL": [ + [ + "KimiVL", + "LoadKimiVLImage", + "LoadKimiVLModel", + "SaveKimiVLText" + ], + { + "title_aux": "ComfyUI-Kimi-VL" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-LLaMA-Mesh": [ + [ + "Apply Gradient Color", + "Chat LLaMa Mesh", + "Visualize Mesh" + ], + { + "title_aux": "ComfyUI-LLaMA-Mesh" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-LayerAnimate": [ + [ + "LayerAnimateNode", + "LoadImages", + "LoadPretrainedModel" + ], + { + "title_aux": "ComfyUI-LayerAnimate" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-LiveCC": [ + [ + "LiveCC", + "LiveCCPrompt", + "LoadLiveCCModel", + "LoadLiveCCVideo", + "SaveLiveCCText" + ], + { + "title_aux": "ComfyUI-LiveCC" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-Matrix-Game": [ + [ + "GameVideoGenerator", + "LoadDiTModel", + "LoadGameImage", + "LoadMouseIcon", + "LoadTextEncoderModel", + "LoadVAEModel", + "MatrixGameOutput" + ], + { + "title_aux": "ComfyUI-Matrix-Game" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-MoviiGen": [ + [ + "LoadMoviiGenModel", + "MoviiGen", + "MoviiGenPrompt", + "SaveMoviiGen" + ], + { + "title_aux": "ComfyUI-MoviiGen" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-Multiverse": [ + [ + "PlayGame" + ], + { + "title_aux": "ComfyUI-Multiverse" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-Muyan-TTS": [ + [ + "Generate", + "InputText", + "LoadMuyanTTSModel", + "LoadRefAudio", + "PromptText", + "SaveMuyanTTSAudio" + ], + { + "title_aux": "ComfyUI-Muyan-TTS" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-OmniGen2": [ + [ + "LoadOmniGen2Image", + "LoadOmniGen2Model", + "OmniGen2" + ], + { + "title_aux": "ComfyUI-OmniGen2" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-OrpheusTTS": [ + [ + "Long Text Generation", + "Single Text Generation" + ], + { + "title_aux": "ComfyUI-OrpheusTTS" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-PhotoDoodle": [ + [ + "PhotoDoodle Gen" + ], + { + "title_aux": "ComfyUI-PhotoDoodle" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-PosterCraft": [ + [ + "LoadCustomTransformer", + "LoadPipeline", + "LoadPosterCraftPrompt", + "LoadQwenModel", + "PosterCraft", + "SavePosterCraft" + ], + { + "title_aux": "ComfyUI-PosterCraft" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-SkyReels-A2": [ + [ + "A2Prompt", + "A2VideoGenerator", + "CombineImages", + "LoadA2Model", + "NegativePrompt", + "ReferenceImages", + "SaveVideo" + ], + { + "title_aux": "ComfyUI-SkyReels-A2" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-SoundHub": [ + [ + "Load Audio", + "Preview Audio", + "Save Audio" + ], + { + "title_aux": "ComfyUI-SoundHub" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-Step1X-3D": [ + [ + "GeometryGeneration", + "GeometryLabelGeneration", + "LoadInputImage", + "LoadStep1X3DGeometryLabelModel", + "LoadStep1X3DGeometryModel", + "LoadStep1X3DTextureModel", + "LoadUntexturedMesh", + "SaveTexturedMesh", + "SaveUntexturedMesh", + "TexureSynthsis" + ], + { + "title_aux": "ComfyUI-Step1X-3D" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-StyleStudio": [ + [ + "StyleStudio Image Stylization" + ], + { + "title_aux": "ComfyUI-StyleStudio" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-ThinkSound": [ + [ + "LoadCaption", + "LoadCoTDescription", + "LoadOThinkSoundVideo", + "ThinkSound" + ], + { + "title_aux": "ComfyUI-ThinkSound" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-UNO": [ + [ + "ConfigSave", + "ImageConcat", + "ImagePathLoader", + "ImageSave", + "UNOGenerator", + "UNOParams" + ], + { + "title_aux": "ComfyUI-UNO" + } + ], + "https://github.com/Yuan-ManX/ComfyUI-Vui": [ + [ + "LoadVuiModel", + "LoadVuiPrompt", + "SaveVui", + "Vui" + ], + { + "title_aux": "ComfyUI-Vui" + } + ], + "https://github.com/Yukinoshita-Yukinoe/ComfyUI-Qwen-Node": [ + [ + "QwenAPILLMNode" + ], + { + "title_aux": "ComfyUI-Qwen-Node" + } + ], + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-APISR": [ + [ + "APISR_Lterative_Zho", + "APISR_ModelLoader_Zho", + "APISR_Zho" + ], + { + "title_aux": "APISR IN COMFYUI" + } + ], + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-Animated-optical-illusions": [ + [ + "AOI_Processing_Zho" + ], + { + "title_aux": "ComfyUI-Animated-optical-illusions" + } + ], + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-ArtGallery": [ + [ + "ArtGallery_Zho", + "ArtistsImage_Zho", + "CamerasImage_Zho", + "FilmsImage_Zho", + "MovementsImage_Zho", + "StylesImage_Zho" + ], + { + "title_aux": "ComfyUI-ArtGallery" + } + ], + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-BRIA_AI-RMBG": [ + [ + "BRIA_RMBG_ModelLoader_Zho", + "BRIA_RMBG_Zho" + ], + { + "title_aux": "ComfyUI-BRIA_AI-RMBG" + } + ], + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-DeepSeek-JanusPro": [ + [ + "Janus_ImageGeneration", + "Janus_ModelLoader", + "Janus_MultimodalUnderstanding" + ], + { + "title_aux": "ComfyUI-DeepSeek-JanusPro" + } + ], + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-DepthFM": [ + [ + "DepthFM_Literative_Zho", + "DepthFM_ModelLoader_Zho", + "DepthFM_Zho" + ], + { + "title_aux": "DepthFM IN COMFYUI" + } + ], + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-InstantID": [ + [ + "IDBaseModelLoader_fromhub", + "IDBaseModelLoader_local", + "IDControlNetLoader", + "IDGenerationNode", + "ID_Prompt_Styler", + "InsightFaceLoader_Zho", + "Ipadapter_instantidLoader" + ], + { + "title_aux": "ComfyUI-InstantID" + } + ], + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-Phi-3-mini": [ + [ + "Phi3mini_4k_Chat_Zho", + "Phi3mini_4k_ModelLoader_Zho", + "Phi3mini_4k_Zho" + ], + { + "title_aux": "Phi-3-mini in ComfyUI" + } + ], + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-PhotoMaker-ZHO": [ + [ + "BaseModel_Loader_fromhub", + "BaseModel_Loader_local", + "LoRALoader", + "NEW_PhotoMaker_Generation", + "PhotoMakerAdapter_Loader_fromhub", + "PhotoMakerAdapter_Loader_local", + "PhotoMaker_Generation", + "Prompt_Styler", + "Ref_Image_Preprocessing" + ], + { + "title_aux": "ComfyUI PhotoMaker (ZHO)" + } + ], + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-PixArt-alpha-Diffusers": [ + [ + "PA_BaseModelLoader_fromhub_Zho", + "PA_Generation_Zho", + "PA_Styler_Zho" + ], + { + "title_aux": "ComfyUI-PixArt-alpha-Diffusers" + } + ], + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-Q-Align": [ + [ + "QAlign_Zho" + ], + { + "title_aux": "ComfyUI-Q-Align" + } + ], + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-Qwen-VL-API": [ + [ + "QWenVL_API_S_Multi_Zho", + "QWenVL_API_S_Zho" + ], + { + "title_aux": "ComfyUI-Qwen-VL-API" + } + ], + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-SVD-ZHO": [ + [ + "SVD_Aspect_Ratio_Zho", + "SVD_Steps_MotionStrength_Seed_Zho", + "SVD_Styler_Zho" + ], + { + "title_aux": "ComfyUI-SVD-ZHO (WIP)" + } + ], + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-SegMoE": [ + [ + "SMoE_Generation_Zho", + "SMoE_ModelLoader_Zho" + ], + { + "title_aux": "ComfyUI SegMoE" + } + ], + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-Text_Image-Composite": [ + [ + "AlphaChanelAddByMask", + "ImageCompositeBy_BG_Zho", + "ImageCompositeBy_Zho", + "ImageComposite_BG_Zho", + "ImageComposite_Zho", + "RGB_Image_Zho", + "Text_Image_Frame_Zho", + "Text_Image_Multiline_Zho", + "Text_Image_Zho" + ], + { + "title_aux": "ComfyUI-Text_Image-Composite [WIP]" + } + ], + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-UltraEdit-ZHO": [ + [ + "UltraEdit_Generation_Zho", + "UltraEdit_ModelLoader_Zho", + "UltraEdit_ModelLoader_local_Zho" + ], + { + "title_aux": "ComfyUI-UltraEdit-ZHO" + } + ], + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-YoloWorld-EfficientSAM": [ + [ + "ESAM_ModelLoader_Zho", + "Yoloworld_ESAM_DetectorProvider_Zho", + "Yoloworld_ESAM_Zho", + "Yoloworld_ModelLoader_Zho" + ], + { + "title_aux": "ComfyUI YoloWorld-EfficientSAM" + } + ], + "https://github.com/ZHO-ZHO-ZHO/comfyui-portrait-master-zh-cn": [ + [ + "PortraitMaster_\u4e2d\u6587\u7248" + ], + { + "title_aux": "comfyui-portrait-master-zh-cn" + } + ], + "https://github.com/ZXL-Xinram/ComfyUI-AutoFlow": [ + [ + "AutoFlowPathJoiner", + "AutoFlowPathParser", + "AutoFlowPathValidator", + "AutoFlowStringCase", + "AutoFlowStringConcat", + "AutoFlowStringFormat", + "AutoFlowStringMultiConcat", + "AutoFlowStringReplace", + "AutoFlowStringSplit", + "AutoFlowTimestampFormatter", + "AutoFlowTimestampGenerator" + ], + { + "title_aux": "ComfyUI-AutoFlow" + } + ], + "https://github.com/ZZXYWQ/ComfyUI-ZZXYWQ": [ + [ + "StreamRecorder", + "VideoFormatConverter", + "ZZX_PaintsUndo" + ], + { + "title_aux": "ZZX Nodes" + } + ], + "https://github.com/Zachary116699/ComfyUI-LoadImageWithMetaDataEx": [ + [ + "ZLoadImageWithMetaDataFP" + ], + { + "title_aux": "ComfyUI_LoadImageWithMetaDataEx" + } + ], + "https://github.com/ZaneA/ComfyUI-ImageReward": [ + [ + "ImageRewardLoader", + "ImageRewardScore" + ], + { + "title_aux": "ImageReward" + } + ], + "https://github.com/Zar4X/ComfyUI-Batch-Process": [ + [ + "ImageBatchLoader", + "ImageBatchSaver", + "LoraBatchLoader", + "SimpleImageTagger", + "TXTBatchLoader", + "TextModifyTool" + ], + { + "title_aux": "ComfyUI-Batch-Process" + } + ], + "https://github.com/Zar4X/ComfyUI-Image-Resizing": [ + [ + "CalculateAspectRatioExtension", + "CalculateUpscaleFactor", + "CalculateUpscaleRounds", + "ExtendCanvasByPercentage", + "ExtendCanvasByPercentage (ZX)", + "ImageAspectRatioExtractor", + "ImageCropByPercentage", + "ImageResolutionExtractor", + "MaskCropByPercentage", + "ResizeToMultiple" + ], + { + "title_aux": "ComfyUI-Image-Resizing" + } + ], + "https://github.com/Zch6111/AI_Text_Comfyui": [ + [ + "AutoPromptGeneratorNode", + "GeminiImageToPrompt", + "SmartAutoPromptNode" + ], + { + "title_aux": "AI_Text_Comfyui" + } + ], + "https://github.com/ZeDarkAdam/ComfyUI-Embeddings-Tools": [ + [ + "EmbeddingsNameLoader", + "EmbendingList" + ], + { + "title_aux": "ComfyUI-Embeddings-Tools" + } + ], + "https://github.com/Zehong-Ma/ComfyUI-MagCache": [ + [ + "CompileModel", + "MagCache", + "MagCacheCalibration" + ], + { + "title_aux": "ComfyUI-MagCache" + } + ], + "https://github.com/Zeks/comfyui-rapidfire": [ + [ + "BracketEscaper", + "CachedCheckpoint", + "CsvWriterNode", + "ImmatureImageCounter", + "ImmatureImageDataLoader", + "MultiModelAdvancedKsampler", + "MultiModelCheckpointIterator", + "MultiModelPromptSaver", + "MultiModelPromptSaverIterative", + "Ranbooru", + "RandomCharacterSelector", + "RapidSchedulerCombo", + "RapidSchedulerSelector" + ], + { + "title_aux": "comfyui-rapidfire" + } + ], + "https://github.com/a-und-b/ComfyUI_Delay": [ + [ + "Add Delay" + ], + { + "title_aux": "ComfyUI_Delay" + } + ], + "https://github.com/a-und-b/ComfyUI_IC-Light-v2_fal": [ + [ + "ICLightV2" + ], + { + "title_aux": "IC-Light V2 (fal.ai)" + } + ], + "https://github.com/a-und-b/ComfyUI_JSON_Helper": [ + [ + "JSONStringToObjectNode" + ], + { + "title_aux": "ComfyUI_JSON_Helper" + } + ], + "https://github.com/a-und-b/ComfyUI_LoRA_from_URL": [ + [ + "Load LoRA From URL" + ], + { + "title_aux": "ComfyUI_LoRA_from_URL" + } + ], + "https://github.com/a-und-b/ComfyUI_MaskAreaCondition": [ + [ + "MaskAreaCondition", + "SelectData" + ], + { + "title_aux": "ComfyUI Mask Area Condition" + } + ], + "https://github.com/a1lazydog/ComfyUI-AudioScheduler": [ + [ + "AmplitudeToGraph", + "AmplitudeToNumber", + "AudioToAmplitudeGraph", + "AudioToAudioData", + "AudioToFFTs", + "BatchAmplitudeSchedule", + "ClipAmplitude", + "FloatArrayToGraph", + "GateNormalizedAmplitude", + "NormalizeAmplitude", + "NormalizedAmplitudeDrivenString", + "NormalizedAmplitudeToGraph", + "NormalizedAmplitudeToNumber", + "TransientAmplitudeBasic" + ], + { + "title_aux": "ComfyUI-AudioScheduler" + } + ], + "https://github.com/abdozmantar/ComfyUI-DeepExtract": [ + [ + "VocalAndSoundRemoverNode" + ], + { + "title_aux": "DeepExtract" + } + ], + "https://github.com/aburahamu/ComfyUI-IsNiceParts": [ + [ + "NiceHand" + ], + { + "title_aux": "ComfyUI-IsNiceParts" + } + ], + "https://github.com/aburahamu/ComfyUI-RequestsPoster": [ + [ + "GetImageFromSD3byI2I", + "GetImageFromSD3byT2I", + "PostImage2Discord", + "PostImage2X", + "PostText" + ], + { + "title_aux": "ComfyUI-RequestPoster" + } + ], + "https://github.com/abyz22/image_control": [ + [ + "abyz22_AddPrompt", + "abyz22_Convertpipe", + "abyz22_Editpipe", + "abyz22_FirstNonNull", + "abyz22_FromBasicPipe_v2", + "abyz22_Frompipe", + "abyz22_ImpactWildcardEncode", + "abyz22_ImpactWildcardEncode_GetPrompt", + "abyz22_Ksampler", + "abyz22_Padding Image", + "abyz22_RandomMask", + "abyz22_RemoveControlnet", + "abyz22_ResizeOpenpose", + "abyz22_SaveImage", + "abyz22_SetQueue", + "abyz22_ToBasicPipe", + "abyz22_Topipe", + "abyz22_blend_onecolor", + "abyz22_blendimages", + "abyz22_bypass", + "abyz22_censoring", + "abyz22_drawmask", + "abyz22_lamaInpaint", + "abyz22_lamaPreprocessor", + "abyz22_makecircles", + "abyz22_path_generator", + "abyz22_setimageinfo", + "abyz22_smallhead" + ], + { + "title_aux": "image_control" + } + ], + "https://github.com/acorderob/sd-webui-prompt-postprocessor": [ + [ + "ACBPPPSelectVariable", + "ACBPromptPostProcessor" + ], + { + "author": "ACB", + "description": "Node for processing prompts. Includes the following options: send to negative prompt, set variables, if/elif/else command for conditional content, wildcards and choices.", + "nickname": "ACB PPP", + "title": "Prompt Post Processor", + "title_aux": "Prompt PostProcessor" + } + ], + "https://github.com/adbrasi/ComfyUI-TrashNodes-DownloadHuggingface": [ + [ + "DownloadLinkChecker", + "ShowFileNames" + ], + { + "title_aux": "ComfyUI-TrashNodes-DownloadHuggingface" + } + ], + "https://github.com/adieyal/comfyui-dynamicprompts": [ + [ + "DPCombinatorialGenerator", + "DPFeelingLucky", + "DPJinja", + "DPMagicPrompt", + "DPOutput", + "DPRandomGenerator" + ], + { + "title_aux": "DynamicPrompts Custom Nodes" + } + ], + "https://github.com/adigayung/ComfyUI-Translator": [ + [ + "CLIP Text Encode (Auto Translate)", + "Prompt Text (Auto Translate)" + ], + { + "title_aux": "ComfyUI-Translator" + } + ], + "https://github.com/adriflex/ComfyUI_Blender_Texdiff": [ + [ + "ViewportColor", + "ViewportDepth" + ], + { + "title_aux": "ComfyUI_Blender_Texdiff" + } + ], + "https://github.com/aegis72/aegisflow_utility_nodes": [ + [ + "Add Text To Image", + "Aegisflow CLIP Pass", + "Aegisflow Conditioning Pass", + "Aegisflow Image Pass", + "Aegisflow Latent Pass", + "Aegisflow Mask Pass", + "Aegisflow Model Pass", + "Aegisflow Pos/Neg Pass", + "Aegisflow SDXL Tuple Pass", + "Aegisflow VAE Pass", + "Aegisflow controlnet preprocessor bus", + "Apply Instagram Filter", + "Binary INT Switch", + "Brightness_Contrast_Ally", + "Flatten Colors", + "Gaussian Blur_Ally", + "GlitchThis Effect", + "Hue Rotation", + "Image Flip_ally", + "Placeholder Tuple", + "Swap Color Mode", + "aegisflow Multi_Pass", + "aegisflow Multi_Pass XL", + "af_pipe_in_15", + "af_pipe_in_xl", + "af_pipe_out_15", + "af_pipe_out_xl" + ], + { + "title_aux": "AegisFlow Utility Nodes" + } + ], + "https://github.com/aegis72/comfyui-styles-all": [ + [ + "menus" + ], + { + "title_aux": "ComfyUI-styles-all" + } + ], + "https://github.com/agilly1989/ComfyUI_agilly1989_motorway": [ + [ + "MotorwayFloat", + "MotorwayInt", + "MotorwaySeed", + "MotorwayStr", + "MotorwayStrMulti" + ], + { + "title_aux": "ComfyUI_agilly1989_motorway" + } + ], + "https://github.com/ahernandezmiro/ComfyUI-GCP_Storage_tools": [ + [ + "GCPReadImageNode", + "GCPWriteImageNode" + ], + { + "title_aux": "ComfyUI-GCP_Storage_tools" + } + ], + "https://github.com/ai-liam/comfyui-liam": [ + [ + "AiStoreAzureGPTLiam", + "GetBetterDepthImage", + "LiamLibDisplayText", + "LiamLibFillImage", + "LiamLibImageToGray", + "LiamLibLoadImage", + "LiamLibMergeText", + "LiamLibSaveImg", + "LiamLibSaveText", + "OllamaApiTNodeLiam", + "PreviewReliefImage", + "SpeechRecognitionLiam", + "SpeechSynthesisLiam" + ], + { + "title_aux": "LiamUtil" + } + ], + "https://github.com/ai-liam/comfyui_liam_util": [ + [ + "LiamLoadImage" + ], + { + "title_aux": "LiamUtil (single node)" + } + ], + "https://github.com/ai-shizuka/ComfyUI-tbox": [ + [ + "AnimalPosePreprocessor", + "BatchManager", + "CannyPreprocessor", + "ConstrainImageNode", + "DWPosePreprocessor", + "DWPreprocessor", + "DensePosePreprocessor", + "GFPGANNode", + "ImageLoader", + "ImageResize", + "ImageSaver", + "ImageSize", + "ImagesSaver", + "LineArtPreprocessor", + "LineartStandardPreprocessor", + "MaskAddNode", + "MiDaSDepthPreprocessor", + "PurgeVRAMNode", + "VideoInfo", + "VideoLoader", + "VideoSaver", + "WatermarkNode" + ], + { + "author": "tstandley", + "title_aux": "ComfyUI-tbox" + } + ], + "https://github.com/aiaiaikkk/ComfyUI-Curve": [ + [ + "CameraRawEnhanceNode", + "CameraRawToneCurveNode", + "ColorGradingNode", + "CurvePresetNode", + "GaussianBlurNode", + "HistogramAnalysisNode", + "PhotoshopCurveNode", + "PhotoshopHSLNode", + "PhotoshopLevelsNode" + ], + { + "title_aux": "ComfyUI-Curve" + } + ], + "https://github.com/aiaiaikkk/kontext-super-prompt": [ + [ + "APIFluxKontextEnhancer", + "AnnotationDataNode", + "OllamaFluxKontextEnhancerV2", + "TextGenWebUIFluxKontextEnhancer", + "VisualPromptEditor" + ], + { + "title_aux": "kontext-super-prompt" + } + ], + "https://github.com/aianimation55/ComfyUI-FatLabels": [ + [ + "FatLabels" + ], + { + "title_aux": "Comfy UI FatLabels" + } + ], + "https://github.com/aiartvn/A2V_Multi_Image_Composite": [ + [ + "A2V_Multi_Image_Composite" + ], + { + "title_aux": "A2V Multi Image Composite" + } + ], + "https://github.com/aicuai/aicu-comfyui-stability-ai-api": [ + [ + "Preview3DModel", + "Save3DModel", + "StabilityControlSketch", + "StabilityControlStructure", + "StabilityControlStyle", + "StabilityEdit", + "StabilityImageCore", + "StabilityImageSD3", + "StabilityImageToVideo", + "StabilityImageUltra", + "StabilityUpscaleConservative", + "StabilityUpscaleCreative", + "StabilityUpscaleFast", + "StableFast3D", + "StablePointAware3D" + ], + { + "title_aux": "aicu-comfyui-stability-ai-api" + } + ], + "https://github.com/aidec/Comfyui_TextBatch_aidec": [ + [ + "ImageFilenameProcessor", + "ImageInfoExtractor", + "ImageQueueProcessor", + "LoadImagesFromDirBatch", + "PathParser", + "TextBatch", + "TextQueueProcessor", + "TextSplitCounter" + ], + { + "title_aux": "Comfyui_TextBatch_aidec" + } + ], + "https://github.com/aidenli/ComfyUI_NYJY": [ + [ + "BailianChat", + "BailianChatOption", + "BailianVL", + "BailianVLOption", + "CivitaiPrompt", + "CommonLLMChat", + "ConvertAnyToString", + "ConvertStringToNumber", + "CustomLatentImage-NYJY", + "CustomLatentImageSimple", + "FloatSlider-NYJY", + "FluxProOnline", + "GetItemFromList", + "JoyCaption", + "JoyCaptionAlpha1Online", + "JoyCaptionAlpha2Online", + "JoyTag", + "JsonDumps", + "JsonGetValueByKeys", + "JsonLoads", + "ReadFileToString", + "SplitString", + "Translate" + ], + { + "title_aux": "ComfyUI_NYJY" + } + ], + "https://github.com/aigc-apps/EasyAnimate": [ + [ + "CameraBasicFromChaoJie", + "CameraCombineFromChaoJie", + "CameraJoinFromChaoJie", + "CameraTrajectoryFromChaoJie", + "CreateTrajectoryBasedOnKJNodes", + "EasyAnimateI2VSampler", + "EasyAnimateT2VSampler", + "EasyAnimateV2VSampler", + "EasyAnimateV5_I2VSampler", + "EasyAnimateV5_T2VSampler", + "EasyAnimateV5_V2VSampler", + "EasyAnimate_TextBox", + "ImageMaximumNode", + "LoadEasyAnimateLora", + "LoadEasyAnimateModel", + "TextBox" + ], + { + "title_aux": "Video Generation Nodes for EasyAnimate" + } + ], + "https://github.com/aigc-apps/VideoX-Fun": [ + [ + "CameraBasicFromChaoJie", + "CameraCombineFromChaoJie", + "CameraJoinFromChaoJie", + "CameraTrajectoryFromChaoJie", + "CogVideoXFunInpaintSampler", + "CogVideoXFunT2VSampler", + "CogVideoXFunV2VSampler", + "CreateTrajectoryBasedOnKJNodes", + "FunRiflex", + "FunTextBox", + "ImageMaximumNode", + "LoadCogVideoXFunLora", + "LoadCogVideoXFunModel", + "LoadWanFunLora", + "LoadWanFunModel", + "LoadWanLora", + "LoadWanModel", + "VideoToCanny", + "VideoToDepth", + "VideoToOpenpose", + "WanFunInpaintSampler", + "WanFunT2VSampler", + "WanFunV2VSampler", + "WanI2VSampler", + "WanT2VSampler" + ], + { + "title_aux": "VideoX-Fun" + } + ], + "https://github.com/aimerib/ComfyUI_HigherBitDepthSaveImage": [ + [ + "SaveImageHigherBitDepth" + ], + { + "title_aux": "ComfyUI-HigherBitDepthSaveImage" + } + ], + "https://github.com/ainewsto/Comfyui-chatgpt-api": [ + [ + "ComfyuiChatGPTApi", + "Comfyui_gpt_image_1", + "Comfyui_gpt_image_1_edit" + ], + { + "title_aux": "Comfyui-chatgpt-api" + } + ], + "https://github.com/ainewsto/Comfyui-google-veo2-api": [ + [ + "ComfyuiGoogleVeo2" + ], + { + "title_aux": "Comfyui-google-veo2-api" + } + ], + "https://github.com/ainewsto/Comfyui_Comfly_v2": [ + [ + "ComflyChatGPTApi", + "ComflyGeminiAPI", + "ComflyJimengApi", + "ComflyJimengVideoApi", + "ComflySeededit", + "Comfly_Flux_Kontext", + "Comfly_Flux_Kontext_Edit", + "Comfly_Flux_Kontext_bfl", + "Comfly_Googel_Veo3", + "Comfly_Mj", + "Comfly_Mju", + "Comfly_Mjv", + "Comfly_gpt_image_1", + "Comfly_gpt_image_1_edit", + "Comfly_kling_image2video", + "Comfly_kling_text2video", + "Comfly_lip_sync", + "Comfly_mjstyle", + "Comfly_upload", + "Comfly_video_extend" + ], + { + "title_aux": "Comfyui_Comfly_v2" + } + ], + "https://github.com/ainewsto/comfyui-labs-google": [ + [ + "ComfyUI-ImageFx", + "ComfyUI-Whisk", + "ComfyUI-Whisk-Prompts" + ], + { + "title_aux": "comfyui-labs-google" + } + ], + "https://github.com/aisabervisionlab/ComfyUI_merge_ASVL": [ + [ + "ASVL" + ], + { + "title_aux": "ComfyUI_merge_ASVL" + } + ], + "https://github.com/ajbergh/comfyui-ethnicity_hairstyle_clip_encoder": [ + [ + "CLIPTextEncodeWithExtras" + ], + { + "title_aux": "comfyui-ethnicity_hairstyle_clip_encoder" + } + ], + "https://github.com/akatz-ai/ComfyUI-AKatz-Nodes": [ + [ + "AK_AdjustDepthmapBrightness", + "AK_AdjustListSize", + "AK_AnimatedDilationMaskLinear", + "AK_AudioFramesyncSchedule", + "AK_AudioreactiveDilateMaskInfinite", + "AK_AudioreactiveDilationMask", + "AK_AudioreactiveDynamicDilationMask", + "AK_BinaryAmplitudeGate", + "AK_BlobTrack", + "AK_BrightnessToFloatList", + "AK_ConvertListToFloatList", + "AK_DilateMaskLinearInfinite", + "AK_FadeBetweenBatches", + "AK_FlexFeatureToFloatList", + "AK_FloatListToDilateMaskSchedule", + "AK_FloatListToFlexFeature", + "AK_IPAdapterCustomWeights", + "AK_KeyframeScheduler", + "AK_LagChop", + "AK_ListToNumpyFloatArray", + "AK_MakeDepthmapSeamless", + "AK_NormalizeMaskImage", + "AK_RescaleFloatList", + "AK_ScaleMask", + "AK_ScheduledBinaryComparison", + "AK_ShrinkNumSequence", + "AK_SplitImageBatch", + "AK_VideoSpeedAdjust", + "Scale Mask Node" + ], + { + "author": "akatz", + "description": "Custom node pack for nodes I use in my workflows.", + "nickname": "Akatz Custom Nodes", + "title": "Akatz Custom Nodes", + "title_aux": "Akatz Custom Nodes" + } + ], + "https://github.com/akatz-ai/ComfyUI-Basic-Math": [ + [ + "BasicMath", + "BooleanInput", + "BooleanLogic", + "BooleanUnary", + "FloatComparison", + "FloatInput", + "IntMath", + "IntegerComparison", + "IntegerInput", + "MathConstants", + "NumberClamp", + "NumberComparison", + "NumberInRange", + "NumberLerp", + "NumberRound", + "PreciseFloatInput", + "StringComparison", + "StringInput", + "ToBool", + "ToFloat", + "ToInt", + "ToString", + "UnaryMath" + ], + { + "title_aux": "ComfyUI-Basic-Math" + } + ], + "https://github.com/akatz-ai/ComfyUI-DepthCrafter-Nodes": [ + [ + "DepthCrafter", + "DownloadAndLoadDepthCrafterModel" + ], + { + "author": "akatz", + "description": "Custom nodes for use with DepthCrafter. Create consistent depth maps for your videos.", + "nickname": "DepthCrafter Nodes", + "title": "DepthCrafter Nodes", + "title_aux": "DepthCrafter Nodes" + } + ], + "https://github.com/akatz-ai/ComfyUI-Depthflow-Nodes": [ + [ + "Depthflow", + "DepthflowEffectColor", + "DepthflowEffectDOF", + "DepthflowEffectInpaint", + "DepthflowEffectVignette", + "DepthflowMotionArc", + "DepthflowMotionCosine", + "DepthflowMotionLinear", + "DepthflowMotionPresetCircle", + "DepthflowMotionPresetDolly", + "DepthflowMotionPresetHorizontal", + "DepthflowMotionPresetOrbital", + "DepthflowMotionPresetVertical", + "DepthflowMotionPresetZoom", + "DepthflowMotionSetTarget", + "DepthflowMotionSine", + "DepthflowMotionTriangle" + ], + { + "author": "akatz", + "description": "Custom nodes for use with Tremeschin's Depthflow library.", + "nickname": "Depthflow Nodes", + "title": "Depthflow Nodes", + "title_aux": "\ud83c\udf0a Depthflow Nodes" + } + ], + "https://github.com/akatz-ai/ComfyUI-X-Portrait-Nodes": [ + [ + "DownloadXPortraitModel", + "XPortrait" + ], + { + "author": "akatz", + "description": "Custom nodes for use with X-Portrait. Animate portraits with an input video and a reference image.", + "nickname": "X-Portrait Nodes", + "title": "X-Portrait Nodes", + "title_aux": "ComfyUI-X-Portrait-Nodes" + } + ], + "https://github.com/akierson/ComfyUI-textnodes": [ + [ + "Prompt Truncate", + "Tidy Tags" + ], + { + "title_aux": "ComfyUI-textnodes" + } + ], + "https://github.com/akierson/comfyui-colornodes": [ + [ + "Color Picker", + "Color to Hex", + "Color to RGB", + "Image Replace Color", + "Invert Color" + ], + { + "title_aux": "comfyui-colornodes" + } + ], + "https://github.com/al-swaiti/All-IN-ONE-style": [ + [ + "ComfyUIStyler", + "menus" + ], + { + "title_aux": "All-IN-ONE-style" + } + ], + "https://github.com/al-swaiti/ComfyUI-CascadeResolutions": [ + [ + "CascadeResolutions" + ], + { + "title_aux": "ComfyUI-CascadeResolutions" + } + ], + "https://github.com/al-swaiti/ComfyUI-OllamaGemini": [ + [ + "ClaudeAPI", + "GeminiAPI", + "GeminiBRIA_RMBG", + "GeminiCLIPSeg", + "GeminiCombineSegMasks", + "GeminiComfyUIStyler", + "GeminiConvertRasterToVector", + "GeminiFLUXResolutions", + "GeminiImageGenerator", + "GeminiSVGPreview", + "GeminiSaveSVG", + "GeminiSaveText", + "GeminiSmartPromptGenerator", + "GeminiTextSplitter", + "ListAvailableModels", + "OllamaAPI", + "OpenAIAPI", + "QwenAPI", + "style_menus" + ], + { + "title_aux": "GeminiOllama ComfyUI Extension" + } + ], + "https://github.com/alanhuang67/ComfyUI-FAI-Node": [ + [ + "FAIDynamicMask", + "FAIScaleScheduler", + "FAI_Voronoi_Generator" + ], + { + "title_aux": "FAI-Node" + } + ], + "https://github.com/alastor-666-1933/caching_to_not_waste": [ + [ + "caching_condition", + "caching_controlnet", + "caching_from_combined_images", + "caching_image", + "caching_mask", + "caching_text", + "caching_wildcard_list" + ], + { + "title_aux": "Caching to not Waste" + } + ], + "https://github.com/alchemine/comfyui-alchemine-pack": [ + [ + "CustomProcessor", + "DanbooruRetriever", + "FilterSubtags", + "FilterTags", + "ProcessTags", + "ReplaceUnderscores" + ], + { + "title_aux": "ComfyUI-Alchemine-Pack" + } + ], + "https://github.com/aleolidev/comfy_kaizen_package": [ + [ + "KaizenImageComposite" + ], + { + "title_aux": "Kaizen Package" + } + ], + "https://github.com/alessandroperilli/APW_Nodes": [ + [ + "APW_CloudImageSize", + "APW_ImageListFilter", + "APW_ImageSaver", + "APW_LocalImageSize", + "APW_LocalVideoSize" + ], + { + "title_aux": "apw_nodes" + } + ], + "https://github.com/alessandroperilli/OCS_Nodes": [ + [ + "OCS_CloudImageSize", + "OCS_ImageListFilter", + "OCS_ImageSaver", + "OCS_LocalImageSize", + "OCS_LocalVideoSize" + ], + { + "title_aux": "Open Creative Studio Nodes" + } + ], + "https://github.com/alessandrozonta/ComfyUI-CenterNode": [ + [ + "BBoxCrop" + ], + { + "title_aux": "ComfyUI-CenterNode" + } + ], + "https://github.com/alessandrozonta/ComfyUI-Layers": [ + [ + "LayersSaver - Save Layer", + "LayersSaver - Save Layer From Images" + ], + { + "title_aux": "Save Layers Node for ComfyUI" + } + ], + "https://github.com/alessandrozonta/ComfyUI-OpenPose": [ + [ + "OpenPose - Get poses" + ], + { + "author": "joe", + "title_aux": "OpenPose Node" + } + ], + "https://github.com/alessandrozonta/ComfyUI-PoseDirection": [ + [ + "OpenPose - Get direction" + ], + { + "title_aux": "ComfyUI-PoseDirection" + } + ], + "https://github.com/alessandrozonta/Comfyui-LoopLoader": [ + [ + "LoadLoopImagesFromDir" + ], + { + "title_aux": "Comfyui-LoopLoader" + } + ], + "https://github.com/alexcong/ComfyUI_QwenVL": [ + [ + "Qwen2.5", + "Qwen2.5VL" + ], + { + "title_aux": "Qwen2-VL wrapper for ComfyUI" + } + ], + "https://github.com/alexgenovese/ComfyUI-UNO-Flux": [ + [ + "UNOGenerate", + "UNOModelLoader" + ], + { + "title_aux": "ComfyUI UNO Nodes" + } + ], + "https://github.com/alexgenovese/ComfyUI_HF_Servelress_Inference": [ + [ + "HF_QuestionAnswer", + "Job_Caption", + "Joy_caption", + "Joy_caption_load" + ], + { + "author": "Alex Genovese", + "description": "Huggingface Api Serverless request", + "nickname": "alexgenovese", + "title": "Huggingface Api Serverless", + "title_aux": "Huggingface Api Serverless" + } + ], + "https://github.com/alexisrolland/ComfyUI-Blender": [ + [ + "BlenderInputBoolean", + "BlenderInputCombo", + "BlenderInputFloat", + "BlenderInputInt", + "BlenderInputLoad3D", + "BlenderInputLoadImage", + "BlenderInputSeed", + "BlenderInputString", + "BlenderInputStringMultiline", + "BlenderOutputSaveImage" + ], + { + "title_aux": "ComfyUI-Blender" + } + ], + "https://github.com/alexisrolland/ComfyUI-Phi": [ + [ + "LoadPhi", + "LoadPhiMultimodal", + "LoadPhiVision", + "RunPhi", + "RunPhiMultimodal", + "RunPhiVision" + ], + { + "title_aux": "ComfyUI-Phi" + } + ], + "https://github.com/alisson-anjos/ComfyUI-Ollama-Describer": [ + [ + "InputText", + "JsonPropertyExtractorNode", + "OllamaCaptionerExtraOptions", + "OllamaImageCaptioner", + "OllamaImageDescriber", + "OllamaTextDescriber", + "ShowText", + "TextTransformer" + ], + { + "title_aux": "ComfyUI-Ollama-Describer" + } + ], + "https://github.com/alpertunga-bile/image-caption-comfyui": [ + [ + "Image Caption Node", + "Insert Prompt Node" + ], + { + "title_aux": "image-caption-comfyui" + } + ], + "https://github.com/alpertunga-bile/prompt-generator-comfyui": [ + [ + "Prompt Generator" + ], + { + "title_aux": "prompt-generator" + } + ], + "https://github.com/alsritter/asymmetric-tiling-comfyui": [ + [ + "Asymmetric_Tiling_KSampler" + ], + { + "title_aux": "asymmetric-tiling-comfyui" + } + ], + "https://github.com/alt-key-project/comfyui-dream-project": [ + [ + "Analyze Palette [Dream]", + "Beat Curve [Dream]", + "Big Float Switch [Dream]", + "Big Image Switch [Dream]", + "Big Int Switch [Dream]", + "Big Latent Switch [Dream]", + "Big Palette Switch [Dream]", + "Big Text Switch [Dream]", + "Boolean To Float [Dream]", + "Boolean To Int [Dream]", + "Build Prompt [Dream]", + "CSV Curve [Dream]", + "CSV Generator [Dream]", + "Calculation [Dream]", + "Common Frame Dimensions [Dream]", + "Compare Palettes [Dream]", + "FFMPEG Video Encoder [Dream]", + "File Count [Dream]", + "Finalize Prompt [Dream]", + "Float Input [Dream]", + "Float to Log Entry [Dream]", + "Frame Count Calculator [Dream]", + "Frame Counter (Directory) [Dream]", + "Frame Counter (Simple) [Dream]", + "Frame Counter Info [Dream]", + "Frame Counter Offset [Dream]", + "Frame Counter Time Offset [Dream]", + "Image Brightness Adjustment [Dream]", + "Image Color Shift [Dream]", + "Image Contrast Adjustment [Dream]", + "Image Motion [Dream]", + "Image Sequence Blend [Dream]", + "Image Sequence Loader [Dream]", + "Image Sequence Saver [Dream]", + "Image Sequence Tweening [Dream]", + "Int Input [Dream]", + "Int to Log Entry [Dream]", + "Laboratory [Dream]", + "Linear Curve [Dream]", + "Log Entry Joiner [Dream]", + "Log File [Dream]", + "Noise from Area Palettes [Dream]", + "Noise from Palette [Dream]", + "Palette Color Align [Dream]", + "Palette Color Shift [Dream]", + "Random Prompt Words [Dream]", + "Sample Image Area as Palette [Dream]", + "Sample Image as Palette [Dream]", + "Saw Curve [Dream]", + "Sine Curve [Dream]", + "Smooth Event Curve [Dream]", + "String Input [Dream]", + "String Tokenizer [Dream]", + "String to Log Entry [Dream]", + "Text Input [Dream]", + "Triangle Curve [Dream]", + "Triangle Event Curve [Dream]", + "WAV Curve [Dream]" + ], + { + "title_aux": "Dream Project Animation Nodes" + } + ], + "https://github.com/alt-key-project/comfyui-dream-video-batches": [ + [ + "Blended Transition [DVB]", + "Calculation [DVB]", + "Create Frame Set [DVB]", + "Divide [DVB]", + "Fade From Black [DVB]", + "Fade To Black [DVB]", + "Float Input [DVB]", + "For Each Done [DVB]", + "For Each Filename [DVB]", + "Frame Set Append [DVB]", + "Frame Set Frame Dimensions Scaled [DVB]", + "Frame Set Index Offset [DVB]", + "Frame Set Merger [DVB]", + "Frame Set Reindex [DVB]", + "Frame Set Repeat [DVB]", + "Frame Set Reverse [DVB]", + "Frame Set Split Beginning [DVB]", + "Frame Set Split End [DVB]", + "Frame Set Splitter [DVB]", + "Generate Inbetween Frames [DVB]", + "Int Input [DVB]", + "Linear Camera Pan [DVB]", + "Linear Camera Roll [DVB]", + "Linear Camera Zoom [DVB]", + "Load Image From Path [DVB]", + "Multiply [DVB]", + "Sine Camera Pan [DVB]", + "Sine Camera Roll [DVB]", + "Sine Camera Zoom [DVB]", + "String Input [DVB]", + "Text Input [DVB]", + "Trace Memory Allocation [DVB]", + "Unwrap Frame Set [DVB]" + ], + { + "title_aux": "Dream Video Batches" + } + ], + "https://github.com/an90ray/ComfyUI_RErouter_CustomNodes": [ + [ + "CLIPTextEncode (RE)", + "CLIPTextEncodeSDXL (RE)", + "CLIPTextEncodeSDXLRefiner (RE)", + "Int (RE)", + "RErouter <=", + "RErouter =>", + "String (RE)" + ], + { + "title_aux": "ComfyUI_RErouter_CustomNodes" + } + ], + "https://github.com/andersxa/comfyui-PromptAttention": [ + [ + "CLIPAttentionMaskEncode" + ], + { + "title_aux": "CLIP Directional Prompt Attention" + } + ], + "https://github.com/andygill/comfyui-sunflower-nodes": [ + [ + "DepthViewToIsometric", + "DisparityToDepthView", + "EquirectangularToRectilinear", + "ImageChannelSelect", + "MaskChannelSelect", + "ResizeDown" + ], + { + "title_aux": "comfyui-sunflower-nodes" + } + ], + "https://github.com/angeloshredder/StableCascadeResizer": [ + [ + "CascadeResize" + ], + { + "title_aux": "StableCascadeResizer" + } + ], + "https://github.com/angree/ComfyUI-Q_GLB_Material_Modifier": [ + [ + "QManualGLBMaterialModifier", + "QPresetGLBMaterialModifier" + ], + { + "title_aux": "Q GLB Material Modifier" + } + ], + "https://github.com/angree/ComfyUI-Q_find-mask-size": [ + [ + "QImageCropCalculator" + ], + { + "title_aux": "Q Find Mask Size" + } + ], + "https://github.com/anhkhoatranle30/Handy-Nodes-ComfyUI": [ + [ + "Custom Save Image //Handy" + ], + { + "author": "Khoa Tran", + "description": "This extension offers various handy nodes.", + "nickname": "Handy-Nodes-ComfyUI", + "title": "Handy-Nodes-ComfyUI", + "title_aux": "Handy Node ComfyUI" + } + ], + "https://github.com/arcum42/ComfyUI_SageUtils": [ + [ + "SageSetWildcardText", + "Sage_AdvSamplerInfo", + "Sage_CLIPLoaderFromInfo", + "Sage_CLIPSelector", + "Sage_CacheMaintenance", + "Sage_CheckLorasForUpdates", + "Sage_CheckpointLoaderRecent", + "Sage_CheckpointLoaderSimple", + "Sage_CheckpointSelector", + "Sage_CleanText", + "Sage_CollectKeywordsFromLoraStack", + "Sage_ConditioningZeroOut", + "Sage_ConstructLLMPrompt", + "Sage_ConstructLLMPromptExtra", + "Sage_ConstructMetadata", + "Sage_ConstructMetadataLite", + "Sage_CropImage", + "Sage_CubiqImageResize", + "Sage_DualCLIPSelector", + "Sage_DualCLIPTextEncode", + "Sage_DualCLIPTextEncodeLumina2", + "Sage_EmptyLatentImagePassthrough", + "Sage_FreeMemory", + "Sage_GetFileHash", + "Sage_GuessResolutionByRatio", + "Sage_Halt", + "Sage_HiDreamE1_Instruction", + "Sage_JoinText", + "Sage_KSampler", + "Sage_KSamplerAudioDecoder", + "Sage_KSamplerDecoder", + "Sage_KSamplerTiledDecoder", + "Sage_LMStudioLLMPromptText", + "Sage_LMStudioLLMPromptVision", + "Sage_LMStudioLLMPromptVisionRefine", + "Sage_LastLoraInfo", + "Sage_LoadImage", + "Sage_LoadImageTextSetFromFolderNode", + "Sage_LoadModelFromInfo", + "Sage_Load_Dataset_From_Folder", + "Sage_LogicalSwitch", + "Sage_LoraStack", + "Sage_LoraStackLoader", + "Sage_LoraStackRecent", + "Sage_ModelInfo", + "Sage_ModelLoraStackLoader", + "Sage_ModelReport", + "Sage_ModelShifts", + "Sage_MultiModelPicker", + "Sage_OllamaLLMPromptText", + "Sage_OllamaLLMPromptVision", + "Sage_OllamaLLMPromptVisionRefine", + "Sage_PonyPrefix", + "Sage_PonyStyle", + "Sage_QuadCLIPSelector", + "Sage_QuickLoraStack", + "Sage_QuickNineLoraStack", + "Sage_QuickResPicker", + "Sage_QuickSixLoraStack", + "Sage_ReferenceImage", + "Sage_SamplerInfo", + "Sage_SaveImageWithMetadata", + "Sage_SaveText", + "Sage_SetText", + "Sage_SixLoraStack", + "Sage_TextRandomLine", + "Sage_TextSelectLine", + "Sage_TextSubstitution", + "Sage_TextSwitch", + "Sage_TextWeight", + "Sage_TilingInfo", + "Sage_TrainingCaptionsToConditioning", + "Sage_TripleCLIPSelector", + "Sage_TripleJoinText", + "Sage_TripleLoraStack", + "Sage_TripleQuickLoraStack", + "Sage_UNETLoader", + "Sage_UNETLoaderFromInfo", + "Sage_UNETSelector", + "Sage_UnetClipVaeToModelInfo", + "Sage_VAELoaderFromInfo", + "Sage_VAESelector", + "Sage_ViewAnything", + "Sage_ViewNotes" + ], + { + "title_aux": "Sage Utils" + } + ], + "https://github.com/asaddi/ComfyUI-YALLM-node": [ + [ + "LLMChat", + "LLMMinP", + "LLMModel", + "LLMPrependAppend", + "LLMProvider", + "LLMTemperature", + "LLMTextLatch", + "LLMTopK", + "LLMTopP" + ], + { + "title_aux": "ComfyUI-YALLM-node" + } + ], + "https://github.com/asaddi/YALLM-LlamaVision": [ + [ + "LLMSamplerSettings", + "LlamaVisionChat", + "LlamaVisionModel" + ], + { + "title_aux": "YALLM-LlamaVision" + } + ], + "https://github.com/asagi4/ComfyUI-Adaptive-Guidance": [ + [ + "AdaptiveGuidance", + "AdaptiveProjectedGuidance", + "PerpNegAdaptiveGuidanceGuider" + ], + { + "title_aux": "Adaptive Guidance for ComfyUI" + } + ], + "https://github.com/asagi4/ComfyUI-CADS": [ + [ + "CADS" + ], + { + "title_aux": "ComfyUI-CADS" + } + ], + "https://github.com/asagi4/ComfyUI-NPNet": [ + [ + "NPNetGoldenNoise" + ], + { + "title_aux": "ComfyUI NPNet (Golden Noise)" + } + ], + "https://github.com/asagi4/comfyui-prompt-control": [ + [ + "PCAddMaskToCLIP", + "PCAddMaskToCLIPMany", + "PCAttentionCoupleBatchNegative", + "PCExtractScheduledPrompt", + "PCLazyLoraLoader", + "PCLazyLoraLoaderAdvanced", + "PCLazyTextEncode", + "PCLazyTextEncodeAdvanced", + "PCLoraHooksFromText", + "PCMacroExpand", + "PCSaveExpandedWorkflow", + "PCSetLogLevel", + "PCSetPCTextEncodeSettings", + "PCTextEncode", + "PCTextEncodeWithRange" + ], + { + "author": "asagi4", + "description": "Control LoRA and prompt scheduling, advanced text encoding, regional prompting, and much more, through your text prompt. Generates dynamic graphs that are literally identical to handcrafted noodle soup.", + "nickname": "ComfyUI Prompt Control", + "title": "ComfyUI Prompt Control", + "title_aux": "ComfyUI Prompt Control" + } + ], + "https://github.com/asagi4/comfyui-utility-nodes": [ + [ + "MUConditioningCutoff", + "MUForceCacheClear", + "MUJinjaRender", + "MURemoveControlNet", + "MUReplaceModelWeights", + "MUSimpleWildcard" + ], + { + "title_aux": "asagi4/comfyui-utility-nodes" + } + ], + "https://github.com/asdrabael/Hunyuan-Multi-Lora-Loader": [ + [ + "HunyuanMultiLoraLoader", + "HunyuanMultiLoraLoaderWrapper" + ], + { + "title_aux": "Hunyuan-Multi-Lora-Loader" + } + ], + "https://github.com/asutermo/ComfyUI-Flux-TryOff": [ + [ + "TryOffFluxFillModelNode", + "TryOffFluxFillPipelineNode", + "TryOffModelNode", + "TryOffQuantizerNode", + "TryOffRunNode", + "TryOnOffModelNode", + "TryOnOffRunNode", + "TryOnRunNode" + ], + { + "title_aux": "ComfyUI-Flux-TryOff" + } + ], + "https://github.com/aszc-dev/ComfyUI-CoreMLSuite": [ + [ + "Core ML Converter", + "Core ML LCM Converter", + "Core ML LoRA Loader", + "CoreMLModelAdapter", + "CoreMLSampler", + "CoreMLSamplerAdvanced", + "CoreMLUNetLoader" + ], + { + "title_aux": "Core ML Suite for ComfyUI" + } + ], + "https://github.com/atluslin/comfyui_arcane_style_trans": [ + [ + "Arcane_style_trans" + ], + { + "title_aux": "comfyui_arcane_style_trans" + } + ], + "https://github.com/attashe/ComfyUI-FluxRegionAttention": [ + [ + "BBoxToMaskNode", + "BoundingBoxNode", + "CLIPDebug", + "FluxRegionBBOX", + "FluxRegionMask", + "RegionAttention", + "VisualizeBBoxesNode" + ], + { + "title_aux": "ComfyUI-FluxRegionAttention" + } + ], + "https://github.com/audioscavenger/ComfyUI-Thumbnails": [ + [ + "LoadImage" + ], + { + "author": "AudioscavengeR", + "description": "Load Image thumbnails and show input subfolders.", + "nickname": "LoadImageThumbnails", + "title": "LoadImageThumbnails", + "title_aux": "ComfyUI-Thumbnails" + } + ], + "https://github.com/audioscavenger/save-image-extended-comfyui": [ + [ + "SaveImageExtended" + ], + { + "author": "AudioscavengeR", + "description": "1 custom node to save your pictures in various folders and formats.", + "nickname": "Save Image Extended", + "title": "Save Image Extended", + "title_aux": "Save Image Extended for ComfyUI" + } + ], + "https://github.com/austinbrown34/ComfyUI-IO-Helpers": [ + [ + "EncodedPromptFromFile", + "EncodedPromptToFile", + "IO_LoadImage", + "SampledLatentsFromFile", + "SampledLatentsToFile" + ], + { + "title_aux": "ComfyUI-IO-Helpers" + } + ], + "https://github.com/avatechai/avatar-graph-comfyui": [ + [ + "ApplyMeshTransformAsShapeKey", + "B_ENUM", + "B_VECTOR3", + "B_VECTOR4", + "Combine Points", + "CreateShapeFlow", + "ExportBlendshapes", + "ExportGLTF", + "Extract Boundary Points", + "Image Alpha Mask Merge", + "ImageBridge", + "LoadImageFromRequest", + "LoadImageWithAlpha", + "LoadValueFromRequest", + "SAM MultiLayer", + "Save Image With Workflow" + ], + { + "author": "Avatech Limited", + "description": "Include nodes for sam + bpy operation, that allows workflow creations for generative 2d character rig.", + "nickname": "Avatar Graph", + "title": "Avatar Graph", + "title_aux": "Avatar Graph" + } + ], + "https://github.com/avenstack/ComfyUI-AV-FunASR": [ + [ + "AVASRTimestamp", + "AVFormat2Subtitle", + "AVSaveSubtitles", + "AVSpeechTimestamp" + ], + { + "title_aux": "ComfyUI-AV-FunASR" + } + ], + "https://github.com/avenstack/ComfyUI-AV-LatentSync": [ + [ + "AVLatentSync", + "AVVideoLengthAdjuster" + ], + { + "title_aux": "ComfyUI-AV-LatentSync" + } + ], + "https://github.com/avenstack/ComfyUI-AV-MegaTTS3": [ + [ + "AVMegaTTS3", + "AVPromptInit" + ], + { + "title_aux": "ComfyUI-AV-MegaTTS3" + } + ], + "https://github.com/avocadori/ComfyUI-load-image-prompt-lora": [ + [ + "YAMLImageCycler", + "YAMLImageCyclerSimple", + "YAMLLoRAExtractor", + "YAMLLoRALoader", + "YAMLLoRASelector" + ], + { + "title_aux": "ComfyUI-load-image-prompt-lora" + } + ], + "https://github.com/aws-samples/comfyui-llm-node-for-amazon-bedrock": [ + [ + "Amazon Bedrock - Luma AI Ray Video", + "Amazon Bedrock - Nova Canvas Background Prompt Replace", + "Amazon Bedrock - Nova Canvas Generate Image", + "Amazon Bedrock - Nova Canvas Generate Variations", + "Amazon Bedrock - Nova Reel Video", + "Amazon Bedrock - SD3 & SD3.5 Large | Image to Image", + "Amazon Bedrock - Stability AI Models | Text to Image", + "Bedrock - Claude", + "Bedrock - Claude Multimodal", + "Bedrock - Nova", + "Bedrock - SDXL", + "Bedrock - Titan Inpainting", + "Bedrock - Titan Outpainting", + "Bedrock - Titan Text to Image", + "Bedrock - Titan Variation", + "Image From S3", + "Image From URL", + "Image OCR By Textract", + "Image OCR By Textract V2", + "Image OCR By Textract V3", + "Image OCR by PaddleOCR", + "Image To S3", + "JSON Text Extraction", + "Prompt Regex Remove", + "Prompt Template", + "Prompt Template with Two Inputs" + ], + { + "title_aux": "Amazon Bedrock nodes for ComfyUI" + } + ], + "https://github.com/azure-dragon-ai/ComfyUI-ClipScore-Nodes": [ + [ + "HaojihuiClipScoreFakeImageProcessor", + "HaojihuiClipScoreImageProcessor", + "HaojihuiClipScoreImageScore", + "HaojihuiClipScoreLoader", + "HaojihuiClipScoreRealImageProcessor", + "HaojihuiClipScoreTextProcessor" + ], + { + "title_aux": "ComfyUI-ClipScore-Nodes" + } + ], + "https://github.com/azure-dragon-ai/ComfyUI-HPSv2-Nodes": [ + [ + "GetImageSize", + "HaojihuiHPSv2ImageProcessor", + "HaojihuiHPSv2ImageScore", + "HaojihuiHPSv2ImageScores", + "HaojihuiHPSv2Loader", + "HaojihuiHPSv2SaveAnimatedWEBP", + "HaojihuiHPSv2SaveImage", + "HaojihuiHPSv2SaveWEBP", + "HaojihuiHPSv2SaveWebpImage", + "HaojihuiHPSv2TextProcessor", + "SaveImageWebp", + "ScaleShort" + ], + { + "title_aux": "ComfyUI-HPSv2-Nodes" + } + ], + "https://github.com/babe-and-spencer-enterprises/base-comfyui-node": [ + [ + "UploadToBaseNode" + ], + { + "title_aux": "ComfyUI Upload to BASE Node" + } + ], + "https://github.com/bablueza/ComfyUI-Vaja-Ai4thai": [ + [ + "ShowText", + "Vaja Synthesis Api" + ], + { + "title_aux": "Vaja TextToSpeech Node for ComfyUI" + } + ], + "https://github.com/babydjac/comfyui-grok-prompts": [ + [ + "Flux", + "PonyXL" + ], + { + "title_aux": "ComfyUI Grok Prompts" + } + ], + "https://github.com/babydjac/comfyui-smart-scaler": [ + [ + "AspectRatioAdjuster", + "BatchFrameProcessor", + "DynamicResolutionSelector", + "ImageMetadataExtractor", + "SizeParser", + "SmartAspectScaler", + "WanVideoFrameScaler" + ], + { + "title_aux": "ComfyUI Smart Scaler" + } + ], + "https://github.com/badayvedat/ComfyUI-fal-Connector": [ + [ + "RemoteCheckpointLoader_fal", + "RemoteLoraLoader_fal" + ], + { + "title_aux": "ComfyUI-fal-Connector" + } + ], + "https://github.com/badjeff/comfyui_lora_tag_loader": [ + [ + "LoraTagLoader" + ], + { + "title_aux": "LoRA Tag Loader for ComfyUI" + } + ], + "https://github.com/badxprogramm/ComfyUI-GradientBlur": [ + [ + "GradientBlur" + ], + { + "title_aux": "GradientBlurNode for ComfyUI" + } + ], + "https://github.com/baicai99/ComfyUI-FrameSkipping": [ + [ + "FrameSelector", + "FrameSkipping", + "FrameTruncating", + "IntOperationsNode", + "MaskFrameSkipping", + "MaskGenerator", + "MaskSelector" + ], + { + "title_aux": "ComfyUI-FrameSkipping" + } + ], + "https://github.com/bananasss00/ComfyUI-SP-Nodes": [ + [ + "BoolSwitchOutStr", + "CivitaiPrompts", + "ComfyuiRuntimeArgs", + "FaceScatter", + "FaceScatter2", + "FluxInspireLbw_Batch", + "FluxInspireLbw_BlockVectorPreset", + "GodnessMerger_Apply", + "GodnessMerger_InputBlocks", + "GodnessMerger_InputBlocksExperimental", + "GodnessMerger_LabelEmb", + "GodnessMerger_MiddleBlock", + "GodnessMerger_MiddleBlockExperimental", + "GodnessMerger_NoiseInjection", + "GodnessMerger_Out", + "GodnessMerger_OutputBlocks", + "GodnessMerger_OutputBlocksExperimental", + "GodnessMerger_RAW_Apply", + "GodnessMerger_TimeEmbed", + "ImageMonitor", + "ImgMetaValueExtractor", + "LoraLoaderByPath", + "LoraLoaderFromFolder", + "LoraLoaderOnlyModelByPath", + "NoiseInjectionEssentialsHookProvider", + "PreviewImageWEBP", + "PromptChecker", + "RandomPromptFromBook", + "Random_Model_Merge", + "SD3BlocksMultiply", + "SD3Multiply", + "SP-CheckpointSave", + "SP-UnetSave", + "SP_DDInpaint_Pipe", + "SP_DictValue", + "SP_DynamicCombo", + "SP_FlorenceCaption", + "SP_FluxFastMergePatchFP8 [Experimental]", + "SP_FluxLoader", + "SP_FluxUnsampler", + "SP_FluxUnsampler_ForwardODESampler", + "SP_FluxUnsampler_InverseSampler", + "SP_HiresGen", + "SP_HiresGen_Dynamic", + "SP_HiresGen_HiresCfg", + "SP_HiresGen_Sharpen", + "SP_HunyuanLoader", + "SP_ImpactSwitchCombo", + "SP_KSampler", + "SP_KSamplerSelect", + "SP_KoboldCpp", + "SP_KoboldCppWithContext", + "SP_KoboldCpp_BannedTokens", + "SP_KoboldCpp_OverrideCfg", + "SP_ListAny", + "SP_ModelLoader", + "SP_Pass", + "SP_Pipe", + "SP_Pipe_ToBasicPipe", + "SP_SD3Loader", + "SP_SDLoader", + "SP_SetPipeModelType", + "SP_Supir", + "SP_SupirSampler", + "SP_SupirSampler_DPMPP2M", + "SP_SupirSampler_EDM", + "SP_SwitchBooleanAny", + "SP_UnlistValues", + "SP_WebsocketSendImage", + "SP_XYGrid", + "SP_XYValues", + "ScatterParams", + "ScatterParamsBatch", + "SendTelegramChatBot", + "StrToCombo", + "TextSplitJoinByDelimiter" + ], + { + "author": "SeniorPioner", + "description": "Node Pack: PromptChecker for token toggling, KoboldCPP API, ModelMerging, Telegram-Bot-API, and more", + "nickname": "SP-Nodes", + "title": "SP-Nodes", + "title_aux": "SP-Nodes" + } + ], + "https://github.com/bananasss00/ComfyUI-flux_fill_patcher": [ + [ + "ApplyFluxFillPatch" + ], + { + "title_aux": "ComfyUI-flux_fill_patcher" + } + ], + "https://github.com/banodoco/steerable-motion": [ + [ + "BatchCreativeInterpolation", + "IpaConfiguration", + "RemoveAndInterpolateFrames", + "VideoContinuationGenerator", + "VideoFrameExtractorAndMaskGenerator", + "WanInputFrameNumber", + "WanVideoBlender" + ], + { + "title_aux": "Steerable Motion" + } + ], + "https://github.com/banqingyuan/ComfyUI-text-replace": [ + [ + "ChatOverlayNode", + "ExtractJsonNode", + "ImageEraseNode", + "OCRLocNode" + ], + { + "title_aux": "ComfyUI-text-replace" + } + ], + "https://github.com/bartly/Comfyui_babel_removebg_api": [ + [ + "BabelRemovebg" + ], + { + "title_aux": "Babel Removebg Api Node for ComfyUI" + } + ], + "https://github.com/bash-j/mikey_nodes": [ + [ + "AddMetaData", + "Batch Crop Image", + "Batch Crop Resize Inplace", + "Batch Load Images", + "Batch Resize Image for SDXL", + "Checkpoint Loader Simple Mikey", + "CheckpointHash", + "CheckpointSaveModelOnly", + "CinematicLook", + "Empty Latent Ratio Custom SDXL", + "Empty Latent Ratio Select SDXL", + "EvalFloats", + "FaceFixerOpenCV", + "FileNamePrefix", + "FileNamePrefixDateDirFirst", + "Float to String", + "GetSubdirectories", + "HaldCLUT", + "Image Caption", + "ImageBorder", + "ImageOverlay", + "ImagePaste", + "Int to String", + "LMStudioPrompt", + "Load Image Based on Number", + "LoraSyntaxProcessor", + "Mikey Sampler", + "Mikey Sampler Base Only", + "Mikey Sampler Base Only Advanced", + "Mikey Sampler Tiled", + "Mikey Sampler Tiled Base Only", + "MikeyLatentTileSampler", + "MikeyLatentTileSamplerCustom", + "MikeySamplerTiledAdvanced", + "MikeySamplerTiledAdvancedBaseOnly", + "ModelMergePixArtSigmaXL2_1024MS", + "ModelMergeTrainDiff", + "ModelMergeTrainDiffPixartSigmaXL2_1024MS", + "MosaicExpandImage", + "OobaPrompt", + "PresetRatioSelector", + "Prompt With SDXL", + "Prompt With Style", + "Prompt With Style V2", + "Prompt With Style V3", + "Range Float", + "Range Integer", + "Ratio Advanced", + "RemoveTextBetween", + "Resize Image for SDXL", + "SD3TextConditioningWithOptionsOnePrompt", + "SRFloatPromptInput", + "SRIntPromptInput", + "SRStringPromptInput", + "Save Image If True", + "Save Image With Prompt Data", + "Save Images Mikey", + "Save Images No Display", + "SaveMetaData", + "SearchAndReplace", + "Seed String", + "Style Conditioner", + "Style Conditioner Base Only", + "Text2InputOr3rdOption", + "TextCombinations", + "TextCombinations3", + "TextConcat", + "TextPadderMikey", + "TextPreserve", + "Upscale Tile Calculator", + "Wildcard Processor", + "WildcardAndLoraSyntaxProcessor", + "WildcardOobaPrompt" + ], + { + "title_aux": "Mikey Nodes" + } + ], + "https://github.com/bbaudio-2025/ComfyUI-SuperUltimateVaceTools": [ + [ + "CustomCropArea", + "RegionalBatchPrompt", + "SuperUltimateVACEUpscale", + "VACEControlImageCombine", + "VACEPromptCheckTotalFrame", + "VACEPromptCombine", + "VaceLongVideo" + ], + { + "title_aux": "ComfyUI-SuperUltimateVaceTools" + } + ], + "https://github.com/bbtaivi/ComfyUI-Aiv-Param": [ + [ + "AivParam" + ], + { + "title_aux": "AIV ComfyUI Node" + } + ], + "https://github.com/bear2b/comfyui-argo-nodes": [ + [ + "ColorMatrixGPU", + "LoadGridFromURL", + "SaveGridToS3" + ], + { + "title_aux": "ColorMatrixGPU Node for ComfyUI" + } + ], + "https://github.com/bedovyy/ComfyUI_NAIDGenerator": [ + [ + "ColorizeNAID", + "DeclutterNAID", + "EmotionNAID", + "GenerateNAID", + "Img2ImgOptionNAID", + "InpaintingOptionNAID", + "LineArtNAID", + "MaskImageToNAID", + "ModelOptionNAID", + "NetworkOptionNAID", + "PromptToNAID", + "RemoveBGNAID", + "SketchNAID", + "V4BasePrompt", + "V4NegativePrompt", + "VibeTransferOptionNAID" + ], + { + "title_aux": "ComfyUI_NAIDGenerator" + } + ], + "https://github.com/bemoregt/ComfyUI_CustomNode_Image2Spectrum": [ + [ + "Image_Spectrum" + ], + { + "title_aux": "ComfyUI_CustomNode_Image2Spectrum" + } + ], + "https://github.com/benda1989/CosyVoice2_ComfyUI": [ + [ + "CosyVoice3s", + "CosyVoiceCrossLingual", + "CosyVoiceLoader", + "CosyVoiceNLControl", + "CosyVoiceSonic", + "Text2" + ], + { + "title_aux": "GKK\u00b7CosyVoice" + } + ], + "https://github.com/benda1989/Sonic_ComfyUI": [ + [ + "SonicLoader", + "SonicSimper", + "SonicSpeechs" + ], + { + "title_aux": "GKK\u00b7Sonic" + } + ], + "https://github.com/benjamin-bertram/Comfyui_OIDN_Denoiser": [ + [ + "OIDNDenoiser" + ], + { + "title_aux": "ComfyUI OIDN Denoiser" + } + ], + "https://github.com/benjiyaya/ComfyUI-HunyuanVideoImagesGuider": [ + [ + "Hunyuan Video Image To Guider" + ], + { + "title_aux": "ComfyUI-HunyuanVideoImagesGuider" + } + ], + "https://github.com/benjiyaya/ComfyUI-KokoroTTS": [ + [ + "Kokoro TextToSpeech" + ], + { + "title_aux": "ComfyUI-KokoroTTS" + } + ], + "https://github.com/benstaniford/comfy-contact-sheet-image-loader": [ + [ + "ContactSheetImageLoader" + ], + { + "title_aux": "Comfy Contact Sheet Image Loader" + } + ], + "https://github.com/benstaniford/comfy-load-last-image": [ + [ + "LoadMostRecentImage" + ], + { + "title_aux": "ComfyUI Load Most Recent Image Node" + } + ], + "https://github.com/benstaniford/comfy-lora-loader-with-triggerdb": [ + [ + "LoRaLoaderWithTriggerDB" + ], + { + "title_aux": "LoRa Loader with Trigger Database" + } + ], + "https://github.com/benstaniford/comfy-prompt-db": [ + [ + "PromptDB", + "PromptStack" + ], + { + "title_aux": "Prompt Database for ComfyUI" + } + ], + "https://github.com/bentoml/comfy-pack": [ + [ + "CPackInputAny", + "CPackInputFile", + "CPackInputImage", + "CPackInputInt", + "CPackInputString", + "CPackOutputAudio", + "CPackOutputFile", + "CPackOutputImage", + "CPackOutputTextFile", + "CPackOutputVideo", + "CPackOutputZip", + "CPackOutputZipSwitch" + ], + { + "title_aux": "Comfy-Pack" + } + ], + "https://github.com/big-mon/ComfyUI-ResolutionPresets": [ + [ + "ResolutionPresetsSDXL" + ], + { + "title_aux": "ComfyUI-ResolutionPresets" + } + ], + "https://github.com/bikiam/ComfyUI_WhisperSRT": [ + [ + "WhisperAudioToSRTText" + ], + { + "title_aux": "ComfyUI_WhisperSRT" + } + ], + "https://github.com/bilal-arikan/ComfyUI_TextAssets": [ + [ + "LoadTextAsset" + ], + { + "title_aux": "ComfyUI_TextAssets" + } + ], + "https://github.com/billwuhao/ComfyUI_ACE-Step": [ + [ + "ACELoRALoader", + "ACEModelLoader", + "ACEStepEdit", + "ACEStepExtend", + "ACEStepGen", + "ACEStepRepainting", + "GenerationParameters", + "LyricsLangSwitch", + "MultiLineLyrics", + "MultiLinePromptACES" + ], + { + "title_aux": "ComfyUI_ACE-Step" + } + ], + "https://github.com/billwuhao/ComfyUI_AudioTools": [ + [ + "AddSubtitlesToVideo", + "AdjustAudio", + "AudioAddWatermark", + "AudioConcatenate", + "AudioDenoising", + "AudioRecorderAT", + "ClearVoiceRun", + "LoadAudioMW", + "MergeAudioMW", + "MinimalPauseNode", + "MultiLinePromptAT", + "MusicSeparation", + "RemoveSilence", + "SpeechSeparation", + "StringEditNode", + "TrimAudio" + ], + { + "title_aux": "ComfyUI_AudioTools" + } + ], + "https://github.com/billwuhao/ComfyUI_CSM": [ + [ + "CSMDialogRun", + "CSMSpeakersPreview", + "MultiLineText" + ], + { + "title_aux": "ComfyUI_CSM" + } + ], + "https://github.com/billwuhao/ComfyUI_DiffRhythm": [ + [ + "DiffRhythmRun", + "MultiLineLyricsDR" + ], + { + "title_aux": "ComfyUI_DiffRhythm_MW" + } + ], + "https://github.com/billwuhao/ComfyUI_EraX-WoW-Turbo": [ + [ + "EraXWoWRUN", + "WhisperTurboRun" + ], + { + "title_aux": "MW-ComfyUI_EraX-WoW-Turbo" + } + ], + "https://github.com/billwuhao/ComfyUI_IndexTTS": [ + [ + "IndexSpeakersPreview", + "IndexTTSRun", + "MultiLinePromptIndex" + ], + { + "title_aux": "ComfyUI_IndexTTS" + } + ], + "https://github.com/billwuhao/ComfyUI_KokoroTTS_MW": [ + [ + "KokoroRun", + "KokoroZHRun", + "MultiLinePromptKK" + ], + { + "title_aux": "ComfyUI_KokoroTTS_MW" + } + ], + "https://github.com/billwuhao/ComfyUI_MegaTTS3": [ + [ + "MegaTTS3Run", + "MegaTTS3SpeakersPreview", + "MultiLinePromptMG" + ], + { + "title_aux": "MW-ComfyUI_MegaTTS3" + } + ], + "https://github.com/billwuhao/ComfyUI_NotaGen": [ + [ + "NotaGenRun" + ], + { + "title_aux": "ComfyUI_NotaGen" + } + ], + "https://github.com/billwuhao/ComfyUI_OneButtonPrompt": [ + [ + "LoadImageAndPromptFromURL", + "LoadImageFromURL", + "LoadPrompt", + "StringEditNodeOBP" + ], + { + "title_aux": "MW-ComfyUI_OneButtonPrompt" + } + ], + "https://github.com/billwuhao/ComfyUI_OuteTTS": [ + [ + "OuteTTSRun" + ], + { + "title_aux": "MW-ComfyUI_OuteTTS" + } + ], + "https://github.com/billwuhao/ComfyUI_PortraitTools": [ + [ + "AlignFace", + "BeautifyPhoto", + "DetectCropFace", + "IDPhotos", + "ImageWatermark", + "LoadImageMW" + ], + { + "title_aux": "MW-ComfyUI_PortraitTools" + } + ], + "https://github.com/billwuhao/ComfyUI_SOME": [ + [ + "SomeSing2Midi" + ], + { + "title_aux": "ComfyUI_SOME" + } + ], + "https://github.com/billwuhao/ComfyUI_SparkTTS": [ + [ + "AudioRecorderSpark", + "SparkTTSClone", + "SparkTTSRun" + ], + { + "title_aux": "ComfyUI_SparkTTS" + } + ], + "https://github.com/billwuhao/ComfyUI_StepAudioTTS": [ + [ + "AudioRecorder", + "StepAudioClone", + "StepAudioRun" + ], + { + "title_aux": "ComfyUI_StepAudioTTS" + } + ], + "https://github.com/billwuhao/ComfyUI_gemmax": [ + [ + "GemmaxRun", + "QuickMTRun" + ], + { + "title_aux": "MW-ComfyUI_gemmax" + } + ], + "https://github.com/billwuhao/ComfyUI_parakeet-tdt": [ + [ + "ParakeetASRRun" + ], + { + "title_aux": "ComfyUI_parakeet-tdt" + } + ], + "https://github.com/billwuhao/Comfyui_HeyGem": [ + [ + "HeyGemRun" + ], + { + "title_aux": "Comfyui_HeyGem" + } + ], + "https://github.com/bitaffinity/ComfyUI_HF_Inference": [ + [ + "Classification", + "FeatureExtraction", + "Generation", + "ObjectDetection", + "QuestionAnswering", + "Segmentation", + "TextToImage", + "Translation" + ], + { + "title_aux": "ComfyUI_HF_Inference" + } + ], + "https://github.com/black-forest-labs/bfl-comfy-nodes": [ + [ + "FLUX 1.0 [canny]", + "FLUX 1.0 [canny] Finetuned", + "FLUX 1.0 [depth]", + "FLUX 1.0 [depth] Finetuned", + "FLUX 1.0 [dev]", + "FLUX 1.0 [fill]", + "FLUX 1.0 [fill] Finetuned", + "FLUX 1.0 [pro]", + "FLUX 1.0 [pro] Finetuned", + "FLUX 1.1 [pro]", + "FLUX 1.1 [ultra]", + "FLUX 1.1 [ultra] Finetuned" + ], + { + "title_aux": "Black Forest Labs API Nodes" + } + ], + "https://github.com/blackcodetavern/ComfyUI-Benripack": [ + [ + "AnimationExtractor", + "CharacterPipe", + "Load3DModel" + ], + { + "title_aux": "ComfyUI-Benripack" + } + ], + "https://github.com/blepping/ComfyUI-ApplyResAdapterUnet": [ + [ + "ApplyResAdapterUnet" + ], + { + "title_aux": "ComfyUI-ApplyResAdapterUnet" + } + ], + "https://github.com/blepping/ComfyUI-bleh": [ + [ + "BlehBlockCFG", + "BlehBlockOps", + "BlehCast", + "BlehDeepShrink", + "BlehDisableNoise", + "BlehDiscardPenultimateSigma", + "BlehEnsurePreviewer", + "BlehForceSeedSampler", + "BlehGlobalSageAttention", + "BlehHyperTile", + "BlehInsaneChainSampler", + "BlehLatentBlend", + "BlehLatentOps", + "BlehLatentScaleBy", + "BlehModelPatchConditional", + "BlehPlug", + "BlehRefinerAfter", + "BlehSageAttentionSampler", + "BlehSetSamplerPreset", + "BlehSetSigmas", + "BlehTAEVideoDecode", + "BlehTAEVideoEncode" + ], + { + "title_aux": "ComfyUI-bleh" + } + ], + "https://github.com/blepping/ComfyUI-sonar": [ + [ + "FreeUExtreme", + "FreeUExtremeConfig", + "NoisyLatentLike", + "SONAR_CUSTOM_NOISE to NOISE", + "SamplerConfigOverride", + "SamplerSonarDPMPPSDE", + "SamplerSonarEuler", + "SamplerSonarEulerA", + "SonarAdvanced1fNoise", + "SonarAdvancedCollatzNoise", + "SonarAdvancedDistroNoise", + "SonarAdvancedPowerLawNoise", + "SonarAdvancedPyramidNoise", + "SonarApplyLatentOperationCFG", + "SonarBlendedNoise", + "SonarChannelNoise", + "SonarCompositeNoise", + "SonarCustomNoise", + "SonarCustomNoiseAdv", + "SonarGuidanceConfig", + "SonarGuidedNoise", + "SonarLatentOperationAdvanced", + "SonarLatentOperationFilteredNoise", + "SonarLatentOperationNoise", + "SonarLatentOperationQuantileFilter", + "SonarLatentOperationSetSeed", + "SonarModulatedNoise", + "SonarNoiseImage", + "SonarNormalizeNoiseToScale", + "SonarPatternBreakNoise", + "SonarPerDimNoise", + "SonarPowerFilter", + "SonarPowerFilterNoise", + "SonarPowerNoise", + "SonarPreviewFilter", + "SonarQuantileFilteredNoise", + "SonarRandomNoise", + "SonarRepeatedNoise", + "SonarResizedNoise", + "SonarRippleFilteredNoise", + "SonarScatternetFilteredNoise", + "SonarScheduledNoise", + "SonarShuffledNoise", + "SonarSplitNoiseChain", + "SonarWaveletFilteredNoise", + "SonarWaveletNoise" + ], + { + "title_aux": "ComfyUI-sonar" + } + ], + "https://github.com/blepping/comfyui_jankdiffusehigh": [ + [ + "DiffuseHighParam", + "DiffuseHighSampler" + ], + { + "title_aux": "comfyui_jankdiffusehigh" + } + ], + "https://github.com/blepping/comfyui_jankhidiffusion": [ + [ + "ApplyMSWMSAAttention", + "ApplyMSWMSAAttentionSimple", + "ApplyRAUNet", + "ApplyRAUNetSimple" + ], + { + "title_aux": "comfyui_jankhidiffusion" + } + ], + "https://github.com/blepping/comfyui_overly_complicated_sampling": [ + [ + "OCS Group", + "OCS ModelSetMaxSigma", + "OCS MultiParam", + "OCS Param", + "OCS Sampler", + "OCS SimpleRestartSchedule", + "OCS Substeps", + "OCSNoise PerlinAdvanced", + "OCSNoise PerlinSimple", + "OCSNoise to SONAR_CUSTOM_NOISE" + ], + { + "title_aux": "comfyui_overly_complicated_sampling" + } + ], + "https://github.com/blird/ComfyUI-Wanify": [ + [ + "AdaptiveImageResize" + ], + { + "title_aux": "ComfyUI-Wanify: Adaptive Image Resize Node" + } + ], + "https://github.com/blob8/ComfyUI_sloppy-comic": [ + [ + "Generate Comic", + "LLM API Request" + ], + { + "title_aux": "ComfyUI_sloppy-comic" + } + ], + "https://github.com/blovett80/ComfyUI-PixelDojo": [ + [ + "PixelDojoAPI" + ], + { + "title_aux": "ComfyUI-PixelDojo" + } + ], + "https://github.com/blueraincoatli/comfyUI_SillyNodes": [ + [ + "BooleanJumper|SillyNode", + "CloseErrorWindowNode|SillyNode", + "QueueSequence|SillyNode", + "Screenshots|SillyNode", + "dummyInput|SillyNode", + "dummyInput|blueraincoat" + ], + { + "title_aux": "comfyUI_SillyNodes" + } + ], + "https://github.com/bluevisor/ComfyUI_PS_Blend_Node": [ + [ + "PSBlendNode" + ], + { + "title_aux": "ComfyUI_PS_Blend_Node" + } + ], + "https://github.com/bmad4ever/comfyui_ab_samplercustom": [ + [ + "AB SamplerCustom (experimental)" + ], + { + "title_aux": "comfyui_ab_sampler" + } + ], + "https://github.com/bmad4ever/comfyui_lists_cartesian_product": [ + [ + "AnyListCartesianProduct" + ], + { + "title_aux": "Lists Cartesian Product" + } + ], + "https://github.com/bmad4ever/comfyui_quilting": [ + [ + "GuessQuiltingBlockSize_Bmad", + "ImageQuiltingSeamlessMB_Bmad", + "ImageQuiltingSeamlessSB_Bmad", + "ImageQuilting_Bmad", + "LatentQuiltingSeamlessMB_Bmad", + "LatentQuiltingSeamlessSB_Bmad", + "LatentQuilting_Bmad" + ], + { + "title_aux": "comfyui_quilting" + } + ], + "https://github.com/bmad4ever/comfyui_wfc_like": [ + [ + "WFC_CustomTemperature_Bmad", + "WFC_CustomValueWeights_Bmad", + "WFC_Decode_BMad", + "WFC_EmptyState_Bmad", + "WFC_Encode_BMad", + "WFC_Filter_Bmad", + "WFC_GenParallel_Bmad", + "WFC_Generate_BMad", + "WFC_SampleNode_BMad" + ], + { + "title_aux": "comfyui_wfc_like" + } + ], + "https://github.com/bobmagicii/comfykit-custom-nodes": [ + [ + "LoraStackFiveSimple", + "LoraThree", + "LoraWithMeta", + "TypecasterClip", + "TypecasterCond", + "TypecasterImage", + "TypecasterLatent", + "TypecasterModel", + "TypecasterVae" + ], + { + "title_aux": "ComfyKit Custom Nodes" + } + ], + "https://github.com/bollerdominik/ComfyUI-load-lora-from-url": [ + [ + "LoadLoraFromUrlOrPath", + "LoadVideoLoraFromUrlOrPath" + ], + { + "title_aux": "ComfyUI-load-lora-from-url" + } + ], + "https://github.com/bombax-xiaoice/ComfyUI-Allegro": [ + [ + "AllegroDecoder", + "AllegroEncoder", + "AllegroSampler", + "AllegroTI2VEncoder", + "AllegroTI2VSampler", + "AllegroTextEncoder", + "LoadAllegroModel", + "LoadAllegroTI2VModel" + ], + { + "title_aux": "ComfyUI-Allegro" + } + ], + "https://github.com/bombax-xiaoice/ComfyUI-DisPose": [ + [ + "DisPoseDecoder", + "DisPoseLoader", + "DisPoseSampler" + ], + { + "title_aux": "ComfyUI-DisPose" + } + ], + "https://github.com/bombax-xiaoice/ComfyUI-MagicDance": [ + [ + "LoadMagicDanceModel", + "MagicDanceDecoder", + "MagicDanceEncoder", + "MagicDanceSampler" + ], + { + "title_aux": "ComfyUI-MagicDance" + } + ], + "https://github.com/bombax-xiaoice/ComfyUI-Open-Sora-I2V": [ + [ + "OpenSoraDecoder", + "OpenSoraEncoder", + "OpenSoraLoader", + "OpenSoraSampler", + "OpenSoraTextEncoder" + ], + { + "title_aux": "ComfyUI-Open-Sora-I2V" + } + ], + "https://github.com/bombax-xiaoice/ComfyUI-OpenSoraPlan": [ + [ + "OpenSoraPlan0LoaderT2V", + "OpenSoraPlan1LoaderT2V", + "OpenSoraPlan2LoaderI2V", + "OpenSoraPlan2LoaderT2V", + "OpenSoraPlan2SamplerI2V", + "OpenSoraPlan3LoaderI2V", + "OpenSoraPlan3LoaderT2V", + "OpenSoraPlan3SamplerI2V", + "OpenSoraPlanDecoder", + "OpenSoraPlanPromptRefiner", + "OpenSoraPlanSamplerT2V" + ], + { + "title_aux": "ComfyUI-OpenSoraPlan" + } + ], + "https://github.com/bombless/comfyUI-RememberingUtils": [ + [ + "RememberLastSeed", + "ShowLastSeed", + "ShowLastText" + ], + { + "title_aux": "Remembering utils" + } + ], + "https://github.com/bongsang/ComfyUI-Bongsang": [ + [ + "AnyInfo", + "RgbChannel" + ], + { + "title_aux": "ComfyUI-Bongsang" + } + ], + "https://github.com/boredofnames/ComfyUI-ntfy": [ + [ + "Ntfy", + "SaveImageAndNtfy" + ], + { + "title_aux": "ComfyUI-ntfy" + } + ], + "https://github.com/boricuapab/ComfyUI-Bori-JsonSetGetConverter": [ + [ + "Bori Json Get Set Convert" + ], + { + "title_aux": "ComfyUI-Bori-JsonSetGetConverter" + } + ], + "https://github.com/bradsec/ComfyUI_ResolutionSelector": [ + [ + "ResolutionSelector" + ], + { + "title_aux": "ResolutionSelector for ComfyUI" + } + ], + "https://github.com/bradsec/ComfyUI_StringEssentials": [ + [ + "StringMultiReplace", + "StringPreview", + "StringStrip", + "StringTextbox" + ], + { + "title_aux": "ComfyUI_StringEssentials" + } + ], + "https://github.com/braintacles/braintacles-comfyui-nodes": [ + [ + "CLIPTextEncodeSDXL-Multi-IO", + "CLIPTextEncodeSDXL-Pipe", + "Empty Latent Image from Aspect-Ratio", + "Interval Sampler", + "Random Find and Replace" + ], + { + "title_aux": "braintacles-nodes" + } + ], + "https://github.com/brantje/ComfyUI-api-tools": [ + [ + "SimpleGenImageInterface" + ], + { + "title_aux": "ComfyUI-api-tools" + } + ], + "https://github.com/brantje/ComfyUI_MagicQuill": [ + [ + "MagicQuill" + ], + { + "author": "Zichen LIU (https://zliucz.github.io/) and Yue YU (https://bruceyyu.github.io/)", + "description": "Official ComfyUI Implementations for Paper - MagicQuill: An Intelligent Interactive Image Editing System", + "nickname": "MagicQuill nodes", + "title": "MagicQuill", + "title_aux": "ComfyUI-MagicQuill" + } + ], + "https://github.com/brayevalerien/ComfyUI-resynthesizer": [ + [ + "Resynthesize" + ], + { + "title_aux": "ComfyUI Resynthesizer" + } + ], + "https://github.com/brianfitzgerald/style_aligned_comfy": [ + [ + "StyleAlignedBatchAlign", + "StyleAlignedReferenceSampler", + "StyleAlignedSampleReferenceLatents" + ], + { + "title_aux": "StyleAligned for ComfyUI" + } + ], + "https://github.com/bronkula/comfyui-fitsize": [ + [ + "FS: Crop Image Into Even Pieces", + "FS: Fit Image And Resize", + "FS: Fit Size From Image", + "FS: Fit Size From Int", + "FS: Image Region To Mask", + "FS: Load Image And Resize To Fit", + "FS: Pick Image From Batch", + "FS: Pick Image From Batches", + "FS: Pick Image From List" + ], + { + "title_aux": "comfyui-fitsize" + } + ], + "https://github.com/brucew4yn3rp/ComfyUI_SelectiveMetadata": [ + [ + "Multiline String", + "Save Image (Selective Metadata)", + "SaveImage" + ], + { + "title_aux": "Save Image with Selective Metadata" + } + ], + "https://github.com/bruefire/ComfyUI-SeqImageLoader": [ + [ + "VFrame Loader With Mask Editor", + "Video Loader With Mask Editor" + ], + { + "title_aux": "ComfyUI Sequential Image Loader" + } + ], + "https://github.com/budihartono/comfyui-aspect-ratio-presets": [ + [ + "CAS Empty Latent Aspect Ratio Axis", + "CAS Empty Latent Aspect Ratio Preset" + ], + { + "title_aux": "CAS Aspect Ratio Presets Node for ComfyUI" + } + ], + "https://github.com/budihartono/comfyui_otonx_nodes": [ + [ + "OTX Integer Multiple Inputs 4", + "OTX Integer Multiple Inputs 5", + "OTX Integer Multiple Inputs 6", + "OTX KSampler Feeder", + "OTX Versatile Multiple Inputs 4", + "OTX Versatile Multiple Inputs 5", + "OTX Versatile Multiple Inputs 6" + ], + { + "title_aux": "Otonx's Custom Nodes" + } + ], + "https://github.com/bugltd/ComfyLab-Pack": [ + [ + "Convert to Any (lab)", + "File Queue (lab)", + "Format: Multiline (lab)", + "Format: String (lab)", + "Generic Queue (lab)", + "Image Queue (lab)", + "Image: Downscale to Total Pixels (lab)", + "Input: Boolean (lab)", + "Input: Float (lab)", + "Input: Folder (lab)", + "Input: Integer (lab)", + "Input: Multiline (lab)", + "Input: String (lab)", + "List: Checkpoints (lab)", + "List: Limit (lab)", + "List: LoRAs (lab)", + "List: Merge (lab)", + "List: Random Seeds (lab)", + "List: Samplers (lab)", + "List: Schedulers (lab)", + "List: from Elements (lab)", + "List: from File (backend) (lab)", + "List: from Multiline (lab)", + "List: from String (lab)", + "Load Image (RGBA) (lab)", + "Output Config: Load (lab)", + "Output Config: Retrieve (backend) (lab)", + "Plot Config: Grid (lab)", + "Plot Config: Header/Footer (lab)", + "Resolution to Dimensions (lab)", + "Save Text File (lab)", + "Sleep (lab)", + "XY Plot: Queue (lab)", + "XY Plot: Render (lab)", + "XY Plot: Split Data (lab)" + ], + { + "nodename_pattern": " \\(lab\\)$", + "title_aux": "ComfyLab Pack" + } + ], + "https://github.com/burnsbert/ComfyUI-EBU-LMStudio": [ + [ + "EbuLMStudioBrainstormer", + "EbuLMStudioLoadModel", + "EbuLMStudioMakeRequest", + "EbuLMStudioUnload", + "EbuLMStudioUnloadGuider" + ], + { + "title_aux": "EBU LMStudio LLM Integration" + } + ], + "https://github.com/burnsbert/ComfyUI-EBU-PromptHelper": [ + [ + "EbuPromptHelperCharacterDescriberFemale", + "EbuPromptHelperCharacterDescriberMale", + "EbuPromptHelperCombineTwoStrings", + "EbuPromptHelperConsumeListItem", + "EbuPromptHelperCurrentDateTime", + "EbuPromptHelperListSampler", + "EbuPromptHelperLoadFileAsString", + "EbuPromptHelperRandomColorPalette", + "EbuPromptHelperRandomize", + "EbuPromptHelperReplace", + "EbuPromptHelperSeasonWeatherTimeOfDay", + "EbuPromptHelperTruncate" + ], + { + "title_aux": "EBU PromptHelper" + } + ], + "https://github.com/burnsbert/ComfyUI-EBU-Workflow": [ + [ + "EbuAppendToFile", + "EbuDecodeNewLines", + "EbuEncodeNewLines", + "EbuFileListCache", + "EbuGetImageAspectRatio", + "EbuReadFromFile", + "EbuScalingResolution", + "EbuScalingTile", + "EbuUniqueFileName" + ], + { + "title_aux": "EBU Workflow" + } + ], + "https://github.com/bvhari/ComfyUI_CFGStar": [ + [ + "CFGStar" + ], + { + "title_aux": "ComfyUI_CFGStar" + } + ], + "https://github.com/bvhari/ComfyUI_ImageProcessing": [ + [ + "BilateralFilter", + "Brightness", + "Gamma", + "Hue", + "Saturation", + "SigmoidCorrection", + "UnsharpMask" + ], + { + "title_aux": "ImageProcessing" + } + ], + "https://github.com/bvhari/ComfyUI_PerpCFG": [ + [ + "PerpCFG" + ], + { + "title_aux": "ComfyUI_PerpCFG" + } + ], + "https://github.com/bvhari/ComfyUI_PerpWeight": [ + [ + "CLIPTextEncodePerpWeight" + ], + { + "title_aux": "ComfyUI_PerpWeight" + } + ], + "https://github.com/bvhari/ComfyUI_SUNoise": [ + [ + "SUNoiseLatent", + "SamplersSUNoise", + "SamplersSUNoiseAdvanced" + ], + { + "title_aux": "ComfyUI_SUNoise" + } + ], + "https://github.com/bytedance/ComfyUI-HyperLoRA": [ + [ + "HyperLoRAApplyLoRA", + "HyperLoRABaseCond", + "HyperLoRAConfig", + "HyperLoRAFaceAttr", + "HyperLoRAGenerateBaseLoRA", + "HyperLoRAGenerateIDLoRA", + "HyperLoRAIDCond", + "HyperLoRALoader", + "HyperLoRASaveLoRA", + "HyperLoRAUniGenerateIDLoRA", + "HyperLoRAUniLoader" + ], + { + "title_aux": "ComfyUI-HyperLoRA" + } + ], + "https://github.com/bytedance/ComfyUI_InfiniteYou": [ + [ + "FaceCombine", + "FaceSwap_InfiniteYou", + "InfiniteYouApply" + ], + { + "title_aux": "ComfyUI_InfiniteYou" + } + ], + "https://github.com/c0ffymachyne/ComfyUI_BeatByte": [ + [ + "BytebeatSynth" + ], + { + "title_aux": "Bytebeat Synthesizer: Composing with Operators" + } + ], + "https://github.com/c0ffymachyne/ComfyUI_SignalProcessing": [ + [ + "SignalProcessingBaxandall3BandEQ", + "SignalProcessingBaxandallEQ", + "SignalProcessingCompressor", + "SignalProcessingConvolutionReverb", + "SignalProcessingFilter", + "SignalProcessingHarmonicsEnhancer", + "SignalProcessingLimiter", + "SignalProcessingLoadAudio", + "SignalProcessingLoudness", + "SignalProcessingMixdown", + "SignalProcessingNormalizer", + "SignalProcessingPadSynth", + "SignalProcessingPadSynthChoir", + "SignalProcessingPaulStretch", + "SignalProcessingPitchShifter", + "SignalProcessingSaturation", + "SignalProcessingSpectrogram", + "SignalProcessingStereoWidening", + "SignalProcessingWaveform" + ], + { + "title_aux": "ComfyUI Signal Processing" + } + ], + "https://github.com/cake-ml/tiny-sana-preview": [ + [ + "TinySanaPreview" + ], + { + "title_aux": "TinySanaPreview" + } + ], + "https://github.com/calcuis/gguf": [ + [ + "ClipLoaderGGUF", + "DualClipLoaderGGUF", + "GGUFRun", + "GGUFSave", + "GGUFUndo", + "LoaderGGUF", + "LoaderGGUFAdvanced", + "QuadrupleClipLoaderGGUF", + "TENSORBoost", + "TENSORCut", + "TripleClipLoaderGGUF", + "VaeGGUF" + ], + { + "preemptions": [ + "LoaderGGUF", + "ClipLoaderGGUF", + "DualClipLoaderGGUF", + "TripleClipLoaderGGUF", + "LoaderGGUFAdvanced", + "GGUFSave" + ], + "title_aux": "gguf" + } + ], + "https://github.com/caleboleary/ComfyUI-Arc2Face": [ + [ + "Arc2FaceEncoderLoader", + "Arc2FaceFaceExtractor", + "Arc2FaceGenerator", + "Arc2FaceImageGridGenerator", + "Arc2FaceImg2ImgGenerator", + "Arc2FaceUNetLoader" + ], + { + "title_aux": "Arc2Face ComfyUI Node Library" + } + ], + "https://github.com/camenduru/ComfyUI-TostAI": [ + [ + "SendToTostAI" + ], + { + "title_aux": "ComfyUI-TostAI" + } + ], + "https://github.com/cardenluo/ComfyUI-Apt_Preset": [ + [ + "AD_DrawSchedule", + "AD_ImageExpandBatch", + "AD_MaskExpandBatch", + "AD_batch_replace", + "AD_font2img", + "AD_pingpong_vedio", + "AD_sch_IPA", + "AD_sch_image_merge", + "AD_sch_latent", + "AD_sch_mask", + "AD_sch_prompt_adv", + "AD_sch_prompt_basic", + "AD_sch_prompt_stack", + "AD_sch_value", + "AD_slice_Condi", + "Amp_audio_Normalized", + "Amp_drive_String", + "Amp_drive_mask", + "Amp_drive_value", + "Apply_CN_union", + "Apply_ControlNetStack", + "Apply_IPA", + "Apply_IPA_SD3", + "Apply_LoRAStack", + "Apply_Redux", + "Apply_adv_CN", + "Apply_condiStack", + "Apply_latent", + "Apply_textStack", + "CN_preset1_Unpack", + "CN_preset1_pack", + "Data_Highway", + "Data_basic", + "Data_bus_chx", + "Data_chx_Merge", + "Data_presetData", + "Data_preset_save", + "Data_sampleData", + "Data_select", + "IO_adjust_image", + "IO_clear_cache", + "IO_input_any", + "IO_inputbasic", + "IO_load_anyimage", + "IO_save_image", + "IO_video_encode", + "IPA_XL_PromptInjection", + "IPA_clip_vision", + "IPA_dapterSD3LOAD", + "Image_Channel_Apply", + "Image_Channel_Extract", + "Image_Channel_RemoveAlpha", + "Image_Resize2", + "Image_Resize_sum", + "Image_Upscaletile", + "Image_batch_composite", + "Image_batch_select", + "Image_crop_box2", + "Image_pad_outfill", + "Image_pad_overlay", + "Image_transform_batch", + "Image_transform_sum", + "Mask_Detect_label", + "Mask_Remove_bg", + "Mask_combine_crop", + "Mask_combine_sum", + "Mask_face_detect", + "Mask_image2mask", + "Mask_inpaint_light", + "Mask_mask2mask", + "Mask_math", + "Mask_splitMask", + "Mask_split_mulMask", + "Mask_sum_shape_sole", + "Mask_transform", + "Model_Preset_Unpack", + "Model_Preset_pack", + "Stack_CN_union", + "Stack_ControlNet", + "Stack_ControlNet1", + "Stack_IPA", + "Stack_IPA_SD3", + "Stack_LoRA", + "Stack_Redux", + "Stack_WanCameralToVideo", + "Stack_WanFirstLastFrameToVideo", + "Stack_WanFunControlToVideo", + "Stack_WanFunInpaintToVideo", + "Stack_WanImageToVideo", + "Stack_WanVaceToVideo_mul", + "Stack_adv_CN", + "Stack_condi", + "Stack_latent", + "Stack_text", + "basicIn_Sampler", + "basicIn_Scheduler", + "basicIn_Seed", + "basicIn_float", + "basicIn_int", + "basicIn_string", + "basic_Ksampler_adv", + "basic_Ksampler_custom", + "basic_Ksampler_full", + "basic_Ksampler_mid", + "basic_Ksampler_simple", + "batch_BatchGetByIndex", + "batch_BatchSlice", + "batch_MergeBatch", + "chx_IPA_XL", + "chx_IPA_adv", + "chx_IPA_apply_combine", + "chx_IPA_basic", + "chx_IPA_faceID", + "chx_IPA_faceID_adv", + "chx_IPA_region_combine", + "chx_Ksampler_Kontext", + "chx_Ksampler_Kontext_adv", + "chx_Ksampler_Kontext_inpaint", + "chx_Ksampler_VisualStyle", + "chx_Ksampler_dual_area", + "chx_Ksampler_dual_paint", + "chx_Ksampler_inpaint", + "chx_Ksampler_mix", + "chx_Ksampler_refine", + "chx_Ksampler_texture", + "chx_StyleModelApply", + "chx_Style_Redux", + "chx_YC_LG_Redux", + "chx_ksampler_Deforum_sch", + "chx_ksampler_tile", + "chx_latent_adjust", + "color_OneColor_keep", + "color_OneColor_replace", + "color_adjust_HDR", + "color_adjust_HSL", + "color_adjust_WB_balance", + "color_adjust_light", + "color_match_adv", + "color_tool", + "creat_any_List", + "creat_any_batch", + "creat_image_batch", + "creat_image_batch_input", + "creat_mask_batch", + "creat_mask_batch_input", + "create_AD_mask", + "create_Mask_Rectangles", + "create_Mask_lay_X", + "create_Mask_lay_Y", + "create_Mask_location", + "create_Mask_sole", + "create_Mask_visual_tag", + "create_RadialGradient", + "create_lineGradient", + "create_mulcolor_img", + "create_mulcolor_mask", + "create_overShape", + "excel_column_diff", + "excel_insert_image", + "excel_read", + "excel_row_diff", + "excel_search_data", + "excel_write_data", + "img_effect_CircleWarp", + "img_effect_Liquify", + "img_effect_Load", + "img_effect_Stretch", + "img_effect_WaveWarp", + "latent_Image2Noise", + "latent_chx_noise", + "latent_ratio", + "lay_ImageGrid", + "lay_MaskGrid", + "lay_compare_img", + "lay_edge_cut", + "lay_fill_inpaint", + "lay_image_grid_note", + "lay_image_match_W_and_H", + "lay_images_free_layout", + "lay_text_sum", + "lay_texture_Offset", + "list_ListGetByIndex", + "list_ListSlice", + "list_MergeList", + "list_num_range", + "list_sch_Value", + "load_FLUX", + "load_GGUF", + "load_SD35", + "load_basic", + "math_Remap_data", + "math_calculate", + "model_Regional", + "model_Style_Align", + "model_adjust_color", + "model_diff_inpaint", + "pack_Pack", + "pack_Unpack", + "param_preset_Unpack", + "param_preset_pack", + "photoshop_preset_Unpack", + "photoshop_preset_pack", + "pre_Flex2", + "pre_Kontext", + "pre_Kontext_mul", + "pre_controlnet", + "pre_controlnet_union", + "pre_ic_light_sd15", + "pre_latent_light", + "pre_mul_Mulcondi", + "pre_sample_data", + "sampler_DynamicTileMerge", + "sampler_DynamicTileSplit", + "sampler_InpaintCrop", + "sampler_InpaintStitch", + "sampler_enhance", + "sch_Prompt", + "sch_Value", + "sch_image", + "sch_mask", + "sch_split_text", + "sch_text", + "stack_sum_pack", + "sum_create_chx", + "sum_editor", + "sum_latent", + "sum_load_adv", + "sum_lora", + "sum_stack_AD", + "sum_stack_Wan", + "sum_stack_all", + "sum_stack_image", + "text_CSV_load", + "text_SuperPrompter", + "text_free_wildcards", + "text_mul_Join", + "text_mul_Split", + "text_mul_remove", + "text_mul_replace", + "text_stack_wildcards", + "text_sum", + "type_AnyCast", + "type_Anyswitch", + "type_BasiPIPE", + "type_BatchToList", + "type_Image_Batch2List", + "type_Image_List2Batch", + "type_ListToBatch", + "type_Mask_Batch2List", + "type_Mask_List2Batch", + "type_text_2_UTF8", + "type_text_list2batch", + "unpack_box2", + "view_Data", + "view_GetLength", + "view_GetShape", + "view_GetWidgetsValues", + "view_Mask_And_Img", + "view_bridge_Text", + "view_bridge_image", + "view_combo", + "view_latent", + "view_mask", + "view_node_Script" + ], + { + "title_aux": "ComfyUI-Apt_Preset" + } + ], + "https://github.com/casterpollux/MiniMax-bmo": [ + [ + "MinimaxRemoverBMO" + ], + { + "nodename_pattern": "MiniMax.*BMO|BMO.*MiniMax", + "title_aux": "MiniMax Video Object Remover Suite" + } + ], + "https://github.com/catboxanon/comfyui_stealth_pnginfo": [ + [ + "CatboxAnonSaveImageStealth" + ], + { + "title_aux": "comfyui_stealth_pnginfo" + } + ], + "https://github.com/cdb-boop/ComfyUI-Bringing-Old-Photos-Back-to-Life": [ + [ + "BOPBTL_BlendFaces", + "BOPBTL_DetectEnhanceBlendFaces", + "BOPBTL_DetectFaces", + "BOPBTL_EnhanceFaces", + "BOPBTL_EnhanceFacesAdvanced", + "BOPBTL_LoadFaceDetectorModel", + "BOPBTL_LoadFaceEnhancerModel", + "BOPBTL_LoadRestoreOldPhotosModel", + "BOPBTL_LoadScratchMaskModel", + "BOPBTL_RestoreOldPhotos", + "BOPBTL_ScratchMask" + ], + { + "title_aux": "ComfyUI Bringing Old Photos Back to Life" + } + ], + "https://github.com/cdb-boop/comfyui-image-round": [ + [ + "ComfyUI_Image_Round__CircularCrop", + "ComfyUI_Image_Round__ImageCropAdvanced", + "ComfyUI_Image_Round__ImageRound", + "ComfyUI_Image_Round__ImageRoundAdvanced" + ], + { + "title_aux": "comfyui-image-round" + } + ], + "https://github.com/cdxOo/comfyui-text-node-with-comments": [ + [ + "text-node-with-comments" + ], + { + "title_aux": "Text Node With Comments (@cdxoo)" + } + ], + "https://github.com/cedarconnor/comfyui-LatLong": [ + [ + "Equirectangular Crop 180", + "Equirectangular Crop Square", + "Equirectangular Processor", + "Equirectangular Rotate" + ], + { + "title_aux": "ComfyUI LatLong - Equirectangular Image Processing Nodes" + } + ], + "https://github.com/celoron/ComfyUI-VisualQueryTemplate": [ + [ + "VisualQueryTemplateNode" + ], + { + "title_aux": "ComfyUI-VisualQueryTemplate" + } + ], + "https://github.com/celsojr2013/comfyui_jamworks_client": [ + [ + "Jamworks_Download", + "Jamworks_Login", + "Shell_Command" + ], + { + "title_aux": "comfyui_jamworks_client" + } + ], + "https://github.com/celsojr2013/comfyui_simpletools": [ + [ + "GoogleTranslator", + "Parameters", + "ResolutionSolver" + ], + { + "title_aux": "ComfyUI SimpleTools Suit" + } + ], + "https://github.com/cenzijing/ComfyUI-Markmap": [ + [ + "MarkmapNode", + "ReadHtmlNode" + ], + { + "title_aux": "ComfyUI-Markmap" + } + ], + "https://github.com/cerspense/ComfyUI_cspnodes": [ + [ + "DepthToNormalMap", + "GetMP4Prompt", + "ImageDirIterator", + "IncrementEveryN", + "Modelscopet2v", + "Modelscopev2v", + "RemapRange", + "ResizeByImage", + "SplitImageChannels", + "VidDirIterator" + ], + { + "title_aux": "cspnodes" + } + ], + "https://github.com/ceruleandeep/ComfyUI-LLaVA-Captioner": [ + [ + "LlavaCaptioner" + ], + { + "title_aux": "ComfyUI LLaVA Captioner" + } + ], + "https://github.com/cganimitta/ComfyUI_CGAnimittaTools": [ + [ + "CGA_BlackBorderCrop", + "CGA_BlenderBridge", + "CGA_ColorToGrayscale", + "CGA_ExtractFromList", + "CGA_FrameExtraction\ud83c\udf9e\ufe0f", + "CGA_ListSubfolders", + "CGA_NegativeSelector", + "CGA_TxtReaderNode" + ], + { + "title_aux": "ComfyUI_CGAnimittaTools" + } + ], + "https://github.com/chakib-belgaid/ComfyUI-autosize": [ + [ + "CustomAutoSize", + "SDXLAutoSize" + ], + { + "title_aux": "ComfyUI-autosize" + } + ], + "https://github.com/chakib-belgaid/Comfyui_Prompt_styler": [ + [ + "Prompt_Styler" + ], + { + "title_aux": "ComfyUI Style Plugin" + } + ], + "https://github.com/chandlergis/ComfyUI-IMG_Query": [ + [ + "ImageRequestNode" + ], + { + "title_aux": "ComfyUI-IMG_Query" + } + ], + "https://github.com/chandlergis/ComfyUI_EmojiOverlay": [ + [ + "Image Emoji Overlay" + ], + { + "title_aux": "ComfyUI_EmojiOverlay" + } + ], + "https://github.com/changwook987/ComfyUI-Small-Utility": [ + [ + "Eval", + "RandomEmptyLatent" + ], + { + "title_aux": "ComfyUI-Small-Utility" + } + ], + "https://github.com/chaojie/ComfyUI-AniPortrait": [ + [ + "AniPortraitLoader", + "AniPortraitRun", + "Box2Video", + "CoverVideo", + "MaskList2Video" + ], + { + "title_aux": "ComfyUI-AniPortrait" + } + ], + "https://github.com/chaojie/ComfyUI-CameraCtrl-Wrapper": [ + [ + "CameraBasic", + "CameraCombine", + "CameraCtrlLoader", + "CameraCtrlRun", + "CameraJoin", + "CameraTrajectory" + ], + { + "title_aux": "ComfyUI-CameraCtrl-Wrapper" + } + ], + "https://github.com/chaojie/ComfyUI-Champ": [ + [ + "ChampLoader", + "ChampRun", + "ImageCombineOneColumn", + "ImageCombineOneRow" + ], + { + "title_aux": "ComfyUI-Champ" + } + ], + "https://github.com/chaojie/ComfyUI-DragAnything": [ + [ + "DragAnythingLoader", + "DragAnythingPipelineRun", + "DragAnythingPipelineRunRandom", + "DragAnythingRun", + "DragAnythingRunRandom", + "LoadText", + "SaveText", + "VHS_FILENAMES_STRING" + ], + { + "title_aux": "ComfyUI-DragAnything" + } + ], + "https://github.com/chaojie/ComfyUI-DragNUWA": [ + [ + "BrushMotion", + "CompositeMotionBrush", + "CompositeMotionBrushWithoutModel", + "DragNUWA Run", + "DragNUWA Run MotionBrush", + "Get First Image", + "Get Last Image", + "InstantCameraMotionBrush", + "InstantObjectMotionBrush", + "Load CheckPoint DragNUWA", + "Load MotionBrush From Optical Flow", + "Load MotionBrush From Optical Flow Directory", + "Load MotionBrush From Optical Flow Without Model", + "Load MotionBrush From Tracking Points", + "Load MotionBrush From Tracking Points Without Model", + "Load Pose KeyPoints", + "Loop", + "LoopEnd_IMAGE", + "LoopStart_IMAGE", + "Split Tracking Points" + ], + { + "title_aux": "ComfyUI-DragNUWA" + } + ], + "https://github.com/chaojie/ComfyUI-DynamiCrafter": [ + [ + "DynamiCrafter Simple", + "DynamiCrafterInterp Simple", + "DynamiCrafterInterpLoader", + "DynamiCrafterLoader" + ], + { + "title_aux": "ComfyUI-DynamiCrafter" + } + ], + "https://github.com/chaojie/ComfyUI-EasyAnimate": [ + [ + "EasyAnimateLoader", + "EasyAnimateRun" + ], + { + "title_aux": "ComfyUI-EasyAnimate" + } + ], + "https://github.com/chaojie/ComfyUI-Gemma": [ + [ + "GemmaLoader", + "GemmaRun" + ], + { + "title_aux": "ComfyUI-Gemma" + } + ], + "https://github.com/chaojie/ComfyUI-I2VGEN-XL": [ + [ + "I2VGEN-XL Simple", + "Modelscope Pipeline Loader" + ], + { + "title_aux": "ComfyUI-I2VGEN-XL" + } + ], + "https://github.com/chaojie/ComfyUI-Img2Img-Turbo": [ + [ + "Img2ImgTurboEdgeLoader", + "Img2ImgTurboEdgeRun", + "Img2ImgTurboSketchLoader", + "Img2ImgTurboSketchRun" + ], + { + "title_aux": "ComfyUI-Img2Img-Turbo" + } + ], + "https://github.com/chaojie/ComfyUI-LaVIT": [ + [ + "VHS_FILENAMES_STRING_LaVIT", + "VideoLaVITI2I", + "VideoLaVITI2V", + "VideoLaVITI2VLong", + "VideoLaVITLoader", + "VideoLaVITT2V", + "VideoLaVITT2VLong", + "VideoLaVITUnderstandingImage", + "VideoLaVITUnderstandingLoader", + "VideoLaVITUnderstandingVideo", + "VideoLaVITVideoDetokenizerLoader", + "VideoLaVITVideoReconstruction" + ], + { + "title_aux": "ComfyUI-LaVIT" + } + ], + "https://github.com/chaojie/ComfyUI-LightGlue": [ + [ + "LightGlue Loader", + "LightGlue Simple", + "LightGlue Simple Multi" + ], + { + "title_aux": "ComfyUI-LightGlue" + } + ], + "https://github.com/chaojie/ComfyUI-Moore-AnimateAnyone": [ + [ + "Moore-AnimateAnyone Denoising Unet", + "Moore-AnimateAnyone Image Encoder", + "Moore-AnimateAnyone Pipeline Loader", + "Moore-AnimateAnyone Pose Guider", + "Moore-AnimateAnyone Reference Unet", + "Moore-AnimateAnyone Simple", + "Moore-AnimateAnyone VAE" + ], + { + "title_aux": "ComfyUI-Moore-AnimateAnyone" + } + ], + "https://github.com/chaojie/ComfyUI-Motion-Vector-Extractor": [ + [ + "Motion Vector Extractor", + "VideoCombineThenPath" + ], + { + "title_aux": "ComfyUI-Motion-Vector-Extractor" + } + ], + "https://github.com/chaojie/ComfyUI-MotionCtrl": [ + [ + "Load Motion Camera Preset", + "Load Motion Traj Preset", + "Load Motionctrl Checkpoint", + "Motionctrl Cond", + "Motionctrl Sample", + "Motionctrl Sample Simple", + "Select Image Indices" + ], + { + "title_aux": "ComfyUI-MotionCtrl" + } + ], + "https://github.com/chaojie/ComfyUI-MotionCtrl-SVD": [ + [ + "Load Motionctrl-SVD Camera Preset", + "Load Motionctrl-SVD Checkpoint", + "Motionctrl-SVD Sample Simple" + ], + { + "title_aux": "ComfyUI-MotionCtrl-SVD" + } + ], + "https://github.com/chaojie/ComfyUI-MuseTalk": [ + [ + "MuseTalkCupAudio", + "MuseTalkRun", + "VHS_FILENAMES_STRING_MuseTalk" + ], + { + "title_aux": "ComfyUI-MuseTalk" + } + ], + "https://github.com/chaojie/ComfyUI-MuseV": [ + [ + "MuseVRun", + "MuseVRunVid2Vid", + "VHS_FILENAMES_STRING_MuseV" + ], + { + "author": "infguo", + "title_aux": "ComfyUI-MuseV" + } + ], + "https://github.com/chaojie/ComfyUI-Open-Sora": [ + [ + "OpenSoraLoader", + "OpenSoraRun", + "OpenSoraSampler" + ], + { + "title_aux": "ComfyUI-Open-Sora" + } + ], + "https://github.com/chaojie/ComfyUI-Open-Sora-Plan": [ + [ + "OpenSoraPlanDecode", + "OpenSoraPlanLoader", + "OpenSoraPlanRun", + "OpenSoraPlanSample" + ], + { + "title_aux": "ComfyUI-Open-Sora-Plan" + } + ], + "https://github.com/chaojie/ComfyUI-Panda3d": [ + [ + "Panda3dAmbientLight", + "Panda3dAttachNewNode", + "Panda3dBase", + "Panda3dDirectionalLight", + "Panda3dLoadDepthModel", + "Panda3dLoadModel", + "Panda3dLoadTexture", + "Panda3dModelMerge", + "Panda3dTest", + "Panda3dTextureMerge" + ], + { + "title_aux": "ComfyUI-Panda3d" + } + ], + "https://github.com/chaojie/ComfyUI-Pymunk": [ + [ + "PygameRun", + "PygameSurface", + "PymunkDynamicBox", + "PymunkDynamicCircle", + "PymunkRun", + "PymunkShapeMerge", + "PymunkSpace", + "PymunkStaticLine" + ], + { + "title_aux": "ComfyUI-Pymunk" + } + ], + "https://github.com/chaojie/ComfyUI-RAFT": [ + [ + "Load MotionBrush", + "RAFT Run", + "Save MotionBrush", + "VizMotionBrush" + ], + { + "title_aux": "ComfyUI-RAFT" + } + ], + "https://github.com/chaojie/ComfyUI-SimDA": [ + [ + "SimDALoader", + "SimDARun", + "SimDATrain", + "VHS_FILENAMES_STRING_SimDA" + ], + { + "title_aux": "ComfyUI-SimDA" + } + ], + "https://github.com/chaojie/ComfyUI-Trajectory": [ + [ + "Trajectory_Canvas_Tab" + ], + { + "author": "Lerc", + "description": "This extension provides a full page image editor with mask support. There are two nodes, one to receive images from the editor and one to send images to the editor.", + "nickname": "Canvas Tab", + "title": "Canvas Tab", + "title_aux": "ComfyUI-Trajectory" + } + ], + "https://github.com/chaojie/ComfyUI-Video-Editing-X-Attention": [ + [ + "StringList", + "VEXAGuidance", + "VEXALoader", + "VEXARun" + ], + { + "title_aux": "ComfyUI-Video-Editing-X-Attention" + } + ], + "https://github.com/chaojie/ComfyUI-dust3r": [ + [ + "CameraPoseVideo", + "Dust3rLoader", + "Dust3rRun" + ], + { + "title_aux": "ComfyUI-dust3r" + } + ], + "https://github.com/chaojie/ComfyUI_StreamingT2V": [ + [ + "LoadText_StreamingT2V", + "PromptTravelIndex", + "SaveText_StreamingT2V", + "StreamingT2VLoaderAnimateDiff", + "StreamingT2VLoaderAnimateDiffModel", + "StreamingT2VLoaderEnhanceModel", + "StreamingT2VLoaderModelscopeModel", + "StreamingT2VLoaderModelscopeT2V", + "StreamingT2VLoaderSVD", + "StreamingT2VLoaderSVDModel", + "StreamingT2VLoaderStreamModel", + "StreamingT2VLoaderVidXTendModel", + "StreamingT2VRunEnhanceStep", + "StreamingT2VRunI2V", + "StreamingT2VRunLongStep", + "StreamingT2VRunLongStepVidXTendPipeline", + "StreamingT2VRunLongStepVidXTendPipelineCustomRef", + "StreamingT2VRunLongStepVidXTendPipelineCustomRefOutExtendOnly", + "StreamingT2VRunLongStepVidXTendPipelinePromptTravel", + "StreamingT2VRunShortStepAnimateDiff", + "StreamingT2VRunShortStepModelscopeT2V", + "StreamingT2VRunShortStepSVD", + "StreamingT2VRunT2V", + "VHS_FILENAMES_STRING_StreamingT2V" + ], + { + "title_aux": "ComfyUI_StreamingT2V" + } + ], + "https://github.com/chaosaiart/Chaosaiart-Nodes": [ + [ + "chaosaiart_Any_Switch", + "chaosaiart_Any_Switch_Big_Number", + "chaosaiart_Any_Switch_small", + "chaosaiart_AutoNone_Switch_small", + "chaosaiart_CheckpointLoader", + "chaosaiart_CheckpointPrompt", + "chaosaiart_CheckpointPrompt2", + "chaosaiart_CheckpointPrompt_Frame", + "chaosaiart_CheckpointPrompt_FrameMixer", + "chaosaiart_ControlNetApply", + "chaosaiart_ControlNetApply2", + "chaosaiart_ControlNetApply3", + "chaosaiart_Denoising_Switch", + "chaosaiart_EmptyLatentImage", + "chaosaiart_FramePromptCLIPEncode", + "chaosaiart_Frame_Switch", + "chaosaiart_KSampler1", + "chaosaiart_KSampler2", + "chaosaiart_KSampler3", + "chaosaiart_KSampler4", + "chaosaiart_KSampler5", + "chaosaiart_KSampler7", + "chaosaiart_KSampler_a1", + "chaosaiart_KSampler_a1a", + "chaosaiart_KSampler_a2", + "chaosaiart_KSampler_expert_0", + "chaosaiart_KSampler_expert_1", + "chaosaiart_Ksampler_attribut", + "chaosaiart_Load_Image_Batch", + "chaosaiart_Load_Image_Batch_2img", + "chaosaiart_MainPromptCLIPEncode", + "chaosaiart_Number", + "chaosaiart_Number2", + "chaosaiart_Number_Counter", + "chaosaiart_Number_Switch", + "chaosaiart_Prompt", + "chaosaiart_Prompt_Frame", + "chaosaiart_Prompt_mixer_byFrame", + "chaosaiart_SaveImage", + "chaosaiart_Show_Info", + "chaosaiart_Simple_Prompt", + "chaosaiart_Style_Node", + "chaosaiart_TextCLIPEncode", + "chaosaiart_TextCLIPEncode_lora", + "chaosaiart_adjust_color", + "chaosaiart_any_array2input_1Input", + "chaosaiart_any_array2input_all_big", + "chaosaiart_any_array2input_all_small", + "chaosaiart_any_input2array_big", + "chaosaiart_any_input2array_small", + "chaosaiart_controlnet_weidgth", + "chaosaiart_convert", + "chaosaiart_convert_Prompt", + "chaosaiart_deepseek_fix", + "chaosaiart_forPreview", + "chaosaiart_image_loop", + "chaosaiart_img2gif", + "chaosaiart_img2video", + "chaosaiart_lora", + "chaosaiart_lora_advanced", + "chaosaiart_merge_Folders", + "chaosaiart_oneNode", + "chaosaiart_reloadAny_Load", + "chaosaiart_reloadAny_Save", + "chaosaiart_reloadIMG_Load", + "chaosaiart_reloadIMG_Save", + "chaosaiart_reloadLatent_Load", + "chaosaiart_reloadLatent_Save", + "chaosaiart_restarter", + "chaosaiart_restarter_advanced", + "chaosaiart_video2img1", + "chaosaiart_zoom_frame" + ], + { + "title_aux": "Chaosaiart-Nodes" + } + ], + "https://github.com/charlyad142/ComfyUI_bfl_api_pro_nodes": [ + [ + "BFL Canny Control", + "BFL Depth Control", + "BFL Flux Kontext", + "BFL Flux Ultra", + "BFL Image Expander", + "BFL Image Generator", + "BFL Inpainting" + ], + { + "title_aux": "ComfyUI BFL API Pro Nodes" + } + ], + "https://github.com/chaunceyyann/comfyui-image-processing-nodes": [ + [ + "CharacterLoaderNode", + "ImagePreviewCompare", + "ImageSizeProcessor", + "LoraAndTextCombiner", + "RandomPersonPhoto", + "ToggleLoraStackNode", + "ToggleTextNode", + "VideoThumbnailExtractor", + "YouTubeThumbnailExtractor" + ], + { + "title_aux": "ComfyUI Image Processing Nodes" + } + ], + "https://github.com/checkbins/checkbin-comfy": [ + [ + "Checkbin Get Image Bin", + "Checkbin Get String Bin", + "Checkbin Save Image Bin", + "Checkbin Save String Bin", + "Checkbin Start Run", + "Checkbin Submit Bin" + ], + { + "title_aux": "checkbin-comfy" + } + ], + "https://github.com/chenbaiyujason/ComfyUI_StepFun": [ + [ + "CombineStrings", + "JSONParser", + "StepFunClient", + "TextImageChat", + "VideoChat", + "VideoFileUploader" + ], + { + "title_aux": "ComfyUI-SCStepFun" + } + ], + "https://github.com/chenlongming/ComfyUI_Spectral": [ + [ + "Calculate", + "KMeans", + "LoadEnvi", + "LoadSpectral", + "Plot" + ], + { + "title_aux": "ComfyUI_Spectral" + } + ], + "https://github.com/chenpipi0807/ComfyUI-Index-TTS": [ + [ + "AudioCleanupNode", + "IndexTTSNode", + "IndexTTSProNode", + "NovelTextStructureNode", + "TimbreAudioLoader" + ], + { + "author": "ComfyUI-Index-TTS", + "description": "ComfyUI\u63a5\u53e3\u7684\u5de5\u4e1a\u7ea7\u96f6\u6837\u672c\u6587\u672c\u5230\u8bed\u97f3\u5408\u6210\u7cfb\u7edf", + "title": "IndexTTS for ComfyUI", + "title_aux": "ComfyUI-Index-TTS" + } + ], + "https://github.com/chenpipi0807/ComfyUI_NSFW_Godie": [ + [ + "NSFWFilterNode" + ], + { + "title_aux": "ComfyUI NSFW Filter" + } + ], + "https://github.com/chenpipi0807/PIP_ArtisticWords": [ + [ + "PIP Artistic Text Generator", + "PIP ArtisticWords Fusion", + "PIP ColorPicker", + "PIP SVG Recorder", + "PIP Text Preview", + "PIPAdvancedColorAnalyzer", + "PIPColorPicker", + "PIPColorWheel" + ], + { + "title_aux": "PIP Artistic Words for ComfyUI" + } + ], + "https://github.com/cherninlab/logo-generator-comfyui": [ + [ + "GoogleFontsLogo" + ], + { + "title_aux": "Logo Generator Node for ComfyUI" + } + ], + "https://github.com/chesnokovivan/ComfyUI-Novakid": [ + [ + "Novakid Styler" + ], + { + "title_aux": "ComfyUI-Novakid" + } + ], + "https://github.com/chflame163/ComfyUI_CatVTON_Wrapper": [ + [ + "CatVTONWrapper" + ], + { + "author": "chflame", + "description": "CatVTON warpper for ComfyUI", + "nickname": "CatVTON_Wrapper", + "title": "CatVTON_Wrapper", + "title_aux": "ComfyUI_CatVTON_Wrapper" + } + ], + "https://github.com/chflame163/ComfyUI_CogView4_Wrapper": [ + [ + "CogView4" + ], + { + "title_aux": "ComfyUI_CogView4_Wrapper" + } + ], + "https://github.com/chflame163/ComfyUI_FaceSimilarity": [ + [ + "Face Similarity" + ], + { + "title_aux": "ComfyUI Face Similarity" + } + ], + "https://github.com/chflame163/ComfyUI_Janus_Wrapper": [ + [ + "JanusImage2Text", + "JanusTextToImage", + "LoadJanusModel" + ], + { + "title_aux": "ComfyUI_Janus_Wrapper" + } + ], + "https://github.com/chflame163/ComfyUI_LayerStyle": [ + [ + "LayerColor: AutoAdjust", + "LayerColor: AutoAdjustV2", + "LayerColor: AutoBrightness", + "LayerColor: Brightness & Contrast", + "LayerColor: BrightnessContrastV2", + "LayerColor: Color of Shadow & Highlight", + "LayerColor: ColorAdapter", + "LayerColor: ColorBalance", + "LayerColor: ColorTemperature", + "LayerColor: ColorofShadowHighlightV2", + "LayerColor: Exposure", + "LayerColor: Gamma", + "LayerColor: HSV", + "LayerColor: LAB", + "LayerColor: LUT Apply", + "LayerColor: Levels", + "LayerColor: RGB", + "LayerColor: YUV", + "LayerFilter: AddGrain", + "LayerFilter: ChannelShake", + "LayerFilter: ColorMap", + "LayerFilter: Film", + "LayerFilter: FilmV2", + "LayerFilter: GaussianBlur", + "LayerFilter: GaussianBlurV2", + "LayerFilter: HDREffects", + "LayerFilter: HalfTone", + "LayerFilter: LightLeak", + "LayerFilter: MotionBlur", + "LayerFilter: Sharp & Soft", + "LayerFilter: SkinBeauty", + "LayerFilter: SoftLight", + "LayerFilter: WaterColor", + "LayerMask: BlendIf Mask", + "LayerMask: CreateGradientMask", + "LayerMask: ImageToMask", + "LayerMask: LoadSegformerModel", + "LayerMask: MaskBoxDetect", + "LayerMask: MaskByColor", + "LayerMask: MaskEdgeShrink", + "LayerMask: MaskEdgeUltraDetail", + "LayerMask: MaskEdgeUltraDetail V2", + "LayerMask: MaskGradient", + "LayerMask: MaskGrain", + "LayerMask: MaskGrow", + "LayerMask: MaskInvert", + "LayerMask: MaskMotionBlur", + "LayerMask: MaskPreview", + "LayerMask: MaskStroke", + "LayerMask: PixelSpread", + "LayerMask: RemBgUltra", + "LayerMask: RmBgUltra V2", + "LayerMask: SegformerB2ClothesUltra", + "LayerMask: SegformerClothesPipelineLoader", + "LayerMask: SegformerClothesSetting", + "LayerMask: SegformerFashionPipelineLoader", + "LayerMask: SegformerFashionSetting", + "LayerMask: SegformerUltraV2", + "LayerMask: SegformerUltraV3", + "LayerMask: Shadow & Highlight Mask", + "LayerMask: ShadowHighlightMaskV2", + "LayerStyle: ColorOverlay", + "LayerStyle: ColorOverlay V2", + "LayerStyle: DropShadow", + "LayerStyle: DropShadow V2", + "LayerStyle: DropShadow V3", + "LayerStyle: Gradient Map", + "LayerStyle: GradientOverlay", + "LayerStyle: GradientOverlay V2", + "LayerStyle: InnerGlow", + "LayerStyle: InnerGlow V2", + "LayerStyle: InnerShadow", + "LayerStyle: InnerShadow V2", + "LayerStyle: OuterGlow", + "LayerStyle: OuterGlow V2", + "LayerStyle: Stroke", + "LayerStyle: Stroke V2", + "LayerUtility: AnyRerouter", + "LayerUtility: BatchSelector", + "LayerUtility: Boolean", + "LayerUtility: BooleanOperator", + "LayerUtility: BooleanOperatorV2", + "LayerUtility: CheckMask", + "LayerUtility: CheckMaskV2", + "LayerUtility: ChoiceTextPreset", + "LayerUtility: ColorImage", + "LayerUtility: ColorImage V2", + "LayerUtility: ColorName", + "LayerUtility: ColorPicker", + "LayerUtility: CropBoxResolve", + "LayerUtility: CropByMask", + "LayerUtility: CropByMask V2", + "LayerUtility: CropByMask V3", + "LayerUtility: ExtendCanvas", + "LayerUtility: ExtendCanvasV2", + "LayerUtility: Float", + "LayerUtility: GetImageSize", + "LayerUtility: GetMainColors", + "LayerUtility: GetMainColorsV2", + "LayerUtility: GradientImage", + "LayerUtility: GradientImage V2", + "LayerUtility: GrayValue", + "LayerUtility: HLFrequencyDetailRestore", + "LayerUtility: HSV Value", + "LayerUtility: ICMask", + "LayerUtility: ICMaskCropBack", + "LayerUtility: If", + "LayerUtility: ImageBlend", + "LayerUtility: ImageBlend V2", + "LayerUtility: ImageBlendAdvance", + "LayerUtility: ImageBlendAdvance V2", + "LayerUtility: ImageBlendAdvance V3", + "LayerUtility: ImageChannelMerge", + "LayerUtility: ImageChannelSplit", + "LayerUtility: ImageCombineAlpha", + "LayerUtility: ImageHub", + "LayerUtility: ImageMaskScaleAs", + "LayerUtility: ImageMaskScaleAsV2", + "LayerUtility: ImageOpacity", + "LayerUtility: ImageReel", + "LayerUtility: ImageReelComposit", + "LayerUtility: ImageRemoveAlpha", + "LayerUtility: ImageScaleByAspectRatio", + "LayerUtility: ImageScaleByAspectRatio V2", + "LayerUtility: ImageScaleRestore", + "LayerUtility: ImageScaleRestore V2", + "LayerUtility: ImageShift", + "LayerUtility: ImageTaggerSave", + "LayerUtility: Integer", + "LayerUtility: LayerImageTransform", + "LayerUtility: LayerMaskTransform", + "LayerUtility: LoadVQAModel", + "LayerUtility: NameToColor", + "LayerUtility: NumberCalculator", + "LayerUtility: NumberCalculatorV2", + "LayerUtility: PrintInfo", + "LayerUtility: PurgeVRAM", + "LayerUtility: PurgeVRAM V2", + "LayerUtility: QueueStop", + "LayerUtility: RGB Value", + "LayerUtility: RandomGenerator", + "LayerUtility: RandomGeneratorV2", + "LayerUtility: RestoreCropBox", + "LayerUtility: RoundedRectangle", + "LayerUtility: Seed", + "LayerUtility: SimpleTextImage", + "LayerUtility: String", + "LayerUtility: StringCondition", + "LayerUtility: SwitchCase", + "LayerUtility: TextBox", + "LayerUtility: TextImage", + "LayerUtility: TextImage V2", + "LayerUtility: TextJoin", + "LayerUtility: TextJoinV2", + "LayerUtility: TextPreseter", + "LayerUtility: VQAPrompt", + "LayerUtility: XY to Percent" + ], + { + "author": "chflame", + "description": "A set of nodes for ComfyUI that can composite layer and mask to achieve Photoshop like functionality.", + "nickname": "LayerStyle", + "title": "LayerStyle", + "title_aux": "ComfyUI Layer Style" + } + ], + "https://github.com/chflame163/ComfyUI_LayerStyle_Advance": [ + [ + "LayerMask: BBoxJoin", + "LayerMask: BenUltra", + "LayerMask: BiRefNetUltra", + "LayerMask: BiRefNetUltraV2", + "LayerMask: DrawBBoxMask", + "LayerMask: DrawBBoxMaskV2", + "LayerMask: EVFSAMUltra", + "LayerMask: Florence2Ultra", + "LayerMask: HumanPartsUltra", + "LayerMask: LoadBenModel", + "LayerMask: LoadBiRefNetModel", + "LayerMask: LoadBiRefNetModelV2", + "LayerMask: LoadFlorence2Model", + "LayerMask: LoadSAM2Model", + "LayerMask: LoadSegmentAnythingModels", + "LayerMask: MaskByDifferent", + "LayerMask: MediapipeFacialSegment", + "LayerMask: ObjectDetectorFL2", + "LayerMask: ObjectDetectorGemini", + "LayerMask: ObjectDetectorGeminiV2", + "LayerMask: ObjectDetectorMask", + "LayerMask: ObjectDetectorYOLO8", + "LayerMask: ObjectDetectorYOLOWorld", + "LayerMask: PersonMaskUltra", + "LayerMask: PersonMaskUltra V2", + "LayerMask: SAM2Ultra", + "LayerMask: SAM2UltraV2", + "LayerMask: SAM2VideoUltra", + "LayerMask: SegmentAnythingUltra", + "LayerMask: SegmentAnythingUltra V2", + "LayerMask: SegmentAnythingUltra V3", + "LayerMask: TransparentBackgroundUltra", + "LayerMask: YoloV8Detect", + "LayerUtility: AddBlindWaterMark", + "LayerUtility: Collage", + "LayerUtility: CreateQRCode", + "LayerUtility: DecodeQRCode", + "LayerUtility: DeepSeekAPI", + "LayerUtility: DeepSeekAPIV2", + "LayerUtility: Florence2Image2Prompt", + "LayerUtility: Gemini", + "LayerUtility: GeminiImageEdit", + "LayerUtility: GeminiV2", + "LayerUtility: GetColorTone", + "LayerUtility: GetColorToneV2", + "LayerUtility: ImageAutoCrop", + "LayerUtility: ImageAutoCrop V2", + "LayerUtility: ImageAutoCrop V3", + "LayerUtility: ImageRewardFilter", + "LayerUtility: JoyCaption2", + "LayerUtility: JoyCaption2ExtraOptions", + "LayerUtility: JoyCaption2Split", + "LayerUtility: JoyCaptionBeta1", + "LayerUtility: JoyCaptionBeta1ExtraOptions", + "LayerUtility: LaMa", + "LayerUtility: LlamaVision", + "LayerUtility: LoadJoyCaption2Model", + "LayerUtility: LoadJoyCaptionBeta1Model", + "LayerUtility: LoadPSD", + "LayerUtility: LoadSmolLM2Model", + "LayerUtility: LoadSmolVLMModel", + "LayerUtility: PhiPrompt", + "LayerUtility: PromptEmbellish", + "LayerUtility: PromptTagger", + "LayerUtility: QWenImage2Prompt", + "LayerUtility: SD3NegativeConditioning", + "LayerUtility: SaveImagePlus", + "LayerUtility: SaveImagePlusV2", + "LayerUtility: ShowBlindWaterMark", + "LayerUtility: SmolLM2", + "LayerUtility: SmolVLM", + "LayerUtility: UserPromptGeneratorReplaceWord", + "LayerUtility: UserPromptGeneratorTxt2ImgPrompt", + "LayerUtility: UserPromptGeneratorTxt2ImgPromptWithReference", + "LayerUtility: ZhipuGLM4", + "LayerUtility: ZhipuGLM4V" + ], + { + "author": "chflame", + "description": "A set of nodes for ComfyUI that can composite layer and mask to achieve Photoshop like functionality.", + "nickname": "LayerStyle", + "title": "LayerStyle", + "title_aux": "ComfyUI_LayerStyle_Advance" + } + ], + "https://github.com/chflame163/ComfyUI_MSSpeech_TTS": [ + [ + "Input Trigger", + "MicrosoftSpeech_TTS", + "Play Sound", + "Play Sound (loop)" + ], + { + "title_aux": "ComfyUI_MSSpeech_TTS" + } + ], + "https://github.com/chflame163/ComfyUI_OmniGen_Wrapper": [ + [ + "dzOmniGenWrapper" + ], + { + "title_aux": "ComfyUI_OmniGen_Wrapper" + } + ], + "https://github.com/chflame163/ComfyUI_WordCloud": [ + [ + "ComfyWordCloud", + "LoadTextFile", + "RGB_Picker" + ], + { + "title_aux": "ComfyUI_WordCloud" + } + ], + "https://github.com/chibiace/ComfyUI-Chibi-Nodes": [ + [ + "ConditionText", + "ConditionTextMulti", + "ConditionTextPrompts", + "ImageAddText", + "ImageSimpleResize", + "ImageSizeInfo", + "ImageTool", + "Int2String", + "LoadEmbedding", + "LoadImageExtended", + "Loader", + "Prompts", + "RandomResolutionLatent", + "SaveImages", + "SeedGenerator", + "SimpleSampler", + "TextSplit", + "Textbox", + "Wildcards" + ], + { + "title_aux": "ComfyUI-Chibi-Nodes" + } + ], + "https://github.com/choey/Comfy-Topaz": [ + [ + "TopazPhotoAI", + "TopazSharpenSettings", + "TopazUpscaleSettings" + ], + { + "title_aux": "Comfy-Topaz" + } + ], + "https://github.com/chou18194766xx/comfyui-EncryptSave": [ + [ + "EncryptSaveAES" + ], + { + "title_aux": "comfyui-EncryptSave" + } + ], + "https://github.com/chou18194766xx/comfyui_EncryptPreview": [ + [ + "EncryptPreviewImage" + ], + { + "title_aux": "comfyui_EncryptPreview" + } + ], + "https://github.com/chri002/ComfyUI_depthMapOperation": [ + [ + "CleanPoints (KDTree)", + "CloudPointsInfo", + "CubeLimit", + "Export to PLY", + "ImageToPoints", + "ImageToPoints (Legacy)", + "ImageToPoints (Torch)", + "Import PLY", + "InterpolatePoints (KDTree)", + "PointsToImage (Orthographic)", + "PointsToImage (Projection)", + "PointsToImage advance (DEBUG)", + "PointsToImage advance (Orthographic)", + "PointsToImage advance (Projection)", + "TransformPoints" + ], + { + "title_aux": "ComfyUI_depthMapOperation" + } + ], + "https://github.com/chris-arsenault/ComfyUI-AharaNodes": [ + [ + "FrameSegmenter", + "FrameSegmenterIndexer", + "RepeatSampler", + "RepeatSamplerConfigNode", + "RepeatSamplerConfigPatchLatent", + "RepeatSamplerConfigPatchModel" + ], + { + "title_aux": "ComfyUI-AharaNodes" + } + ], + "https://github.com/chris-the-wiz/EmbeddingsCurveEditor_ComfyUI": [ + [ + "Embeddings Curve Editor" + ], + { + "title_aux": "EmbeddingsCurveEditor_ComfyUI" + } + ], + "https://github.com/chrisfreilich/virtuoso-nodes": [ + [ + "BlackAndWhite", + "BlendIf", + "BlendModes", + "ColorBalance", + "ColorBalanceAdvanced", + "GaussianBlur", + "GaussianBlurDepth", + "HueSat", + "HueSatAdvanced", + "LensBlur", + "LensBlurDepth", + "Levels", + "MergeRGB", + "MotionBlur", + "MotionBlurDepth", + "SelectiveColor", + "SolidColor", + "SolidColorHSV", + "SolidColorRGB", + "SplitRGB" + ], + { + "author": "Chris Freilich", + "description": "This extension provides a \"Levels\" node.", + "nickname": "Virtuoso Pack - Contrast", + "title": "Virtuoso Pack - Contrast", + "title_aux": "Virtuoso Nodes for ComfyUI" + } + ], + "https://github.com/chrisgoringe/cg-image-filter": [ + [ + "Batch from Image List", + "Image Filter", + "Image List From Batch", + "Mask Image Filter", + "Masked Section", + "Pick from List", + "Split String by Commas", + "String to Float", + "String to Int", + "Text Image Filter", + "Text Image Filter with Extras" + ], + { + "author": "chrisgoringe", + "description": "A custom node that pauses the flow while you choose which image or images to pass on to the rest of the workflow. Simplified and improved version of cg-image-picker.", + "nickname": "Image Filter", + "title": "Image Filter", + "title_aux": "Image Filter" + } + ], + "https://github.com/chrisgoringe/cg-noisetools": [ + [ + "Batch Noise Simulate", + "Mix Noise", + "Seperable Batch Noise", + "Shape Noise", + "Split Sigmas with Rewind" + ], + { + "title_aux": "Noise variation and batch noise tools" + } + ], + "https://github.com/chrisgoringe/cg-use-everywhere": [ + [ + "Seed Everywhere" + ], + { + "nodename_pattern": "(^(Prompts|Anything) Everywhere|Simple String)", + "title_aux": "Use Everywhere (UE Nodes)" + } + ], + "https://github.com/chrissy0/chris-comfyui-nodes": [ + [ + "PadImageSquare" + ], + { + "title_aux": "chris-comfyui-nodes" + } + ], + "https://github.com/christian-byrne/audio-separation-nodes-comfyui": [ + [ + "AudioCombine", + "AudioCrop", + "AudioGetTempo", + "AudioSeparation", + "AudioSpeedShift", + "AudioTempoMatch", + "AudioVideoCombine" + ], + { + "title_aux": "audio-separation-nodes-comfyui" + } + ], + "https://github.com/christian-byrne/claude-code-comfyui-nodes": [ + [ + "ClaudeCodeArguments", + "ClaudeCodeContext", + "ClaudeCodeExecute", + "ClaudeCodeMCP", + "ClaudeCodeMemory", + "ClaudeCodeReader", + "ClaudeCodeTools", + "ClaudeRedditScraper" + ], + { + "title_aux": "Claude Code ComfyUI Nodes" + } + ], + "https://github.com/christian-byrne/img2colors-comfyui-node": [ + [ + "bmy_Img2ColorNode" + ], + { + "author": "christian-byrne", + "description": "", + "nickname": "img2color", + "title": "Img2Color Node - Detect and describe color palettes in images", + "title_aux": "Img2color - Extract Colors from Image" + } + ], + "https://github.com/christian-byrne/img2txt-comfyui-nodes": [ + [ + "img2txt BLIP/Llava Multimodel Tagger" + ], + { + "author": "christian-byrne", + "title": "Img2Txt auto captioning", + "title_aux": "img2txt-comfyui-nodes" + } + ], + "https://github.com/christian-byrne/size-match-compositing-nodes": [ + [ + "Composite Alpha Layer", + "Size Match Images/Masks" + ], + { + "title_aux": "Node - Size Matcher" + } + ], + "https://github.com/christian-byrne/youtube-dl-comfyui": [ + [ + "YoutubeDL" + ], + { + "title_aux": "youtube-dl-comfyui" + } + ], + "https://github.com/chuchu114514/comfyui_proportion_solver": [ + [ + "ProportionSolver", + "ProportionSolverAdvanced" + ], + { + "title_aux": "comfyui_proportion_solver" + } + ], + "https://github.com/ciga2011/ComfyUI-MarkItDown": [ + [ + "WIZ_AUDIO2MARKDOWN", + "WIZ_EXCEL2MARKDOWN", + "WIZ_HTML2MARKDOWN", + "WIZ_IMAGE2MARKDOWN", + "WIZ_IPYNB2MARKDOWN", + "WIZ_LLM_CLIENT", + "WIZ_MARKITDOWN", + "WIZ_PDF2MARKDOWN", + "WIZ_POWERPOINT2MARKDOWN", + "WIZ_WORD2MARKDOWN" + ], + { + "title_aux": "ComfyUI MarkItDown" + } + ], + "https://github.com/ciga2011/ComfyUI-Pollinations": [ + [ + "PollinationsNode" + ], + { + "title_aux": "ComfyUI Pollinations" + } + ], + "https://github.com/ciga2011/ComfyUI-PromptOptimizer": [ + [ + "PromptOptimizer" + ], + { + "title_aux": "ComfyUI Prompt Optimizer" + } + ], + "https://github.com/ciri/comfyui-model-downloader": [ + [ + "Auto Model Downloader", + "CivitAI Downloader", + "HF Downloader" + ], + { + "title_aux": "ComfyUI Model Downloader" + } + ], + "https://github.com/city96/ComfyUI-GGUF": [ + [ + "CLIPLoaderGGUF", + "DualCLIPLoaderGGUF", + "QuadrupleCLIPLoaderGGUF", + "TripleCLIPLoaderGGUF", + "UnetLoaderGGUF", + "UnetLoaderGGUFAdvanced" + ], + { + "preemptions": [ + "CLIPLoaderGGUF", + "DualCLIPLoaderGGUF", + "TripleCLIPLoaderGGUF", + "UnetLoaderGGUF", + "UnetLoaderGGUFAdvanced" + ], + "title_aux": "ComfyUI-GGUF" + } + ], + "https://github.com/city96/ComfyUI_ColorMod": [ + [ + "CV2Tonemap", + "CV2TonemapDrago", + "CV2TonemapDurand", + "CV2TonemapMantiuk", + "CV2TonemapReinhard", + "ColorModCompress", + "ColorModEdges", + "ColorModMove", + "ColorModPivot", + "ColorspaceConvert", + "HDRCreate", + "HDRExposureFusion", + "LoadImageHDR", + "LoadImageHighPrec", + "PreviewImageHighPrec", + "SaveImageHDR", + "SaveImageHighPrec" + ], + { + "title_aux": "ComfyUI_ColorMod" + } + ], + "https://github.com/city96/ComfyUI_DiT": [ + [ + "DiTCheckpointLoader", + "DiTCheckpointLoaderSimple", + "DiTLabelCombine", + "DiTLabelSelect", + "DiTSampler" + ], + { + "title_aux": "ComfyUI_DiT [WIP]" + } + ], + "https://github.com/city96/ComfyUI_ExtraModels": [ + [ + "DiTCondLabelEmpty", + "DiTCondLabelSelect", + "DitCheckpointLoader", + "EmptyDCAELatentImage", + "EmptySanaLatentImage", + "ExtraVAELoader", + "GemmaLoader", + "GemmaTextEncode", + "HYDiTCheckpointLoader", + "HYDiTSrcSizeCond", + "HYDiTTextEncode", + "HYDiTTextEncodeSimple", + "HYDiTTextEncoderLoader", + "MiaoBiCLIPLoader", + "MiaoBiDiffusersLoader", + "OverrideCLIPDevice", + "OverrideVAEDevice", + "PixArtCheckpointLoader", + "PixArtCheckpointLoaderSimple", + "PixArtControlNetCond", + "PixArtLoraLoader", + "PixArtResolutionCond", + "PixArtResolutionSelect", + "PixArtT5FromSD3CLIP", + "PixArtT5TextEncode", + "SanaCheckpointLoader", + "SanaResolutionCond", + "SanaResolutionSelect", + "SanaTextEncode", + "T5TextEncode", + "T5v11Loader" + ], + { + "title_aux": "Extra Models for ComfyUI" + } + ], + "https://github.com/city96/ComfyUI_NetDist": [ + [ + "CombineImageBatch", + "FetchRemote", + "LoadCurrentWorkflowJSON", + "LoadDiskWorkflowJSON", + "LoadImageUrl", + "LoadLatentNumpy", + "LoadLatentUrl", + "RemoteChainEnd", + "RemoteChainStart", + "RemoteQueueSimple", + "RemoteQueueWorker", + "SaveDiskWorkflowJSON", + "SaveImageUrl", + "SaveLatentNumpy" + ], + { + "title_aux": "ComfyUI_NetDist" + } + ], + "https://github.com/city96/SD-Latent-Interposer": [ + [ + "LatentInterposer" + ], + { + "title_aux": "Latent-Interposer" + } + ], + "https://github.com/city96/SD-Latent-Upscaler": [ + [ + "LatentUpscaler" + ], + { + "title_aux": "SD-Latent-Upscaler" + } + ], + "https://github.com/civen-cn/ComfyUI-PaddleOcr": [ + [ + "OcrBlur", + "OcrBoxMask", + "OcrImageText" + ], + { + "title_aux": "ComfyUI-PaddleOcr" + } + ], + "https://github.com/civen-cn/ComfyUI-Whisper-Translator": [ + [ + "Add Subtitles To FramesX", + "Apply WhisperX" + ], + { + "title_aux": "ComfyUI Whisper Translator" + } + ], + "https://github.com/civitai/civitai_comfy_nodes": [ + [ + "CivitAI_Checkpoint_Loader", + "CivitAI_Lora_Loader" + ], + { + "title_aux": "Civitai Comfy Nodes" + } + ], + "https://github.com/cjj198909/comfy_openai_image_api_azure": [ + [ + "OpenAI Image API" + ], + { + "title_aux": "OpenAI/Azure OpenAI Image API" + } + ], + "https://github.com/claptrap0/ComfyUI_LLM_Hub": [ + [ + "Generated_Output", + "LLM_Hub", + "LLM_Settings" + ], + { + "title_aux": "ComfyUI_LLM_Hub" + } + ], + "https://github.com/claussteinmassl/ComfyUI-CS-CustomNodes": [ + [ + "CS Transform" + ], + { + "title_aux": "CS Transform Node for ComfyUI" + } + ], + "https://github.com/cleanlii/comfyui-dalle-integration": [ + [ + "DalleImageEdit", + "DalleImageGeneration", + "DalleImageVariation" + ], + { + "title_aux": "DalleImageNodes - OpenAI DALL\u00b7E Nodes for ComfyUI" + } + ], + "https://github.com/clhui/ComfyUi-clh-Tool": [ + [ + "EchartGraph_clh", + "EchartOptionByPath_clh", + "EchartOption_clh", + "INTConstant_clh", + "JavaScript_clh", + "JoinStringMulti_clh", + "MathExpression_clh", + "SetRedis|clh", + "ShowText_clh", + "SomethingToString_clh", + "String2FatLabels_clh", + "String2Image_clh", + "StringConstant_clh" + ], + { + "author": "Dr.Lt.Data", + "description": "This extension offers various detector nodes and detailer nodes that allow you to configure a workflow that automatically enhances facial details. And provide iterative upscaler.", + "nickname": "CLH Simple Tool", + "title": "CLH simple Tool", + "title_aux": "Clh Tool for ComfyUI" + } + ], + "https://github.com/clouddreamfly/ComfyUI-PromptWrapper": [ + [ + "CombinePrompt", + "CustomPrompt", + "DrawStylePrompt", + "GeneratePrompt", + "InputPrompt", + "LightPrompt", + "MultiCombinePrompt", + "MultiReplacePrompt", + "NegativePrompt", + "PortraitCosmeticPrompt", + "PortraitFashionPrompt", + "PortraitPosePrompt", + "PortraitPrompt", + "PortraitSkinPrompt", + "PreviewPrompt", + "PromptTranslation", + "RandomLinePrompt", + "RandomsPrompt", + "RandomsWeightPrompt", + "ReplacePrompt", + "SavePrompt", + "SceneryPrompt" + ], + { + "title_aux": "ComfyUI-PromptWrapper" + } + ], + "https://github.com/cloudkoala/comfyui-koala": [ + [ + "AspectRatioLatentNode", + "SaveImageAnywhere", + "SaveMeshAnywhere" + ], + { + "title_aux": "comfyui-koala" + } + ], + "https://github.com/cluny85/ComfyUI-Scripting-Tools": [ + [ + "EnhancedUUIDGeneratorNode", + "UUIDGeneratorNode" + ], + { + "title_aux": "ComfyUI-Scripting-Tools" + } + ], + "https://github.com/cmdicely/simple_image_to_palette": [ + [ + "Example" + ], + { + "title_aux": "Simple Image To Palette" + } + ], + "https://github.com/codeprimate/ComfyUI-MaskContourProcessor": [ + [ + "MaskContourProcessor" + ], + { + "title_aux": "ComfyUI Mask Contour Processor" + } + ], + "https://github.com/comfy-deploy/comfyui-llm-toolkit": [ + [ + "AudioDurationFrames", + "BFLProviderNode", + "BlankImage", + "CheckImageEmpty", + "ConfigGenerateImage", + "ConfigGenerateImageBFL", + "ConfigGenerateImageFluxDev", + "ConfigGenerateImageGemini", + "ConfigGenerateImageOpenAI", + "ConfigGenerateImagePortrait", + "ConfigGenerateImageSeedanceEditV3", + "ConfigGenerateMusic", + "ConfigGenerateSpeech", + "ConfigGenerateVideo", + "ConfigGenerateVideoHailuoI2VPro", + "ConfigGenerateVideoHailuoI2VStandard", + "ConfigGenerateVideoHailuoT2VPro", + "ConfigGenerateVideoHailuoT2VStandard", + "ConfigGenerateVideoKlingI2VMaster", + "ConfigGenerateVideoKlingI2VPro", + "ConfigGenerateVideoKlingI2VStandard", + "ConfigGenerateVideoSeedanceProI2V", + "ConfigGenerateVideoSeedanceProT2V", + "ConfigGenerateVideoVeo2I2V", + "ConfigGenerateVideoVeo2T2V", + "ConfigGenerateVideoVeo3", + "ConfigGenerateVideoVeo3Fast", + "Display_Text", + "GeminiProviderNode", + "GenerateImage", + "GenerateLyrics", + "GenerateMusic", + "GenerateSpeech", + "GenerateVideo", + "JoinStringsMulti", + "LLMToolkitProviderSelector", + "LLMToolkitTextGenerator", + "LLMToolkitTextGeneratorStream", + "LoadAudioFromPath", + "LoadVideoFromPath", + "LocalTransformersProviderNode", + "LocalVLLMProviderNode", + "OpenAIProviderNode", + "PlayRandomSound", + "PreviewImageLogic", + "PreviewOutputs", + "PreviewVideo", + "PromptManager", + "ResolutionSelector", + "StylePromptGenerator", + "SunoProviderSelector", + "SwitchAny", + "SwitchAnyRoute", + "SwitchAnyRoute_wANY", + "SwitchAny_wANY", + "SystemPromptTaskGenerator", + "UpscaleVideo", + "WaveSpeedProviderNode" + ], + { + "author": "ComfyDeploy", + "description": "llm toolkit", + "nickname": "llm_toolkit", + "title": "llm toolkit", + "title_aux": "ComfyUI LLM Toolkit" + } + ], + "https://github.com/comfyanonymous/ComfyUI": [ + [ + "APG", + "AddNoise", + "AlignYourStepsScheduler", + "BasicGuider", + "BasicScheduler", + "BetaSamplingScheduler", + "CFGGuider", + "CFGNorm", + "CFGZeroStar", + "CLIPAttentionMultiply", + "CLIPLoader", + "CLIPMergeAdd", + "CLIPMergeSimple", + "CLIPMergeSubtract", + "CLIPSave", + "CLIPSetLastLayer", + "CLIPTextEncode", + "CLIPTextEncodeControlnet", + "CLIPTextEncodeFlux", + "CLIPTextEncodeHiDream", + "CLIPTextEncodeHunyuanDiT", + "CLIPTextEncodeLumina2", + "CLIPTextEncodePixArtAlpha", + "CLIPTextEncodeSD3", + "CLIPTextEncodeSDXL", + "CLIPTextEncodeSDXLRefiner", + "CLIPVisionEncode", + "CLIPVisionLoader", + "Canny", + "CaseConverter", + "CheckpointLoader", + "CheckpointLoaderSimple", + "CheckpointSave", + "ConditioningAverage", + "ConditioningCombine", + "ConditioningConcat", + "ConditioningSetArea", + "ConditioningSetAreaPercentage", + "ConditioningSetAreaPercentageVideo", + "ConditioningSetAreaStrength", + "ConditioningSetMask", + "ConditioningSetTimestepRange", + "ConditioningStableAudio", + "ConditioningZeroOut", + "ControlNetApply", + "ControlNetApplyAdvanced", + "ControlNetApplySD3", + "ControlNetInpaintingAliMamaApply", + "ControlNetLoader", + "CosmosImageToVideoLatent", + "CosmosPredict2ImageToVideoLatent", + "CreateVideo", + "CropMask", + "DiffControlNetLoader", + "DifferentialDiffusion", + "DiffusersLoader", + "DisableNoise", + "DualCFGGuider", + "DualCLIPLoader", + "EmptyAceStepLatentAudio", + "EmptyCosmosLatentVideo", + "EmptyHunyuanLatentVideo", + "EmptyImage", + "EmptyLTXVLatentVideo", + "EmptyLatentAudio", + "EmptyLatentHunyuan3Dv2", + "EmptyLatentImage", + "EmptyMochiLatentVideo", + "EmptySD3LatentImage", + "ExponentialScheduler", + "ExtendIntermediateSigmas", + "FeatherMask", + "FlipSigmas", + "FluxDisableGuidance", + "FluxGuidance", + "FluxKontextImageScale", + "FluxKontextMaxImageNode", + "FluxKontextProImageNode", + "FluxProCannyNode", + "FluxProDepthNode", + "FluxProExpandNode", + "FluxProFillNode", + "FluxProImageNode", + "FluxProUltraImageNode", + "FreSca", + "FreeU", + "FreeU_V2", + "GITSScheduler", + "GLIGENLoader", + "GLIGENTextBoxApply", + "GeminiInputFiles", + "GeminiNode", + "GetImageSize", + "GetVideoComponents", + "GrowMask", + "Hunyuan3Dv2Conditioning", + "Hunyuan3Dv2ConditioningMultiView", + "HunyuanImageToVideo", + "HyperTile", + "HypernetworkLoader", + "IdeogramV1", + "IdeogramV2", + "IdeogramV3", + "ImageAddNoise", + "ImageBatch", + "ImageBlend", + "ImageBlur", + "ImageColorToMask", + "ImageCompositeMasked", + "ImageCrop", + "ImageFlip", + "ImageFromBatch", + "ImageInvert", + "ImageOnlyCheckpointLoader", + "ImageOnlyCheckpointSave", + "ImagePadForOutpaint", + "ImageQuantize", + "ImageRGBToYUV", + "ImageRotate", + "ImageScale", + "ImageScaleBy", + "ImageScaleToTotalPixels", + "ImageSharpen", + "ImageStitch", + "ImageToMask", + "ImageUpscaleWithModel", + "ImageYUVToRGB", + "InpaintModelConditioning", + "InstructPixToPixConditioning", + "InvertMask", + "JoinImageWithAlpha", + "KSampler", + "KSamplerAdvanced", + "KSamplerSelect", + "KarrasScheduler", + "KlingCameraControlI2VNode", + "KlingCameraControlT2VNode", + "KlingCameraControls", + "KlingDualCharacterVideoEffectNode", + "KlingImage2VideoNode", + "KlingImageGenerationNode", + "KlingLipSyncAudioToVideoNode", + "KlingLipSyncTextToVideoNode", + "KlingSingleImageVideoEffectNode", + "KlingStartEndFrameNode", + "KlingTextToVideoNode", + "KlingVideoExtendNode", + "KlingVirtualTryOnNode", + "LTXVAddGuide", + "LTXVConditioning", + "LTXVCropGuides", + "LTXVImgToVideo", + "LTXVPreprocess", + "LTXVScheduler", + "LaplaceScheduler", + "LatentAdd", + "LatentApplyOperation", + "LatentApplyOperationCFG", + "LatentBatch", + "LatentBatchSeedBehavior", + "LatentBlend", + "LatentComposite", + "LatentCompositeMasked", + "LatentCrop", + "LatentFlip", + "LatentFromBatch", + "LatentInterpolate", + "LatentMultiply", + "LatentOperationSharpen", + "LatentOperationTonemapReinhard", + "LatentRotate", + "LatentSubtract", + "LatentUpscale", + "LatentUpscaleBy", + "Load3D", + "Load3DAnimation", + "LoadAudio", + "LoadImage", + "LoadImageMask", + "LoadImageOutput", + "LoadImageSetFromFolderNode", + "LoadImageTextSetFromFolderNode", + "LoadLatent", + "LoadVideo", + "LoraLoader", + "LoraLoaderModelOnly", + "LoraModelLoader", + "LoraSave", + "LossGraphNode", + "LotusConditioning", + "LumaConceptsNode", + "LumaImageModifyNode", + "LumaImageNode", + "LumaImageToVideoNode", + "LumaReferenceNode", + "LumaVideoNode", + "Mahiro", + "MaskComposite", + "MaskPreview", + "MaskToImage", + "MinimaxImageToVideoNode", + "MinimaxSubjectToVideoNode", + "MinimaxTextToVideoNode", + "ModelComputeDtype", + "ModelMergeAdd", + "ModelMergeAuraflow", + "ModelMergeBlocks", + "ModelMergeCosmos14B", + "ModelMergeCosmos7B", + "ModelMergeCosmosPredict2_14B", + "ModelMergeCosmosPredict2_2B", + "ModelMergeFlux1", + "ModelMergeLTXV", + "ModelMergeMochiPreview", + "ModelMergeSD1", + "ModelMergeSD2", + "ModelMergeSD35_Large", + "ModelMergeSD3_2B", + "ModelMergeSDXL", + "ModelMergeSimple", + "ModelMergeSubtract", + "ModelMergeWAN2_1", + "ModelSamplingAuraFlow", + "ModelSamplingContinuousEDM", + "ModelSamplingContinuousV", + "ModelSamplingDiscrete", + "ModelSamplingFlux", + "ModelSamplingLTXV", + "ModelSamplingSD3", + "ModelSamplingStableCascade", + "ModelSave", + "MoonvalleyImg2VideoNode", + "MoonvalleyTxt2VideoNode", + "MoonvalleyVideo2VideoNode", + "Morphology", + "OpenAIChatConfig", + "OpenAIChatNode", + "OpenAIDalle2", + "OpenAIDalle3", + "OpenAIGPTImage1", + "OpenAIInputFiles", + "OptimalStepsScheduler", + "PatchModelAddDownscale", + "PerpNeg", + "PerpNegGuider", + "PerturbedAttentionGuidance", + "PhotoMakerEncode", + "PhotoMakerLoader", + "PikaImageToVideoNode2_2", + "PikaScenesV2_2", + "PikaStartEndFrameNode2_2", + "PikaTextToVideoNode2_2", + "Pikadditions", + "Pikaffects", + "Pikaswaps", + "PixverseImageToVideoNode", + "PixverseTemplateNode", + "PixverseTextToVideoNode", + "PixverseTransitionVideoNode", + "PolyexponentialScheduler", + "PorterDuffImageComposite", + "Preview3D", + "Preview3DAnimation", + "PreviewAny", + "PreviewAudio", + "PreviewImage", + "PrimitiveBoolean", + "PrimitiveFloat", + "PrimitiveInt", + "PrimitiveString", + "PrimitiveStringMultiline", + "QuadrupleCLIPLoader", + "RandomNoise", + "RebatchImages", + "RebatchLatents", + "RecraftColorRGB", + "RecraftControls", + "RecraftCreativeUpscaleNode", + "RecraftCrispUpscaleNode", + "RecraftImageInpaintingNode", + "RecraftImageToImageNode", + "RecraftRemoveBackgroundNode", + "RecraftReplaceBackgroundNode", + "RecraftStyleV3DigitalIllustration", + "RecraftStyleV3InfiniteStyleLibrary", + "RecraftStyleV3LogoRaster", + "RecraftStyleV3RealisticImage", + "RecraftTextToImageNode", + "RecraftTextToVectorNode", + "RecraftVectorizeImageNode", + "ReferenceLatent", + "RegexExtract", + "RegexMatch", + "RegexReplace", + "RenormCFG", + "RepeatImageBatch", + "RepeatLatentBatch", + "RescaleCFG", + "ResizeAndPadImage", + "Rodin3D_Detail", + "Rodin3D_Regular", + "Rodin3D_Sketch", + "Rodin3D_Smooth", + "RunwayFirstLastFrameNode", + "RunwayImageToVideoNodeGen3a", + "RunwayImageToVideoNodeGen4", + "RunwayTextToImageNode", + "SDTurboScheduler", + "SD_4XUpscale_Conditioning", + "SV3D_Conditioning", + "SVD_img2vid_Conditioning", + "SamplerCustom", + "SamplerCustomAdvanced", + "SamplerDPMAdaptative", + "SamplerDPMPP_2M_SDE", + "SamplerDPMPP_2S_Ancestral", + "SamplerDPMPP_3M_SDE", + "SamplerDPMPP_SDE", + "SamplerER_SDE", + "SamplerEulerAncestral", + "SamplerEulerAncestralCFGPP", + "SamplerEulerCFGpp", + "SamplerLCMUpscale", + "SamplerLMS", + "SamplerSASolver", + "SamplingPercentToSigma", + "SaveAnimatedPNG", + "SaveAnimatedWEBP", + "SaveAudio", + "SaveAudioMP3", + "SaveAudioOpus", + "SaveGLB", + "SaveImage", + "SaveImageWebsocket", + "SaveLatent", + "SaveLoRANode", + "SaveSVGNode", + "SaveVideo", + "SaveWEBM", + "SelfAttentionGuidance", + "SetFirstSigma", + "SetLatentNoiseMask", + "SetUnionControlNetType", + "SkipLayerGuidanceDiT", + "SkipLayerGuidanceDiTSimple", + "SkipLayerGuidanceSD3", + "SolidMask", + "SplitImageWithAlpha", + "SplitSigmas", + "SplitSigmasDenoise", + "StabilityStableImageSD_3_5Node", + "StabilityStableImageUltraNode", + "StabilityUpscaleConservativeNode", + "StabilityUpscaleCreativeNode", + "StabilityUpscaleFastNode", + "StableCascade_EmptyLatentImage", + "StableCascade_StageB_Conditioning", + "StableCascade_StageC_VAEEncode", + "StableCascade_SuperResolutionControlnet", + "StableZero123_Conditioning", + "StableZero123_Conditioning_Batched", + "StringCompare", + "StringConcatenate", + "StringContains", + "StringLength", + "StringReplace", + "StringSubstring", + "StringTrim", + "StubConstantImage", + "StubFloat", + "StubImage", + "StubInt", + "StubMask", + "StyleModelApply", + "StyleModelLoader", + "T5TokenizerOptions", + "TCFG", + "TestAccumulateNode", + "TestAccumulationGetItemNode", + "TestAccumulationGetLengthNode", + "TestAccumulationHeadNode", + "TestAccumulationSetItemNode", + "TestAccumulationTailNode", + "TestAccumulationToListNode", + "TestAsyncBatchProcessing", + "TestAsyncConcurrentLimit", + "TestAsyncError", + "TestAsyncLazyCheck", + "TestAsyncResourceUser", + "TestAsyncTimeout", + "TestAsyncValidation", + "TestAsyncValidationError", + "TestBoolOperationNode", + "TestCustomIsChanged", + "TestCustomValidation1", + "TestCustomValidation2", + "TestCustomValidation3", + "TestCustomValidation4", + "TestCustomValidation5", + "TestDynamicAsyncGeneration", + "TestDynamicDependencyCycle", + "TestExecutionBlocker", + "TestFloatConditions", + "TestForLoopClose", + "TestForLoopOpen", + "TestIntConditions", + "TestIntMathOperation", + "TestIsChangedWithConstants", + "TestLazyMixImages", + "TestListToAccumulationNode", + "TestMakeListNode", + "TestMixedExpansionReturns", + "TestParallelSleep", + "TestSamplingInExpansion", + "TestSleep", + "TestStringConditions", + "TestSyncError", + "TestToBoolNode", + "TestVariadicAverage", + "TestWhileLoopClose", + "TestWhileLoopOpen", + "TextEncodeAceStepAudio", + "TextEncodeHunyuanVideo_ImageToVideo", + "ThresholdMask", + "TomePatchModel", + "TorchCompileModel", + "TrainLoraNode", + "TrimVideoLatent", + "TripleCLIPLoader", + "TripoConversionNode", + "TripoImageToModelNode", + "TripoMultiviewToModelNode", + "TripoRefineNode", + "TripoRetargetNode", + "TripoRigNode", + "TripoTextToModelNode", + "TripoTextureNode", + "UNETLoader", + "UNetCrossAttentionMultiply", + "UNetSelfAttentionMultiply", + "UNetTemporalAttentionMultiply", + "UpscaleModelLoader", + "VAEDecode", + "VAEDecodeAudio", + "VAEDecodeHunyuan3D", + "VAEDecodeTiled", + "VAEEncode", + "VAEEncodeAudio", + "VAEEncodeForInpaint", + "VAEEncodeTiled", + "VAELoader", + "VAESave", + "VPScheduler", + "VeoVideoGenerationNode", + "VideoLinearCFGGuidance", + "VideoTriangleCFGGuidance", + "VoxelToMesh", + "VoxelToMeshBasic", + "WanCameraEmbedding", + "WanCameraImageToVideo", + "WanFirstLastFrameToVideo", + "WanFunControlToVideo", + "WanFunInpaintToVideo", + "WanImageToVideo", + "WanPhantomSubjectToVideo", + "WanVaceToVideo", + "WebcamCapture", + "unCLIPCheckpointLoader", + "unCLIPConditioning" + ], + { + "title_aux": "ComfyUI" + } + ], + "https://github.com/comfyanonymous/ComfyUI_TensorRT": [ + [ + "DYNAMIC_TRT_MODEL_CONVERSION", + "STATIC_TRT_MODEL_CONVERSION", + "TensorRTLoader" + ], + { + "title_aux": "TensorRT Node for ComfyUI" + } + ], + "https://github.com/comfyanonymous/ComfyUI_experiments": [ + [ + "ModelMergeBlockNumber", + "ModelMergeSDXL", + "ModelMergeSDXLDetailedTransformers", + "ModelMergeSDXLTransformers", + "ModelSamplerTonemapNoiseTest", + "ReferenceOnlySimple", + "RescaleClassifierFreeGuidanceTest", + "TonemapNoiseWithRescaleCFG" + ], + { + "title_aux": "ComfyUI_experiments" + } + ], + "https://github.com/concarne000/ConCarneNode": [ + [ + "BingImageGrabber", + "Hermes", + "Zephyr" + ], + { + "title_aux": "ConCarneNode" + } + ], + "https://github.com/conquestace/ComfyUI-ImageUploader": [ + [ + "ImageUploader" + ], + { + "author": "ConquestAce", + "description": "Upload to temporary websites with API.", + "nickname": "Image Uploader", + "title": "Image Uploader", + "title_aux": "Image Uploader" + } + ], + "https://github.com/coreyryanhanson/ComfyQR": [ + [ + "comfy-qr-by-image-size", + "comfy-qr-by-module-size", + "comfy-qr-by-module-split", + "comfy-qr-mask_errors" + ], + { + "title_aux": "ComfyQR" + } + ], + "https://github.com/coreyryanhanson/ComfyQR-scanning-nodes": [ + [ + "comfy-qr-read", + "comfy-qr-validate" + ], + { + "title_aux": "ComfyQR-scanning-nodes" + } + ], + "https://github.com/coulterj/comfyui-svg-visual-normalize": [ + [ + "SVGVisualBoundsNormalize" + ], + { + "title_aux": "ComfyUI SVG Visual Normalize & Margin Node" + } + ], + "https://github.com/cozy-comfyui/cozy_comm": [ + [ + "CozyDiscordPost" + ], + { + "nodename_pattern": " \\(cozy\\)", + "title_aux": "Cozy Communication" + } + ], + "https://github.com/cozymantis/cozy-utils-comfyui-nodes": [ + [ + "Cozy Sampler Options" + ], + { + "title_aux": "Cozy Utils" + } + ], + "https://github.com/cozymantis/human-parser-comfyui-node": [ + [ + "Cozy Human Parser ATR", + "Cozy Human Parser LIP", + "Cozy Human Parser Pascal" + ], + { + "title_aux": "Cozy Human Parser" + } + ], + "https://github.com/cozymantis/pose-generator-comfyui-node": [ + [ + "Cozy Pose Body Reference", + "Cozy Pose Face Reference" + ], + { + "title_aux": "Cozy Reference Pose Generator" + } + ], + "https://github.com/cr7Por/ComfyUI_DepthFlow": [ + [ + "DepthFlowSimple" + ], + { + "title_aux": "ComfyUI_DepthFlow" + } + ], + "https://github.com/craig-tanaka/comfyui_animeseg": [ + [ + "AdvancedAnimeSeg", + "SimpleAnimeSeg" + ], + { + "title_aux": "ComfyUI Anime Segmentation Nodes v1.1.0" + } + ], + "https://github.com/crave33/RenesStuffDanbooruTagGet": [ + [ + "DanbooruTagFetcher" + ], + { + "title_aux": "RenesStuffDanboruTagGet" + } + ], + "https://github.com/crystian/ComfyUI-Crystools": [ + [], + { + "author": "Crystian", + "description": "Plugins for multiples uses, mainly for debugging, you need them! IG: https://www.instagram.com/crystian.ia", + "nickname": "Crystools", + "nodename_pattern": " \\[Crystools\\]$", + "title": "Crystools", + "title_aux": "Crystools" + } + ], + "https://github.com/cubiq/Block_Patcher_ComfyUI": [ + [ + "FluxBlockPatcherSampler", + "FluxBlockShareKV", + "PlotBlockParams" + ], + { + "title_aux": "Flux blocks patcher sampler" + } + ], + "https://github.com/cubiq/ComfyUI_FaceAnalysis": [ + [ + "FaceAlign", + "FaceAnalysisModels", + "FaceBoundingBox", + "FaceEmbedDistance", + "FaceSegmentation", + "FaceWarp" + ], + { + "title_aux": "Face Analysis for ComfyUI" + } + ], + "https://github.com/cubiq/ComfyUI_IPAdapter_plus": [ + [ + "IPAAdapterFaceIDBatch", + "IPAdapter", + "IPAdapterAdvanced", + "IPAdapterBatch", + "IPAdapterClipVisionEnhancer", + "IPAdapterClipVisionEnhancerBatch", + "IPAdapterCombineEmbeds", + "IPAdapterCombineParams", + "IPAdapterCombineWeights", + "IPAdapterEmbeds", + "IPAdapterEmbedsBatch", + "IPAdapterEncoder", + "IPAdapterFaceID", + "IPAdapterFaceIDKolors", + "IPAdapterFromParams", + "IPAdapterInsightFaceLoader", + "IPAdapterLoadEmbeds", + "IPAdapterMS", + "IPAdapterModelLoader", + "IPAdapterNoise", + "IPAdapterPreciseComposition", + "IPAdapterPreciseCompositionBatch", + "IPAdapterPreciseStyleTransfer", + "IPAdapterPreciseStyleTransferBatch", + "IPAdapterPromptScheduleFromWeightsStrategy", + "IPAdapterRegionalConditioning", + "IPAdapterSaveEmbeds", + "IPAdapterStyleComposition", + "IPAdapterStyleCompositionBatch", + "IPAdapterTiled", + "IPAdapterTiledBatch", + "IPAdapterUnifiedLoader", + "IPAdapterUnifiedLoaderCommunity", + "IPAdapterUnifiedLoaderFaceID", + "IPAdapterWeights", + "IPAdapterWeightsFromStrategy", + "PrepImageForClipVision" + ], + { + "preemptions": [ + "IPAAdapterFaceIDBatch", + "IPAdapter", + "IPAdapterAdvanced", + "IPAdapterBatch", + "IPAdapterClipVisionEnhancer", + "IPAdapterClipVisionEnhancerBatch", + "IPAdapterCombineEmbeds", + "IPAdapterCombineParams", + "IPAdapterCombineWeights", + "IPAdapterEmbeds", + "IPAdapterEmbedsBatch", + "IPAdapterEncoder", + "IPAdapterFaceID", + "IPAdapterFromParams", + "IPAdapterInsightFaceLoader", + "IPAdapterLoadEmbeds", + "IPAdapterMS", + "IPAdapterModelLoader", + "IPAdapterNoise", + "IPAdapterPreciseComposition", + "IPAdapterPreciseCompositionBatch", + "IPAdapterPreciseStyleTransfer", + "IPAdapterPreciseStyleTransferBatch", + "IPAdapterPromptScheduleFromWeightsStrategy", + "IPAdapterRegionalConditioning", + "IPAdapterSaveEmbeds", + "IPAdapterStyleComposition", + "IPAdapterStyleCompositionBatch", + "IPAdapterTiled", + "IPAdapterTiledBatch", + "IPAdapterUnifiedLoader", + "IPAdapterUnifiedLoaderCommunity", + "IPAdapterUnifiedLoaderFaceID", + "IPAdapterWeights", + "IPAdapterWeightsFromStrategy", + "PrepImageForClipVision" + ], + "title_aux": "ComfyUI_IPAdapter_plus" + } + ], + "https://github.com/cubiq/ComfyUI_InstantID": [ + [ + "ApplyInstantID", + "ApplyInstantIDAdvanced", + "ApplyInstantIDControlNet", + "FaceKeypointsPreprocessor", + "InstantIDAttentionPatch", + "InstantIDFaceAnalysis", + "InstantIDModelLoader" + ], + { + "title_aux": "ComfyUI InstantID (Native Support)" + } + ], + "https://github.com/cubiq/ComfyUI_essentials": [ + [ + "ApplyCLIPSeg+", + "BatchCount+", + "CLIPTextEncodeSDXL+", + "ConditioningCombineMultiple+", + "ConsoleDebug+", + "DebugTensorShape+", + "DisplayAny", + "DrawText+", + "ExtractKeyframes+", + "FluxAttentionSeeker+", + "FluxBlocksBuster+", + "FluxSamplerParams+", + "GetImageSize+", + "GuidanceTimestepping+", + "ImageApplyLUT+", + "ImageBatchMultiple+", + "ImageBatchToList+", + "ImageCASharpening+", + "ImageColorMatch+", + "ImageColorMatchAdobe+", + "ImageComposite+", + "ImageCompositeFromMaskBatch+", + "ImageCrop+", + "ImageDesaturate+", + "ImageEnhanceDifference+", + "ImageExpandBatch+", + "ImageFlip+", + "ImageFromBatch+", + "ImageHistogramMatch+", + "ImageListToBatch+", + "ImagePosterize+", + "ImagePreviewFromLatent+", + "ImageRandomTransform+", + "ImageRemoveAlpha+", + "ImageRemoveBackground+", + "ImageResize+", + "ImageSeamCarving+", + "ImageSmartSharpen+", + "ImageTile+", + "ImageToDevice+", + "ImageUntile+", + "InjectLatentNoise+", + "KSamplerVariationsStochastic+", + "KSamplerVariationsWithNoise+", + "LoadCLIPSegModels+", + "LorasForFluxParams+", + "MaskBatch+", + "MaskBlur+", + "MaskBoundingBox+", + "MaskExpandBatch+", + "MaskFix+", + "MaskFlip+", + "MaskFromBatch+", + "MaskFromColor+", + "MaskFromList+", + "MaskFromRGBCMYBW+", + "MaskFromSegmentation+", + "MaskPreview+", + "MaskSmooth+", + "ModelCompile+", + "ModelSamplingSD3Advanced+", + "NoiseFromImage+", + "PixelOEPixelize+", + "PlotParameters+", + "RemBGSession+", + "RemoveLatentMask+", + "SD3AttentionSeekerLG+", + "SD3AttentionSeekerT5+", + "SD3NegativeConditioning+", + "SDXLEmptyLatentSizePicker+", + "SamplerSelectHelper+", + "SchedulerSelectHelper+", + "SimpleComparison+", + "SimpleCondition+", + "SimpleMath+", + "SimpleMathBoolean+", + "SimpleMathCondition+", + "SimpleMathDual+", + "SimpleMathFloat+", + "SimpleMathInt+", + "SimpleMathPercent+", + "SimpleMathSlider+", + "SimpleMathSliderLowRes+", + "TextEncodeForSamplerParams+", + "TransitionMask+", + "TransparentBGSession+" + ], + { + "title_aux": "ComfyUI Essentials" + } + ], + "https://github.com/cubiq/PuLID_ComfyUI": [ + [ + "ApplyPulid", + "ApplyPulidAdvanced", + "PulidEvaClipLoader", + "PulidInsightFaceLoader", + "PulidModelLoader" + ], + { + "title_aux": "PuLID_ComfyUI" + } + ], + "https://github.com/cuongloveit/comfy_http_request": [ + [ + "Send Http Request", + "Send Http request" + ], + { + "title_aux": "comfy_http_request" + } + ], + "https://github.com/curiousjp/ComfyUI-MaskBatchPermutations": [ + [ + "CombinatorialDetailer", + "FlattenAgainstOriginal", + "PermuteMaskBatch" + ], + { + "title_aux": "ComfyUI-MaskBatchPermutations" + } + ], + "https://github.com/cyberhirsch/seb_nodes": [ + [ + "AspectRatioSeb", + "DepthInpaintSeb", + "SaveImageSeb", + "SwitchMasksSeb", + "SwitchSeb", + "UnifiedPrompterSeb" + ], + { + "title_aux": "Seb Nodes" + } + ], + "https://github.com/czcz1024/Comfyui-FaceCompare": [ + [ + "FaceCompare" + ], + { + "author": "czcz1024", + "description": "Face Compare", + "nickname": "Face Compare", + "title": "Face Compare", + "title_aux": "Face Compare" + } + ], + "https://github.com/da2el-ai/ComfyUI-d2-send-eagle": [ + [ + "D2 Send Eagle" + ], + { + "author": "da2el", + "description": "Send images to Eagle, an image management application", + "title": "D2 Send Eagle", + "title_aux": "D2 Send Eagle" + } + ], + "https://github.com/da2el-ai/ComfyUI-d2-size-selector": [ + [ + "D2_SizeSelector" + ], + { + "author": "da2el", + "description": "Easy select image size", + "title": "D2 Size Selector", + "title_aux": "D2 Size Selector" + } + ], + "https://github.com/da2el-ai/ComfyUI-d2-steps": [ + [ + "D2 Refiner Steps", + "D2 Refiner Steps A1111", + "D2 Refiner Steps Tester" + ], + { + "author": "da2el", + "description": "Calculate the steps for the refiner", + "title": "D2 Steps", + "title_aux": "D2 Steps" + } + ], + "https://github.com/da2el-ai/ComfyUI-d2-xyplot-utils": [ + [ + "D2 Checkpoint List", + "D2 Checkpoint Loader", + "D2 Multi Output", + "D2 Prompt SR", + "D2 Regex Switcher" + ], + { + "author": "da2el", + "description": "A parameter output node compatible with qq-nodes-comfyui. It outputs parameters such as Prompt S/R and seed.", + "title": "D2 XYPlot Utils", + "title_aux": "D2 XYPlot Utils" + } + ], + "https://github.com/da2el-ai/D2-SavePSD-ComfyUI": [ + [ + "D2 Apply Alpha Channel", + "D2 Extract Alpha", + "D2 Save PSD" + ], + { + "author": "da2el", + "description": "", + "title": "D2 Save PSD", + "title_aux": "D2-SavePSD-ComfyUI" + } + ], + "https://github.com/da2el-ai/D2-nodes-ComfyUI": [ + [ + "D2 Checkpoint Loader", + "D2 Controlnet Loader", + "D2 Cut By Mask", + "D2 EmptyImage Alpha", + "D2 Filename Template", + "D2 Filename Template2", + "D2 Folder Image Queue", + "D2 Get Image Size", + "D2 Grid Image", + "D2 Image Mask Stack", + "D2 Image Resize", + "D2 Image Stack", + "D2 KSampler", + "D2 KSampler(Advanced)", + "D2 List To String", + "D2 Load Folder Images", + "D2 Load Image", + "D2 Load Lora", + "D2 Model and CLIP Merge SDXL", + "D2 Mosaic Filter", + "D2 Multi Output", + "D2 Paste By Mask", + "D2 Pipe", + "D2 Preview Image", + "D2 Prompt", + "D2 Refiner Steps", + "D2 Refiner Steps A1111", + "D2 Refiner Steps Tester", + "D2 Regex Replace", + "D2 Regex Switcher", + "D2 Resize Calculator", + "D2 Save Image", + "D2 Size Slector", + "D2 Token Counter", + "D2 XY Annotation", + "D2 XY Folder Images", + "D2 XY Grid Image", + "D2 XY List To Plot", + "D2 XY Model List", + "D2 XY Plot", + "D2 XY Plot Easy", + "D2 XY Plot Easy Mini", + "D2 XY Prompt SR", + "D2 XY Prompt SR2", + "D2 XY Seed", + "D2 XY Seed2", + "D2 XY String To Plot", + "D2 XY Upload Image" + ], + { + "author": "da2el", + "description": "A Collection of Handy Custom Nodes for ComfyUI", + "title": "D2 Nodes", + "title_aux": "D2 Nodes ComfyUI" + } + ], + "https://github.com/dadoirie/ComfyUI_Dados_Nodes": [ + [ + "DN_JoyTaggerNode", + "DN_MiaoshouAITaggerNode", + "DN_MultilineString", + "DN_SmolVLMNode", + "DN_TextConcatenateNode", + "DN_TextDropDownNode", + "DN_WildcardPromptEditorNode", + "DN_WildcardsProcessor", + "PinterestFetch", + "inactivePinterestImageNode" + ], + { + "author": "Dado", + "description": "Node with dynamic text inputs for concatenation", + "title": "Text Concatenator", + "title_aux": "ComfyUI_Dados_Nodes" + } + ], + "https://github.com/dafeng012/comfyui-imgmake": [ + [ + "LoadImageListPlus", + "LoadImagesFromPath_lp", + "SaveImage_lp", + "SelectImageName", + "VideoKeyFramesExtractor", + "ebsynth_hecheng", + "ebsynth_main", + "ebsynth_process", + "image2mask", + "video2image" + ], + { + "title_aux": "comfyui-imgmake" + } + ], + "https://github.com/dagthomas/comfyui_dagthomas": [ + [ + "APNLatent", + "CustomPromptLoader", + "DynamicStringCombinerNode", + "FileReaderNode", + "FlexibleStringMergerNode", + "GPT4MiniNode", + "GPT4VisionNode", + "GeminiCustomVision", + "GeminiTextOnly", + "Gpt4CustomVision", + "Gpt4VisionCloner", + "OllamaNode", + "OllamaVisionNode", + "PGSD3LatentGenerator", + "PhiCustomModelInference", + "PhiModelInference", + "PhiModelLoader", + "PromptGenerator", + "RandomIntegerNode", + "SentenceMixerNode", + "StringMergerNode" + ], + { + "title_aux": "SDXL Auto Prompter" + } + ], + "https://github.com/danTheMonk/comfyui-int-and-float": [ + [ + "FloatToInt", + "IntToFloat" + ], + { + "title_aux": "ComfyUI Int and Float Conversion Nodes" + } + ], + "https://github.com/danger-electrodes/ComfyUI_Fawfluencer_Nodes": [ + [ + "FawfaceModelSpreadsheetRealismNode", + "FawfakeAuthenticImageSaveNode", + "FawfluxencerNode", + "FawfulizedAddImagesToImageList", + "FawfulizedEmptyImageList", + "FawfulizedHunyuanAddNoise", + "FawfulizedHunyuanBasicGuider", + "FawfulizedHunyuanBasicScheduler", + "FawfulizedHunyuanBetaSamplingScheduler", + "FawfulizedHunyuanCFGGuider", + "FawfulizedHunyuanControlNetApply", + "FawfulizedHunyuanControlNetApplyAdvanced", + "FawfulizedHunyuanControlNetLoader", + "FawfulizedHunyuanDiffControlNetLoader", + "FawfulizedHunyuanDisableNoise", + "FawfulizedHunyuanDualCFGGuider", + "FawfulizedHunyuanExponentialScheduler", + "FawfulizedHunyuanFlipSigmas", + "FawfulizedHunyuanKSamplerSelect", + "FawfulizedHunyuanKarrasScheduler", + "FawfulizedHunyuanLaplaceScheduler", + "FawfulizedHunyuanLatentVideo", + "FawfulizedHunyuanPolyexponentialScheduler", + "FawfulizedHunyuanRandomNoise", + "FawfulizedHunyuanSDTurboScheduler", + "FawfulizedHunyuanSamplerCustom", + "FawfulizedHunyuanSamplerCustomAdvanced", + "FawfulizedHunyuanSamplerDPMAdaptative", + "FawfulizedHunyuanSamplerDPMPP_2M_SDE", + "FawfulizedHunyuanSamplerDPMPP_2S_Ancestral", + "FawfulizedHunyuanSamplerDPMPP_3M_SDE", + "FawfulizedHunyuanSamplerDPMPP_SDE", + "FawfulizedHunyuanSamplerEulerAncestral", + "FawfulizedHunyuanSamplerEulerAncestralCFGPP", + "FawfulizedHunyuanSamplerLMS", + "FawfulizedHunyuanSetFirstSigma", + "FawfulizedHunyuanSetLatentNoiseMask", + "FawfulizedHunyuanSplitSigmas", + "FawfulizedHunyuanSplitSigmasDenoise", + "FawfulizedHunyuanVPScheduler", + "Img2ImgFawfluencerNodeSDXL" + ], + { + "title_aux": "ComfyUI_Fawfluencer_Nodes" + } + ], + "https://github.com/daniabib/ComfyUI_ProPainter_Nodes": [ + [ + "ProPainterInpaint", + "ProPainterOutpaint" + ], + { + "title_aux": "ComfyUI ProPainter Nodes" + } + ], + "https://github.com/daniel-lewis-ab/ComfyUI-Llama": [ + [ + "Call LLM Advanced", + "Call LLM Basic", + "LLM_Create_Completion Advanced", + "LLM_Detokenize", + "LLM_Embed", + "LLM_Eval", + "LLM_Load_State", + "LLM_Reset", + "LLM_Sample", + "LLM_Save_State", + "LLM_Token_BOS", + "LLM_Token_EOS", + "LLM_Tokenize", + "Load LLM Model Advanced", + "Load LLM Model Basic" + ], + { + "title_aux": "ComfyUI-Llama" + } + ], + "https://github.com/daniel-lewis-ab/ComfyUI-TTS": [ + [ + "Load_Piper_Model", + "Piper_Speak_Text" + ], + { + "title_aux": "ComfyUI-TTS" + } + ], + "https://github.com/darkpixel/darkprompts": [ + [ + "DarkAnyToString", + "DarkCheckpointRandomizer", + "DarkCheckpointSwitcher", + "DarkCombine", + "DarkFaceIndexGenerator", + "DarkFaceIndexShuffle", + "DarkFolders", + "DarkLoRALoader", + "DarkLoraStackFromString", + "DarkPopLoraFromStack", + "DarkPrompt" + ], + { + "title_aux": "DarkPrompts" + } + ], + "https://github.com/darth-veitcher/comfydv": [ + [ + "CircuitBreaker", + "FormatString", + "ModelUnloader", + "RandomChoice" + ], + { + "author": "Darth Veitcher", + "description": "This collection of nodes provides string formatting, random choices, model memory management, and other quality of life improvements.", + "nickname": "DV Nodes", + "title": "Comfy DV Nodes", + "title_aux": "Comfy DV" + } + ], + "https://github.com/daryltucker/ComfyUI-LoadFiles": [ + [ + "CountLines", + "ListFilenames", + "LoadImages" + ], + { + "title_aux": "ComfyUI-LoadFiles" + } + ], + "https://github.com/dasilva333/ComfyUI_ContrastingColor": [ + [ + "ContrastingComplementaryColor|pysssss" + ], + { + "title_aux": "ComfyUI_ContrastingColor" + } + ], + "https://github.com/dasilva333/ComfyUI_MarkdownImage": [ + [ + "CreateDialogImage", + "CreateDialogImageV2", + "CreateMarkdownImage", + "CreateMarkdownImageV2" + ], + { + "title_aux": "ComfyUI_MarkdownImage" + } + ], + "https://github.com/dave-palt/comfyui_DSP_imagehelpers": [ + [ + "dsp-imagehelpers-concat" + ], + { + "title_aux": "comfyui_DSP_imagehelpers" + } + ], + "https://github.com/davidgressett/comfyui-systemlevel": [ + [ + "CartesianCSVNode" + ], + { + "title_aux": "CartesianCSVNode for ComfyUI" + } + ], + "https://github.com/daxcay/ComfyUI-DataSet": [ + [ + "DataSet_ClaudeAIChat", + "DataSet_ClaudeAIChatImage", + "DataSet_ConceptManager", + "DataSet_CopyFiles", + "DataSet_FindAndReplace", + "DataSet_GroqChat", + "DataSet_GroqChatImage", + "DataSet_LoadImage", + "DataSet_OpenAIChat", + "DataSet_OpenAIChatImage", + "DataSet_OpenAIChatImageBatch", + "DataSet_PathSelector", + "DataSet_SaveImage", + "DataSet_SaveImagePro", + "DataSet_TextFilesLoad", + "DataSet_TextFilesLoadFromList", + "DataSet_TextFilesSave", + "DataSet_TriggerWords", + "DataSet_Visualizer" + ], + { + "author": "Daxton Caylor", + "description": "Data Research, Preparation, and Manipulation Nodes for Model Trainers, Artists, Designers, and Animators.", + "nickname": "ComfyUI-DataSet", + "title": "ComfyUI-DataSet", + "title_aux": "ComfyUI-DataSet" + } + ], + "https://github.com/daxcay/ComfyUI-JDCN": [ + [ + "JDCN_AnyCheckpointLoader", + "JDCN_AnyFileList", + "JDCN_AnyFileListHelper", + "JDCN_AnyFileListRandom", + "JDCN_AnyFileSelector", + "JDCN_BatchCounter", + "JDCN_BatchCounterAdvance", + "JDCN_BatchImageLoadFromDir", + "JDCN_BatchImageLoadFromList", + "JDCN_BatchLatentLoadFromDir", + "JDCN_BatchLatentLoadFromList", + "JDCN_BatchSaveLatent", + "JDCN_BoolInt", + "JDCN_EnableDisable", + "JDCN_FileMover", + "JDCN_ImageSaver", + "JDCN_ListToString", + "JDCN_LoadImage", + "JDCN_ReBatch", + "JDCN_SeamlessExperience", + "JDCN_ShowAny", + "JDCN_SplitString", + "JDCN_StringManipulator", + "JDCN_StringToList", + "JDCN_SwapInputs", + "JDCN_TXTFileSaver", + "JDCN_VHSFileMover" + ], + { + "author": "Daxton Caylor & Jerry Davos", + "description": "Custom Utility Nodes for Artists, Designers and Animators.", + "nickname": "ComfyUI-JDCN", + "title": "ComfyUI-JDCN", + "title_aux": "ComfyUI-JDCN" + } + ], + "https://github.com/daxcay/ComfyUI-TG": [ + [ + "TG_ImageSaver" + ], + { + "author": "Daxton Caylor", + "description": "This node enables someone to run comfyui in telegram.", + "nickname": "ComfyUI-TG", + "title": "ComfyUI-TG", + "title_aux": "ComfyUI-TG" + } + ], + "https://github.com/daxcay/ComfyUI-WA": [ + [ + "WA_ImageSaver" + ], + { + "author": "Daxton Caylor", + "description": "This node enables someone to run comfyui in whatsapp.", + "nickname": "ComfyUI-WA", + "title": "ComfyUI-WA", + "title_aux": "ComfyUI-WA" + } + ], + "https://github.com/daxcay/ComfyUI-YouTubeVideoPlayer": [ + [ + "YouTubeVideoPlayer" + ], + { + "author": "Daxton Caylor & Jerry Davos", + "description": "YouTube Video Player in Comfy.", + "nickname": "ComfyUI-YouTubeVideoPlayer", + "title": "ComfyUI-YouTubeVideoPlayer", + "title_aux": "ComfyUI-YouTubeVideoPlayer" + } + ], + "https://github.com/dchatel/comfyui_davcha": [ + [ + "ApplyMask", + "ConditioningCompress", + "DStack", + "DavchaCLIPMergeSimple", + "DavchaCLIPTextEncode", + "DavchaConditioningConcat", + "DavchaEmptyLatentImage", + "DavchaLLM", + "DavchaLLMAdvanced", + "DavchaLoadLLM", + "DavchaLoadVideo", + "DavchaMaskImage", + "DavchaModelMergeSD1", + "DavchaModelMergeSDXL", + "DavchaModelMergeSimple", + "DavchaPop", + "PadAndResize", + "PercentPadding", + "ResizeCropFit", + "SmartMask", + "SoftErosion", + "StringScheduleHelper" + ], + { + "title_aux": "comfyui_davcha" + } + ], + "https://github.com/dchatel/comfyui_facetools": [ + [ + "BiSeNetMask", + "CropFaces", + "DetectFaces", + "GenderFaceFilter", + "JonathandinuMask", + "MergeWarps", + "OrderedFaceFilter", + "WarpFacesBack" + ], + { + "title_aux": "comfyui_facetools" + } + ], + "https://github.com/denfrost/Den_ComfyUI_Workflow": [ + [ + "Den_BatchIndex_AS", + "Den_CropImage_AS", + "Den_Eval_AS", + "Den_FaceRestoreCFWithModel", + "Den_GPTLoaderSimple_llama", + "Den_GPTSampler_llama", + "Den_ImageMixMasked_As", + "Den_ImageToLatentSpace", + "Den_ImageToMask_AS", + "Den_Int2Any_AS", + "Den_LatentAdd_AS", + "Den_LatentMixMasked_As", + "Den_LatentMix_AS", + "Den_LatentToImages_AS", + "Den_LoadLatent_AS", + "Den_MapRange_AS", + "Den_MaskToImage_AS", + "Den_Math_AS", + "Den_NoiseImage_AS", + "Den_Number2Float_AS", + "Den_Number2Int_AS", + "Den_Number_AS", + "Den_SVD_img2vid", + "Den_SaveLatent_AS", + "Den_TextToImage_AS", + "Den_TextWildcardList_AS", + "Increment_AS" + ], + { + "title_aux": "Den_ComfyUI_Workflows" + } + ], + "https://github.com/deroberon/StableZero123-comfyui": [ + [ + "SDZero ImageSplit", + "Stablezero123", + "Stablezero123WithDepth" + ], + { + "title_aux": "StableZero123-comfyui" + } + ], + "https://github.com/deroberon/demofusion-comfyui": [ + [ + "Batch Unsampler", + "Demofusion", + "Demofusion From Single File", + "Iterative Mixing KSampler" + ], + { + "title_aux": "demofusion-comfyui" + } + ], + "https://github.com/dfghsdh/ComfyUI_FluxPromptGen": [ + [ + "FluxImageCaptionNode", + "FluxPromptGeneratorNode" + ], + { + "title_aux": "ComfyUI_FluxPromptGen" + } + ], + "https://github.com/dfl/comfyui-clip-with-break": [ + [ + "AdvancedCLIPTextEncodeWithBreak", + "CLIPTextEncodeWithBreak" + ], + { + "author": "dfl", + "description": "CLIP text encoder that does BREAK prompting like A1111", + "nickname": "CLIP with BREAK", + "title": "CLIP with BREAK syntax", + "title_aux": "comfyui-clip-with-break" + } + ], + "https://github.com/dfl/comfyui-tcd-scheduler": [ + [ + "SamplerTCD", + "SamplerTCD EulerA", + "TCDScheduler" + ], + { + "title_aux": "ComfyUI-TCD-scheduler" + } + ], + "https://github.com/diStyApps/ComfyUI-disty-Flow": [ + [ + "Flow" + ], + { + "title_aux": "Flow - Streamlined Way to ComfyUI" + } + ], + "https://github.com/diStyApps/ComfyUI_FrameMaker": [ + [ + "FrameMaker", + "FrameMakerBatch" + ], + { + "title_aux": "ComfyUI Frame Maker" + } + ], + "https://github.com/dicksensei69/comfyui_loops": [ + [ + "LoopImageNode" + ], + { + "title_aux": "ComfyUI Loops" + } + ], + "https://github.com/dicksondickson/ComfyUI-Dickson-Nodes": [ + [ + "DicksonColorMatch", + "DicksonLoadImage", + "Dickson_TTP_Preprocessor_Simple", + "Dickson_TTP_Preprocessor_cufoff", + "Dickson_TTP_Tile_Preprocessor_GF" + ], + { + "description": "This is a set of custom nodes that I've either written myself or adapted from other authors for my own convenience. Currently includes color matching node forked from StableSR and TTPlanet's controlnet preprocessor. https://github.com/dicksondickson", + "nickname": "Dickson Nodes", + "title": "Dickson Nodes", + "title_aux": "ComfyUI-Dickson-Nodes" + } + ], + "https://github.com/digitaljohn/comfyui-propost": [ + [ + "ProPostApplyLUT", + "ProPostDepthMapBlur", + "ProPostFilmGrain", + "ProPostRadialBlur", + "ProPostVignette" + ], + { + "title_aux": "ComfyUI-ProPost" + } + ], + "https://github.com/dimtion/comfyui-raw-image": [ + [ + "Load Raw Image" + ], + { + "title_aux": "ComfyUI-Raw-Image" + } + ], + "https://github.com/dimtoneff/ComfyUI-PixelArt-Detector": [ + [ + "PixelArtAddDitherPattern", + "PixelArtDetectorConverter", + "PixelArtDetectorSave", + "PixelArtDetectorToImage", + "PixelArtLoadPalettes" + ], + { + "title_aux": "ComfyUI PixelArt Detector" + } + ], + "https://github.com/diontimmer/ComfyUI-Vextra-Nodes": [ + [ + "Add Text To Image", + "Apply Instagram Filter", + "Create Solid Color", + "Flatten Colors", + "Generate Noise Image", + "GlitchThis Effect", + "Hue Rotation", + "Load Picture Index", + "Pixel Sort", + "Play Sound At Execution", + "Prettify Prompt Using distilgpt2", + "Swap Color Mode" + ], + { + "title_aux": "ComfyUI-Vextra-Nodes" + } + ], + "https://github.com/discopixel-studio/comfyui-discopixel": [ + [ + "PhotoroomRemoveBG" + ], + { + "author": "Anson Kao", + "description": "A small collection of custom nodes for use with ComfyUI, by Discopixel", + "nickname": "ComfyUI Discopixel", + "title": "ComfyUI Discopixel", + "title_aux": "PhotoRoom Nodes by Discopixel" + } + ], + "https://github.com/discus0434/comfyui-caching-embeddings": [ + [ + "CachingCLIPTextEncode" + ], + { + "title_aux": "ComfyUI Caching Embeddings" + } + ], + "https://github.com/discus0434/comfyui-flux-accelerator": [ + [ + "\ud83c\udf6dFluxAccelerator" + ], + { + "title_aux": "ComfyUI Flux Accelerator" + } + ], + "https://github.com/djbielejeski/a-person-mask-generator": [ + [ + "APersonFaceLandmarkMaskGenerator", + "APersonMaskGenerator" + ], + { + "title_aux": "a-person-mask-generator" + } + ], + "https://github.com/dmMaze/sketch2manga": [ + [ + "BlendScreentone", + "EmptyLatentImageAdvanced" + ], + { + "title_aux": "Sketch2Manga" + } + ], + "https://github.com/dmarx/ComfyUI-AudioReactive": [ + [ + "OpAbs", + "OpBandpass", + "OpClamp", + "OpHarmonic", + "OpModulo", + "OpNormalize", + "OpNovelty", + "OpPercussive", + "OpPow", + "OpPow2", + "OpPredominant_pulse", + "OpQuantize", + "OpRms", + "OpSmoosh", + "OpSmooth", + "OpSqrt", + "OpStretch", + "OpSustain", + "OpThreshold" + ], + { + "title_aux": "ComfyUI-AudioReactive" + } + ], + "https://github.com/dmarx/ComfyUI-Keyframed": [ + [ + "Example", + "KfAddCurveToPGroup", + "KfAddCurveToPGroupx10", + "KfApplyCurveToCond", + "KfConditioningAdd", + "KfConditioningAddx10", + "KfCurveConstant", + "KfCurveDraw", + "KfCurveFromString", + "KfCurveFromYAML", + "KfCurveInverse", + "KfCurveToAcnLatentKeyframe", + "KfCurvesAdd", + "KfCurvesAddx10", + "KfCurvesDivide", + "KfCurvesMultiply", + "KfCurvesMultiplyx10", + "KfCurvesSubtract", + "KfDebug_Clip", + "KfDebug_Cond", + "KfDebug_Curve", + "KfDebug_Float", + "KfDebug_Image", + "KfDebug_Int", + "KfDebug_Latent", + "KfDebug_Model", + "KfDebug_Passthrough", + "KfDebug_Segs", + "KfDebug_String", + "KfDebug_Vae", + "KfDrawSchedule", + "KfEvaluateCurveAtT", + "KfGetCurveFromPGroup", + "KfGetScheduleConditionAtTime", + "KfGetScheduleConditionSlice", + "KfKeyframedCondition", + "KfKeyframedConditionWithText", + "KfPGroupCurveAdd", + "KfPGroupCurveMultiply", + "KfPGroupDraw", + "KfPGroupProd", + "KfPGroupSum", + "KfSetCurveLabel", + "KfSetKeyframe", + "KfSinusoidalAdjustAmplitude", + "KfSinusoidalAdjustFrequency", + "KfSinusoidalAdjustPhase", + "KfSinusoidalAdjustWavelength", + "KfSinusoidalEntangledZeroOneFromFrequencyx2", + "KfSinusoidalEntangledZeroOneFromFrequencyx3", + "KfSinusoidalEntangledZeroOneFromFrequencyx4", + "KfSinusoidalEntangledZeroOneFromFrequencyx5", + "KfSinusoidalEntangledZeroOneFromFrequencyx6", + "KfSinusoidalEntangledZeroOneFromFrequencyx7", + "KfSinusoidalEntangledZeroOneFromFrequencyx8", + "KfSinusoidalEntangledZeroOneFromFrequencyx9", + "KfSinusoidalEntangledZeroOneFromWavelengthx2", + "KfSinusoidalEntangledZeroOneFromWavelengthx3", + "KfSinusoidalEntangledZeroOneFromWavelengthx4", + "KfSinusoidalEntangledZeroOneFromWavelengthx5", + "KfSinusoidalEntangledZeroOneFromWavelengthx6", + "KfSinusoidalEntangledZeroOneFromWavelengthx7", + "KfSinusoidalEntangledZeroOneFromWavelengthx8", + "KfSinusoidalEntangledZeroOneFromWavelengthx9", + "KfSinusoidalGetAmplitude", + "KfSinusoidalGetFrequency", + "KfSinusoidalGetPhase", + "KfSinusoidalGetWavelength", + "KfSinusoidalWithFrequency", + "KfSinusoidalWithWavelength" + ], + { + "title_aux": "ComfyUI-Keyframed" + } + ], + "https://github.com/domenecmiralles/obobo_nodes": [ + [ + "OboboInputAudio", + "OboboInputImage", + "OboboInputLora", + "OboboInputNumber", + "OboboInputText", + "OboboInputVector2", + "OboboInputVideo", + "OboboOutput", + "OboboPathLoader" + ], + { + "title_aux": "obobo_nodes" + } + ], + "https://github.com/dorpxam/ComfyUI-FramePack-F1-T2V": [ + [ + "FramePackF1T2VLoraStack", + "FramePackF1T2VSampler", + "FramePackF1T2VSamplerSettings", + "FramePackF1T2VTextEncode", + "FramePackF1T2VUserSettings" + ], + { + "title_aux": "ComfyUI-FramePack-F1-T2V" + } + ], + "https://github.com/dorpxam/ComfyUI-LTXVideoLoRA": [ + [ + "LTXVLoRABlockEdit", + "LTXVLoRALoader", + "LTXVLoRASelector" + ], + { + "title_aux": "ComfyUI-LTXVideoLoRA" + } + ], + "https://github.com/doubletwisted/ComfyUI-Deadline-Plugin": [ + [ + "DeadlineSubmit" + ], + { + "nodename_pattern": "DeadlineSubmitNode", + "title_aux": "ComfyUI Deadline Submission" + } + ], + "https://github.com/drago87/ComfyUI_Dragos_Nodes": [ + [ + "file_padding", + "image_info", + "lora_loader", + "vae_loader" + ], + { + "title_aux": "ComfyUI_Dragos_Nodes" + } + ], + "https://github.com/dreamhartley/ComfyUI_show_seed": [ + [ + "Show Seed" + ], + { + "title_aux": "ComfyUI_show_seed" + } + ], + "https://github.com/drmbt/comfyui-dreambait-nodes": [ + [ + "AudioInfoPlus", + "BoolPlusPlus", + "CompareImageSimilarity", + "DRMBT_AspectPadImageForOutpainting", + "DRMBT_LoadMedia", + "DRMBT_MultiMinMax", + "DRMBT_String_Item_Menu", + "DictToOutputs", + "DownloadAndLoadMiniCPMV", + "DrawMana", + "DrawText", + "DreambaitFolderOpener", + "DynamicDictionary", + "DynamicStringConcatenate", + "ImageFrameBlend", + "ImageResizeFaceAware", + "ListItemExtract", + "ListItemSelector", + "LoadAudioPlus", + "MiniCPMVNode", + "MusicGen", + "NormalizeAudio", + "NumberPlusPlus", + "NumberRemap", + "Qwen2AudioInstruct", + "ShotHistory", + "StringToDict", + "SwitchDuo", + "TextBoxStyle", + "TextLineSelect", + "TextLinesToList", + "TextMargins", + "TextPlusPlus", + "TextShadow" + ], + { + "title_aux": "comfyui-dreambait-nodes" + } + ], + "https://github.com/drphero/comfyui_prompttester": [ + [ + "PromptTester" + ], + { + "title_aux": "ComfyUI-PromptTester" + } + ], + "https://github.com/drustan-hawk/primitive-types": [ + [ + "float", + "int", + "string", + "string_multiline" + ], + { + "title_aux": "primitive-types" + } + ], + "https://github.com/dseditor/ComfyUI-ListHelper": [ + [ + "AudioListCombine", + "AudioListGenerator", + "AudioToFrameCount", + "CeilDivide", + "FrameMatch", + "LoadVideoPath", + "MergeVideoFilename", + "NumberListGenerator", + "PromptListGenerator", + "SaveVideoPath" + ], + { + "title_aux": "ComfyUI-ListHelper" + } + ], + "https://github.com/dseditor/ComfyUI-ScheduledTask": [ + [ + "DailyPromptScheduler", + "ShutdownNode", + "TimeToSeedList" + ], + { + "title_aux": "ComfyUI-ScheduledTask" + } + ], + "https://github.com/dseditor/ComfyUI-Thread": [ + [ + "PublishThread", + "StartWithLongLiveToken", + "ThreadPublishVideo", + "ThreadsHistory" + ], + { + "title_aux": "ComfyUI-Thread" + } + ], + "https://github.com/duchamps0305/comfyui-white-extractor": [ + [ + "WhitePercentage" + ], + { + "title_aux": "comfyui-white-extractor" + } + ], + "https://github.com/ducido/ObjectFusion_ComfyUI_nodes": [ + [ + "Custom ESAM_ModelLoader_Zho", + "Custom Generate Stable Diffsution Prompt With LLM", + "Custom Yoloworld_ESAM_Zho", + "Custom Yoloworld_ModelLoader_Zho", + "ObjectCrop" + ], + { + "title_aux": "ObjectFusion_ComfyUI_nodes" + } + ], + "https://github.com/duskfallcrew/Comfyui_EmbeddingMerge_Node/raw/refs/heads/main/merge_embed.py": [ + [ + "EmbeddingMerger" + ], + { + "title_aux": "Embedding Merge for ComfyUI" + } + ], + "https://github.com/dymokomi/comfyui_dygen": [ + [ + "AdaptiveColorCircles", + "AdaptiveColorLines", + "AdaptiveColorRectangles", + "BinaryPatternStamper", + "DYImageCluster", + "DYImageMasks", + "DYImagePalette", + "DYImageQuantize", + "ImageListToGrid", + "ImageScaler", + "RandomLines" + ], + { + "title_aux": "comfyui_dygen" + } + ], + "https://github.com/dzqdzq/ComfyUI-crop-alpha": [ + [ + "FastAlphaCropper", + "ShrinkImage" + ], + { + "title_aux": "ComfyUI-crop-alpha" + } + ], + "https://github.com/e-tier-newbie/ComfyUI-E-Tier-TextSaver": [ + [ + "E_TierTextSaver" + ], + { + "title_aux": "ComfyUI-E-Tier-TextSaver" + } + ], + "https://github.com/e7mac/ComfyUI-ShadertoyGL": [ + [ + "ColorChannelOffset", + "Shader", + "Shadertoy" + ], + { + "title_aux": "ComfyUI-ShadertoyGL" + } + ], + "https://github.com/ealkanat/comfyui-easy-padding": [ + [ + "comfyui-easy-padding" + ], + { + "title_aux": "ComfyUI Easy Padding" + } + ], + "https://github.com/eastoc/ComfyUI_SemanticSAM": [ + [ + "PointPrompt", + "SemanticSAMLoader", + "SemanticSAMSegment" + ], + { + "title_aux": "Semantic-SAM" + } + ], + "https://github.com/edelvarden/ComfyUI-Display-Value": [ + [ + "DisplayValue" + ], + { + "title_aux": "ComfyUI-Display-Value" + } + ], + "https://github.com/edenartlab/eden_comfy_pipelines": [ + [ + "AnimatedShapeMaskNode", + "Animation_RGB_Mask", + "AspectPadImageForOutpainting", + "CLIP_Interrogator", + "ConvertToGrayscale", + "DepthSlicer", + "Eden_AllMediaLoader", + "Eden_Bool", + "Eden_BoolBinaryOperation", + "Eden_Compare", + "Eden_Debug_Anything", + "Eden_DepthSlice_MaskVideo", + "Eden_DetermineFrameCount", + "Eden_FaceToMask", + "Eden_Face_Crop", + "Eden_Float", + "Eden_FloatToInt", + "Eden_GPTPromptEnhancer", + "Eden_GPTStructuredOutput", + "Eden_IMG_padder", + "Eden_IMG_unpadder", + "Eden_ImageMaskComposite", + "Eden_Image_Math", + "Eden_Int", + "Eden_IntToFloat", + "Eden_MaskBoundingBox", + "Eden_MaskCombiner", + "Eden_Math", + "Eden_RGBA_to_RGB", + "Eden_RandomFilepathSampler", + "Eden_RandomNumberSampler", + "Eden_RandomPromptFromFile", + "Eden_Regex_Replace", + "Eden_RepeatLatentBatch", + "Eden_Save_Param_Dict", + "Eden_Seed", + "Eden_String", + "Eden_StringHash", + "Eden_StringReplace", + "Eden_gpt4_node", + "Eden_randbool", + "Extend_Sequence", + "FolderScanner", + "GetRandomFile", + "Get_Prefixed_Imgs", + "HistogramMatching", + "IMG_blender", + "IMG_resolution_multiple_of", + "IMG_scaler", + "IP_Adapter_Settings_Distribution", + "If ANY execute A else B", + "ImageDescriptionNode", + "ImageFolderIterator", + "KeyframeBlender", + "LatentTypeConversion", + "Linear_Combine_IP_Embeds", + "LoadImagesByFilename", + "LoadRandomImage", + "Load_Embeddings_From_Folder", + "MaskFromRGB_KMeans", + "MaskedRegionVideoExport", + "OrganicFillNode", + "ParallaxZoom", + "Random_Style_Mixture", + "SDAnyConverter", + "SDTypeConverter", + "SaveImageAdvanced", + "SavePosEmbeds", + "VAEDecode_to_folder", + "VideoFrameSelector", + "WidthHeightPicker" + ], + { + "title_aux": "Eden.art nodesuite" + } + ], + "https://github.com/edenartlab/sd-lora-trainer": [ + [ + "Eden_LoRa_trainer" + ], + { + "title_aux": "Eden.art LoRa Trainer" + } + ], + "https://github.com/educator-art/ComfyUI-Load-DirectoryFiles": [ + [ + "Load Images and Prompts from Directory", + "Load Images and Prompts from Directory(Advanced)" + ], + { + "title_aux": "ComfyUI-Load-DirectoryFiles" + } + ], + "https://github.com/eg0pr0xy/comfyui_noisegen": [ + [ + "AudioAnalyzer", + "AudioMixer", + "AudioSave", + "BandLimitedNoise", + "ChaosNoiseMix", + "ConvolutionReverb", + "FeedbackProcessor", + "GranularProcessor", + "GranularSequencer", + "HarshFilter", + "MicrosoundSculptor", + "ModulationMatrix", + "MultiDistortion", + "NoiseGenerator", + "PerlinNoise", + "SpectralProcessor", + "SpectrumAnalyzer", + "TrueChaos" + ], + { + "title_aux": "ComfyUI-NoiseGen" + } + ], + "https://github.com/emojiiii/ComfyUI_Emojiiii_Custom_Nodes": [ + [ + "BatchImageProcessor", + "Caption", + "CaptionDownload", + "KolorsMultiTextEncode", + "MultiTextEncode" + ], + { + "title_aux": "ComfyUI_Emojiiii_Custom_Nodes" + } + ], + "https://github.com/envy-ai/ComfyUI-ConDelta": [ + [ + "ApplyConDelta", + "ApplyConDeltaAutoScale", + "CFGlessNegativePrompt", + "ClampConDelta", + "ConditioningAddConDelta", + "ConditioningAddConDeltaAutoScale", + "ConditioningAverageMultiple", + "ConditioningGetNoise", + "ConditioningGetRandom", + "ConditioningScale", + "ConditioningSubtract", + "ExtendedConditioningAverage", + "GetConDeltaFromPrompt", + "HardClampConDelta", + "LoadConditioningDelta", + "MaskConDelta", + "QuickConDelta", + "SaveConditioningDelta", + "ThresholdConditioning" + ], + { + "title_aux": "ComfyUI-ConDelta" + } + ], + "https://github.com/erosDiffusion/ComfyUI-enricos-nodes": [ + [ + "Compositor3", + "CompositorColorPicker", + "CompositorConfig3", + "CompositorMasksOutputV3", + "CompositorTools3", + "CompositorTransformsOutV3", + "ImageColorSampler" + ], + { + "title_aux": "ComfyUI-enricos-nodes" + } + ], + "https://github.com/evanspearman/ComfyMath": [ + [ + "CM_BoolBinaryOperation", + "CM_BoolToInt", + "CM_BoolUnaryOperation", + "CM_BreakoutVec2", + "CM_BreakoutVec3", + "CM_BreakoutVec4", + "CM_ComposeVec2", + "CM_ComposeVec3", + "CM_ComposeVec4", + "CM_FloatBinaryCondition", + "CM_FloatBinaryOperation", + "CM_FloatToInt", + "CM_FloatToNumber", + "CM_FloatUnaryCondition", + "CM_FloatUnaryOperation", + "CM_IntBinaryCondition", + "CM_IntBinaryOperation", + "CM_IntToBool", + "CM_IntToFloat", + "CM_IntToNumber", + "CM_IntUnaryCondition", + "CM_IntUnaryOperation", + "CM_NearestSDXLExtendedResolution", + "CM_NearestSDXLResolution", + "CM_NumberBinaryCondition", + "CM_NumberBinaryOperation", + "CM_NumberToFloat", + "CM_NumberToInt", + "CM_NumberUnaryCondition", + "CM_NumberUnaryOperation", + "CM_SDXLExtendedResolution", + "CM_SDXLResolution", + "CM_Vec2BinaryCondition", + "CM_Vec2BinaryOperation", + "CM_Vec2ScalarOperation", + "CM_Vec2ToScalarBinaryOperation", + "CM_Vec2ToScalarUnaryOperation", + "CM_Vec2UnaryCondition", + "CM_Vec2UnaryOperation", + "CM_Vec3BinaryCondition", + "CM_Vec3BinaryOperation", + "CM_Vec3ScalarOperation", + "CM_Vec3ToScalarBinaryOperation", + "CM_Vec3ToScalarUnaryOperation", + "CM_Vec3UnaryCondition", + "CM_Vec3UnaryOperation", + "CM_Vec4BinaryCondition", + "CM_Vec4BinaryOperation", + "CM_Vec4ScalarOperation", + "CM_Vec4ToScalarBinaryOperation", + "CM_Vec4ToScalarUnaryOperation", + "CM_Vec4UnaryCondition", + "CM_Vec4UnaryOperation" + ], + { + "title_aux": "ComfyMath" + } + ], + "https://github.com/excelwong/ComfyUI-PromptComposer": [ + [ + "PromptComposer" + ], + { + "title_aux": "ComfyUI Prompt Composer" + } + ], + "https://github.com/exdysa/comfyui-selector": [ + [ + "RecourseAny", + "RecourseCkpt", + "RecourseImage", + "RecoursePolar", + "RecourseStrings", + "SelInClip", + "SelInFloat", + "SelInGuider", + "SelInInt", + "SelInLatent", + "SelInModel", + "SelInPolar", + "SelInSampler", + "SelInSigmas", + "SelInVae", + "SelOutCLIP", + "SelOutModel", + "SelOutPolar", + "Selector", + "Selector Advanced", + "Selector Hub" + ], + { + "author": "\"\u02f6\ud835\udfa2\u292c\u2ad2\u2d56s\u143c\u02f6\"", + "description": "\"EXDYSA. Selector and Recourse. Presets & failsafes. Work flow.\"", + "nickname": "\"Selector\"", + "title": "\"Selector\"", + "title_aux": "comfyui-selector" + } + ], + "https://github.com/exectails/comfyui-et_dynamicprompts": [ + [ + "ETDynamicPrompt" + ], + { + "title_aux": "Dynamic Prompts" + } + ], + "https://github.com/exectails/comfyui-et_infoutils": [ + [ + "ETInspectTextNode", + "ETIntBoxNode", + "ETPresentImageNode", + "ETShowDataNode", + "ETStringBoxNode", + "ETTextBoxNode", + "ETTokenCountNode" + ], + { + "title_aux": "Info Utils" + } + ], + "https://github.com/exectails/comfyui-et_stringutils": [ + [ + "ETATOI", + "ETITOA", + "ETJoinTextNode", + "ETReplaceTextNode", + "ETSplitTextNode", + "ETSwitchTextNode", + "ETTextFormatter10Node", + "ETTextFormatter2Node", + "ETTextFormatter5Node" + ], + { + "title_aux": "String Utils" + } + ], + "https://github.com/ez-af/ComfyUI-EZ-AF-Nodes": [ + [ + "EZ_CSV_Loader", + "EZ_Extract_Prompt", + "EZ_Find_Replace", + "EZ_Input", + "EZ_Prompt_Loader", + "EZ_Switch", + "EZ_Tag_Loader", + "EZ_Test", + "EZ_Text_Concat", + "EZ_Text_to_Size" + ], + { + "title_aux": "ComfyUI-EZ-AF-Nodes" + } + ], + "https://github.com/fablestudio/ComfyUI-Showrunner-Utils": [ + [ + "AlignFace", + "Alpha Crop and Position Image", + "GenerateTimestamp", + "GetMostCommonColors", + "ImageCompositeAbsoluteByContainer", + "LoadImageFromUrl", + "OpenAI Image 2 Text", + "PadMask", + "ReadImage", + "Shrink Image" + ], + { + "title_aux": "ComfyUI-Showrunner-Utils" + } + ], + "https://github.com/facok/ComfyUI-HunyuanVideoMultiLora": [ + [ + "HunyuanVideoLoraLoader" + ], + { + "title_aux": "ComfyUI-HunyuanVideoMultiLora" + } + ], + "https://github.com/facok/ComfyUI-TeaCacheHunyuanVideo": [ + [ + "TeaCacheHunyuanVideoSampler_FOK" + ], + { + "title_aux": "ComfyUI-TeaCacheHunyuanVideo" + } + ], + "https://github.com/fairy-root/ComfyUI-GLHF": [ + [ + "glhf_chat" + ], + { + "title_aux": "ComfyUI-GLHF" + } + ], + "https://github.com/fairy-root/ComfyUI-OpenAI-FM": [ + [ + "OpenAIFMNode" + ], + { + "title_aux": "ComfyUI-OpenAI-FM" + } + ], + "https://github.com/fairy-root/ComfyUI-Show-Text": [ + [ + "ShowText" + ], + { + "title_aux": "ComfyUI-Show-Text" + } + ], + "https://github.com/fairy-root/Flux-Prompt-Generator": [ + [ + "FluxPromptGenerator" + ], + { + "title_aux": "Flux Prompt Generator for ComfyUI" + } + ], + "https://github.com/fairy-root/comfyui-ollama-llms": [ + [ + "ConcatenateText", + "llava", + "ollama" + ], + { + "title_aux": "Ollama and Llava Vision integration for ComfyUI" + } + ], + "https://github.com/fallingmeteorite/nsfw-image-check-comfyui": [ + [ + "NsfwAreaCoverNode", + "NsfwCheckNode" + ], + { + "title_aux": "nsfw-image-check-comfyui" + } + ], + "https://github.com/fashn-AI/ComfyUI-FASHN": [ + [ + "FASHN" + ], + { + "title_aux": "FASHN Virtual Try-On" + } + ], + "https://github.com/fat-tire/comfyui-unified-media-suite": [ + [ + "MediaLoad", + "MediaMerge", + "MediaSave" + ], + { + "title_aux": "ComfyUI Unified Media Suite" + } + ], + "https://github.com/fblissjr/ComfyUI-DatasetHelper": [ + [ + "DatasetBatchNode" + ], + { + "title_aux": "ComfyUI Dataset Helper & Batch Node" + } + ], + "https://github.com/fblissjr/ComfyUI-EmbeddingPipelineAnalytics": [ + [ + "EmbeddingAnalyzer", + "EmbeddingPipelineCapture" + ], + { + "title_aux": "ComfyUI-EmbeddingPipelineAnalytics" + } + ], + "https://github.com/fblissjr/ComfyUI-WanActivationEditor": [ + [ + "WanVideoActivationEditor", + "WanVideoActivationScheduler", + "WanVideoBlockActivationBuilder" + ], + { + "title_aux": "ComfyUI-WanActivationEditor" + } + ], + "https://github.com/fblissjr/ComfyUI-WanSeamlessFlow": [ + [ + "WanAdaptiveFlow", + "WanBlendVisualize", + "WanEmbeddingPrevizCanvas", + "WanMinimalCanvasTest", + "WanSmartBlend" + ], + { + "title_aux": "wanvideo - seamless flow" + } + ], + "https://github.com/fblissjr/shrug-prompter": [ + [ + "AccumulationNodeCompat", + "AdvancedVLMSampler", + "AnyTypePassthrough", + "AutoMemoryManager", + "ImageToAny", + "LoopAwareResponseIterator", + "LoopAwareVLMAccumulator", + "LoopSafeAccumulator", + "PromptTemplateLoader", + "RobustImageRangeExtractor", + "ShrugPrompter", + "SmartImageRangeExtractor", + "TextCleanup", + "TextListCleanup", + "TextListIndexer", + "TextListToString", + "VLMImagePassthrough", + "VLMImageProcessor", + "VLMImageResizer", + "VLMPrompterFast", + "VLMProviderConfig", + "VLMResponseExtractor", + "VLMResultCollector", + "VLMResultIterator", + "VLMResultsToGeneric", + "VideoFramePairExtractor", + "VideoSegmentAssembler" + ], + { + "title_aux": "Shrug-Prompter: Unified VLM Integration for ComfyUI" + } + ], + "https://github.com/fchangjun/Comfyui_MultiSaveImage": [ + [ + "MultiSaveImage", + "SimpleLLMNode" + ], + { + "title_aux": "MultiSaveImage Node" + } + ], + "https://github.com/fearnworks/ComfyUI_FearnworksNodes": [ + [ + "Count Files in Directory (FW)", + "Count Tokens (FW)", + "CountTokens", + "FileCountInDirectory", + "Token Count Ranker(FW)", + "TokenCountRanker", + "Trim To Tokens (FW)", + "TrimToTokens" + ], + { + "title_aux": "Fearnworks Nodes" + } + ], + "https://github.com/feixuetuba/Spleeter": [ + [ + "Spleeter" + ], + { + "title_aux": "Spleeter" + } + ], + "https://github.com/felixszeto/ComfyUI-RequestNodes": [ + [ + "Get Request Node", + "GetRequestNode", + "Key/Value Node", + "KeyValueNode", + "Post Request Node", + "PostRequestNode", + "Rest Api Node", + "RestApiNode", + "Retry Settings Node", + "RetrySettingNode", + "String Replace Node", + "StringReplaceNode" + ], + { + "title_aux": "ComfyUI-RequestNodes" + } + ], + "https://github.com/fexli/fexli-util-node-comfyui": [ + [ + "FEAnyToDict", + "FEAnyToString", + "FEBCPrompt", + "FEBatchGenStringBCDocker", + "FEColor2Image", + "FEColorOut", + "FEDataInsertor", + "FEDataPacker", + "FEDataUnpacker", + "FEDeepClone", + "FEDictCombine", + "FEDictPacker", + "FEDictUnpacker", + "FEEncLoraAutoLoader", + "FEEncLoraAutoLoaderStack", + "FEEncLoraLoader", + "FEExtraInfoAdd", + "FEGenStringBCDocker", + "FEGenStringGPT", + "FEGenStringNBus", + "FEImageNoiseGenerate", + "FEImagePadForOutpaint", + "FEImagePadForOutpaintByImage", + "FEInterruptCondition", + "FELoadImageQQUrl", + "FEOperatorIf", + "FEPythonStrOp", + "FERandomBool", + "FERandomLoraSelect", + "FERandomPrompt", + "FERandomizedColor2Image", + "FERandomizedColorOut", + "FERerouteWithName", + "FESaveEncryptImage", + "FETextCombine", + "FETextCombine2Any", + "FETextInput" + ], + { + "title_aux": "fexli-util-node-comfyui" + } + ], + "https://github.com/fexploit/ComfyUI-AutoLabel": [ + [ + "AutoLabel" + ], + { + "title_aux": "ComfyUI-AutoLabel" + } + ], + "https://github.com/fexploit/ComfyUI-AutoTrimBG": [ + [ + "RonLayers/TrimBg: RonLayersTrimBgUltraV2" + ], + { + "title_aux": "ComfyUI-AutoTrimBG" + } + ], + "https://github.com/fexploit/ComfyUI-Classifier": [ + [ + "ClassifierNode" + ], + { + "title_aux": "ComfyUI-Classifier" + } + ], + "https://github.com/filipemeneses/comfy_pixelization": [ + [ + "Pixelization" + ], + { + "title_aux": "Pixelization" + } + ], + "https://github.com/filliptm/ComfyUI_FL-Trainer": [ + [ + "FL_ImageCaptionSaver", + "FL_KohyaSSAdvConfig", + "FL_KohyaSSDatasetConfig", + "FL_KohyaSSInitWorkspace", + "FL_KohyaSSTrain", + "FL_Kohya_EasyTrain", + "FL_LoadImagesFromDirectoryPath", + "FL_SliderLoraAdvConfig", + "FL_SliderLoraDatasetConfig", + "FL_SliderLoraInitWorkspace", + "FL_SliderLoraTrain" + ], + { + "title_aux": "ComfyUI_FL-Trainer" + } + ], + "https://github.com/filliptm/ComfyUI_Fill-ChatterBox": [ + [ + "FL_ChatterboxTTS", + "FL_ChatterboxVC" + ], + { + "title_aux": "ComfyUI_Fill-ChatterBox" + } + ], + "https://github.com/filliptm/ComfyUI_Fill-Nodes": [ + [ + "FL_API_Base64_ImageLoader", + "FL_API_ImageSaver", + "FL_AnimeLineExtractor", + "FL_ApplyMask", + "FL_Ascii", + "FL_BatchAlign", + "FL_BlackFrameReject", + "FL_BulkPDFLoader", + "FL_BulletHellGame", + "FL_CaptionSaver_V2", + "FL_CaptionToCSV", + "FL_ClipScanner", + "FL_CodeNode", + "FL_ColorPicker", + "FL_Dalle3", + "FL_DirectoryCrawl", + "FL_Dither", + "FL_Fal_Kontext", + "FL_Fal_Pixverse", + "FL_Float", + "FL_FractalKSampler", + "FL_GPT_Image1", + "FL_GPT_Image1_ADV", + "FL_GPT_Text", + "FL_GPT_Vision", + "FL_GeminiImageEditor", + "FL_GeminiImageGenADV", + "FL_GeminiTextAPI", + "FL_GeminiVideoCaptioner", + "FL_Glitch", + "FL_GoogleCloudStorage", + "FL_GoogleDriveDownloader", + "FL_GoogleDriveImageDownloader", + "FL_GradGenerator", + "FL_HFDatasetDownloader", + "FL_HFHubModelUploader", + "FL_HF_Character", + "FL_HF_UploaderAbsolute", + "FL_HalftonePattern", + "FL_Hedra_API", + "FL_HexagonalPattern", + "FL_HunyuanDelight", + "FL_ImageAddToBatch", + "FL_ImageAdjuster", + "FL_ImageAspectCropper", + "FL_ImageBatch", + "FL_ImageBatchToGrid", + "FL_ImageBatchToImageList", + "FL_ImageBlank", + "FL_ImageCaptionLayout", + "FL_ImageCaptionLayoutPDF", + "FL_ImageCaptionSaver", + "FL_ImageCollage", + "FL_ImageDimensionDisplay", + "FL_ImageListToImageBatch", + "FL_ImageNotes", + "FL_ImagePixelator", + "FL_ImageRandomizer", + "FL_ImageSelector", + "FL_ImageSlicer", + "FL_ImagesToPDF", + "FL_InfiniteZoom", + "FL_InpaintCrop", + "FL_Inpaint_Stitch", + "FL_JS", + "FL_KSamplerXYZPlot", + "FL_KsamplerBasic", + "FL_KsamplerPlus", + "FL_KsamplerPlusV2", + "FL_KsamplerSettings", + "FL_LoadImage", + "FL_MadLibGenerator", + "FL_Math", + "FL_MirrorAndAppendCaptions", + "FL_ModelInspector", + "FL_NFTGenerator", + "FL_NodeLoader", + "FL_NodePackLoader", + "FL_OllamaCaptioner", + "FL_PDFEncryptor", + "FL_PDFImageExtractor", + "FL_PDFLoader", + "FL_PDFMerger", + "FL_PDFSaver", + "FL_PDFTextExtractor", + "FL_PDFToImages", + "FL_Padding", + "FL_PaddingRemover", + "FL_PaperDrawn", + "FL_PasteByMask", + "FL_PasteOnCanvas", + "FL_PathTypeChecker", + "FL_PixVerseAPI", + "FL_PixelArtShader", + "FL_PixelSort", + "FL_ProResVideo", + "FL_PromptBasic", + "FL_PromptMulti", + "FL_PromptSelector", + "FL_RandomNumber", + "FL_RetroEffect", + "FL_Ripple", + "FL_RunwayImageAPI", + "FL_SDUltimate_Slices", + "FL_SamplerStrings", + "FL_SaveAndDisplayImage", + "FL_SaveCSV", + "FL_SaveImages", + "FL_SaveWebM", + "FL_SaveWebPImage(SaveImage)", + "FL_SchedulerStrings", + "FL_SendToDiscordWebhook", + "FL_SeparateMaskComponents", + "FL_Shadertoy", + "FL_SimpleGPTVision", + "FL_Switch", + "FL_Switch_Big", + "FL_SystemCheck", + "FL_TetrisGame", + "FL_TextOverlayNode", + "FL_TextToPDF", + "FL_TimeLine", + "FL_UnloadAllModels", + "FL_UnloadModel", + "FL_UpscaleModel", + "FL_VideoCadence", + "FL_VideoCadenceCompile", + "FL_VideoCaptionSaver", + "FL_VideoCropMask", + "FL_VideoCut", + "FL_VideoRecompose", + "FL_VideoTrim", + "FL_WF_Agent", + "FL_ZipDirectory", + "FL_ZipSave", + "GradientImageGenerator", + "SaveWebPImage" + ], + { + "title_aux": "ComfyUI_Fill-Nodes" + } + ], + "https://github.com/flamacore/ComfyUI-YouTubeUploader": [ + [ + "YouTubeAuthNode", + "YouTubeUploaderNode" + ], + { + "title_aux": "ComfyUI YouTube Uploader" + } + ], + "https://github.com/florestefano1975/ComfyUI-Advanced-Sequence-Seed": [ + [ + "AdvancedSequenceSeedNode" + ], + { + "title_aux": "Advanced Sequence Seed Generator" + } + ], + "https://github.com/florestefano1975/ComfyUI-CogVideoX": [ + [ + "CogVideoX Image-2-Video Extended", + "CogVideoX Save Video" + ], + { + "title_aux": "ComfyUI-CogVideoX" + } + ], + "https://github.com/florestefano1975/ComfyUI-HiDiffusion": [ + [ + "HiDiffusionSD15", + "HiDiffusionSD21", + "HiDiffusionSDXL", + "HiDiffusionSDXLTurbo" + ], + { + "title_aux": "ComfyUI HiDiffusion" + } + ], + "https://github.com/florestefano1975/ComfyUI-StabilityAI-Suite": [ + [ + "StabilityAI Suite - Creative Upscale", + "StabilityAI Suite - Creative Upscale Recover File", + "StabilityAI Suite - Image Core + Style Preset", + "StabilityAI Suite - Inpainting", + "StabilityAI Suite - Outpainting", + "StabilityAI Suite - Remove Background", + "StabilityAI Suite - SD3", + "StabilityAI Suite - Search and Replace" + ], + { + "title_aux": "ComfyUI StabilityAI Suite" + } + ], + "https://github.com/florestefano1975/comfyui-portrait-master": [ + [ + "PortraitMaster", + "PortraitMasterBaseCharacter", + "PortraitMasterMakeup", + "PortraitMasterPromptStyler", + "PortraitMasterSkinDetails", + "PortraitMasterStylePose" + ], + { + "title_aux": "comfyui-portrait-master" + } + ], + "https://github.com/florestefano1975/comfyui-prompt-composer": [ + [ + "PromptComposerCustomLists", + "PromptComposerEffect", + "PromptComposerGrouping", + "PromptComposerMerge", + "PromptComposerStyler", + "PromptComposerTextSingle", + "promptComposerTextMultiple" + ], + { + "title_aux": "comfyui-prompt-composer" + } + ], + "https://github.com/flowtyone/ComfyUI-Flowty-CRM": [ + [ + "CCMSampler", + "CRMModelLoader", + "CRMModeler", + "CRMModelerCuda", + "CRMPoseSampler", + "CRMPoserConfig", + "CRMPreprocessForPoser", + "CRMViewer" + ], + { + "title_aux": "ComfyUI-Flowty-CRM" + } + ], + "https://github.com/flowtyone/ComfyUI-Flowty-LDSR": [ + [ + "LDSRModelLoader", + "LDSRUpscale", + "LDSRUpscaler" + ], + { + "title_aux": "ComfyUI-Flowty-LDSR" + } + ], + "https://github.com/flowtyone/ComfyUI-Flowty-TripoSR": [ + [ + "TripoSRModelLoader", + "TripoSRSampler", + "TripoSRViewer" + ], + { + "title_aux": "ComfyUI-Flowty-TripoSR" + } + ], + "https://github.com/fluffydiveX/ComfyUI-hvBlockswap": [ + [ + "hvBlockSwap" + ], + { + "title_aux": "ComfyUI-hvBlockswap" + } + ], + "https://github.com/flycarl/ComfyUI-Pixelate": [ + [ + "ComfyUIPixelate" + ], + { + "title_aux": "ComfyUI-Pixelate" + } + ], + "https://github.com/flyingshutter/As_ComfyUI_CustomNodes": [ + [ + "BatchIndex_AS", + "CropImage_AS", + "Eval_AS", + "ImageMixMasked_As", + "ImageToMask_AS", + "Increment_AS", + "Int2Any_AS", + "LatentAdd_AS", + "LatentMixMasked_As", + "LatentMix_AS", + "LatentToImages_AS", + "LoadLatent_AS", + "MapRange_AS", + "MaskToImage_AS", + "Math_AS", + "NoiseImage_AS", + "Number2Float_AS", + "Number2Int_AS", + "Number_AS", + "SaveLatent_AS", + "TextToImage_AS", + "TextWildcardList_AS" + ], + { + "title_aux": "As_ComfyUI_CustomNodes" + } + ], + "https://github.com/fmatray/ComfyUI_BattlemapGrid": [ + [ + "Battlemap Grid", + "Compass", + "Map Generator", + "Map Generator(Outdoors)" + ], + { + "title_aux": "ComfyUI_BattlemapGrid" + } + ], + "https://github.com/fofr/ComfyUI-HyperSDXL1StepUnetScheduler": [ + [ + "HyperSDXL1StepUnetScheduler" + ], + { + "title_aux": "ComfyUI-HyperSDXL1StepUnetScheduler (ByteDance)" + } + ], + "https://github.com/fofr/ComfyUI-Prompter-fofrAI": [ + [ + "List sampler \ud83e\udeb4", + "Prompt from template \ud83e\udeb4" + ], + { + "title_aux": "ComfyUI-Prompter-fofrAI" + } + ], + "https://github.com/fofr/comfyui-basic-auth": [ + [ + "BasicAuthSetup" + ], + { + "title_aux": "ComfyUI-Basic-Auth" + } + ], + "https://github.com/fofr/comfyui-fofr-toolkit": [ + [ + "Incrementer \ud83e\udeb4", + "Width and height for scaling image to ideal resolution \ud83e\udeb4", + "Width and height from aspect ratio \ud83e\udeb4" + ], + { + "title_aux": "comfyui-fofr-toolkit" + } + ], + "https://github.com/forever22777/comfyui-self-guidance": [ + [ + "CLIPConditioning", + "CheckpointLoaderMixWithDiffusers", + "SelfGuidanceSampler" + ], + { + "title_aux": "Self-Guidance nodes" + } + ], + "https://github.com/fotobudka-team/comfyui-ai-faces": [ + [ + "PhotoVerification" + ], + { + "title_aux": "ComfyUI AI Faces - Photo Verification Node" + } + ], + "https://github.com/foxtrot-roger/comfyui-rf-nodes": [ + [ + "LogBool", + "LogFloat", + "LogInt", + "LogNumber", + "LogString", + "LogVec2", + "LogVec3", + "RF_AtIndexString", + "RF_BoolToString", + "RF_FloatToString", + "RF_IntToString", + "RF_JsonStyleLoader", + "RF_MergeLines", + "RF_NumberToString", + "RF_OptionsString", + "RF_RangeFloat", + "RF_RangeInt", + "RF_RangeNumber", + "RF_SavePromptInfo", + "RF_SplitLines", + "RF_TextConcatenate", + "RF_TextInput", + "RF_TextReplace", + "RF_Timestamp", + "RF_ToString", + "RF_Vec2ToString", + "RF_Vec3ToString", + "TextLine" + ], + { + "title_aux": "RF Nodes" + } + ], + "https://github.com/fpgaminer/joycaption_comfyui": [ + [ + "JJC_JoyCaption", + "JJC_JoyCaption_Custom" + ], + { + "title_aux": "JoyCaption Nodes" + } + ], + "https://github.com/fplu/comfyui_lama_with_refiner": [ + [ + "INPAINT_InpaintWithLaMaRefinerModel", + "INPAINT_LoadInpaintLaMaModel" + ], + { + "title_aux": "lama_with_refiner" + } + ], + "https://github.com/frankchieng/ComfyUI_Aniportrait": [ + [ + "AniPortrait_Audio2Video", + "AniPortrait_Audio_Path", + "AniPortrait_LoadVideoPath", + "AniPortrait_Pose_Gen_Video", + "AniPortrait_Ref_Image_Path", + "AniPortrait_Video_Gen_Pose" + ], + { + "title_aux": "ComfyUI_Aniportrait" + } + ], + "https://github.com/frankchieng/ComfyUI_MagicClothing": [ + [ + "MagicClothing_Animatediff", + "MagicClothing_Generate", + "MagicClothing_Inpainting" + ], + { + "title_aux": "ComfyUI_MagicClothing" + } + ], + "https://github.com/frankchieng/ComfyUI_llm_easyanimiate": [ + [], + { + "nodename_pattern": "^FrankChiengEasyAnimate", + "title_aux": "ComfyUI_llm_easyanimiate" + } + ], + "https://github.com/fredconex/ComfyUI-SongBloom": [ + [ + "SongBloomGenerate", + "SongBloomModelLoader" + ], + { + "title_aux": "SongBloom" + } + ], + "https://github.com/fredconex/ComfyUI-SoundFlow": [ + [ + "SoundFlow_Concatenator", + "SoundFlow_DuckCompressor", + "SoundFlow_Equalizer", + "SoundFlow_Fade", + "SoundFlow_GainPitchControl", + "SoundFlow_GetLength", + "SoundFlow_Mixer", + "SoundFlow_PreviewAudio", + "SoundFlow_SetLength", + "SoundFlow_SilenceTrimmer", + "SoundFlow_SimpleCompressor", + "SoundFlow_TrimAudio" + ], + { + "title_aux": "ComfyUI-SoundFlow" + } + ], + "https://github.com/fredconex/ComfyUI-SyncEdit": [ + [ + "SyncTextEditor" + ], + { + "title_aux": "Sync Edit" + } + ], + "https://github.com/freelifehacker/ComfyUI-ImgMask2PNG": [ + [ + "ImageMask2PNG" + ], + { + "title_aux": "ComfyUI-ImgMask2PNG" + } + ], + "https://github.com/fsdymy1024/ComfyUI_fsdymy": [ + [ + "IPAdapterLayerWeight", + "Preview Image Without Metadata", + "PreviewImageWithoutMetadata", + "Save Image Without Metadata", + "SaveImageWithoutMetadata", + "ShowText", + "ZhiPuAiNode" + ], + { + "title_aux": "ComfyUI_fsdymy" + } + ], + "https://github.com/fssorc/ComfyUI_FFT": [ + [ + "FFTNode", + "FindFFTSpot", + "InvertFFTNode", + "InvertFFTWithMask" + ], + { + "title_aux": "ComfyUI_FFT" + } + ], + "https://github.com/fssorc/ComfyUI_FaceShaper": [ + [ + "FaceAlignmentCropper", + "FaceShaper", + "FaceShaperComposite", + "FaceShaperCropper", + "FaceShaperFaceMask", + "FaceShaperLoadInsightFaceCropper", + "FaceShaperLoadMediaPipeCropper", + "FaceShaperMatchV2", + "FaceShaperModels", + "FaceShaperShowLandMarks" + ], + { + "title_aux": "ComfyUI_FaceShaper" + } + ], + "https://github.com/fssorc/ComfyUI_RopeWrapper": [ + [ + "RopeVideoCombine", + "RopeWrapper_DetectNode", + "RopeWrapper_FaceRestore", + "RopeWrapper_LoadModels", + "RopeWrapper_LoadSwapInfo", + "RopeWrapper_OptionNode", + "RopeWrapper_SaveSwapInfo", + "RopeWrapper_SwapNode", + "RopeWrapper_SwapNodeTEST" + ], + { + "title_aux": "ComfyUI_RopeWrapper" + } + ], + "https://github.com/fssorc/ComfyUI_pose_inter": [ + [ + "GenTPose", + "PoseModify", + "Pose_Inter", + "Pose_Inter_V2" + ], + { + "title_aux": "ComfyUI_pose_inter" + } + ], + "https://github.com/fuselayer/comfyui-mosaic-blur": [ + [ + "ImageMosaic" + ], + { + "title_aux": "comfyui-mosaic-blur" + } + ], + "https://github.com/gabe-init/ComfyUI-11labs": [ + [ + "ElevenLabsNode" + ], + { + "title_aux": "ComfyUI-11labs" + } + ], + "https://github.com/gabe-init/ComfyUI-Google-Image-Search": [ + [ + "GoogleImageSearchNode" + ], + { + "title_aux": "ComfyUI-Google-Image-Search" + } + ], + "https://github.com/gabe-init/ComfyUI-Openrouter_node": [ + [ + "OpenRouterNode" + ], + { + "title_aux": "ComfyUI OpenRouter Node" + } + ], + "https://github.com/gabe-init/ComfyUI-String-Similarity": [ + [ + "StringSimilarity" + ], + { + "title_aux": "ComfyUI-String-Similarity" + } + ], + "https://github.com/game4d/ComfyUI-BDsInfiniteYou": [ + [ + "InfiniteYou_Image", + "InfiniteYou_Load" + ], + { + "title_aux": "ComfyUI-BDsInfiniteYou" + } + ], + "https://github.com/gasparuff/CustomSelector": [ + [ + "CustomSelector" + ], + { + "title_aux": "comfyui-customselector" + } + ], + "https://github.com/gelasdev/ComfyUI-FLUX-BFL-API": [ + [ + "FluxDeleteFinetune_BFL", + "FluxDevRedux_BFL", + "FluxDev_BFL", + "FluxFinetuneDetails_BFL", + "FluxFinetuneStatus_BFL", + "FluxFinetune_BFL", + "FluxKontextMax_BFL", + "FluxKontextPro_BFL", + "FluxMyFinetunes_BFL", + "FluxPro11Redux_BFL", + "FluxPro11UltraFinetune_BFL", + "FluxPro11UltraRedux_BFL", + "FluxPro11Ultra_BFL", + "FluxPro11_BFL", + "FluxProCannyFinetune_BFL", + "FluxProCanny_BFL", + "FluxProDepthFinetune_BFL", + "FluxProDepth_BFL", + "FluxProFillFinetune_BFL", + "FluxProFill_BFL", + "FluxProFinetune_BFL", + "FluxPro_BFL" + ], + { + "title_aux": "ComfyUI-FLUX-BFL-API" + } + ], + "https://github.com/gemell1/ComfyUI_GMIC": [ + [ + "GmicCliWrapper", + "GmicQtWrapper" + ], + { + "title_aux": "ComfyUI_GMIC" + } + ], + "https://github.com/geocine/geocine-comfyui": [ + [ + "Image Scale", + "Image Selector", + "LoRA Name List", + "Prompt Text", + "Seed to Noise", + "ShowTextNode", + "Text Replace" + ], + { + "title_aux": "geocine-comfyui" + } + ], + "https://github.com/georgitsenov/ComfyUI-R2": [ + [ + "S3SaveNode" + ], + { + "title_aux": "ComfyUI S3 Save Node" + } + ], + "https://github.com/ggarra13/ComfyUI-mrv2": [ + [ + "mrv2AnnotationsImageNode", + "mrv2SaveEXRImage" + ], + { + "title_aux": "ComfyUI-mrv2" + } + ], + "https://github.com/giriss/comfy-image-saver": [ + [ + "Cfg Literal", + "Checkpoint Selector", + "Int Literal", + "Sampler Selector", + "Save Image w/Metadata", + "Scheduler Selector", + "Seed Generator", + "String Literal", + "Width/Height Literal" + ], + { + "title_aux": "Save Image with Generation Metadata" + } + ], + "https://github.com/gisu/comfyui-foxpack": [ + [ + "Add_To_List", + "BaseSamplerSetup", + "Big_Prompter", + "Change_Entries_In_A_List", + "Change_Entry_From_List", + "CheckpointMetaExtractor", + "CheckpointSelector", + "Complete_Setup", + "Convert_Into", + "Negate_Boolean", + "Optional_Value_Override", + "OverrideSamplerSetup", + "Override_Value_If_Unset", + "Pick_Value_From_Dict", + "Pick_Values_From_List", + "Refine_Prompt", + "Refine_Setup", + "Remap_Values", + "Remove_Values_From_List", + "Select_By_Index", + "Select_Line_By_Index", + "Select_String_By_Index", + "SetupSelector", + "Show_Type", + "Split_Entry_In_2Chunks", + "Split_Entry_In_4Chunks", + "Split_Entry_In_6Chunks", + "Split_Entry_In_8Chunks", + "Step_Denoise", + "UniversalLatentHelper", + "Universal_VAE_Loader" + ], + { + "title_aux": "foxpack" + } + ], + "https://github.com/gitadmini/comfyui_extractstoryboards": [ + [ + "Example", + "ExtractStoryboards_xuhuan1024", + "IntBatchSize_xuhuan1024", + "IntBatch_xuhuan1024" + ], + { + "title_aux": "ExtractStoryboards" + } + ], + "https://github.com/githubYiheng/ComfyUI_Change_IMAGE_BOREDER": [ + [ + "ChangeImageBorder" + ], + { + "title_aux": "ComfyUI_Change_IMAGE_BOREDER" + } + ], + "https://github.com/githubYiheng/ComfyUI_GetFileNameFromURL": [ + [ + "GetFileNameFromURL" + ], + { + "title_aux": "ComfyUI_GetFileNameFromURL" + } + ], + "https://github.com/githubYiheng/comfyui_kmeans_filter": [ + [ + "ImageKmeansFilter" + ], + { + "title_aux": "comfyui_kmeans_filter" + } + ], + "https://github.com/githubYiheng/comfyui_meanshift_filter": [ + [ + "ImageMeanshiftFilter" + ], + { + "title_aux": "comfyui_meanshift_filter" + } + ], + "https://github.com/githubYiheng/comfyui_private_postprocessor": [ + [ + "ImageCPostprocessor", + "PrivateImageMask" + ], + { + "title_aux": "comfyui_private_postprocessor" + } + ], + "https://github.com/glibsonoran/Plush-for-ComfyUI": [ + [ + "AI Chooser", + "Add Parameters", + "AdvPromptEnhancer", + "Custom API Key", + "DalleImage", + "Enhancer", + "GPT Image", + "Gemini Image", + "Image Mixer", + "Imagen Image", + "ImgTextSwitch", + "Load Remote Models", + "LoadText|plush", + "Model-CLIP Output Switch", + "ParseJSON", + "Plush-Exif Wrangler", + "Random Image Output", + "Random Mixer", + "Random Output", + "Remove Text", + "SaveText|plush", + "Tagger", + "Text (Any)", + "Type Converter", + "mulTextSwitch" + ], + { + "title_aux": "Plush-for-ComfyUI" + } + ], + "https://github.com/glifxyz/ComfyUI-GlifNodes": [ + [ + "FilmGrain", + "FluxReduxFloatRamp", + "GlifConsistencyDecoder", + "GlifPatchConsistencyDecoderTiled", + "GlifVariable", + "HFHubEmbeddingLoader", + "HFHubLoraLoader", + "ImagePaddingAdvanced", + "ImageToMultipleOf", + "LoraLoaderFromURL", + "SDXLAspectRatio" + ], + { + "title_aux": "ComfyUI-GlifNodes" + } + ], + "https://github.com/glitchinthemetrix16/ComfyUI-Roop": [ + [ + "RoopBatchFaceSwap", + "RoopFaceSwap", + "RoopFaceSwapVideo", + "RoopFaceSwapWithEnhancer", + "RoopSendWebhookFile", + "RoopSendWebhookImage" + ], + { + "title_aux": "ComfyUI Roop Custom Nodes" + } + ], + "https://github.com/glowcone/comfyui-base64-to-image": [ + [ + "LoadImageFromBase64" + ], + { + "title_aux": "Load Image From Base64 URI" + } + ], + "https://github.com/glowcone/comfyui-string-converter": [ + [ + "StringToFloat", + "StringToInt" + ], + { + "title_aux": "String Converter" + } + ], + "https://github.com/gmorks/ComfyUI-Animagine-Prompt": [ + [ + "AnimaginePrompt", + "MultiWildcardLoader", + "MultilineTextInput", + "TextFileLoader" + ], + { + "title_aux": "ComfyUI-Animagine-Prompt" + } + ], + "https://github.com/gmorks/ComfyUI-SendToDiscord": [ + [ + "PreviewImageWithDiscord" + ], + { + "title_aux": "ComfyUI-SendToDiscord" + } + ], + "https://github.com/goburiin/nsfwrecog-comfyui": [ + [ + "NSFWDetectorNode" + ], + { + "title_aux": "nsfwrecog-comfyui" + } + ], + "https://github.com/godmt/ComfyUI-IP-Composer": [ + [ + "IPCompConceptMerge", + "IPCompConceptSubspace", + "IPCompLoadOpenCLIP", + "IPLoadConceptSubspace", + "IPSaveConceptSubspace" + ], + { + "title_aux": "ComfyUI-IP-Composer" + } + ], + "https://github.com/godmt/ComfyUI-List-Utils": [ + [ + "GODMT_AnyCast", + "GODMT_AnyToDict", + "GODMT_BatchGetByIndex", + "GODMT_BatchItemCast", + "GODMT_BatchSlice", + "GODMT_BatchToList", + "GODMT_CreateArange", + "GODMT_CreateBatch", + "GODMT_CreateLinspace", + "GODMT_CreateList", + "GODMT_CreateRange", + "GODMT_Exec", + "GODMT_GetLength", + "GODMT_GetShape", + "GODMT_GetWidgetsValues", + "GODMT_ListDir", + "GODMT_ListGetByIndex", + "GODMT_ListSlice", + "GODMT_ListToBatch", + "GODMT_MergeBatch", + "GODMT_MergeList", + "GODMT_Pack", + "GODMT_SplitString", + "GODMT_Unpack" + ], + { + "title_aux": "ComfyUI-List-Utils" + } + ], + "https://github.com/godspede/ComfyUI_Substring": [ + [ + "SubstringTheory" + ], + { + "title_aux": "ComfyUI Substring" + } + ], + "https://github.com/gokayfem/ComfyUI-Depth-Visualization": [ + [ + "DepthViewer" + ], + { + "title_aux": "ComfyUI-Depth-Visualization" + } + ], + "https://github.com/gokayfem/ComfyUI-Dream-Interpreter": [ + [ + "DreamViewer" + ], + { + "title_aux": "ComfyUI-Dream-Interpreter" + } + ], + "https://github.com/gokayfem/ComfyUI-Texture-Simple": [ + [ + "TextureViewer" + ], + { + "title_aux": "ComfyUI-Texture-Simple" + } + ], + "https://github.com/gokayfem/ComfyUI-fal-API": [ + [ + "CombinedVideoGeneration_fal", + "FluxDev_fal", + "FluxGeneral_fal", + "FluxLoraTrainer_fal", + "FluxLora_fal", + "FluxPro11_fal", + "FluxProKontextMulti_fal", + "FluxProKontextTextToImage_fal", + "FluxProKontext_fal", + "FluxPro_fal", + "FluxSchnell_fal", + "FluxUltra_fal", + "Hidreamfull_fal", + "HunyuanVideoLoraTrainer_fal", + "Ideogramv3_fal", + "Imagen4Preview_fal", + "KlingMaster_fal", + "KlingPro10_fal", + "KlingPro16_fal", + "Kling_fal", + "LLM_fal", + "LoadVideoURL", + "LtxVideoTrainer_fal", + "LumaDreamMachine_fal", + "MiniMaxSubjectReference_fal", + "MiniMaxTextToVideo_fal", + "MiniMax_fal", + "Recraft_fal", + "RunwayGen3_fal", + "Sana_fal", + "SeedEditV3_fal", + "SeedanceImageToVideo_fal", + "SeedanceTextToVideo_fal", + "Upscaler_fal", + "VLM_fal", + "Veo2ImageToVideo_fal", + "Veo3_fal", + "VideoUpscaler_fal", + "WanLoraTrainer_fal", + "WanPro_fal" + ], + { + "title_aux": "ComfyUI-fal-API" + } + ], + "https://github.com/gokayfem/ComfyUI_VLM_nodes": [ + [ + "AudioLDM2Node", + "ChatMusician", + "CreativeArtPromptGenerator", + "Joytag", + "JsonToText", + "KeywordExtraction", + "Kosmos2model", + "LLMLoader", + "LLMOptionalMemoryFreeAdvanced", + "LLMOptionalMemoryFreeSimple", + "LLMPromptGenerator", + "LLMSampler", + "LLava Loader Simple", + "LLavaOptionalMemoryFreeAdvanced", + "LLavaOptionalMemoryFreeSimple", + "LLavaPromptGenerator", + "LLavaSamplerAdvanced", + "LLavaSamplerSimple", + "LlavaClipLoader", + "MCLLaVAModel", + "MiniCPMNode", + "MolmoNode", + "MoonDream", + "Moondream2model", + "Paligemma", + "PlayMusic", + "PromptGenerateAPI", + "Qwen2VLNode", + "SaveAudioNode", + "SimpleText", + "StructuredOutput", + "Suggester", + "UformGen2QwenNode", + "ViewText" + ], + { + "title_aux": "VLM_nodes" + } + ], + "https://github.com/goldwins520/Comfyui_saveimg2webdav": [ + [ + "SaveFileToWebDAV", + "SaveImageToWebDAV" + ], + { + "title_aux": "Save Image To Webdav" + } + ], + "https://github.com/gonzalu/ComfyUI_YFG_Comical": [ + [ + "Image10Switcher_node", + "Image15Switcher_node", + "Image20Switcher_node", + "Image3Switcher_node", + "Image5Switcher_node", + "MonoClip_node", + "PixelArt_node", + "RandomOrgTrueRandomNumber_node", + "VAEDecodePreview_node", + "image2contrastMask_node", + "image2imbgg_node", + "image_halftone", + "image_histograms_node", + "image_histograms_node_compact", + "images_side_by_side", + "imgbbLoader_node", + "smartCheckpointLoader_node", + "storeURL_node", + "textMaskOverlay_node" + ], + { + "author": "Manny Gonzalez", + "description": "Utility custom nodes for special effects, image manipulation and quality of life tools.", + "nickname": "\ud83d\udc2f YFG Comical Nodes", + "title": "\ud83d\udc2f YFG Comical Nodes", + "title_aux": "\ud83d\ude38 YFG Comical Nodes" + } + ], + "https://github.com/gorillaframeai/GF_nodes": [ + [ + "GFrbmg2", + "GFrbmg2Plus" + ], + { + "title_aux": "GFrbmg2" + } + ], + "https://github.com/gorillaframeai/GF_translate": [ + [ + "GFDeepTranslate", + "GFJsonTranslate" + ], + { + "title_aux": "GF_translate" + } + ], + "https://github.com/greengerong/ComfyUI-JanusPro-PL": [ + [ + "JanusProImageGenerator", + "JanusProImageUnderstanding", + "JanusProModelLoader" + ], + { + "title_aux": "Janus-Pro ComfyUI Plugin" + } + ], + "https://github.com/greengerong/ComfyUI-Lumina-Video": [ + [ + "LuminaVideoModelLoader", + "LuminaVideoSampler", + "LuminaVideoVAEDecode" + ], + { + "title_aux": "ComfyUI-Lumina-Video" + } + ], + "https://github.com/gremlation/ComfyUI-ImageLabel": [ + [ + "gremlation:ComfyUI-ImageLabel:ImageLabel" + ], + { + "title_aux": "ComfyUI-ImageLabel" + } + ], + "https://github.com/gremlation/ComfyUI-JMESPath": [ + [ + "gremlation:ComfyUI-JMESPath" + ], + { + "title_aux": "ComfyUI-JMESPath" + } + ], + "https://github.com/gremlation/ComfyUI-ViewData": [ + [ + "gremlation:ComfyUI-ViewData:ViewData" + ], + { + "title_aux": "ComfyUI-ViewData" + } + ], + "https://github.com/gremlation/ComfyUI-jq": [ + [ + "gremlation:ComfyUI-jq" + ], + { + "title_aux": "ComfyUI-jq" + } + ], + "https://github.com/griptape-ai/ComfyUI-Griptape": [ + [ + "Griptape Agent Config: Amazon Bedrock Drivers", + "Griptape Agent Config: Amazon Bedrock [DEPRECATED]", + "Griptape Agent Config: Anthropic Drivers", + "Griptape Agent Config: Anthropic [DEPRECATED]", + "Griptape Agent Config: Azure OpenAI Drivers", + "Griptape Agent Config: Azure OpenAI [DEPRECATED]", + "Griptape Agent Config: Cohere Drivers", + "Griptape Agent Config: Custom Structure", + "Griptape Agent Config: Environment Variables", + "Griptape Agent Config: Expand", + "Griptape Agent Config: Google Drivers", + "Griptape Agent Config: Google [DEPRECATED]", + "Griptape Agent Config: Griptape Cloud", + "Griptape Agent Config: Grok Drivers", + "Griptape Agent Config: Groq Drivers", + "Griptape Agent Config: HuggingFace Drivers", + "Griptape Agent Config: HuggingFace [DEPRECATED]", + "Griptape Agent Config: LM Studio Drivers", + "Griptape Agent Config: LM Studio [DEPRECATED]", + "Griptape Agent Config: Ollama Drivers", + "Griptape Agent Config: Ollama [DEPRECATED]", + "Griptape Agent Config: OpenAI Compatible Drivers", + "Griptape Agent Config: OpenAI Compatible [DEPRECATED]", + "Griptape Agent Config: OpenAI Drivers", + "Griptape Agent Config: OpenAI [DEPRECATED]", + "Griptape Audio Transcription Driver: Groq", + "Griptape Audio Transcription Driver: OpenAI", + "Griptape Code: Run Griptape Cloud Structure", + "Griptape Code: Run Python [DEPRECATED]", + "Griptape Combine: Merge Dictionary", + "Griptape Combine: Merge Inputs", + "Griptape Combine: Merge Texts", + "Griptape Combine: RAG Module List", + "Griptape Combine: Rules List", + "Griptape Combine: String List", + "Griptape Combine: Tool List", + "Griptape Config: Environment Variables", + "Griptape Convert: Agent to Tool", + "Griptape Convert: Text to CLIP Encode", + "Griptape Convert: Text to Combo", + "Griptape Create: Agent", + "Griptape Create: Agent from Config", + "Griptape Create: CLIP Text Encode", + "Griptape Create: Image Inpainting Variation", + "Griptape Create: Image Variation", + "Griptape Create: Image from Text", + "Griptape Create: Key Value Pair", + "Griptape Create: Rules", + "Griptape Create: Text", + "Griptape Display: Artifact", + "Griptape Display: Data as Text", + "Griptape Display: Dictionary", + "Griptape Display: Image", + "Griptape Display: Text", + "Griptape Display: Text as Markdown", + "Griptape Driver: Amazon Bedrock Stable Diffusion", + "Griptape Driver: Amazon Bedrock Titan", + "Griptape Driver: Azure OpenAI Image Generation", + "Griptape Driver: Black Forest Labs Image Generation", + "Griptape Driver: Leonardo.AI", + "Griptape Driver: OpenAI Compatible Image Generation", + "Griptape Driver: OpenAI Image Generation", + "Griptape Embedding Driver: Amazon Bedrock Titan", + "Griptape Embedding Driver: Amazon SageMaker Jumpstart", + "Griptape Embedding Driver: Azure OpenAI", + "Griptape Embedding Driver: Cohere", + "Griptape Embedding Driver: Google", + "Griptape Embedding Driver: HuggingFace", + "Griptape Embedding Driver: LM Studio", + "Griptape Embedding Driver: Ollama", + "Griptape Embedding Driver: OpenAI", + "Griptape Embedding Driver: OpenAI Compatible", + "Griptape Embedding Driver: Voyage AI", + "Griptape End Workflow", + "Griptape Expand: Agent Nodes", + "Griptape Load: Audio", + "Griptape Load: Image From URL", + "Griptape Load: Text", + "Griptape Prompt Driver: Amazon Bedrock", + "Griptape Prompt Driver: Amazon SageMaker Jumpstart", + "Griptape Prompt Driver: Anthropic", + "Griptape Prompt Driver: Azure OpenAI", + "Griptape Prompt Driver: Cohere", + "Griptape Prompt Driver: Google", + "Griptape Prompt Driver: Griptape Cloud", + "Griptape Prompt Driver: Grok", + "Griptape Prompt Driver: Groq", + "Griptape Prompt Driver: HuggingFace", + "Griptape Prompt Driver: LM Studio", + "Griptape Prompt Driver: Ollama", + "Griptape Prompt Driver: OpenAI", + "Griptape Prompt Driver: OpenAI Compatible", + "Griptape RAG Query: Translate Module", + "Griptape RAG Rerank: Text Chunks Module", + "Griptape RAG Response: Footnote Prompt Module", + "Griptape RAG Response: Prompt Module", + "Griptape RAG Response: Text Chunks Module", + "Griptape RAG Retrieve: Text Loader Module", + "Griptape RAG Retrieve: Vector Store Module", + "Griptape RAG: Engine", + "Griptape Replace: Rulesets on Agent", + "Griptape Replace: Tools on Agent", + "Griptape Rerank Driver: Cohere", + "Griptape Rerank Driver: Local", + "Griptape Retrieve: Cloud Ruleset", + "Griptape Run: Agent", + "Griptape Run: Audio Transcription", + "Griptape Run: Cloud Assistant", + "Griptape Run: Image Description", + "Griptape Run: Parallel Image Description", + "Griptape Run: Parallel Prompt Task", + "Griptape Run: Prompt Task", + "Griptape Run: Task", + "Griptape Run: Text Extraction", + "Griptape Run: Text Summary", + "Griptape Run: Text to Speech", + "Griptape Run: Tool Task", + "Griptape Run: Toolkit Task", + "Griptape Save: Text", + "Griptape Set: Default Agent", + "Griptape Start Workflow", + "Griptape Text To Speech Driver: ElevenLabs", + "Griptape Text To Speech Driver: OpenAI", + "Griptape Tool: Audio Transcription", + "Griptape Tool: Calculator", + "Griptape Tool: DateTime", + "Griptape Tool: Extraction", + "Griptape Tool: FileManager", + "Griptape Tool: Griptape Cloud KnowledgeBase", + "Griptape Tool: Prompt Summary", + "Griptape Tool: Query", + "Griptape Tool: RAG", + "Griptape Tool: Text to Speech", + "Griptape Tool: VectorStore", + "Griptape Tool: WebScraper", + "Griptape Tool: WebSearch", + "Griptape Util: Create Agent Modelfile", + "Griptape Util: Create Model from Modelfile", + "Griptape Util: Remove Ollama Model", + "Griptape Util: Switch Node", + "Griptape Vector Store Driver: Amazon OpenSearch", + "Griptape Vector Store Driver: Azure MongoDB", + "Griptape Vector Store Driver: Griptape Cloud", + "Griptape Vector Store Driver: Local", + "Griptape Vector Store Driver: Marqo", + "Griptape Vector Store Driver: MongoDB Atlas", + "Griptape Vector Store Driver: PGVector", + "Griptape Vector Store Driver: Pinecone", + "Griptape Vector Store Driver: Qdrant", + "Griptape Vector Store Driver: Redis", + "Griptape Vector Store: Add Text", + "Griptape Vector Store: Query", + "Griptape WebSearch Driver: DuckDuckGo", + "Griptape WebSearch Driver: Exa", + "Griptape WebSearch Driver: Google", + "Griptape WebSearch Driver: Serper", + "Griptape WebSearch Driver: Tavily" + ], + { + "author": "Jason Schleifer", + "description": "This extension offers various nodes that allow you to work with LLMs using the Griptape Python Framework (https://griptape.ai)", + "nickname": "ComfyUI-Griptape", + "title": "ComfyUI Griptape Nodes", + "title_aux": "ComfyUI Griptape Nodes" + } + ], + "https://github.com/gseth/ControlAltAI-Nodes": [ + [ + "BooleanBasic", + "BooleanReverse", + "ChooseUpscaleModel", + "FluxAttentionCleanup", + "FluxAttentionControl", + "FluxControlNetApply", + "FluxResolutionNode", + "FluxSampler", + "FluxUnionControlNetApply", + "GetImageSizeRatio", + "HiDreamResolutionNode", + "IntegerSettings", + "IntegerSettingsAdvanced", + "NoisePlusBlend", + "PerturbationTexture", + "RegionMaskConditioning", + "RegionMaskGenerator", + "RegionMaskProcessor", + "RegionMaskValidator", + "RegionOverlayVisualizer", + "TextBridge", + "ThreeWaySwitch", + "TwoWaySwitch" + ], + { + "title_aux": "ControlAltAI Nodes" + } + ], + "https://github.com/gt732/ComfyUI-DreamWaltz-G": [ + [ + "DreamWaltzGStageOneTrainer", + "DreamWaltzGStageTwoTrainer" + ], + { + "title_aux": "ComfyUI-DreamWaltz-G" + } + ], + "https://github.com/guerreiro/comfyg-switch": [ + [ + "ComfygSwitch" + ], + { + "title_aux": "Comfyg Switch" + } + ], + "https://github.com/guill/abracadabra-comfyui": [ + [ + "AbracadabraNode", + "AbracadabraNodeDefSummary" + ], + { + "title_aux": "abracadabra-comfyui" + } + ], + "https://github.com/guyaton/guy-nodes-comfyui": [ + [ + "GuyRecommendedLatentResCalc" + ], + { + "title_aux": "guy-nodes-comfyui" + } + ], + "https://github.com/hackkhai/ComfyUI-Image-Matting": [ + [ + "ApplyMatting", + "CreateTrimap", + "MattingModelLoader" + ], + { + "title_aux": "ComfyUI-Image-Matting" + } + ], + "https://github.com/hanoixan/ComfyUI-DataBeast": [ + [ + "DBConvertToBoolean //DataBeast", + "DBConvertToFloat //DataBeast", + "DBConvertToInt //DataBeast", + "DBConvertToString //DataBeast", + "DBFloatExpression //DataBeast", + "DBGetBatchList //DataBeast", + "DBGetItem //DataBeast", + "DBLoadData //DataBeast", + "DBStringExpression //DataBeast" + ], + { + "author": "hanoixan", + "description": "This extension provides nodes for controlling data-driven processing in Comfy-UI", + "nickname": "DataBeast", + "title": "DataBeast", + "title_aux": "ComfyUI DataBeast" + } + ], + "https://github.com/haohaocreates/ComfyUI-HH-Image-Selector": [ + [ + "Image Selector" + ], + { + "title_aux": "ComfyUI-HH-Image-Selector" + } + ], + "https://github.com/hassan-sd/comfyui-image-prompt-loader": [ + [ + "ImagePromptLoader", + "apt", + "author", + "category", + "description", + "files", + "install_type", + "js_path", + "license", + "name", + "nodename_pattern", + "pip", + "preemptions", + "reference", + "repository", + "tags", + "title_aux", + "version" + ], + { + "title_aux": "ComfyUI Image & Prompt Loader" + } + ], + "https://github.com/havvk/ComfyUI_AIIA": [ + [ + "AIIA_E2E_Speaker_Diarization", + "AIIA_FloatProcess_InMemory", + "AIIA_FloatProcess_ToDisk", + "AIIA_GenerateSpeakerSegments", + "AIIA_Utils_Image_Concanate", + "AIIA_VideoCombine" + ], + { + "title_aux": "ComfyUI_AIIA" + } + ], + "https://github.com/hay86/ComfyUI_DDColor": [ + [ + "D_DDColor" + ], + { + "title_aux": "ComfyUI DDColor" + } + ], + "https://github.com/hay86/ComfyUI_Dreamtalk": [ + [ + "D_DreamTalk" + ], + { + "title_aux": "ComfyUI Dreamtalk" + } + ], + "https://github.com/hay86/ComfyUI_Hallo": [ + [ + "D_HalloNode" + ], + { + "title_aux": "ComfyUI Hallo" + } + ], + "https://github.com/hay86/ComfyUI_LatentSync": [ + [ + "D_LatentSyncNode" + ], + { + "title_aux": "ComfyUI LatentSync" + } + ], + "https://github.com/hay86/ComfyUI_MiniCPM-V": [ + [ + "D_MiniCPM_VQA" + ], + { + "title_aux": "ComfyUI MiniCPM-V" + } + ], + "https://github.com/hay86/ComfyUI_OpenVoice": [ + [ + "D_OpenVoice_STS", + "D_OpenVoice_TTS", + "D_OpenVoice_TTS_V2" + ], + { + "title_aux": "ComfyUI OpenVoice" + } + ], + "https://github.com/hayd-zju/ICEdit-ComfyUI-official": [ + [ + "SaveImageWebsocket" + ], + { + "title_aux": "ICEdit-ComfyUI-official" + } + ], + "https://github.com/hayde0096/Comfyui-EasySettingpipes": [ + [ + "ConvertAny", + "SamplerSetup", + "SamplerSetupUnpack" + ], + { + "title_aux": "EasySettingpipes" + } + ], + "https://github.com/hben35096/ComfyUI-ReplenishNodes": [ + [ + "Batch Image Blend", + "FLOAT Output", + "Fill Alpha", + "Get Batch Count", + "Image Blend BG", + "Integer Output", + "Load CLIP Name", + "Load Ckpt Name", + "Load Lora Name", + "Load Sampler Name", + "Load Scheduler Name", + "Load UNET Name", + "Mask Levels Adjust", + "Multi Line Text", + "Multiple Image Blend", + "Multiple Image Blend 2", + "Preview Image Low", + "Seed Output" + ], + { + "title_aux": "ComfyUI-ReplenishNodes" + } + ], + "https://github.com/heheok/comfyui_wan2.1_vace_infinite_helpers": [ + [ + "CyclicCharacterAndBackgroundPrompt", + "LatestVideoFromFolder", + "PrepareControlVideo" + ], + { + "title_aux": "comfyui_wan2.1_vace_infinite_helpers" + } + ], + "https://github.com/hekmon/comfyui-checkpoint-extract": [ + [ + "CLIPModelSaver", + "VAEModelSaver" + ], + { + "title_aux": "comfyui-checkpoint-extract" + } + ], + "https://github.com/hekmon/comfyui-openai-api": [ + [ + "OAIAPIChatCompletion", + "OAIAPIClient", + "OAIAPIDebug", + "OAIAPIDeveloperRole", + "OAIAPIExtraBody", + "OAIAPIFrequencyPenalty", + "OAIAPIMaxTokens", + "OAIAPIPresencePenalty", + "OAIAPISeed", + "OAIAPITemperature", + "OAIAPITopP" + ], + { + "title_aux": "ComfyUI OpenAI API" + } + ], + "https://github.com/heshengtao/comfyui_LLM_party": [ + [ + "About_us", + "AmapRegeoTool", + "AmapWeatherTool", + "Browser_display", + "CLIPTextEncode_party", + "Combine_Videos_party", + "Dingding", + "Dingding_tool", + "EasyOCR_advance", + "EasyOCR_choose", + "FeishuDownloadAudio", + "FeishuDownloadImage", + "FeishuGetHistory", + "FeishuSendMsg", + "FileOnlineDelete_gitee", + "FileOnlineStorage_gitee", + "FilePathExists", + "FolderCleaner", + "GGUFLoader", + "GeocodeTool", + "Image2Video_party", + "Images2Image", + "KG_csv_toolkit_developer", + "KG_csv_toolkit_user", + "KG_json_toolkit_developer", + "KG_json_toolkit_user", + "KG_neo_toolkit_developer", + "KG_neo_toolkit_user", + "KSampler_party", + "LLM", + "LLM_api_loader", + "LLM_local", + "LLM_local_loader", + "LLavaLoader", + "LorapathLoader", + "Lorebook", + "Mcp_tool", + "RSS_loader", + "RSS_tool", + "SpeedChange", + "URL2IMG", + "VAEDecode_party", + "accuweather_tool", + "advance_ebd_tool", + "aisuite_loader", + "any2str", + "any_switcher", + "api_function", + "api_tool", + "arxiv_tool", + "bing_loader", + "bing_tool", + "bool_logic", + "browser_use_tool", + "check_text", + "check_web_tool", + "classify_function", + "classify_function_plus", + "classify_persona", + "classify_persona_plus", + "clear_file", + "clear_model", + "custom_persona", + "custom_string_format", + "dall_e_tool", + "discord_bot", + "discord_file_monitor", + "discord_send", + "duckduckgo_loader", + "duckduckgo_tool", + "easy_GGUFLoader", + "easy_LLM_api_loader", + "easy_LLM_local_loader", + "easy_LLavaLoader", + "easy_load_llm_lora", + "easy_vlmLoader", + "ebd_tool", + "embeddings_function", + "end_anything", + "end_dialog", + "end_workflow", + "extra_parameters", + "feishu", + "feishu_tool", + "file_combine", + "file_combine_plus", + "file_path_iterator", + "files_read_tool", + "fish_tts", + "fish_whisper", + "flux_persona", + "genai_api_loader", + "get_string", + "github_tool", + "google_loader", + "google_tool", + "got_ocr", + "gpt_sovits", + "graph_md_to_html", + "html2img_function", + "ic_lora_persona", + "image_iterator", + "img2path", + "img_hosting", + "interpreter_function", + "interpreter_tool", + "interrupt_loop", + "json2text", + "json_extractor", + "json_get_value", + "json_iterator", + "json_parser", + "json_writing", + "keyword_tool", + "list_append", + "list_append_plus", + "list_extend", + "list_extend_plus", + "listen_audio", + "load_SQL_memo", + "load_bool", + "load_ebd", + "load_excel", + "load_file", + "load_file_folder", + "load_float", + "load_img_path", + "load_int", + "load_keyword", + "load_llm_lora", + "load_memo", + "load_name", + "load_openai_ebd", + "load_persona", + "load_redis_memo", + "load_url", + "load_wikipedia", + "md_to_excel", + "md_to_html", + "mini_error_correction", + "mini_flux_prompt", + "mini_flux_tag", + "mini_intent_recognition", + "mini_ocr", + "mini_party", + "mini_sd_prompt", + "mini_sd_tag", + "mini_story", + "mini_summary", + "mini_translate", + "none2false", + "omost_decode", + "omost_json2py", + "omost_setting", + "open_url_function", + "open_url_tool", + "openai_dall_e", + "openai_ebd_tool", + "openai_tts", + "openai_whisper", + "parameter_combine", + "parameter_combine_plus", + "parameter_function", + "path2img_tool", + "red_book_text_persona", + "replace_string", + "save_SQL_memo", + "save_ebd_database", + "save_memo", + "save_openai_ebd", + "save_redis_memo", + "savepersona", + "searxng_tool", + "send_to_wechat_official", + "show_text_party", + "sql_tool", + "srt2txt", + "start_anything", + "start_dialog", + "start_workflow", + "story_json_tool", + "str2float", + "str2int", + "string_combine", + "string_combine_plus", + "string_logic", + "substring", + "svg2html", + "svg2img_function", + "text2json", + "text2parameters", + "text_iterator", + "text_writing", + "time_sleep", + "time_tool", + "tool_combine", + "tool_combine_plus", + "translate_persona", + "txt2srt", + "url2img_tool", + "vlmLoader", + "weekday_tool", + "whisper_local", + "wikipedia_tool", + "work_wechat", + "work_wechat_tool", + "workflow_tool", + "workflow_transfer", + "workflow_transfer_v2" + ], + { + "title_aux": "comfyui_LLM_party" + } + ], + "https://github.com/heshengtao/comfyui_LLM_schools": [ + [ + "CausalLM_trainer", + "IA3_Arguments", + "LLM_Arguments", + "Lora_or_adapter_Arguments", + "P_or_Prompt_Arguments", + "Prefix_Arguments", + "download_dataset", + "get_dataset_name", + "split_dataset" + ], + { + "title_aux": "comfyui_LLM_schools" + } + ], + "https://github.com/hexxacubic/ComfyUI-Prompt_Library": [ + [ + "Double_Prompt_Encode", + "Multi_Wildcard_Loader", + "Prompt_Extender", + "Prompt_Library", + "Simple_Prompt_Library" + ], + { + "title_aux": "ComfyUI-Prompt_Library" + } + ], + "https://github.com/hgabha/WWAA-CustomNodes": [ + [ + "WWAA-BuildString", + "WWAA-LineCount", + "WWAA_AdvancedTextFileReader", + "WWAA_DitherNode", + "WWAA_GBCamera", + "WWAA_ImageLoader", + "WWAA_ImageToTextFile", + "WWAA_NestedLoopCounter", + "WWAA_PromptWriter", + "WWAA_SearchReplaceText", + "WWAA_Switch_Int" + ], + { + "title_aux": "WWAA-CustomNodes" + } + ], + "https://github.com/hhhzzyang/Comfyui_Lama": [ + [ + "LamaApply", + "LamaModelLoader", + "YamlConfigLoader" + ], + { + "title_aux": "Comfyui-Lama" + } + ], + "https://github.com/hiderminer/ComfyUI-HM-Utilities": [ + [ + "AutoCropImage", + "NormalizeImageWithRectangle" + ], + { + "title_aux": "ComfyUI-HM-Tools" + } + ], + "https://github.com/hieuck/ComfyUI-BiRefNet": [ + [ + "BiRefNet" + ], + { + "title_aux": "ComfyUI-BiRefNet-Fix utils" + } + ], + "https://github.com/hiforce/comfyui-hiforce-plugin": [ + [ + "HfBoolSwitchKSampleStatus", + "HfImageAutoExpansionSquare", + "HfImageToRGB", + "HfImageToRGBA", + "HfInitImageWithMaxSize", + "HfIterativeLatentUpscale", + "HfLoadImageWithCropper", + "HfLookbackSamplerLoader", + "HfLoopback", + "HfResizeImage", + "HfSampler", + "HfSamplerLoader", + "HfSamplerLoopback", + "HfSaveImage", + "HfSwitchKSampleStatus", + "HfTwoSamplersForMask", + "HfTwoStepSamplers", + "LoadImageFromURL" + ], + { + "title_aux": "Comfyui HiFORCE Plugin" + } + ], + "https://github.com/hinablue/ComfyUI_3dPoseEditor": [ + [ + "Hina.PoseEditor3D" + ], + { + "title_aux": "ComfyUI 3D Pose Editor" + } + ], + "https://github.com/hmwl/ComfyUI_zip": [ + [ + "CleanFolders", + "CompressImages", + "UnzipToInput" + ], + { + "title_aux": "ComfyUI_zip" + } + ], + "https://github.com/hnmr293/comfyui-savemem": [ + [ + "SaveImagesMemory", + "SaveLatentsMemory" + ], + { + "title_aux": "ComfyUI-SaveMem" + } + ], + "https://github.com/hodanajan/optimal-crop-resolution": [ + [ + "AspectRatioCalculator", + "ResolutionMatcher" + ], + { + "title_aux": "optimal-crop-resolution" + } + ], + "https://github.com/hoveychen/ComfyUI-MusePose-Remaster": [ + [ + "musepose_getposes", + "musepose_inference" + ], + { + "title_aux": "ComfyUI-MusePose-Remaster" + } + ], + "https://github.com/huagetai/ComfyUI-Gaffer": [ + [ + "ApplyICLight", + "CalculateNormalMap", + "GrayScaler", + "ICLightModelLoader", + "LightSource" + ], + { + "title_aux": "comfyui's gaffer(ComfyUI native implementation of IC-Light. )" + } + ], + "https://github.com/huagetai/ComfyUI_LightGradient": [ + [ + "ImageGradient", + "MaskGradient" + ], + { + "title_aux": "Light Gradient for ComfyUI" + } + ], + "https://github.com/huanngzh/ComfyUI-MVAdapter": [ + [ + "BiRefNet", + "ControlImagePreprocessor", + "ControlNetModelLoader", + "CustomLoraModelLoader", + "DiffusersMVModelMakeup", + "DiffusersMVPipelineLoader", + "DiffusersMVSampler", + "DiffusersMVSchedulerLoader", + "DiffusersMVVaeLoader", + "ImagePreprocessor", + "LdmPipelineLoader", + "LdmVaeLoader", + "ViewSelector" + ], + { + "title_aux": "ComfyUI-MVAdapter" + } + ], + "https://github.com/hubentu/ComfyUI-loras-loader": [ + [ + "DynamicLoRALoader", + "LoRAStringAdapter", + "MultiLoRAnameLoader", + "MultiLoraLoader", + "MultiTriggerLoader" + ], + { + "title_aux": "Multiple LoRA Loader for ComfyUI" + } + ], + "https://github.com/huchenlei/ComfyUI-IC-Light-Native": [ + [ + "ICLightApplyMaskGrey", + "ICLightAppply", + "VAEEncodeArgMax" + ], + { + "title_aux": "ComfyUI-IC-Light-Native" + } + ], + "https://github.com/huchenlei/ComfyUI-layerdiffuse": [ + [ + "LayeredDiffusionApply", + "LayeredDiffusionCondApply", + "LayeredDiffusionCondJointApply", + "LayeredDiffusionDecode", + "LayeredDiffusionDecodeRGBA", + "LayeredDiffusionDecodeSplit", + "LayeredDiffusionDiffApply", + "LayeredDiffusionJointApply" + ], + { + "title_aux": "ComfyUI-layerdiffuse (layerdiffusion)" + } + ], + "https://github.com/huchenlei/ComfyUI-openpose-editor": [ + [ + "huchenlei.LoadOpenposeJSON" + ], + { + "title_aux": "ComfyUI-openpose-editor" + } + ], + "https://github.com/huchenlei/ComfyUI_DanTagGen": [ + [ + "PromptDanTagGen" + ], + { + "title_aux": "ComfyUI_DanTagGen" + } + ], + "https://github.com/huchenlei/ComfyUI_densediffusion": [ + [ + "DenseDiffusionAddCondNode", + "DenseDiffusionApplyNode" + ], + { + "title_aux": "ComfyUI DenseDiffusion" + } + ], + "https://github.com/huchenlei/ComfyUI_omost": [ + [ + "OmostDenseDiffusionLayoutNode", + "OmostGreedyBagsTextEmbeddingNode", + "OmostLLMChatNode", + "OmostLLMHTTPServerNode", + "OmostLLMLoaderNode", + "OmostLayoutCondNode", + "OmostLoadCanvasConditioningNode", + "OmostLoadCanvasPythonCodeNode", + "OmostRenderCanvasConditioningNode" + ], + { + "title_aux": "ComfyUI_omost" + } + ], + "https://github.com/hughescr/ComfyUI-OpenPose-Keypoint-Extractor": [ + [ + "Openpose Keypoint Extractor" + ], + { + "title_aux": "OpenPose Keypoint Extractor" + } + ], + "https://github.com/hugobb/FastGAN-ComfyUI-Node": [ + [ + "GenerateImages", + "LoadFastGAN", + "LoadLatent", + "SampleLatent", + "SaveLatent" + ], + { + "title_aux": "fastgan-comfyui" + } + ], + "https://github.com/huixingyun/ComfyUI-HX-Captioner": [ + [ + "HXOllamaCaptioner" + ], + { + "title_aux": "ComfyUI-HX-Captioner" + } + ], + "https://github.com/huixingyun/ComfyUI-HX-Pimg": [ + [ + "SaveImageWithPromptsWebsocket" + ], + { + "title_aux": "ComfyUI-HX-Pimg" + } + ], + "https://github.com/hunzmusic/ComfyUI-IG2MV": [ + [ + "DiffusersIGMVModelMakeup", + "DiffusersIGMVSampler" + ], + { + "title_aux": "ComfyUI-IG2MV" + } + ], + "https://github.com/hustille/ComfyUI_Fooocus_KSampler": [ + [ + "KSampler With Refiner (Fooocus)" + ], + { + "title_aux": "ComfyUI_Fooocus_KSampler" + } + ], + "https://github.com/hustille/ComfyUI_hus_utils": [ + [ + "3way Prompt Styler", + "Batch State", + "Date Time Format", + "Debug Extra", + "Fetch widget value", + "Text Hash" + ], + { + "title_aux": "hus' utils for ComfyUI" + } + ], + "https://github.com/hvppycoding/comfyui-random-sampler-scheduler-steps": [ + [ + "RandomSamplerSchedulerSteps" + ], + { + "title_aux": "RandomSamplerSchedulerSteps for ComfyUI" + } + ], + "https://github.com/hwhaocool/ComfyUI-Select-Any": [ + [ + "SelectAnyValues" + ], + { + "title_aux": "ComfyUI-Select-Any" + } + ], + "https://github.com/hybskgks28275/ComfyUI-hybs-nodes": [ + [ + "Random Resolution Selector", + "Resolution Selector", + "Seed List Generator" + ], + { + "title_aux": "ComfyUI-hybs-nodes" + } + ], + "https://github.com/hyunamy/comfy-ui-on-complete-email-me": [ + [ + "OnCompleteEmailMe", + "OnCompletePlaySound", + "OnCompleteWebhook" + ], + { + "title_aux": "Comfy-UI on-complete-email-me" + } + ], + "https://github.com/iDAPPA/ComfyUI-AMDGPUMonitor": [ + [ + "AMDGPUMonitor" + ], + { + "title_aux": "AMD GPU Monitor for ComfyUI" + } + ], + "https://github.com/iFREEGROUP/comfyui-undistort": [ + [ + "IG_LoadCheckerboardImageForCalibrateCamera", + "IG_MatrixAndDistCoefToText", + "IG_Undistort" + ], + { + "title_aux": "comfyui-undistort" + } + ], + "https://github.com/iacoposk8/ComfyUI-Fooocus-Inpaint-Wrapper": [ + [ + "AlignYourStepsScheduler", + "BasicScheduler", + "CLIPLoader", + "CLIPMergeSimple", + "CLIPSave", + "CLIPSetLastLayer", + "CLIPTextEncode", + "CLIPTextEncodeSDXL", + "CLIPTextEncodeSDXLRefiner", + "CLIPVisionEncode", + "CLIPVisionLoader", + "Canny", + "CheckpointLoader", + "CheckpointLoaderSimple", + "CheckpointSave", + "ConditioningAverage", + "ConditioningCombine", + "ConditioningConcat", + "ConditioningSetArea", + "ConditioningSetAreaPercentage", + "ConditioningSetMask", + "ConditioningSetTimestepRange", + "ConditioningZeroOut", + "ControlNetApply", + "ControlNetApplyAdvanced", + "ControlNetLoader", + "CropMask", + "DiffControlNetLoader", + "DiffusersLoader", + "DualCLIPLoader", + "EmptyImage", + "EmptyLatentImage", + "ExponentialScheduler", + "FeatherMask", + "FlipSigmas", + "FooocusInpaintWrapper", + "FreeU", + "FreeU_V2", + "GLIGENLoader", + "GLIGENTextBoxApply", + "GrowMask", + "HyperTile", + "HypernetworkLoader", + "ImageBatch", + "ImageBlend", + "ImageBlur", + "ImageColorToMask", + "ImageCompositeMasked", + "ImageCrop", + "ImageInvert", + "ImageOnlyCheckpointLoader", + "ImageOnlyCheckpointSave", + "ImagePadForOutpaint", + "ImageQuantize", + "ImageScale", + "ImageScaleBy", + "ImageScaleToTotalPixels", + "ImageSharpen", + "ImageToMask", + "ImageUpscaleWithModel", + "InpaintModelConditioning", + "InvertMask", + "JoinImageWithAlpha", + "KSampler", + "KSamplerAdvanced", + "KSamplerSelect", + "KarrasScheduler", + "LatentAdd", + "LatentBatch", + "LatentBatchSeedBehavior", + "LatentBlend", + "LatentComposite", + "LatentCompositeMasked", + "LatentCrop", + "LatentFlip", + "LatentFromBatch", + "LatentInterpolate", + "LatentMultiply", + "LatentRotate", + "LatentSubtract", + "LatentUpscale", + "LatentUpscaleBy", + "LoadImage", + "LoadImageMask", + "LoadLatent", + "LoraLoader", + "LoraLoaderModelOnly", + "MaskComposite", + "MaskToImage", + "ModelMergeAdd", + "ModelMergeBlocks", + "ModelMergeSimple", + "ModelMergeSubtract", + "ModelSamplingContinuousEDM", + "ModelSamplingDiscrete", + "PatchModelAddDownscale", + "PerpNeg", + "PhotoMakerEncode", + "PhotoMakerLoader", + "PolyexponentialScheduler", + "PorterDuffImageComposite", + "PreviewImage", + "RebatchImages", + "RebatchLatents", + "RepeatImageBatch", + "RepeatLatentBatch", + "RescaleCFG", + "SDTurboScheduler", + "SD_4XUpscale_Conditioning", + "SVD_img2vid_Conditioning", + "SamplerCustom", + "SamplerDPMPP_2M_SDE", + "SamplerDPMPP_SDE", + "SamplerTCD", + "SaveAnimatedPNG", + "SaveAnimatedWEBP", + "SaveImage", + "SaveLatent", + "SelfAttentionGuidance", + "SetLatentNoiseMask", + "SolidMask", + "SplitImageWithAlpha", + "SplitSigmas", + "StableZero123_Conditioning", + "StableZero123_Conditioning_Batched", + "StyleModelApply", + "StyleModelLoader", + "TomePatchModel", + "UNETLoader", + "UpscaleModelLoader", + "VAEDecode", + "VAEDecodeTiled", + "VAEEncode", + "VAEEncodeForInpaint", + "VAEEncodeTiled", + "VAELoader", + "VAESave", + "VPScheduler", + "VideoLinearCFGGuidance", + "unCLIPCheckpointLoader", + "unCLIPConditioning" + ], + { + "title_aux": "ComfyUI Fooocus Inpaint Wrapper" + } + ], + "https://github.com/ialhabbal/OcclusionMask": [ + [ + "BatchLoadImages", + "ImageOcclusion" + ], + { + "title_aux": "OcclusionMask" + } + ], + "https://github.com/iamandeepsandhu/ComfyUI-NSFW-Check": [ + [ + "NSFWScore" + ], + { + "title_aux": "NSFW Check for ComfyUI" + } + ], + "https://github.com/icesun963/ComfyUI_HFDownLoad": [ + [ + "Apply EasyOCR V2", + "HFDownLoad_Tool", + "LayerMask: SegmentAnythingUltra V2.1", + "LayerUtility: LaMa V2" + ], + { + "author": "chflame", + "description": "A set of nodes for ComfyUI that can composite layer and mask to achieve Photoshop like functionality.", + "nickname": "LayerStyle", + "title": "LayerStyle", + "title_aux": "HFDownLoad Node for ComfyUI" + } + ], + "https://github.com/ichabodcole/ComfyUI-Ichis-Pack": [ + [ + "ICHIS_Aspect_Ratio_Plus", + "ICHIS_Extract_Tags", + "ICHIS_Text_Selector" + ], + { + "title_aux": "ComfyUI-Ichis-Pack" + } + ], + "https://github.com/idrirap/ComfyUI-Lora-Auto-Trigger-Words": [ + [ + "FusionText", + "LoraListNames", + "LoraLoaderAdvanced", + "LoraLoaderStackedAdvanced", + "LoraLoaderStackedVanilla", + "LoraLoaderVanilla", + "LoraTagsOnly", + "Randomizer", + "TagsFormater", + "TagsSelector", + "TextInputBasic" + ], + { + "title_aux": "ComfyUI-Lora-Auto-Trigger-Words" + } + ], + "https://github.com/iemesowum/ComfyUI_IsaacNodes": [ + [ + "I_AmplitudeToWeights", + "I_BinaryAmplitudeGate", + "I_UnmixAudio", + "I_WeightsListToWeights" + ], + { + "author": "Isaac Emesowum", + "description": "This extension offers automatic drums extraction from audio files, as well as a few helper nodes to support my audio synchronization AnimateDiff workflows.", + "nickname": "Isaac's Nodes", + "title": "Isaac's Nodes", + "title_aux": "Isaac's Nodes" + } + ], + "https://github.com/if-ai/ComfyUI-IF_AI_Dreamtalk": [ + [ + "IF_DreamTalk" + ], + { + "title_aux": "IF_Dreamtalk" + } + ], + "https://github.com/if-ai/ComfyUI-IF_AI_HFDownloaderNode": [ + [ + "IF_HFDownload", + "IF_HFDownloadNode" + ], + { + "title_aux": "IF_AI_HFDownloaderNode" + } + ], + "https://github.com/if-ai/ComfyUI-IF_AI_ParlerTTSNode": [ + [ + "IF_ParlerTTS" + ], + { + "title_aux": "IF_ParlerTTSNode" + } + ], + "https://github.com/if-ai/ComfyUI-IF_AI_WishperSpeechNode": [ + [ + "IF_WhisperSpeech" + ], + { + "title_aux": "IF_AI_WishperSpeechNode" + } + ], + "https://github.com/if-ai/ComfyUI-IF_AI_tools": [ + [ + "IF_ChatPrompt", + "IF_DisplayOmni", + "IF_DisplayText", + "IF_DisplayTextWildcard", + "IF_ImagePrompt", + "IF_JoinText", + "IF_LoadImagesS", + "IF_PromptMkr", + "IF_SaveText", + "IF_StepCounter", + "IF_TextTyper", + "IF_VisualizeGraph", + "IF_tools_LoadImagesS" + ], + { + "title_aux": "IF_AI_tools" + } + ], + "https://github.com/if-ai/ComfyUI-IF_DatasetMkr": [ + [ + "IF_DatasetMkr", + "IF_HyDatasetMkr" + ], + { + "title_aux": "IF_DatasetMkr" + } + ], + "https://github.com/if-ai/ComfyUI-IF_Gemini": [ + [ + "IFGeminiNode" + ], + { + "title_aux": "IF_Gemini" + } + ], + "https://github.com/if-ai/ComfyUI-IF_LLM": [ + [ + "IF_DisplayText", + "IF_JoinText", + "IF_LLM", + "IF_LLM_DisplayOmni", + "IF_LLM_DisplayText", + "IF_LLM_DisplayTextWildcard", + "IF_LLM_JoinText", + "IF_LLM_ListModels", + "IF_LLM_LoadImagesS", + "IF_LLM_SaveText", + "IF_LLM_TextTyper", + "IF_LoadImagesS", + "IF_TextTyper", + "IF_saveText", + "ListModelsNode" + ], + { + "title_aux": "IF_LLM" + } + ], + "https://github.com/if-ai/ComfyUI-IF_MemoAvatar": [ + [ + "IF_MemoAvatar", + "IF_MemoCheckpointLoader" + ], + { + "title_aux": "IF_MemoAvatar" + } + ], + "https://github.com/if-ai/ComfyUI-IF_Trellis": [ + [ + "IF_TrellisCheckpointLoader", + "IF_TrellisImageTo3D" + ], + { + "title_aux": "IF_Trellis" + } + ], + "https://github.com/if-ai/ComfyUI-IF_VideoPrompts": [ + [ + "VideoPromptNode" + ], + { + "title_aux": "IF_VideoPrompts" + } + ], + "https://github.com/if-ai/ComfyUI-WanResolutionSelector": [ + [ + "VideoResolutionSelector" + ], + { + "title_aux": "ComfyUI-WanResolutionSelector" + } + ], + "https://github.com/if-ai/ComfyUI_IF_AI_LoadImages": [ + [ + "IF_LoadImagesS" + ], + { + "title_aux": "IF_AI_LoadImages" + } + ], + "https://github.com/ifmylove2011/comfyui-missed-tool": [ + [ + "ImageQueueLoader", + "LoadImageA", + "LoraLoad", + "LoraMerge", + "LoraSaver", + "ScaleMultilplePixels", + "TrimBG", + "TrimBGAdvanced", + "TxtSave" + ], + { + "title_aux": "comfyui-missed-tool" + } + ], + "https://github.com/ihmily/ComfyUI-Light-Tool": [ + [ + "Light-Tool: AddBackground", + "Light-Tool: AddBackgroundV2", + "Light-Tool: BoundingBoxCropping", + "Light-Tool: Calculate", + "Light-Tool: ConvertNumType", + "Light-Tool: CropImage", + "Light-Tool: DeserializeJsonString", + "Light-Tool: GetImageSize", + "Light-Tool: GetImagesCount", + "Light-Tool: Hex2RGB", + "Light-Tool: ImageConcat", + "Light-Tool: ImageMaskApply", + "Light-Tool: ImageOverlay", + "Light-Tool: ImageToMask", + "Light-Tool: InputText", + "Light-Tool: InputTextList", + "Light-Tool: InvertMask", + "Light-Tool: IsTransparent", + "Light-Tool: KeyValue", + "Light-Tool: LoadImage", + "Light-Tool: LoadImageFromURL", + "Light-Tool: LoadImagesFromDir", + "Light-Tool: LoadMetadataFromURL", + "Light-Tool: LoadVideo", + "Light-Tool: MaskBoundingBoxCropping", + "Light-Tool: MaskContourExtractor", + "Light-Tool: MaskImageToTransparent", + "Light-Tool: MaskToImage", + "Light-Tool: MorphologicalTF", + "Light-Tool: PhantomTankEffect", + "Light-Tool: PreviewVideo", + "Light-Tool: RGB2Hex", + "Light-Tool: RGB2RGBA", + "Light-Tool: RGBA2RGB", + "Light-Tool: ResizeImage", + "Light-Tool: ResizeImageByMaxSize", + "Light-Tool: ResizeImageByRatio", + "Light-Tool: ResizeImageV2", + "Light-Tool: SaveMetadata", + "Light-Tool: SaveToAliyunOSS", + "Light-Tool: SaveVideo", + "Light-Tool: ScaleImage", + "Light-Tool: SerializeJsonObject", + "Light-Tool: ShowText", + "Light-Tool: SimpleImageOverlay", + "Light-Tool: SimpleTextConnect", + "Light-Tool: SolidColorBackground", + "Light-Tool: TextConnect", + "Light-Tool: UpscaleImage" + ], + { + "author": "Hmily", + "description": "An awesome light tool nodes for ComfyUI.", + "nickname": "ComfyUI-Light-Tool", + "title": "ComfyUI-Light-Tool", + "title_aux": "ComfyUI-Light-Tool" + } + ], + "https://github.com/illuminatianon/comfyui-csvwildcards": [ + [ + "CSVWildcardNode", + "DisplayTextNode" + ], + { + "title_aux": "CSV Wildcard Node for ComfyUI" + } + ], + "https://github.com/imb101/ComfyUI-FaceSwap": [ + [ + "FaceSwapNode" + ], + { + "title_aux": "FaceSwap" + } + ], + "https://github.com/inflamously/comfyui-prompt-enhancer": [ + [ + "PROMPT_ENHANCER", + "PROMPT_ENHANCER_CHAIN_CONTROL", + "PROMPT_ENHANCER_CHAIN_RANDOM", + "PROMPT_ENHANCER_REPROMPT" + ], + { + "title_aux": "comfyui-prompt-enhancer" + } + ], + "https://github.com/injet-zhou/comfyui_extra_api": [ + [ + "SimpleGenImageInterface" + ], + { + "title_aux": "comfyui_extra_api" + } + ], + "https://github.com/inventorado/ComfyUI_NNT": [ + [ + "NntAnalyzeInferenceMetrics", + "NntAnalyzeModel", + "NntCompileModel", + "NntDatasetToImageTensor", + "NntDatasetToTargetTensor", + "NntDatasetToTensor", + "NntDatasetToTextTensor", + "NntDefineActivationLayer", + "NntDefineAlibiPositionalBias", + "NntDefineConvLayer", + "NntDefineDenseLayer", + "NntDefineFlattenLayer", + "NntDefineGRULayer", + "NntDefineLSTMLayer", + "NntDefineLinearAttention", + "NntDefineLocalAttention", + "NntDefineMultiheadAttention", + "NntDefineNormLayer", + "NntDefinePoolingLayer", + "NntDefinePositionalEncoding", + "NntDefineRNNLayer", + "NntDefineReformerAttention", + "NntDefineRelativePositionBias", + "NntDefineReshapeLayer", + "NntDefineRotaryPositionalEmbedding", + "NntDefineTransformerEncoderLayer", + "NntDefineTransformerXLAttention", + "NntDefineVanillaAttention", + "NntEditModelLayers", + "NntEvaluatePredictions", + "NntFileLoader", + "NntFineTuneModel", + "NntHuggingFaceDataLoader", + "NntImageToTensor", + "NntInference", + "NntInputLayer", + "NntLoadModel", + "NntMergeExtendModel", + "NntPlotTensors", + "NntRandomTensorGenerator", + "NntSHAPSummaryNode", + "NntSaveModel", + "NntShowLayerStack", + "NntShowModelInfo", + "NntTensorElementToImage", + "NntTensorOperations", + "NntTensorSlice", + "NntTensorToText", + "NntTextBatchProcessor", + "NntTextToTensor", + "NntTimeSeriesDataLoader", + "NntTorchvisionDataLoader", + "NntTorchvisionDatasets", + "NntTrainModel", + "NntTrainingHyperparameters", + "NntVisualizeConfidenceScores", + "NntVisualizeGraph", + "NntVisualizePredictionMetrics", + "NntVisualizeTrainingMetrics" + ], + { + "title_aux": "ComfyUI Neural Network Toolkit NNT " + } + ], + "https://github.com/irreveloper/ComfyUI-DSD": [ + [ + "DSDGeminiPromptEnhancer", + "DSDImageGenerator", + "DSDModelDownloader", + "DSDModelLoader", + "DSDModelSelector", + "DSDResizeSelector" + ], + { + "title_aux": "ComfyUI-DSD" + } + ], + "https://github.com/iwanders/ComfyUI_nodes": [ + [ + "IW_JsonPickItem", + "IW_ModelHook", + "IW_StringConcat", + "IW_StringFromInt", + "IW_StringNode", + "IW_StringPrint", + "IW_StringReplace", + "IW_StringSave", + "IW_TokenizerVocab" + ], + { + "title_aux": "iwanders/ComfyUI_nodes" + } + ], + "https://github.com/jacklukai/ComfyUI_DeployCash": [ + [ + "DeployCash", + "DeployCash_saveImage", + "DeployCash_textInput" + ], + { + "title_aux": "ComfyUI_DeployCash" + } + ], + "https://github.com/jags111/ComfyUI_Jags_Audiotools": [ + [ + "BatchJoinAudio", + "BatchToList", + "BitCrushAudioFX", + "BulkVariation", + "ChorusAudioFX", + "ClippingAudioFX", + "CompressorAudioFX", + "ConcatAudioList", + "ConvolutionAudioFX", + "CutAudio", + "DelayAudioFX", + "DistortionAudioFX", + "DuplicateAudio", + "GainAudioFX", + "GenerateAudioSample", + "GenerateAudioWave", + "GetAudioFromFolderIndex", + "GetSingle", + "GetStringByIndex", + "HighShelfFilter", + "HighpassFilter", + "ImageToSpectral", + "InvertAudioFX", + "JoinAudio", + "LadderFilter", + "LimiterAudioFX", + "ListToBatch", + "LoadAudioDir", + "LoadAudioFile", + "LoadAudioModel (DD)", + "LoadVST3", + "LowShelfFilter", + "LowpassFilter", + "MP3CompressorAudioFX", + "MixAudioTensors", + "NoiseGateAudioFX", + "OTTAudioFX", + "PeakFilter", + "PhaserEffectAudioFX", + "PitchShiftAudioFX", + "PlotSpectrogram", + "PreviewAudioFile", + "PreviewAudioTensor", + "ResampleAudio", + "ReverbAudioFX", + "ReverseAudio", + "SaveAudioTensor", + "SequenceVariation", + "SliceAudio", + "SoundPlayer", + "StretchAudio", + "samplerate" + ], + { + "author": "jags111", + "description": "This extension offers various audio generation tools", + "nickname": "Audiotools", + "title": "Jags_Audiotools", + "title_aux": "Jags_Audiotools" + } + ], + "https://github.com/jags111/ComfyUI_Jags_VectorMagic": [ + [ + "CircularVAEDecode", + "JagsCLIPSeg", + "JagsClipseg", + "JagsCombineMasks", + "SVG", + "YoloSEGdetectionNode", + "YoloSegNode", + "color_drop", + "xy_Tiling_KSampler" + ], + { + "author": "jags111", + "description": "This extension offers various vector manipulation and generation tools", + "nickname": "Jags_VectorMagic", + "title": "Jags_VectorMagic", + "title_aux": "Jags_VectorMagic" + } + ], + "https://github.com/jags111/efficiency-nodes-comfyui": [ + [ + "AnimateDiff Script", + "Apply ControlNet Stack", + "Control Net Stacker", + "Eff. Loader SDXL", + "Efficient Loader", + "HighRes-Fix Script", + "Image Overlay", + "Join XY Inputs of Same Type", + "KSampler (Efficient)", + "KSampler Adv. (Efficient)", + "KSampler SDXL (Eff.)", + "LatentUpscaler", + "LoRA Stack to String converter", + "LoRA Stacker", + "Manual XY Entry Info", + "NNLatentUpscale", + "Noise Control Script", + "Pack SDXL Tuple", + "Tiled Upscaler Script", + "Unpack SDXL Tuple", + "XY Input: Add/Return Noise", + "XY Input: Aesthetic Score", + "XY Input: CFG Scale", + "XY Input: Checkpoint", + "XY Input: Clip Skip", + "XY Input: Control Net", + "XY Input: Control Net Plot", + "XY Input: Denoise", + "XY Input: LoRA", + "XY Input: LoRA Plot", + "XY Input: LoRA Stacks", + "XY Input: Manual XY Entry", + "XY Input: Prompt S/R", + "XY Input: Refiner On/Off", + "XY Input: Sampler/Scheduler", + "XY Input: Seeds++ Batch", + "XY Input: Steps", + "XY Input: VAE", + "XY Plot" + ], + { + "title_aux": "Efficiency Nodes for ComfyUI Version 2.0+" + } + ], + "https://github.com/jaimitoes/ComfyUI_Wan2_1_lora_trainer": [ + [ + "MusubiCompileSettings", + "MusubiMemorySettings", + "MusubiSamplingSettings", + "WanCacheLatents", + "WanCacheTextEncoder", + "WanDatasetConfig", + "WanLoRATrainer" + ], + { + "title_aux": "ComfyUI_Wan2_1_lora_trainer" + } + ], + "https://github.com/jakechai/ComfyUI-JakeUpgrade": [ + [ + "Animation Prompt JK", + "Animation Value JK", + "Base Image Parameters Extract JK", + "Base Model Parameters Extract JK", + "Base Model Parameters JK", + "Base Model Parameters SD3API JK", + "Base Model Pipe Extract JK", + "Base Model Pipe JK", + "Bool Binary And JK", + "Bool Binary OR JK", + "CM_BoolBinaryOperation JK", + "CM_BoolToInt JK", + "CM_BoolUnaryOperation JK", + "CM_BreakoutVec2 JK", + "CM_BreakoutVec3 JK", + "CM_BreakoutVec4 JK", + "CM_ComposeVec2 JK", + "CM_ComposeVec3 JK", + "CM_ComposeVec4 JK", + "CM_FillVec2 JK", + "CM_FillVec3 JK", + "CM_FillVec4 JK", + "CM_FloatBinaryCondition JK", + "CM_FloatBinaryOperation JK", + "CM_FloatToInt JK", + "CM_FloatToNumber JK", + "CM_FloatUnaryCondition JK", + "CM_FloatUnaryOperation JK", + "CM_IntBinaryCondition JK", + "CM_IntBinaryOperation JK", + "CM_IntToBool JK", + "CM_IntToFloat JK", + "CM_IntToNumber JK", + "CM_IntUnaryCondition JK", + "CM_IntUnaryOperation JK", + "CM_NumberBinaryCondition JK", + "CM_NumberBinaryOperation JK", + "CM_NumberToFloat JK", + "CM_NumberToInt JK", + "CM_NumberUnaryCondition JK", + "CM_NumberUnaryOperation JK", + "CM_PromptCombine_JK", + "CM_StringBinaryCondition_JK", + "CM_Vec2BinaryCondition JK", + "CM_Vec2BinaryOperation JK", + "CM_Vec2FloatOperation_JK", + "CM_Vec2ToFloatBinaryOperation JK", + "CM_Vec2ToFloatUnaryOperation JK", + "CM_Vec2UnaryCondition JK", + "CM_Vec2UnaryOperation JK", + "CM_Vec3BinaryCondition JK", + "CM_Vec3BinaryOperation JK", + "CM_Vec3FloatOperation_JK", + "CM_Vec3ToFloatBinaryOperation JK", + "CM_Vec3ToFloatUnaryOperation JK", + "CM_Vec3UnaryCondition JK", + "CM_Vec3UnaryOperation JK", + "CM_Vec4BinaryCondition JK", + "CM_Vec4BinaryOperation JK", + "CM_Vec4FloatOperation_JK", + "CM_Vec4ToFloatBinaryOperation JK", + "CM_Vec4ToFloatUnaryOperation JK", + "CM_Vec4UnaryCondition JK", + "CM_Vec4UnaryOperation JK", + "CR Apply ControlNet JK", + "CR Apply LoRA Stack JK", + "CR Apply Multi-ControlNet Adv JK", + "CR Apply Multi-ControlNet JK", + "CR Aspect Ratio JK", + "CR Boolean JK", + "CR Clip Input Switch JK", + "CR Conditioning Input Switch JK", + "CR ControlNet Input Switch JK", + "CR ControlNet Loader JK", + "CR ControlNet Stack Input Switch JK", + "CR Float Input Switch JK", + "CR Guider Input Switch JK", + "CR Image Input Switch JK", + "CR Impact Pipe Input Switch JK", + "CR Int Input Switch JK", + "CR Latent Input Switch JK", + "CR LoRA Stack JK", + "CR Load LoRA JK", + "CR Mask Input Switch JK", + "CR Mesh Input Switch JK", + "CR Model Input Switch JK", + "CR Multi-ControlNet Param Stack JK", + "CR Multi-ControlNet Stack JK", + "CR Noise Input Switch JK", + "CR Orbit Pose Input Switch JK", + "CR Pipe Input Switch JK", + "CR Ply Input Switch JK", + "CR SD1.5 Aspect Ratio JK", + "CR SD3 Aspect Ratio JK", + "CR SDXL Aspect Ratio JK", + "CR Sampler Input Switch JK", + "CR Sigmas Input Switch JK", + "CR Text Input Switch JK", + "CR TriMesh Input Switch JK", + "CR VAE Input Switch JK", + "Ckpt Loader JK", + "Color Grading JK", + "Detailer Parameters JK", + "Embedding Picker JK", + "Embedding Picker Multi JK", + "Empty Latent Color JK", + "Evaluate Examples JK", + "Evaluate Floats JK", + "Evaluate Ints JK", + "Evaluate Strings JK", + "Get OrbitPoses From List JK", + "Get Size JK", + "Guidance Default JK", + "HintImageEnchance JK", + "IPAAdapterFaceIDBatch", + "IPAdapter", + "IPAdapterAdvanced", + "IPAdapterBatch", + "IPAdapterClipVisionEnhancer", + "IPAdapterClipVisionEnhancerBatch", + "IPAdapterCombineEmbeds", + "IPAdapterCombineParams", + "IPAdapterCombineWeights", + "IPAdapterEmbeds", + "IPAdapterEmbedsBatch", + "IPAdapterEncoder", + "IPAdapterFaceID", + "IPAdapterFaceIDKolors", + "IPAdapterFromParams", + "IPAdapterInsightFaceLoader", + "IPAdapterLoadEmbeds", + "IPAdapterMS", + "IPAdapterModelLoader", + "IPAdapterNoise", + "IPAdapterPreciseComposition", + "IPAdapterPreciseCompositionBatch", + "IPAdapterPreciseStyleTransfer", + "IPAdapterPreciseStyleTransferBatch", + "IPAdapterPromptScheduleFromWeightsStrategy", + "IPAdapterRegionalConditioning", + "IPAdapterSaveEmbeds", + "IPAdapterStyleComposition", + "IPAdapterStyleCompositionBatch", + "IPAdapterTiled", + "IPAdapterTiledBatch", + "IPAdapterUnifiedLoader", + "IPAdapterUnifiedLoaderCommunity", + "IPAdapterUnifiedLoaderFaceID", + "IPAdapterWeights", + "IPAdapterWeightsFromStrategy", + "Image Crop By Mask Resolution Grp JK", + "Image Crop by Mask Params JK", + "Image Crop by Mask Resolution JK", + "Image Remove Alpha JK", + "Image Resize Mode JK", + "Image Upscale Parameters Extract JK", + "Inject Noise Params JK", + "Is Mask Empty JK", + "Ksampler Parameters Default JK", + "Ksampler Parameters JK", + "Latent Crop Offset JK", + "Latent Upscale Parameters Extract JK", + "Load Image With Alpha JK", + "Load Image With Metadata JK", + "Load String List From JSON JK", + "Make Image Grid JK", + "Metadata Pipe Extract JK", + "Metadata Pipe JK", + "NodesState JK", + "Noise Injection Parameters JK", + "Noise Injection Pipe Extract JK", + "OpenDWPose_JK", + "Orbit Poses JK", + "OrbitLists to OrbitPoses JK", + "OrbitPoses to OrbitLists JK", + "Pipe End JK", + "PrepImageForClipVision", + "Project Setting JK", + "Random Beats JK", + "Refine 1 Parameters Extract JK", + "Refine 2 Parameters Extract JK", + "Refine Model Parameters JK", + "Refine Pipe Extract JK", + "Refine Pipe JK", + "Remove Input JK", + "Reroute Ckpt JK", + "Reroute List JK", + "Reroute Resize JK", + "Reroute Sampler JK", + "Reroute String JK", + "Reroute Upscale JK", + "Reroute Vae JK", + "Rough Outline JK", + "SD3 Prompts Switch JK", + "SDXL Target Res JK", + "SDXLPromptStylerAll", + "SDXLPromptStylerHorror", + "SDXLPromptStylerMisc", + "SDXLPromptStylerbyArtist", + "SDXLPromptStylerbyCamera", + "SDXLPromptStylerbyComposition", + "SDXLPromptStylerbyCyberpunkSurrealism", + "SDXLPromptStylerbyDepth", + "SDXLPromptStylerbyDiva", + "SDXLPromptStylerbyEnvironment", + "SDXLPromptStylerbyFantasySetting", + "SDXLPromptStylerbyFilter", + "SDXLPromptStylerbyFocus", + "SDXLPromptStylerbyFooocus", + "SDXLPromptStylerbyImpressionism", + "SDXLPromptStylerbyLighting", + "SDXLPromptStylerbyMarc", + "SDXLPromptStylerbyMileHigh", + "SDXLPromptStylerbyMood", + "SDXLPromptStylerbyMre", + "SDXLPromptStylerbyMythicalCreature", + "SDXLPromptStylerbyOriginal", + "SDXLPromptStylerbyQuantumRealism", + "SDXLPromptStylerbySai", + "SDXLPromptStylerbySteamPunkRealism", + "SDXLPromptStylerbySubject", + "SDXLPromptStylerbySurrealism", + "SDXLPromptStylerbyTheme", + "SDXLPromptStylerbyTimeofDay", + "SDXLPromptStylerbyTwri", + "SDXLPromptStylerbyWyvern", + "SDXLPromptbyCelticArt", + "SDXLPromptbyContemporaryNordicArt", + "SDXLPromptbyFashionArt", + "SDXLPromptbyGothicRevival", + "SDXLPromptbyIrishFolkArt", + "SDXLPromptbyRomanticNationalismArt", + "SDXLPromptbySportsArt", + "SDXLPromptbyStreetArt", + "SDXLPromptbyVikingArt", + "SDXLPromptbyWildlifeArt", + "Sampler Loader JK", + "Save Image with Metadata Flow JK", + "Save Image with Metadata JK", + "Save String List To JSON JK", + "Scale To Resolution JK", + "Split Image Grid JK", + "String To Combo JK", + "Tiling Mode JK", + "Upscale Method JK", + "Upscale Model Loader JK", + "Upscale Model Parameters Extract JK", + "Upscale Model Parameters JK", + "Vae Loader JK" + ], + { + "title_aux": "ComfyUI-JakeUpgrade" + } + ], + "https://github.com/jamal-alkharrat/ComfyUI_rotate_image": [ + [ + "RotateImage" + ], + { + "title_aux": "ComfyUI_rotate_image" + } + ], + "https://github.com/jamesWalker55/comfyui-p2ldgan": [ + [ + "P2LDGAN" + ], + { + "title_aux": "ComfyUI - P2LDGAN Node" + } + ], + "https://github.com/jamesWalker55/comfyui-various": [ + [ + "BatchLoadImage", + "BatchSaveImage", + "GroupInfoExtractFloat", + "GroupInfoExtractInt", + "GroupLoadBatchImages", + "GroupLoadImage", + "JWAudioBlend", + "JWAudioSaveToPath", + "JWDatetimeString", + "JWImageBatchCount", + "JWImageContrast", + "JWImageExtractFromBatch", + "JWImageFlip", + "JWImageLevels", + "JWImageLoadRGB", + "JWImageLoadRGBA", + "JWImageLoadRGBA From Clipboard", + "JWImageLoadRGBFromClipboard", + "JWImageLoadRGBIfExists", + "JWImageMix", + "JWImageResize", + "JWImageResizeByFactor", + "JWImageResizeByLongerSide", + "JWImageResizeByShorterSide", + "JWImageResizeToSquare", + "JWImageSaturation", + "JWImageSaveToPath", + "JWImageSequenceExtractFromBatch", + "JWImageStackChannels", + "JWInfoHashExtractFloat", + "JWInfoHashExtractInteger", + "JWInfoHashExtractString", + "JWInfoHashFromInfoHashList", + "JWInfoHashFromRangedInfo", + "JWInfoHashListExtractStringList", + "JWInfoHashListFromRangedInfo", + "JWInfoHashPrint", + "JWLoadAudio", + "JWLoadImageSequence", + "JWLoadImagesFromString", + "JWLoopImageSequence", + "JWMaskLikeImageSize", + "JWMaskResize", + "JWMaskSequenceApplyToLatent", + "JWMaskSequenceFromMask", + "JWMaskSequenceJoin", + "JWPrintFloat", + "JWPrintImage", + "JWPrintInteger", + "JWPrintLatent", + "JWPrintMask", + "JWPrintString", + "JWRangedInfoCalculateSubBatch", + "JWReferenceOnly", + "JWSaveImageSequence", + "JWStringListCLIPEncode", + "JWStringListFromString", + "JWStringListFromStrings", + "JWStringListJoin", + "JWStringListRepeat", + "JWStringListToFormatedString", + "JWStringListToString", + "JWUncropCrop", + "JWUncropNewRect", + "JWUncropUncrop", + "JamesLoadImageGroup", + "RAFTEstimate", + "RAFTFlowToImage", + "RAFTLoadFlowFromEXRChannels", + "RCReceiveFloat", + "RCReceiveFloatList", + "RCReceiveInt", + "RCReceiveIntList", + "RCReceiveLatent", + "RCSendLatent" + ], + { + "nodename_pattern": "^JW", + "title_aux": "Various ComfyUI Nodes by Type" + } + ], + "https://github.com/jammyfu/ComfyUI_PaintingCoderUtils": [ + [ + "PaintingCoder::DynamicImageCombiner", + "PaintingCoder::DynamicMaskCombiner", + "PaintingCoder::ImageLatentCreator", + "PaintingCoder::ImageLatentCreatorPlus", + "PaintingCoder::ImageResolutionAdjuster", + "PaintingCoder::ImageSizeCreator", + "PaintingCoder::ImageSizeCreatorPlus", + "PaintingCoder::ImageSwitch", + "PaintingCoder::ImageToBase64", + "PaintingCoder::LatentSwitch", + "PaintingCoder::MaskPreview", + "PaintingCoder::MaskSwitch", + "PaintingCoder::MultilineTextInput", + "PaintingCoder::OutputToTextConverter", + "PaintingCoder::RemoveEmptyLinesAndLeadingSpaces", + "PaintingCoder::ShowTextPlus", + "PaintingCoder::SimpleTextInput", + "PaintingCoder::TextCombiner", + "PaintingCoder::TextSwitch", + "PaintingCoder::WebImageLoader" + ], + { + "title_aux": "Painting Coder Utils" + } + ], + "https://github.com/jasonjgardner/comfui-substance-designer-integration": [ + [ + "SubstanceBatchProcessor", + "SubstanceCooker", + "SubstanceInfoExtractor", + "SubstanceParameterController", + "SubstanceRenderer" + ], + { + "title_aux": "ComfyUI Substance Designer Integration Plugin" + } + ], + "https://github.com/jax-explorer/ComfyUI-InstantCharacter": [ + [ + "InstantCharacterGenerate", + "InstantCharacterLoadModel", + "InstantCharacterLoadModelFromLocal" + ], + { + "title_aux": "ComfyUI-InstantCharacter" + } + ], + "https://github.com/jax-explorer/ComfyUI-VideoBasic": [ + [ + "VideoBasicLoadVideo", + "VideoBasicMergeVideo", + "VideoBasicVideoSave", + "VideoBasicVideoUpscaleWithModel" + ], + { + "title_aux": "ComfyUI-VideoBasic" + } + ], + "https://github.com/jax-explorer/ComfyUI-VideoBasicLatentSync": [ + [ + "VideoBasicLatentSyncLengthAdjuster", + "VideoBasicLatentSyncNode" + ], + { + "title_aux": "ComfyUI-VideoBasicLatentSync" + } + ], + "https://github.com/jax-explorer/ComfyUI-easycontrol": [ + [ + "EasyControlGenerate", + "EasyControlLoadFlux", + "EasyControlLoadLora", + "EasyControlLoadMultiLora", + "EasyControlLoadStyleLora", + "EasyControlLoadStyleLoraFromCivitai" + ], + { + "title_aux": "ComfyUI-easycontrol" + } + ], + "https://github.com/jax-explorer/comfyui-model-dynamic-loader": [ + [ + "ComfyOnlineSaveFile", + "ComfyOnlineUploadAnything", + "EmbeddingLoader", + "LoadCheckpointFromCivitAI", + "LoadHunyuanLoraFromCivitAI", + "LoadHunyuanLoraFromComfyOnline", + "LoadHunyuanLoraFromHF", + "LoadImageFromURL", + "LoadLoraFromCivitAI", + "LoadLoraFromComfyOnline", + "LoadLoraFromHF", + "LoadLoraFromHFWithToken", + "LoadWanVideoLoraFromCivitAI", + "LoadWanVideoLoraFromComfyOnline", + "LoadWanVideoLoraFromHF", + "SaveAudioAsWav", + "SaveText" + ], + { + "title_aux": "comfyui-model-dynamic-loader" + } + ], + "https://github.com/jax-explorer/fast_video_comfyui": [ + [ + "FastImageListToImageBatch" + ], + { + "title_aux": "fast_video_comfyui" + } + ], + "https://github.com/jeffrey2212/ComfyUI-PonyCharacterPrompt": [ + [ + "Pony Character Prompt Picker" + ], + { + "title_aux": "Pony Character Prompt Picker for ComfyUI" + } + ], + "https://github.com/jeffy5/comfyui-faceless-node": [ + [ + "FacelessFaceRestore", + "FacelessFaceSwap", + "FacelessLoadImageUrl", + "FacelessLoadVideo", + "FacelessLoadVideoImages", + "FacelessLoadVideoUrl", + "FacelessMergeVideos", + "FacelessRemoveBackground", + "FacelessSaveVideo", + "FacelessUploadVideo", + "FacelessVideoFaceRestore", + "FacelessVideoFaceSwap", + "FacelessVideoRemoveBackground" + ], + { + "title_aux": "Faceless Node for ComfyUI" + } + ], + "https://github.com/jerrylongyan/ComfyUI-My-Mask": [ + [ + "MaskToBottonHalfConvexMask", + "MaskToConvexMask" + ], + { + "title_aux": "ComfyUI-My-Mask" + } + ], + "https://github.com/jerrywap/ComfyUI_LoadImageFromHttpURL": [ + [ + "LoadImageFromHttpURL" + ], + { + "title_aux": "ComfyUI_LoadImageFromHttpURL" + } + ], + "https://github.com/jerrywap/ComfyUI_UploadToWebhookHTTP": [ + [ + "UploadToWebHookHTTP" + ], + { + "title_aux": "ComfyUI_UploadToWebhookHTTP" + } + ], + "https://github.com/jesenzhang/ComfyUI_StreamDiffusion": [ + [ + "StreamDiffusion_Loader", + "StreamDiffusion_Sampler" + ], + { + "title_aux": "ComfyUI_StreamDiffusion" + } + ], + "https://github.com/jhj0517/ComfyUI-Moondream-Gaze-Detection": [ + [ + "(Down)Load Moondream Model", + "Gaze Detection", + "Gaze Detection Video" + ], + { + "title_aux": "ComfyUI-Moondream-Gaze-Detection" + } + ], + "https://github.com/jhj0517/ComfyUI-jhj-Kokoro-Onnx": [ + [ + "(Down)Load Kokoro Model", + "Kokoro Audio Generator" + ], + { + "title_aux": "ComfyUI jhj Kokoro Onnx" + } + ], + "https://github.com/jiaqianjing/ComfyUI-MidjourneyHub": [ + [ + "GPTImageEditNode", + "GPTImageGenerateNode", + "MidjourneyActionNode", + "MidjourneyBatchActionNode", + "MidjourneyBlendNode", + "MidjourneyImagineNode" + ], + { + "title_aux": "ComfyUI-MidjourneyHub" + } + ], + "https://github.com/jiaxiangc/ComfyUI-ResAdapter": [ + [ + "ResAdapterLoader" + ], + { + "title_aux": "ResAdapter for ComfyUI" + } + ], + "https://github.com/jinanlongen/ComfyUI-Prompt-Expander": [ + [ + "PromptExpanderNode" + ], + { + "title_aux": "ComfyUI Prompt Expander Node" + } + ], + "https://github.com/jinchanz/ComfyUI-ADIC": [ + [ + "ADIC_COMMON_API", + "AliCloudOSSUpload", + "ImageTranslateAPI", + "ImageTranslateParamsBuilder", + "ImageTranslateResultExtractor", + "LoadImagesFromUrls", + "MaletteFluxKontextImageScale", + "MaletteImageConcatFromBatch", + "MaletteImageStitch", + "MaletteReferenceLatent", + "MarketImageGenerateWithPolling", + "PythonCodeExecutor", + "StringToJsonArray" + ], + { + "title_aux": "ComfyUI-ADIC" + } + ], + "https://github.com/jitcoder/lora-info": [ + [ + "ImageFromURL", + "LoraInfo" + ], + { + "title_aux": "LoraInfo" + } + ], + "https://github.com/jjkramhoeft/ComfyUI-Jjk-Nodes": [ + [ + "JjkConcat", + "JjkShowText", + "JjkText", + "SDXLRecommendedImageSize" + ], + { + "title_aux": "ComfyUI-Jjk-Nodes" + } + ], + "https://github.com/jkrauss82/ultools-comfyui": [ + [ + "CLIPTextEncodeWithStats", + "OpenPoseEditorAdv", + "SaveImgAdv", + "SolidMaskAdv" + ], + { + "title_aux": "ULTools for ComfyUI" + } + ], + "https://github.com/jn-jairo/jn_comfyui": [ + [ + "JN_AreaAround", + "JN_AreaInfo", + "JN_AreaNormalize", + "JN_AreaToMask", + "JN_AreaWidthHeight", + "JN_AreaXY", + "JN_AudioArrayToBatch", + "JN_AudioAutoTune", + "JN_AudioBatchToArray", + "JN_AudioCompare", + "JN_AudioConcatenation", + "JN_AudioGetChannels", + "JN_AudioInfo", + "JN_AudioNoiseReduction", + "JN_AudioNormalize", + "JN_AudioPitch", + "JN_AudioPlot", + "JN_AudioReverberation", + "JN_AudioSampleRate", + "JN_AudioSetChannels", + "JN_AudioSlice", + "JN_AudioSpeed", + "JN_AudioSplitChannels", + "JN_AudioStackChannels", + "JN_AudioTempo", + "JN_AudioTrimSilence", + "JN_AudioVolume", + "JN_Blip", + "JN_BlipLoader", + "JN_BooleanOperation", + "JN_Condition", + "JN_CoolDown", + "JN_CoolDownOutput", + "JN_DatetimeFormat", + "JN_DatetimeInfo", + "JN_DatetimeNow", + "JN_Dump", + "JN_DumpOutput", + "JN_Exec", + "JN_ExecOutput", + "JN_FaceCrop", + "JN_FaceRestoreModelLoader", + "JN_FaceRestoreWithModel", + "JN_FirstActive", + "JN_Flow", + "JN_FlowOutput", + "JN_ImageAddBackground", + "JN_ImageAddMask", + "JN_ImageBatch", + "JN_ImageCenterArea", + "JN_ImageCrop", + "JN_ImageGrid", + "JN_ImageInfo", + "JN_ImageRemoveBackground", + "JN_ImageSharpness", + "JN_ImageSquare", + "JN_ImageToMask", + "JN_ImageUncrop", + "JN_KSampler", + "JN_KSamplerAdvancedParams", + "JN_KSamplerFaceRestoreParams", + "JN_KSamplerResizeInputParams", + "JN_KSamplerResizeMaskAreaParams", + "JN_KSamplerResizeOutputParams", + "JN_KSamplerSeamlessParams", + "JN_KSamplerTileParams", + "JN_KeyValue", + "JN_LoadAudioDirectory", + "JN_LoadImageDirectory", + "JN_LogicOperation", + "JN_MaskBatch", + "JN_MaskInfo", + "JN_MaskToArea", + "JN_MaskToImage", + "JN_MathOperation", + "JN_MathOperationArray", + "JN_MeowHrtfAudio3d", + "JN_MeowHrtfModel", + "JN_MeowHrtfPosition", + "JN_MeowLoadVoice", + "JN_MeowSaveVoice", + "JN_MeowSentenceSplit", + "JN_MeowTts", + "JN_MeowTtsAudioToContext", + "JN_MeowTtsCoarse", + "JN_MeowTtsDecode", + "JN_MeowTtsFine", + "JN_MeowTtsLoadContext", + "JN_MeowTtsModel", + "JN_MeowTtsModelCoarse", + "JN_MeowTtsModelEncodec", + "JN_MeowTtsModelFine", + "JN_MeowTtsModelHubert", + "JN_MeowTtsModelSemantic", + "JN_MeowTtsSaveContext", + "JN_MeowTtsSemantic", + "JN_MeowTtsTokenizerHubert", + "JN_MeowVc", + "JN_MeowVcConvertVoice", + "JN_MeowVcEncodeSource", + "JN_MeowVcEncodeTarget", + "JN_MeowVcLoadSpeaker", + "JN_MeowVcModelFreeVC", + "JN_MeowVcModelWavLM", + "JN_MeowVcSaveSpeaker", + "JN_PreviewAudio", + "JN_PreviewImage", + "JN_PreviewMask", + "JN_PrimitiveArrayInfo", + "JN_PrimitiveBatchToArray", + "JN_PrimitiveBoolean", + "JN_PrimitiveFloat", + "JN_PrimitiveInt", + "JN_PrimitivePrompt", + "JN_PrimitiveString", + "JN_PrimitiveStringMultiline", + "JN_PrimitiveStringToArray", + "JN_PrimitiveToArray", + "JN_PrimitiveToBoolean", + "JN_PrimitiveToFloat", + "JN_PrimitiveToInt", + "JN_PrimitiveToString", + "JN_RemBGSession", + "JN_SaveAudio", + "JN_SaveImage", + "JN_Seamless", + "JN_SeamlessBorder", + "JN_SeamlessBorderCrop", + "JN_SelectItem", + "JN_Sleep", + "JN_SleepOutput", + "JN_SliceOperation", + "JN_StopIf", + "JN_StopIfOutput", + "JN_TensorInfo", + "JN_TextConcatenation", + "JN_TextReplace", + "JN_TimedeltaFormat", + "JN_TimedeltaInfo" + ], + { + "title_aux": "JNComfy" + } + ], + "https://github.com/jnxmx/ComfyUI_HuggingFace_Downloader": [ + [ + "Hugging Face Download Folder", + "Hugging Face Download Model" + ], + { + "title_aux": "ComfyUI_HuggingFace_Downloader" + } + ], + "https://github.com/joeriben/ai4artsed_comfyui_nodes": [ + [ + "ai4artsed_conditioning_fusion", + "ai4artsed_image_analysis", + "ai4artsed_openrouter_key", + "ai4artsed_prompt_interception", + "ai4artsed_random_artform_generator", + "ai4artsed_random_instruction_generator", + "ai4artsed_random_language_selector", + "ai4artsed_stabilitai_key", + "ai4artsed_switch_promptsafety", + "ai4artsed_t5_clip_fusion", + "ai4artsed_text_remix", + "ai4artsed_vector_dimension_eliminator" + ], + { + "title_aux": "AI4ArtsEd Nodes" + } + ], + "https://github.com/john-mnz/ComfyUI-Inspyrenet-Rembg": [ + [ + "InspyrenetRembg", + "InspyrenetRembgAdvanced" + ], + { + "title_aux": "ComfyUI-Inspyrenet-Rembg" + } + ], + "https://github.com/jojkaart/ComfyUI-sampler-lcm-alternative": [ + [ + "LCMScheduler", + "SamplerLCMAlternative", + "SamplerLCMCycle", + "SamplerLCMDualNoise", + "SamplerLCMDuoFusion", + "SamplerLCMParallel" + ], + { + "title_aux": "ComfyUI-sampler-lcm-alternative" + } + ], + "https://github.com/jordoh/ComfyUI-Deepface": [ + [ + "DeepfaceAnalyze", + "DeepfaceExtractFaces", + "DeepfaceVerify" + ], + { + "title_aux": "ComfyUI Deepface" + } + ], + "https://github.com/joreyaesh/comfyui_scroll_over_textarea": [ + [ + "ScrollOverTextareaDummyNode" + ], + { + "title_aux": "ComfyUI Scroll Over Textarea" + } + ], + "https://github.com/joreyaesh/comfyui_touchpad_scroll_controller.enableTouchpadScroll": [ + [ + "TouchpadScrollControllerDummyNode" + ], + { + "title_aux": "ComfyUI Touchpad Scroll Controller" + } + ], + "https://github.com/jqy-yo/Comfyui-BBoxLowerMask2": [ + [ + "BBoxLowerMask2" + ], + { + "title_aux": "BBoxLowerMask2" + } + ], + "https://github.com/jroc22/ComfyUI-CSV-prompt-builder": [ + [ + "BuildPromptFromCSV" + ], + { + "title_aux": "ComfyUI-CSV-prompt-builder" + } + ], + "https://github.com/jstit/comfyui_custom_node_image": [ + [ + "ImageCropCircle" + ], + { + "title_aux": "comfyui_custom_node_image" + } + ], + "https://github.com/jtrue/ComfyUI-JaRue": [ + [ + "Text2Image_jru", + "YouTube2Prompt_jru" + ], + { + "nodename_pattern": "_jru$", + "title_aux": "ComfyUI-JaRue" + } + ], + "https://github.com/jtydhr88/ComfyUI-Hunyuan3D-1-wrapper": [ + [ + "Hunyuan3D V1 - Image Loader", + "Hunyuan3D V1 - Image2Views", + "Hunyuan3D V1 - Image2Views Pipeline Load", + "Hunyuan3D V1 - Text2Image", + "Hunyuan3D V1 - Text2Image Pipeline Load", + "Hunyuan3D V1 - Views2Mesh", + "Hunyuan3D V1 - Views2Mesh Pipeline Load" + ], + { + "title_aux": "ComfyUI-Hunyuan3D-1-wrapper" + } + ], + "https://github.com/jtydhr88/ComfyUI-LayerDivider": [ + [ + "LayerDivider - Color Base", + "LayerDivider - Divide Layer", + "LayerDivider - Load SAM Mask Generator", + "LayerDivider - Segment Mask" + ], + { + "title_aux": "ComfyUI LayerDivider" + } + ], + "https://github.com/judian17/ComfyUI-Extract_Flux_Lora": [ + [ + "ExtractFluxLoRA" + ], + { + "title_aux": "ComfyUI-Extract_Flux_Lora" + } + ], + "https://github.com/judian17/ComfyUI-UniWorld-jd17": [ + [ + "UniWorldEncoderNode", + "UniWorldScheduler", + "UniWorldSiglipEncoder", + "UniWorld_T5_CLIP_Encoder" + ], + { + "title_aux": "ComfyUI-UniWorld-jd17" + } + ], + "https://github.com/judian17/ComfyUI-joycaption-beta-one-GGUF": [ + [ + "JJC_JoyCaption_Custom_GGUF", + "JJC_JoyCaption_GGUF", + "JJC_JoyCaption_GGUF_ExtraOptions" + ], + { + "title_aux": "ComfyUI JoyCaption-Beta-GGUF Node" + } + ], + "https://github.com/judian17/ComfyUI_ZIM": [ + [ + "MaskToBbox_ZIM", + "MaskToPoints_ZIM", + "ZimSegment" + ], + { + "title_aux": "ComfyUI_ZIM" + } + ], + "https://github.com/juehackr/comfyui_fk_server": [ + [ + "FK_3dpose", + "FK_Node", + "FK_ShowBaseNode" + ], + { + "title_aux": "comfyui_fk_server" + } + ], + "https://github.com/jurdnf/ComfyUI-JurdnsIterativeNoiseKSampler": [ + [ + "KSamplerIterativeNoise" + ], + { + "title_aux": "ComfyUI-JurdnsIterativeNoiseKsampler" + } + ], + "https://github.com/jurdnf/ComfyUI-JurdnsModelSculptor": [ + [ + "ModelSculptorFlux", + "ModelSculptorSD3", + "ModelSculptorSDXL" + ], + { + "title_aux": "ComfyUI-JurdnsModelSculptor" + } + ], + "https://github.com/jurdnisglobby/ComfyUI-Jurdns-Groq-Node": [ + [ + "JurdnsGroqAPIPromptEnhancer" + ], + { + "title_aux": "Jurdns Groq API Node" + } + ], + "https://github.com/justUmen/Bjornulf_custom_nodes": [ + [ + "Bjornulf_APIGenerateCivitAI", + "Bjornulf_APIGenerateCivitAIAddLORA", + "Bjornulf_APIGenerateFalAI", + "Bjornulf_APIGenerateFlux", + "Bjornulf_APIGenerateGPT4o", + "Bjornulf_APIGenerateStability", + "Bjornulf_AddLineNumbers", + "Bjornulf_AllLoraSelector", + "Bjornulf_AnythingToFloat", + "Bjornulf_AnythingToInt", + "Bjornulf_AnythingToText", + "Bjornulf_ApiDynamicTextInputs", + "Bjornulf_AudioPreview", + "Bjornulf_AudioVideoSync", + "Bjornulf_BoundingRectangleMask", + "Bjornulf_BoundingRectangleMaskBlur", + "Bjornulf_CharacterDescriptionGenerator", + "Bjornulf_CivitAILoraSelector", + "Bjornulf_CivitAILoraSelectorHunyuan", + "Bjornulf_CivitAILoraSelectorPONY", + "Bjornulf_CivitAILoraSelectorSD15", + "Bjornulf_CivitAILoraSelectorSDXL", + "Bjornulf_CivitAIModelSelectorFLUX_D", + "Bjornulf_CivitAIModelSelectorFLUX_S", + "Bjornulf_CivitAIModelSelectorPony", + "Bjornulf_CivitAIModelSelectorSD15", + "Bjornulf_CivitAIModelSelectorSDXL", + "Bjornulf_CombineBackgroundOverlay", + "Bjornulf_CombineImages", + "Bjornulf_CombineTexts", + "Bjornulf_CombineTextsByLines", + "Bjornulf_CombineVideoAudio", + "Bjornulf_ConcatVideos", + "Bjornulf_ConcatVideosFromList", + "Bjornulf_ConditionalSwitch", + "Bjornulf_ConvertVideo", + "Bjornulf_DisplayNote", + "Bjornulf_EmptyVideoLatentWithSingle", + "Bjornulf_ExecuteWorkflowNode", + "Bjornulf_FFmpegConfig", + "Bjornulf_FaceSettings", + "Bjornulf_FixFace", + "Bjornulf_FourImageViewer", + "Bjornulf_FreeVRAM", + "Bjornulf_GlobalSeedManager", + "Bjornulf_GrayscaleTransform", + "Bjornulf_GreenScreenToTransparency", + "Bjornulf_HiResFix", + "Bjornulf_HorizontalCutAndShift", + "Bjornulf_HuggingFaceDownloader", + "Bjornulf_IfElse", + "Bjornulf_ImageBlend", + "Bjornulf_ImageDetails", + "Bjornulf_ImageMaskCutter", + "Bjornulf_ImageNote", + "Bjornulf_ImageNoteLoadImage", + "Bjornulf_ImageUpscaleWithModelTransparency", + "Bjornulf_ImagesListToVideo", + "Bjornulf_JSONImagePromptExtractor", + "Bjornulf_KokoroTTS", + "Bjornulf_LargestMaskOnly", + "Bjornulf_LatentResolutionSelector", + "Bjornulf_LineSelector", + "Bjornulf_ListLooper", + "Bjornulf_ListLooperCharacter", + "Bjornulf_ListLooperOutfitFemale", + "Bjornulf_ListLooperOutfitMale", + "Bjornulf_ListLooperScene", + "Bjornulf_ListLooperStyle", + "Bjornulf_ListSelector", + "Bjornulf_LoadCivitAILinks", + "Bjornulf_LoadFromBase64", + "Bjornulf_LoadGlobalVariables", + "Bjornulf_LoadImageWithTransparency", + "Bjornulf_LoadImageWithTransparencyFromPath", + "Bjornulf_LoadImagesFromSelectedFolder", + "Bjornulf_LoadTensor", + "Bjornulf_LoadTextFromFolder", + "Bjornulf_LoadTextFromPath", + "Bjornulf_LoadTextPickMeGlobal", + "Bjornulf_LoaderLoraWithPath", + "Bjornulf_LoopAllLines", + "Bjornulf_LoopBasicBatch", + "Bjornulf_LoopCombosSamplersSchedulers", + "Bjornulf_LoopFloat", + "Bjornulf_LoopImages", + "Bjornulf_LoopInteger", + "Bjornulf_LoopIntegerSequential", + "Bjornulf_LoopLinesSequential", + "Bjornulf_LoopLoraSelector", + "Bjornulf_LoopModelClipVae", + "Bjornulf_LoopModelSelector", + "Bjornulf_LoopRandomSeed", + "Bjornulf_LoopSamplers", + "Bjornulf_LoopSchedulers", + "Bjornulf_LoopTexts", + "Bjornulf_LoopWriteText", + "Bjornulf_LoraSelectorHunyuan", + "Bjornulf_LoraSelectorWanVideo", + "Bjornulf_MatchTextToInput", + "Bjornulf_MathNode", + "Bjornulf_MergeImagesHorizontally", + "Bjornulf_MergeImagesVertically", + "Bjornulf_ModelClipVaeSelector", + "Bjornulf_MultiOpenAIVisionNode", + "Bjornulf_OllamaConfig", + "Bjornulf_OllamaImageVision", + "Bjornulf_OllamaSystemJobSelector", + "Bjornulf_OllamaSystemPersonaSelector", + "Bjornulf_OllamaTalk", + "Bjornulf_OllamaVisionPromptSelector", + "Bjornulf_OpenAIVisionNode", + "Bjornulf_PassPreviewImage", + "Bjornulf_PauseResume", + "Bjornulf_PickInput", + "Bjornulf_PickMe", + "Bjornulf_PlayAudio", + "Bjornulf_PreviewFirstImage", + "Bjornulf_PurgeCLIPNode", + "Bjornulf_RandomFloatNode", + "Bjornulf_RandomImage", + "Bjornulf_RandomIntNode", + "Bjornulf_RandomLineFromInput", + "Bjornulf_RandomLoraSelector", + "Bjornulf_RandomModelClipVae", + "Bjornulf_RandomModelSelector", + "Bjornulf_RandomTexts", + "Bjornulf_ReassembleImageGrid", + "Bjornulf_RemoteTextEncodingWithCLIPs", + "Bjornulf_RemoteVAEDecoderNode", + "Bjornulf_RemoteVAEDecoderNodeTiled", + "Bjornulf_RemoveTransparency", + "Bjornulf_ResizeImage", + "Bjornulf_ResizeImagePercentage", + "Bjornulf_SaveBjornulfLobeChat", + "Bjornulf_SaveGlobalVariables", + "Bjornulf_SaveImagePath", + "Bjornulf_SaveImageToFolder", + "Bjornulf_SaveTensors", + "Bjornulf_SaveText", + "Bjornulf_SaveTmpAudio", + "Bjornulf_SaveTmpImage", + "Bjornulf_SaveTmpVideo", + "Bjornulf_ScramblerCharacter", + "Bjornulf_SelectImageFromList", + "Bjornulf_ShowFloat", + "Bjornulf_ShowInt", + "Bjornulf_ShowJson", + "Bjornulf_ShowStringText", + "Bjornulf_ShowText", + "Bjornulf_SpeechToText", + "Bjornulf_SplitImageGrid", + "Bjornulf_StyleSelector", + "Bjornulf_SwitchAnything", + "Bjornulf_SwitchText", + "Bjornulf_TextAnalyzer", + "Bjornulf_TextGenerator", + "Bjornulf_TextGeneratorCharacterCreature", + "Bjornulf_TextGeneratorCharacterFemale", + "Bjornulf_TextGeneratorCharacterMale", + "Bjornulf_TextGeneratorCharacterObject", + "Bjornulf_TextGeneratorCharacterPose", + "Bjornulf_TextGeneratorOutfitFemale", + "Bjornulf_TextGeneratorOutfitMale", + "Bjornulf_TextGeneratorScene", + "Bjornulf_TextGeneratorStyle", + "Bjornulf_TextGeneratorText2Video", + "Bjornulf_TextReplace", + "Bjornulf_TextSplitin10", + "Bjornulf_TextSplitin5", + "Bjornulf_TextToAnything", + "Bjornulf_TextToSpeech", + "Bjornulf_TextToStringAndSeed", + "Bjornulf_TextToVariable", + "Bjornulf_ToDoList", + "Bjornulf_VideoDetails", + "Bjornulf_VideoLatentResolutionSelector", + "Bjornulf_VideoPingPong", + "Bjornulf_VideoPreview", + "Bjornulf_VideoTextGenerator", + "Bjornulf_VideoToImagesList", + "Bjornulf_WriteText", + "Bjornulf_WriteTextAdvanced", + "Bjornulf_WriteTextPickMe", + "Bjornulf_WriteTextPickMeChain", + "Bjornulf_WriteTextPickMeGlobal", + "Bjornulf_XTTSConfig", + "Bjornulf_imagesToVideo", + "Bjornulf_loadImageBase64Transparency", + "Bjornulf_ollamaLoader" + ], + { + "title_aux": "Bjornulf_custom_nodes" + } + ], + "https://github.com/justin-vt/ComfyUI-brushstrokes": [ + [ + "OpenCVBrushStrokesNode", + "PILBrushStrokesNode", + "WandBrushStrokesNode" + ], + { + "title_aux": "ComfyUI-brushstrokes" + } + ], + "https://github.com/k-komarov/comfyui-bunny-cdn-storage": [ + [ + "Save Image to BunnyStorage" + ], + { + "title_aux": "comfyui-bunny-cdn-storage" + } + ], + "https://github.com/ka-puna/comfyui-yanc": [ + [ + "YANC.ConcatStrings", + "YANC.FormatDatetimeString", + "YANC.GetWidgetValueString", + "YANC.IntegerCaster", + "YANC.MultilineString", + "YANC.SaveImageWEBP", + "YANC.TruncateString" + ], + { + "title_aux": "comfyui-yanc" + } + ], + "https://github.com/kaanyalova/ComfyUI_ExtendedImageFormats": [ + [ + "DDSSaveImage", + "ExtendedSaveImage" + ], + { + "title_aux": "Extended Image Formats for ComfyUI" + } + ], + "https://github.com/kaaskoek232/ComfyUI-MemoryManagement": [ + [ + "AutoMemoryCleanup", + "MemoryCleanup", + "MemoryLeakDetector", + "MemoryMonitor", + "SmartMemoryManager", + "VRAMOptimizer", + "VRAMUnload" + ], + { + "title_aux": "ComfyUI-MemoryManagement" + } + ], + "https://github.com/kadirnar/ComfyUI-Transformers": [ + [ + "DepthEstimationInference", + "ImageClassificationPipeline", + "ImageSegmentationPipeline", + "LoadDepthModel", + "ObjectDetectionPipeline" + ], + { + "title_aux": "ComfyUI-Transformers" + } + ], + "https://github.com/kadirnar/ComfyUI-YOLO": [ + [ + "BBoxToCoco", + "BBoxToXYWH", + "BBoxVisNode", + "CocoToNumber", + "ConvertToDict", + "CustomUltralyticsModelLoader", + "GetImageSize", + "ImageResizeAdvanced", + "UltralyticsInference", + "UltralyticsModelLoader", + "UltralyticsVisualization", + "ViewText" + ], + { + "title_aux": "ComfyUI-YOLO" + } + ], + "https://github.com/kael558/ComfyUI-GGUF-FantasyTalking": [ + [ + "CLIPLoaderGGUF", + "DownloadAndLoadWav2VecModel", + "FantasyTalkingModelLoader", + "FantasyTalkingWav2VecEmbeds", + "LoadWanVideoT5TextEncoderGGUF", + "ReCamMasterPoseVisualizer", + "UnetLoaderGGUF", + "UnetLoaderGGUF_LowVRAM", + "WanVideoATITracks", + "WanVideoATITracksVisualize", + "WanVideoATI_comfy", + "WanVideoControlnet", + "WanVideoControlnetLoader", + "WanVideoDiffusionForcingSampler", + "WanVideoFunCameraEmbeds", + "WanVideoReCamMasterCameraEmbed", + "WanVideoReCamMasterDefaultCamera", + "WanVideoReCamMasterGenerateOrbitCamera", + "WanVideoUni3C_ControlnetLoader", + "WanVideoUni3C_embeds", + "WanVideoUniAnimateDWPoseDetector", + "WanVideoUniAnimatePoseInput" + ], + { + "title_aux": "ComfyUI-GGUF-FantasyTalking" + } + ], + "https://github.com/kaibioinfo/ComfyUI_AdvancedRefluxControl": [ + [ + "ReduxAdvanced", + "StyleModelApplySimple" + ], + { + "title_aux": "Advanced Reflux control" + } + ], + "https://github.com/kaipard/comfyui-auto-latent-size": [ + [ + "AutoAspectLatent" + ], + { + "title_aux": "Auto Aspect Latent Generator" + } + ], + "https://github.com/kale4eat/ComfyUI-path-util": [ + [ + "path_util_PathAbspath", + "path_util_PathBasename", + "path_util_PathDirname", + "path_util_PathExists", + "path_util_PathIsdir", + "path_util_PathIsfile", + "path_util_PathJoin", + "path_util_PathRelpath", + "path_util_PathSplitext" + ], + { + "title_aux": "ComfyUI_demucus" + } + ], + "https://github.com/kale4eat/ComfyUI-speech-dataset-toolkit": [ + [ + "SDT_AudioProperty", + "SDT_BSRoFormerApply", + "SDT_BSRoFormerLoader", + "SDT_ConcatAudio", + "SDT_CutAudio", + "SDT_DemucsApply", + "SDT_DemucsLoader", + "SDT_FasterWhisperListSegments", + "SDT_FasterWhisperLoader", + "SDT_FasterWhisperSegmentProperty", + "SDT_FasterWhisperTextFromSegments", + "SDT_FasterWhisperTranscribe", + "SDT_GriffinLim", + "SDT_HighpassBiquad", + "SDT_JoinAudio", + "SDT_KotobaWhisperListSegments", + "SDT_KotobaWhisperLoaderLong", + "SDT_KotobaWhisperLoaderShort", + "SDT_KotobaWhisperSegmentProperty", + "SDT_KotobaWhisperTranscribeLong", + "SDT_KotobaWhisperTranscribeShort", + "SDT_LFCC", + "SDT_LoadAudio", + "SDT_LoadAudios", + "SDT_LowpassBiquad", + "SDT_MFCC", + "SDT_MakeSilenceAudio", + "SDT_MelBandRoformerLoader", + "SDT_MelSpectrogram", + "SDT_NemoAsrLoader", + "SDT_NemoAsrTranscribe", + "SDT_NueAsrLoader", + "SDT_NueAsrTranscribe", + "SDT_PlotMelFilterBank", + "SDT_PlotPitch", + "SDT_PlotSpecgram", + "SDT_PlotSpectrogram", + "SDT_PlotWaveForm", + "SDT_ResampleAudio", + "SDT_SaveAudio", + "SDT_SilenceAudio", + "SDT_SileroVADApply", + "SDT_SileroVADCollectChunks", + "SDT_SileroVADListTimestamps", + "SDT_SileroVADLoader", + "SDT_SileroVADTimestampProperty", + "SDT_Spectrogram", + "SDT_SpeechMOSLoader", + "SDT_SpeechMOSScore", + "SDT_SplitAudio", + "SDT_TrimAudio", + "SDT_TrimAudioBySample" + ], + { + "title_aux": "ComfyUI-speech-dataset-toolkit" + } + ], + "https://github.com/kale4eat/ComfyUI-string-util": [ + [ + "string_util_Str", + "string_util_StrConcat", + "string_util_StrCount", + "string_util_StrEndsWith", + "string_util_StrEqual", + "string_util_StrFind", + "string_util_StrFormat", + "string_util_StrJoin", + "string_util_StrLen", + "string_util_StrLower", + "string_util_StrLstrip", + "string_util_StrNotEqual", + "string_util_StrReplace", + "string_util_StrRstrip", + "string_util_StrSlice", + "string_util_StrSplit", + "string_util_StrStartsWith", + "string_util_StrStrip", + "string_util_StrUpper" + ], + { + "title_aux": "ComfyUI-string-util" + } + ], + "https://github.com/kale4eat/ComfyUI-text-file-util": [ + [ + "text_file_util_ReadAllLines", + "text_file_util_ReadAllText", + "text_file_util_WriteText", + "text_file_util_WriteTextLines", + "text_file_util_WriteTextWithSequentialNumbering" + ], + { + "title_aux": "ComfyUI-text-file-util" + } + ], + "https://github.com/kambara/ComfyUI-PromptPalette": [ + [ + "PromptPalette" + ], + { + "title_aux": "ComfyUI-PromptPalette" + } + ], + "https://github.com/kantsche/ComfyUI-MixMod": [ + [ + "MixModBandFFTGuiderNode", + "MixModDepthGuiderNode", + "MixModDynamicMaskAlternativeGuiderNode", + "MixModDynamicMaskGuiderNode", + "MixModFFTGuiderNode", + "MixModGuiderComponentNode", + "MixModGuiderComponentPipelineNode", + "MixModGuiderNode", + "MixModHighResGuiderNode", + "MixModOptionsMaskNode", + "MixModOptionsScaleNode", + "MixModOptionsSchedulerNode", + "MixModPipelineNode" + ], + { + "author": "Kantsche", + "description": "Model Mixture Guider", + "nickname": "MixMod", + "title": "ComfyUI-MixMod", + "title_aux": "ComfyUI-MixMod" + } + ], + "https://github.com/kappa54m/ComfyUI_Usability": [ + [ + "KLoadImageByPath", + "KLoadImageByPathAdvanced", + "KLoadImageDedup" + ], + { + "title_aux": "ComfyUI Usability" + } + ], + "https://github.com/karthikg-09/ComfyUI-Vton-Mask": [ + [ + "ComfyUIVtonMaskGenerator", + "ComfyUIVtonMaskLoader" + ], + { + "title_aux": "ComfyUI-Vton-Mask" + } + ], + "https://github.com/kasukanra/ComfyUI_StringToHex": [ + [ + "ColorNameToHex" + ], + { + "title_aux": "ComfyUI_StringToHex" + } + ], + "https://github.com/katalist-ai/comfyUI-nsfw-detection": [ + [ + "NudenetDetector" + ], + { + "title_aux": "comfyUI-nsfw-detection" + } + ], + "https://github.com/kazeyori/ComfyUI-QuickImageSequenceProcess": [ + [ + "QuickImageSequenceProcess" + ], + { + "author": "kazeyori", + "description": "A ComfyUI plugin for efficient image sequence processing. Features frame insertion, duplication, and removal with intuitive controls.", + "nickname": "QuickSeq", + "title": "Quick Image Sequence Process", + "title_aux": "ComfyUI-QuickImageSequenceProcess" + } + ], + "https://github.com/kealiu/ComfyUI-S3-Tools": [ + [ + "Load Image From S3", + "Save Image To S3" + ], + { + "title_aux": "ComfyUI Load and Save file to S3" + } + ], + "https://github.com/kealiu/ComfyUI-Zero123-Porting": [ + [ + "Zero123: Image Preprocess", + "Zero123: Image Rotate in 3D" + ], + { + "title_aux": "ComfyUI-Zero123-Porting" + } + ], + "https://github.com/kealiu/ComfyUI-ZeroShot-MTrans": [ + [ + "ZeST: Grayout Subject" + ], + { + "title_aux": "ComfyUI-ZeroShot-MTrans" + } + ], + "https://github.com/keit0728/ComfyUI-Image-Toolkit": [ + [ + "AlphaFlatten", + "AlphaToGrayscale", + "AntialiasingImage", + "BinarizeImage", + "BinarizeImageUsingOtsu", + "BrightnessTransparency", + "GrayscaleImage", + "RemoveWhiteBackgroundNoise" + ], + { + "title_aux": "ComfyUI-Image-Toolkit" + } + ], + "https://github.com/keit0728/ComfyUI-keitNodes": [ + [ + "AspectRatioResolutionFinder", + "M2MTranslator", + "PixelLimitResizer", + "WanVideoOptimalResizer", + "WanVideoResolutionFinder" + ], + { + "title_aux": "ComfyUI-keitNodes" + } + ], + "https://github.com/kenjiqq/qq-nodes-comfyui": [ + [ + "Any List", + "Any List Iterator", + "Any To Any", + "Axis Pack", + "Axis To Any", + "Axis Unpack", + "Load Lines From Text File", + "Slice List", + "Text Splitter", + "XY Grid Accumulator", + "XY Grid Helper" + ], + { + "title_aux": "qq-nodes-comfyui" + } + ], + "https://github.com/kevin314/ComfyUI-FastVideo": [ + [ + "DITConfig", + "InferenceArgs", + "LoadImagePath", + "TextEncoderConfig", + "VAEConfig", + "VideoGenerator" + ], + { + "title_aux": "ComfyUI-FastVideo" + } + ], + "https://github.com/kevinmcmahondev/comfyui-kmcdev-image-filter-adjustments": [ + [ + "ImageBlankAlpha", + "ImageBlendMask", + "ImageFilterAdjustments", + "ImageMixColorByMask" + ], + { + "title_aux": "KMCDev Nodes" + } + ], + "https://github.com/kevinmcmahondev/comfyui-skin-tone-detector": [ + [ + "SkinToneDetector" + ], + { + "title_aux": "Skin Tone Detector for ComfyUI" + } + ], + "https://github.com/kft334/Knodes": [ + [ + "Image(s) To Websocket (Base64)", + "ImageOutput", + "Load Image (Base64)", + "Load Images (Base64)" + ], + { + "title_aux": "Knodes" + } + ], + "https://github.com/kijai/ComfyUI-ADMotionDirector": [ + [ + "ADMD_AdditionalModelSelect", + "ADMD_CheckpointLoader", + "ADMD_ComfyModelLoader", + "ADMD_DiffusersLoader", + "ADMD_InitializeTraining", + "ADMD_LoadLora", + "ADMD_MakeBatchList", + "ADMD_SaveLora", + "ADMD_TrainLora", + "ADMD_ValidationSampler", + "ADMD_ValidationSettings" + ], + { + "title_aux": "Animatediff MotionLoRA Trainer" + } + ], + "https://github.com/kijai/ComfyUI-APISR-KJ": [ + [ + "APISR_upscale" + ], + { + "title_aux": "ComfyUI-APISR" + } + ], + "https://github.com/kijai/ComfyUI-BrushNet-Wrapper": [ + [ + "brushnet_ella_loader", + "brushnet_ipadapter_matteo", + "brushnet_model_loader", + "brushnet_sampler", + "brushnet_sampler_ella", + "powerpaint_brushnet_sampler" + ], + { + "title_aux": "ComfyUI-BrushNet-Wrapper" + } + ], + "https://github.com/kijai/ComfyUI-CCSR": [ + [ + "CCSR_Model_Select", + "CCSR_Upscale", + "DownloadAndLoadCCSRModel" + ], + { + "title_aux": "ComfyUI-CCSR" + } + ], + "https://github.com/kijai/ComfyUI-CogVideoXWrapper": [ + [ + "CogVideoContextOptions", + "CogVideoControlNet", + "CogVideoDecode", + "CogVideoEnhanceAVideo", + "CogVideoImageEncode", + "CogVideoImageEncodeFunInP", + "CogVideoLatentPreview", + "CogVideoLoraSelect", + "CogVideoLoraSelectComfy", + "CogVideoSampler", + "CogVideoTextEncode", + "CogVideoTextEncodeCombine", + "CogVideoTransformerEdit", + "CogVideoXFasterCache", + "CogVideoXFunResizeToClosestBucket", + "CogVideoXModelLoader", + "CogVideoXTeaCache", + "CogVideoXTorchCompileSettings", + "CogVideoXVAELoader", + "DownloadAndLoadCogVideoControlNet", + "DownloadAndLoadCogVideoGGUFModel", + "DownloadAndLoadCogVideoModel", + "DownloadAndLoadToraModel", + "ToraEncodeOpticalFlow", + "ToraEncodeTrajectory" + ], + { + "title_aux": "ComfyUI CogVideoX Wrapper" + } + ], + "https://github.com/kijai/ComfyUI-ControlNeXt-SVD": [ + [ + "ControlNextDecode", + "ControlNextDiffusersScheduler", + "ControlNextGetPoses", + "ControlNextSVDApply", + "ControlNextSampler", + "DownloadAndLoadControlNeXt" + ], + { + "title_aux": "ComfyUI nodes for ControlNext-SVD v2" + } + ], + "https://github.com/kijai/ComfyUI-DDColor": [ + [ + "DDColor_Colorize" + ], + { + "title_aux": "ComfyUI-DDColor" + } + ], + "https://github.com/kijai/ComfyUI-DepthAnythingV2": [ + [ + "DepthAnything_V2", + "DownloadAndLoadDepthAnythingV2Model" + ], + { + "title_aux": "ComfyUI-DepthAnythingV2" + } + ], + "https://github.com/kijai/ComfyUI-DiffusionLight": [ + [ + "chrome_ball_to_envmap", + "exposure_to_hdr" + ], + { + "title_aux": "DiffusionLight implementation for ComfyUI" + } + ], + "https://github.com/kijai/ComfyUI-DynamiCrafterWrapper": [ + [ + "DownloadAndLoadCLIPModel", + "DownloadAndLoadCLIPVisionModel", + "DownloadAndLoadDynamiCrafterCNModel", + "DownloadAndLoadDynamiCrafterModel", + "DynamiCrafterBatchInterpolation", + "DynamiCrafterCNLoader", + "DynamiCrafterControlnetApply", + "DynamiCrafterI2V", + "DynamiCrafterLoadInitNoise", + "DynamiCrafterModelLoader", + "ToonCrafterDecode", + "ToonCrafterInterpolation" + ], + { + "title_aux": "ComfyUI-DynamiCrafterWrapper" + } + ], + "https://github.com/kijai/ComfyUI-ELLA-wrapper": [ + [ + "diffusers_model_loader", + "diffusers_sampler", + "ella_model_loader", + "ella_sampler", + "ella_t5_embeds" + ], + { + "title_aux": "ComfyUI-ELLA-wrapper" + } + ], + "https://github.com/kijai/ComfyUI-Florence2": [ + [ + "DownloadAndLoadFlorence2Lora", + "DownloadAndLoadFlorence2Model", + "Florence2ModelLoader", + "Florence2Run" + ], + { + "preemptions": [ + "DownloadAndLoadFlorence2Lora", + "DownloadAndLoadFlorence2Model", + "Florence2ModelLoader", + "Florence2Run" + ], + "title_aux": "ComfyUI-Florence2" + } + ], + "https://github.com/kijai/ComfyUI-FluxTrainer": [ + [ + "ExtractFluxLoRA", + "FluxKohyaInferenceSampler", + "FluxTrainAndValidateLoop", + "FluxTrainBlockSelect", + "FluxTrainEnd", + "FluxTrainLoop", + "FluxTrainModelSelect", + "FluxTrainResume", + "FluxTrainSave", + "FluxTrainSaveModel", + "FluxTrainValidate", + "FluxTrainValidationSettings", + "FluxTrainerLossConfig", + "InitFluxLoRATraining", + "InitFluxTraining", + "InitSD3LoRATraining", + "InitSDXLLoRATraining", + "OptimizerConfig", + "OptimizerConfigAdafactor", + "OptimizerConfigProdigy", + "OptimizerConfigProdigyPlusScheduleFree", + "SD3ModelSelect", + "SD3TrainValidationSettings", + "SDXLModelSelect", + "SDXLTrainValidate", + "SDXLTrainValidationSettings", + "TrainDatasetAdd", + "TrainDatasetGeneralConfig", + "TrainDatasetRegularization", + "TrainNetworkConfig", + "UploadToHuggingFace", + "VisualizeLoss" + ], + { + "title_aux": "ComfyUI Flux Trainer" + } + ], + "https://github.com/kijai/ComfyUI-GIMM-VFI": [ + [ + "DownloadAndLoadGIMMVFIModel", + "GIMMVFI_interpolate" + ], + { + "title_aux": "ComfyUI-GIMM-VFI" + } + ], + "https://github.com/kijai/ComfyUI-Geowizard": [ + [ + "geowizard_model_loader", + "geowizard_sampler" + ], + { + "title_aux": "Geowizard depth and normal estimation in ComfyUI" + } + ], + "https://github.com/kijai/ComfyUI-HFRemoteVae": [ + [ + "HFRemoteVAE", + "HFRemoteVAEDecode" + ], + { + "title_aux": "ComfyUI-HFRemoteVae" + } + ], + "https://github.com/kijai/ComfyUI-HunyuanVideoWrapper": [ + [ + "DownloadAndLoadHyVideoTextEncoder", + "HunyuanVideoFresca", + "HunyuanVideoSLG", + "HyVideoBlockSwap", + "HyVideoCFG", + "HyVideoContextOptions", + "HyVideoCustomPromptTemplate", + "HyVideoDecode", + "HyVideoEmptyTextEmbeds", + "HyVideoEncode", + "HyVideoEncodeKeyframes", + "HyVideoEnhanceAVideo", + "HyVideoGetClosestBucketSize", + "HyVideoI2VEncode", + "HyVideoInverseSampler", + "HyVideoLatentPreview", + "HyVideoLoopArgs", + "HyVideoLoraBlockEdit", + "HyVideoLoraSelect", + "HyVideoModelLoader", + "HyVideoPromptMixSampler", + "HyVideoReSampler", + "HyVideoSTG", + "HyVideoSampler", + "HyVideoTeaCache", + "HyVideoTextEmbedBridge", + "HyVideoTextEmbedsLoad", + "HyVideoTextEmbedsSave", + "HyVideoTextEncode", + "HyVideoTextImageEncode", + "HyVideoTorchCompileSettings", + "HyVideoVAELoader" + ], + { + "title_aux": "ComfyUI-HunyuanVideoWrapper" + } + ], + "https://github.com/kijai/ComfyUI-IC-Light": [ + [ + "BackgroundScaler", + "CalculateNormalsFromImages", + "DetailTransfer", + "ICLightConditioning", + "LightSource", + "LoadAndApplyICLightUnet", + "LoadHDRImage" + ], + { + "title_aux": "ComfyUI-IC-Light" + } + ], + "https://github.com/kijai/ComfyUI-KJNodes": [ + [ + "AddLabel", + "AppendInstanceDiffusionTracking", + "AppendStringsToList", + "ApplyRifleXRoPE_HunuyanVideo", + "ApplyRifleXRoPE_WanVideo", + "AudioConcatenate", + "BOOLConstant", + "BatchCLIPSeg", + "BatchCropFromMask", + "BatchCropFromMaskAdvanced", + "BatchUncrop", + "BatchUncropAdvanced", + "BboxToInt", + "BboxVisualize", + "CFGZeroStarAndInit", + "CameraPoseVisualizer", + "CheckpointLoaderKJ", + "CheckpointPerturbWeights", + "ColorMatch", + "ColorToMask", + "CondPassThrough", + "ConditioningMultiCombine", + "ConditioningSetMaskAndCombine", + "ConditioningSetMaskAndCombine3", + "ConditioningSetMaskAndCombine4", + "ConditioningSetMaskAndCombine5", + "CreateAudioMask", + "CreateFadeMask", + "CreateFadeMaskAdvanced", + "CreateFluidMask", + "CreateGradientFromCoords", + "CreateGradientMask", + "CreateInstanceDiffusionTracking", + "CreateMagicMask", + "CreateShapeImageOnPath", + "CreateShapeMask", + "CreateShapeMaskOnPath", + "CreateTextMask", + "CreateTextOnPath", + "CreateVoronoiMask", + "CrossFadeImages", + "CrossFadeImagesMulti", + "CustomControlNetWeightsFluxFromList", + "CustomSigmas", + "CutAndDragOnPath", + "DiTBlockLoraLoader", + "DifferentialDiffusionAdvanced", + "DiffusionModelLoaderKJ", + "DownloadAndLoadCLIPSeg", + "DrawInstanceDiffusionTracking", + "DummyOut", + "EmptyLatentImageCustomPresets", + "EmptyLatentImagePresets", + "FastPreview", + "FilterZeroMasksAndCorrespondingImages", + "FlipSigmasAdjusted", + "FloatConstant", + "FloatToMask", + "FloatToSigmas", + "FluxBlockLoraSelect", + "GLIGENTextBoxApplyBatchCoords", + "GenerateNoise", + "GetImageRangeFromBatch", + "GetImageSizeAndCount", + "GetImagesFromBatchIndexed", + "GetLatentRangeFromBatch", + "GetLatentsFromBatchIndexed", + "GetMaskSizeAndCount", + "GradientToFloat", + "GrowMaskWithBlur", + "HunyuanVideoBlockLoraSelect", + "HunyuanVideoEncodeKeyframesToCond", + "INTConstant", + "ImageAddMulti", + "ImageAndMaskPreview", + "ImageBatchFilter", + "ImageBatchJoinWithTransition", + "ImageBatchMulti", + "ImageBatchRepeatInterleaving", + "ImageBatchTestPattern", + "ImageConcanate", + "ImageConcatFromBatch", + "ImageConcatMulti", + "ImageCropByMask", + "ImageCropByMaskAndResize", + "ImageCropByMaskBatch", + "ImageGrabPIL", + "ImageGridComposite2x2", + "ImageGridComposite3x3", + "ImageGridtoBatch", + "ImageNoiseAugmentation", + "ImageNormalize_Neg1_To_1", + "ImagePadForOutpaintMasked", + "ImagePadForOutpaintTargetSize", + "ImagePadKJ", + "ImagePass", + "ImagePrepForICLora", + "ImageResizeKJ", + "ImageResizeKJv2", + "ImageTensorList", + "ImageTransformByNormalizedAmplitude", + "ImageUncropByMask", + "ImageUpscaleWithModelBatched", + "InjectNoiseToLatent", + "InsertImageBatchByIndexes", + "InsertImagesToBatchIndexed", + "InsertLatentToIndexed", + "InterpolateCoords", + "Intrinsic_lora_sampling", + "JoinStringMulti", + "JoinStrings", + "LeapfusionHunyuanI2VPatcher", + "LoadAndResizeImage", + "LoadImagesFromFolderKJ", + "LoadResAdapterNormalization", + "LoraExtractKJ", + "MaskBatchMulti", + "MaskOrImageToWeight", + "MergeImageChannels", + "ModelPassThrough", + "ModelPatchTorchSettings", + "ModelSaveKJ", + "NormalizedAmplitudeToFloatList", + "NormalizedAmplitudeToMask", + "OffsetMask", + "OffsetMaskByNormalizedAmplitude", + "PadImageBatchInterleaved", + "PatchModelPatcherOrder", + "PathchSageAttentionKJ", + "PlotCoordinates", + "PointsEditor", + "PreviewAnimation", + "RemapImageRange", + "RemapMaskRange", + "ReplaceImagesInBatch", + "ResizeMask", + "ReverseImageBatch", + "RoundMask", + "SV3D_BatchSchedule", + "SaveImageKJ", + "SaveImageWithAlpha", + "SaveStringKJ", + "ScaleBatchPromptSchedule", + "ScheduledCFGGuidance", + "Screencap_mss", + "SeparateMasks", + "SetShakkerLabsUnionControlNetType", + "ShuffleImageBatch", + "SigmasToFloat", + "SkipLayerGuidanceWanVideo", + "Sleep", + "SomethingToString", + "SoundReactive", + "SplineEditor", + "SplitBboxes", + "SplitImageChannels", + "StableZero123_BatchSchedule", + "StringConstant", + "StringConstantMultiline", + "StringToFloatList", + "StyleModelApplyAdvanced", + "Superprompt", + "TimerNodeKJ", + "TorchCompileControlNet", + "TorchCompileCosmosModel", + "TorchCompileLTXModel", + "TorchCompileModelFluxAdvanced", + "TorchCompileModelFluxAdvancedV2", + "TorchCompileModelHyVideo", + "TorchCompileModelWanVideo", + "TorchCompileModelWanVideoV2", + "TorchCompileVAE", + "TransitionImagesInBatch", + "TransitionImagesMulti", + "VAELoaderKJ", + "VRAM_Debug", + "Wan21BlockLoraSelect", + "WanVideoEnhanceAVideoKJ", + "WanVideoNAG", + "WanVideoTeaCacheKJ", + "WebcamCaptureCV2", + "WeightScheduleConvert", + "WeightScheduleExtend", + "WidgetToString" + ], + { + "title_aux": "KJNodes for ComfyUI" + } + ], + "https://github.com/kijai/ComfyUI-KwaiKolorsWrapper": [ + [ + "DownloadAndLoadChatGLM3", + "DownloadAndLoadKolorsModel", + "KolorsSampler", + "KolorsTextEncode", + "LoadChatGLM3" + ], + { + "title_aux": "ComfyUI-KwaiKolorsWrapper" + } + ], + "https://github.com/kijai/ComfyUI-LBMWrapper": [ + [ + "LBMSampler", + "LoadLBMModel" + ], + { + "title_aux": "ComfyUI-LBMWrapper" + } + ], + "https://github.com/kijai/ComfyUI-LLaVA-OneVision": [ + [ + "DownloadAndLoadLLaVAOneVisionModel", + "LLaVA_OneVision_Run", + "OneVisionCaptionFolder", + "SaveCaptionToTextFile" + ], + { + "title_aux": "ComfyUI Llava-OneVision" + } + ], + "https://github.com/kijai/ComfyUI-LVCDWrapper": [ + [ + "LVCDDecoder", + "LVCDSampler", + "LoadLVCDModel" + ], + { + "title_aux": "ComfyUI wrapper nodes for LVCD" + } + ], + "https://github.com/kijai/ComfyUI-LaVi-Bridge-Wrapper": [ + [ + "lavi_bridge_llama_encoder", + "lavi_bridge_t5_encoder", + "lavibridge_model_loader", + "lavibridge_sampler" + ], + { + "title_aux": "ComfyUI-LaVi-Bridge-Wrapper" + } + ], + "https://github.com/kijai/ComfyUI-LivePortraitKJ": [ + [ + "DownloadAndLoadLivePortraitModels", + "KeypointScaler", + "KeypointsToImage", + "LivePortraitComposite", + "LivePortraitCropper", + "LivePortraitLoadCropper", + "LivePortraitLoadFaceAlignmentCropper", + "LivePortraitLoadMediaPipeCropper", + "LivePortraitProcess", + "LivePortraitRetargeting" + ], + { + "title_aux": "ComfyUI-LivePortraitKJ" + } + ], + "https://github.com/kijai/ComfyUI-Lotus": [ + [ + "LoadLotusModel", + "LotusSampler" + ], + { + "title_aux": "ComfyUI-Lotus" + } + ], + "https://github.com/kijai/ComfyUI-LuminaWrapper": [ + [ + "DownloadAndLoadGemmaModel", + "DownloadAndLoadLuminaModel", + "GemmaSampler", + "LuminaGemmaTextEncode", + "LuminaGemmaTextEncodeArea", + "LuminaT2ISampler", + "LuminaTextAreaAppend" + ], + { + "title_aux": "ComfyUI-LuminaWrapper" + } + ], + "https://github.com/kijai/ComfyUI-Marigold": [ + [ + "ColorizeDepthmap", + "MarigoldDepthEstimation", + "MarigoldDepthEstimationVideo", + "MarigoldDepthEstimation_v2", + "MarigoldDepthEstimation_v2_video", + "MarigoldModelLoader", + "RemapDepth", + "SaveImageOpenEXR" + ], + { + "title_aux": "Marigold depth estimation in ComfyUI" + } + ], + "https://github.com/kijai/ComfyUI-MimicMotionWrapper": [ + [ + "DiffusersScheduler", + "DownloadAndLoadMimicMotionModel", + "MimicMotionDecode", + "MimicMotionGetPoses", + "MimicMotionSampler" + ], + { + "title_aux": "ComfyUI-MimicMotionWrapper" + } + ], + "https://github.com/kijai/ComfyUI-MoGe": [ + [ + "DownloadAndLoadMoGeModel", + "MoGeProcess" + ], + { + "title_aux": "ComfyUI-MoGe" + } + ], + "https://github.com/kijai/ComfyUI-OpenDiTWrapper": [ + [ + "DownloadAndLoadOpenDiTT5Model", + "DownloadAndLoadOpenSoraModel", + "DownloadAndLoadOpenSoraVAE", + "OpenDiTConditioning", + "OpenDiTSampler", + "OpenSoraDecode", + "OpenSoraEncodeReference" + ], + { + "title_aux": "ComfyUI-OpenDiTWrapper" + } + ], + "https://github.com/kijai/ComfyUI-PyramidFlowWrapper": [ + [ + "PyramidFlowLatentPreview", + "PyramidFlowSampler", + "PyramidFlowTextEncode", + "PyramidFlowTorchCompileSettings", + "PyramidFlowTransformerLoader", + "PyramidFlowVAEDecode", + "PyramidFlowVAEEncode", + "PyramidFlowVAELoader" + ], + { + "title_aux": "ComfyUI PyramidFlow Wrapper" + } + ], + "https://github.com/kijai/ComfyUI-SUPIR": [ + [ + "SUPIR_Upscale", + "SUPIR_conditioner", + "SUPIR_decode", + "SUPIR_encode", + "SUPIR_first_stage", + "SUPIR_model_loader", + "SUPIR_model_loader_v2", + "SUPIR_model_loader_v2_clip", + "SUPIR_sample", + "SUPIR_tiles" + ], + { + "title_aux": "ComfyUI-SUPIR" + } + ], + "https://github.com/kijai/ComfyUI-StableXWrapper": [ + [ + "DifferenceExtractorNode", + "DownloadAndLoadStableXModel", + "StableXProcessImage" + ], + { + "title_aux": "ComfyUI-StableXWrapper" + } + ], + "https://github.com/kijai/ComfyUI-WanVideoWrapper": [ + [ + "CreateCFGScheduleFloatList", + "DownloadAndLoadWav2VecModel", + "ExtractStartFramesForContinuations", + "FantasyTalkingModelLoader", + "FantasyTalkingWav2VecEmbeds", + "LoadWanVideoClipTextEncoder", + "LoadWanVideoT5TextEncoder", + "MultiTalkModelLoader", + "MultiTalkWav2VecEmbeds", + "ReCamMasterPoseVisualizer", + "WanVideoATITracks", + "WanVideoATITracksVisualize", + "WanVideoATI_comfy", + "WanVideoApplyNAG", + "WanVideoBlockList", + "WanVideoBlockSwap", + "WanVideoClipVisionEncode", + "WanVideoContextOptions", + "WanVideoControlEmbeds", + "WanVideoControlnet", + "WanVideoControlnetLoader", + "WanVideoDecode", + "WanVideoDiffusionForcingSampler", + "WanVideoEasyCache", + "WanVideoEmptyEmbeds", + "WanVideoEncode", + "WanVideoEnhanceAVideo", + "WanVideoExperimentalArgs", + "WanVideoFlowEdit", + "WanVideoFreeInitArgs", + "WanVideoFunCameraEmbeds", + "WanVideoImageClipEncode", + "WanVideoImageResizeToClosest", + "WanVideoImageToVideoEncode", + "WanVideoImageToVideoMultiTalk", + "WanVideoLoopArgs", + "WanVideoLoraBlockEdit", + "WanVideoLoraSelect", + "WanVideoLoraSelectMulti", + "WanVideoMagCache", + "WanVideoMiniMaxRemoverEmbeds", + "WanVideoModelLoader", + "WanVideoPhantomEmbeds", + "WanVideoReCamMasterCameraEmbed", + "WanVideoReCamMasterDefaultCamera", + "WanVideoReCamMasterGenerateOrbitCamera", + "WanVideoRealisDanceLatents", + "WanVideoSLG", + "WanVideoSampler", + "WanVideoSetBlockSwap", + "WanVideoSetRadialAttention", + "WanVideoTeaCache", + "WanVideoTextEmbedBridge", + "WanVideoTextEncode", + "WanVideoTextEncodeSingle", + "WanVideoTinyVAELoader", + "WanVideoTorchCompileSettings", + "WanVideoUni3C_ControlnetLoader", + "WanVideoUni3C_embeds", + "WanVideoUniAnimateDWPoseDetector", + "WanVideoUniAnimatePoseInput", + "WanVideoVACEEncode", + "WanVideoVACEModelSelect", + "WanVideoVACEStartToEndFrame", + "WanVideoVAELoader", + "WanVideoVRAMManagement" + ], + { + "title_aux": "ComfyUI-WanVideoWrapper" + } + ], + "https://github.com/kijai/ComfyUI-depth-fm": [ + [ + "Depth_fm" + ], + { + "title_aux": "ComfyUI-depth-fm" + } + ], + "https://github.com/kijai/ComfyUI-moondream": [ + [ + "MoondreamQuery", + "MoondreamQueryCaptions" + ], + { + "title_aux": "ComfyUI-moondream" + } + ], + "https://github.com/kijai/ComfyUI-segment-anything-2": [ + [ + "DownloadAndLoadSAM2Model", + "Florence2toCoordinates", + "Sam2AutoSegmentation", + "Sam2Segmentation", + "Sam2VideoSegmentation", + "Sam2VideoSegmentationAddPoints" + ], + { + "preemptions": [ + "DownloadAndLoadSAM2Model", + "Florence2toCoordinates", + "Sam2AutoSegmentation", + "Sam2Segmentation", + "Sam2VideoSegmentation", + "Sam2VideoSegmentationAddPoints" + ], + "title_aux": "ComfyUI-segment-anything-2" + } + ], + "https://github.com/kimara-ai/ComfyUI-Kimara-AI-Advanced-Watermarks": [ + [ + "KimaraAIBatchImages", + "KimaraAIWatermarker" + ], + { + "title_aux": "Kimara.ai's Advanced Watermarking Tools" + } + ], + "https://github.com/kinfolk0117/ComfyUI_GradientDeepShrink": [ + [ + "GradientPatchModelAddDownscale", + "GradientPatchModelAddDownscaleAdvanced" + ], + { + "title_aux": "ComfyUI_GradientDeepShrink" + } + ], + "https://github.com/kinfolk0117/ComfyUI_GridSwapper": [ + [ + "GridSwapper" + ], + { + "title_aux": "Gridswapper" + } + ], + "https://github.com/kinfolk0117/ComfyUI_Pilgram": [ + [ + "Pilgram" + ], + { + "title_aux": "ComfyUI_Pilgram" + } + ], + "https://github.com/kinfolk0117/ComfyUI_SimpleTiles": [ + [ + "DynamicTileMerge", + "DynamicTileSplit", + "TileCalc", + "TileMerge", + "TileSplit" + ], + { + "title_aux": "SimpleTiles" + } + ], + "https://github.com/kk8bit/KayTool": [ + [ + "AB_Images", + "AIO_Translater", + "Abc_Math", + "Baidu_Translater", + "Color_Adjustment", + "Custom_Save_Image", + "Display_Any", + "Image_Composer", + "Image_Cropper", + "Image_Mask_Composer", + "Image_Resizer", + "Image_Size_Extractor", + "Kay_BiRefNet_Loader", + "Load_Image_Folder", + "Mask_Blur_Plus", + "Mask_Filler", + "Preview_Mask", + "Preview_Mask_Plus", + "RemBG_Loader", + "Remove_BG", + "Slider_10", + "Slider_100", + "Slider_1000", + "Strong_Prompt", + "Tencent_Translater", + "Text", + "To_Int" + ], + { + "title_aux": "KayTool" + } + ], + "https://github.com/klinter007/klinter_nodes": [ + [ + "AspectSelector", + "BBoxCropper", + "FolderLoader", + "Json Extractor - klinter", + "LoadImagePlus", + "LoadVideoForExtendingKlinter", + "OutpaintPadding", + "PrepVideoForExtendKlinter", + "SaveAudioPlus", + "SizeSelector", + "SpeedRamp", + "YellowBus", + "ZoomOutComposer", + "concat", + "filter", + "nodevalue2stringmulti", + "string_contact_multi" + ], + { + "title_aux": "Klinter_nodes" + } + ], + "https://github.com/knuknX/ComfyUI-Image-Tools": [ + [ + "BatchImagePathLoader", + "ImageBgRemoveProcessor", + "ImageCheveretoUploader", + "ImageStandardResizeProcessor", + "JSONMessageNotifyTool", + "PreviewJSONNode", + "SingleImagePathLoader", + "SingleImageUrlLoader" + ], + { + "title_aux": "ComfyUI-Image-Tools" + } + ], + "https://github.com/kohs100/comfyui-ppwc": [ + [ + "PPWCReplace" + ], + { + "author": "Phospholipids", + "description": "This extension offers wildcard prompting works solely in workflow.", + "nickname": "PPWC", + "title": "PPWildCard", + "title_aux": "PPWildCard" + } + ], + "https://github.com/kohya-ss/ControlNet-LLLite-ComfyUI": [ + [ + "LLLiteLoader" + ], + { + "title_aux": "ControlNet-LLLite-ComfyUI" + } + ], + "https://github.com/komojini/ComfyUI_SDXL_DreamBooth_LoRA_CustomNodes": [ + [ + "S3 Bucket LoRA", + "S3Bucket_Load_LoRA", + "XL DreamBooth LoRA", + "XLDB_LoRA" + ], + { + "title_aux": "ComfyUI_SDXL_DreamBooth_LoRA_CustomNodes" + } + ], + "https://github.com/komojini/komojini-comfyui-nodes": [ + [ + "BatchCreativeInterpolationNodeDynamicSettings", + "CachedGetter", + "DragNUWAImageCanvas", + "FlowBuilder", + "FlowBuilder (adv)", + "FlowBuilder (advanced)", + "FlowBuilder (advanced) Setter", + "FlowBuilderSetter", + "FlowBuilderSetter (adv)", + "Getter", + "ImageCropByRatio", + "ImageCropByRatioAndResize", + "ImageGetter", + "ImageMerger", + "ImagesCropByRatioAndResizeBatch", + "KSamplerAdvancedCacheable", + "KSamplerCacheable", + "Setter", + "UltimateVideoLoader", + "UltimateVideoLoader (simple)", + "YouTubeVideoLoader" + ], + { + "title_aux": "komojini-comfyui-nodes" + } + ], + "https://github.com/kostenickj/jk-comfyui-helpers": [ + [ + "EasyHRFix", + "EasyHRFix_Context", + "JKAnythingToString", + "JKBigContext", + "JKDynamicThresholdingMultiModel", + "JKEasyCheckpointLoader", + "JKEasyDetailer", + "JKEasyDetailer_Context", + "JKEasyKSampler_Context", + "JKEasyUpscaleImage", + "JKEasyWatermark", + "JKInspireSchedulerAdapter", + "JKLilContext", + "JKMultiModelSamplerUnpatch", + "JKStringEmpty", + "JKStringEquals", + "JKStringNotEmpty", + "JKStringNotEquals", + "JKStringToSamplerAdapter" + ], + { + "title_aux": "comfyui-jk-easy-nodes" + } + ], + "https://github.com/kpsss34/ComfyUI-kpsss34-Sana": [ + [ + "SanaLoRALoader", + "SanaModelLoader", + "SanaSampler" + ], + { + "title_aux": "ComfyUI Sana Custom Node" + } + ], + "https://github.com/krmahil/comfyui-hollow-preserve": [ + [ + "RemoveEnclosedMaskedAreas" + ], + { + "title_aux": "Hollow Preserve" + } + ], + "https://github.com/kukuo6666/ComfyUI-Equirect": [ + [ + "CubemapToEquirect", + "EquirectToCubemap" + ], + { + "title_aux": "ComfyUI Equirectangular Tools" + } + ], + "https://github.com/kungful/ComfyUI_to_webui": [ + [ + "BarcodeGeneratorNode", + "Barcode_seed", + "DeepseekNode", + "Go_to_image", + "GradioInputImage", + "GradioTextBad", + "GradioTextOk", + "HuaFloatNode", + "HuaIntNode", + "Hua_CheckpointLoaderSimple", + "Hua_LoraLoader", + "Hua_LoraLoaderModelOnly", + "Hua_Output", + "Hua_UNETLoader", + "Hua_Video_Output", + "Hua_gradio_Seed", + "Hua_gradio_jsonsave", + "Hua_gradio_resolution", + "Huaword", + "Modelhua", + "brucelee", + "\u5c0f\u5b57\u4f53\u8bf4\u660e\uff1a\u6211\u662fcomfyui_hua_boy\u7684model" + ], + { + "title_aux": "ComfyUI_to_webui" + } + ], + "https://github.com/kunieone/ComfyUI_alkaid": [ + [ + "A_EmptyLatentImageLongside", + "A_Face3DSwapper", + "A_FaceCrop", + "A_FacePaste", + "A_GetImageSize", + "A_OpenPosePreprocessor", + "AdapterFace", + "AdapterFaceLoader", + "AdapterStyle", + "AdapterStyleLoader", + "AlkaidLoader", + "ApplyAdapter", + "ApplyControlNet_KPS", + "CombineAdapterPatch", + "KSamplerHires" + ], + { + "title_aux": "ComfyUI_alkaid" + } + ], + "https://github.com/kwaroran/abg-comfyui": [ + [ + "Remove Image Background (abg)" + ], + { + "title_aux": "abg-comfyui" + } + ], + "https://github.com/kycg/comfyui-Lora-auto-downloader": [ + [ + "Kw_JsonLoraLoader", + "Kw_Json_Lora_CivitAIDownloader" + ], + { + "title_aux": "Kw_Json_Lora_CivitAIDownloader" + } + ], + "https://github.com/l-comm/WatermarkRemoval": [ + [ + "FindWatermarkNode", + "RemoveWatermarkNode" + ], + { + "author": "l-comm", + "description": "Remove watermark", + "nickname": "Watermark Removal", + "title": "Watermark Removal", + "title_aux": "WatermarkRemoval" + } + ], + "https://github.com/l20richo/ComfyUI-Azure-Blob-Storage": [ + [ + "DownloadFileBLOB", + "LoadImageBLOB", + "SaveImageBLOB", + "SaveVideoFilesBLOB", + "UploadFileBLOB" + ], + { + "title_aux": "ComfyUI-Azure-Blob-Storage" + } + ], + "https://github.com/l3ony2k/comfyui-leon-nodes": [ + [ + "Leon_Flux_Image_API_Node", + "Leon_Flux_Kontext_API_Node", + "Leon_Google_Image_API_Node", + "Leon_Hypr_Upload_Node", + "Leon_Image_Split_4Grid_Node", + "Leon_ImgBB_Upload_Node", + "Leon_Luma_AI_Image_API_Node", + "Leon_Midjourney_Describe_API_Node", + "Leon_Midjourney_Proxy_API_Node", + "Leon_Midjourney_Upload_API_Node", + "Leon_String_Combine_Node" + ], + { + "nodename_pattern": "^\ud83e\udd16 Leon", + "title_aux": "Leon's Utility and API Integration Nodes" + } + ], + "https://github.com/laksjdjf/Batch-Condition-ComfyUI": [ + [ + "Batch String", + "CLIP Text Encode (Batch)", + "String Input" + ], + { + "title_aux": "Batch-Condition-ComfyUI" + } + ], + "https://github.com/laksjdjf/ComfyUI-Imatrix": [ + [ + "ImatrixUNETLoader", + "LoRAdiff", + "SaveImatrix" + ], + { + "title_aux": "ComfyUI-Imatrix" + } + ], + "https://github.com/laksjdjf/LCMSampler-ComfyUI": [ + [ + "SamplerLCM", + "TAESDLoader" + ], + { + "title_aux": "LCMSampler-ComfyUI" + } + ], + "https://github.com/laksjdjf/LoRTnoC-ComfyUI": [ + [ + "LortnocLoader" + ], + { + "title_aux": "LoRTnoC-ComfyUI" + } + ], + "https://github.com/laksjdjf/cd-tuner_negpip-ComfyUI": [ + [ + "CDTuner", + "Negapip", + "Negpip" + ], + { + "title_aux": "cd-tuner_negpip-ComfyUI" + } + ], + "https://github.com/laksjdjf/cgem156-ComfyUI": [ + [ + "GradualLatentSampler", + "LCMSamplerRCFG", + "LoadAestheticShadow", + "PredictAesthetic", + "TCDSampler", + "TextScheduler" + ], + { + "title_aux": "cgem156-ComfyUI\ud83c\udf4c" + } + ], + "https://github.com/laksjdjf/pfg-ComfyUI": [ + [ + "PFG" + ], + { + "title_aux": "pfg-ComfyUI" + } + ], + "https://github.com/larsupb/LoRA-Merger-ComfyUI": [ + [ + "PM LoRA Apply", + "PM LoRA Loader", + "PM LoRA Merger", + "PM LoRA Resizer", + "PM LoRA SVD Merger", + "PM LoRA Save", + "XY: PM LoRA Modes", + "XY: PM LoRA SVD Rank", + "XY: PM LoRA Strengths" + ], + { + "title_aux": "LoRA Power-Merger ComfyUI" + } + ], + "https://github.com/latenightlabs/ComfyUI-LNL": [ + [ + "LNL_FrameSelectorV3", + "LNL_FrameSelectorV4" + ], + { + "title_aux": "LNL Frame Selector" + } + ], + "https://github.com/lazniak/Head-Orientation-Node-for-ComfyUI---by-PabloGFX": [ + [ + "HeadOrientationNode" + ], + { + "title_aux": "Head-Orientation-Node - by PabloGFX" + } + ], + "https://github.com/lazniak/LiquidTime-Interpolation": [ + [ + "LiquidTime" + ], + { + "title_aux": "LiquidTime - by PabloGFX" + } + ], + "https://github.com/lazniak/comfyui-google-photos-loader": [ + [ + "ContentFilter", + "DatePicker", + "Google Photos Album Lister", + "Google Photos Album Loader", + "Google Photos Album Selector", + "Google Photos Cache Manager", + "Google Photos Clear Cache", + "Google Photos Images Loader", + "Google Photos Login/Logout" + ], + { + "title_aux": "Google Photos Loader - by PabloGFX" + } + ], + "https://github.com/lc03lc/Comfyui_OmniConsistency": [ + [ + "Comfyui_OmniConsistency" + ], + { + "title_aux": "ComfyUI OmniConsistency Nodes" + } + ], + "https://github.com/lceric/comfyui-gpt-image": [ + [ + "GPTImage1Generate" + ], + { + "title_aux": "comfyui-gpt-image" + } + ], + "https://github.com/lebrosoft/ComfyUI-VideoChatWrapper": [ + [ + "AudioCombine", + "ConcatAudio", + "ConvertAudioChannels", + "JoinAudio", + "ResampleAudio", + "SplitAudio", + "VCW_LoadVideo", + "VCW_ModelLoader", + "VCW_VideoSummary" + ], + { + "title_aux": "ComfyUI-VideoChatWrapper" + } + ], + "https://github.com/leeguandong/ComfyUI_1Prompt1Story": [ + [ + "GenerateStoryImage", + "PromptStoryModelLoader" + ], + { + "title_aux": "ComfyUI_1Prompt1Story" + } + ], + "https://github.com/leeguandong/ComfyUI_ChatGen": [ + [ + "ChatGenGenerate", + "ChatGenImageProcessor", + "ChatGenModelLoader" + ], + { + "title_aux": "ComfyUI_ChatGen" + } + ], + "https://github.com/leeguandong/ComfyUI_Cogview4": [ + [ + "CogView4ImageGenerator", + "CogView4ModelLoader" + ], + { + "title_aux": "ComfyUI_Cogview4" + } + ], + "https://github.com/leeguandong/ComfyUI_CompareModelWeights": [ + [ + "CheckPointLoader_Compare", + "CompareModelWeightsDiff", + "CompareModelWeightsDiffNormalized", + "PreviewImageCompareModelWeights" + ], + { + "title_aux": "ComfyUI_CompareModelWeights" + } + ], + "https://github.com/leeguandong/ComfyUI_CrossImageAttention": [ + [ + "AppearanceTransferInference", + "AppearanceTransferModelModelLoader", + "CIAConfig", + "LoadImagePath", + "LoadLatents" + ], + { + "title_aux": "ComfyUI nodes to use CrossImageAttention" + } + ], + "https://github.com/leeguandong/ComfyUI_DeepSeekVL2": [ + [ + "deepseek_vl2_inference", + "deepseek_vl2_model_loader" + ], + { + "title_aux": "ComfyUI_DeepSeekVL2" + } + ], + "https://github.com/leeguandong/ComfyUI_FluxAttentionMask": [ + [ + "AMModelLoader", + "AMSample", + "AttentionMask" + ], + { + "title_aux": "ComfyUI nodes to use AttentionMask" + } + ], + "https://github.com/leeguandong/ComfyUI_FluxClipWeight": [ + [ + "CLIPTextEncodeFluxWeight" + ], + { + "title_aux": "ComfyUI nodes to use FluxClipWeight" + } + ], + "https://github.com/leeguandong/ComfyUI_FluxCustomId": [ + [ + "ApplyCustomIDFlux", + "CustomIDModelLoader" + ], + { + "title_aux": "ComfyUI_FluxCustomId" + } + ], + "https://github.com/leeguandong/ComfyUI_FluxLayerDiffuse": [ + [ + "FluxTransparentI2I", + "FluxTransparentModelLoader", + "FluxTransparentT2I" + ], + { + "title_aux": "ComfyUI_FluxLayerDiffuse" + } + ], + "https://github.com/leeguandong/ComfyUI_Gemma3": [ + [ + "ApplyGemma3", + "Gemma3ModelLoader" + ], + { + "title_aux": "ComfyUI_Gemma3" + } + ], + "https://github.com/leeguandong/ComfyUI_InternVL2": [ + [ + "DynamicPreprocess", + "InternVLHFInference", + "InternVLLMDEPLOYInference", + "InternVLModelLoader" + ], + { + "title_aux": "ComfyUI_InternVL2" + } + ], + "https://github.com/leeguandong/ComfyUI_LLaSM": [ + [ + "LLaSM2Interface", + "LLaSM2ModelLoader", + "LLaSMLoadAudio" + ], + { + "title_aux": "ComfyUI_LLaSM" + } + ], + "https://github.com/leeguandong/ComfyUI_M3Net": [ + [ + "M3Net_Interface", + "M3Net_ModelLoader" + ], + { + "title_aux": "ComfyUI_M3Net" + } + ], + "https://github.com/leeguandong/ComfyUI_MasaCtrl": [ + [ + "DirectSampler", + "MasaCtrlConcatImage", + "MasaCtrlInversion", + "MasaCtrlLoadImage", + "MasaCtrlModelLoader", + "MutualSelfAttentionControlMaskAutoSampler", + "MutualSelfAttentionControlSampler" + ], + { + "title_aux": "ComfyUI nodes to use MasaCtrl" + } + ], + "https://github.com/leeguandong/ComfyUI_QWQ32B": [ + [ + "QwQModelLoader", + "QwQTextGenerator" + ], + { + "title_aux": "ComfyUI_QWQ32B" + } + ], + "https://github.com/leeguandong/ComfyUI_Style_Aligned": [ + [ + "SAControlnet_ModelLoader", + "SADepth", + "SAHandler", + "SAInversion", + "SASDXLControlnetKsampler", + "SASDXLKampler", + "SASDXLTransferKsampler", + "SASDXL_ModelLoader", + "SchedulerLoader" + ], + { + "title_aux": "ComfyUI nodes to use Style-Aligned" + } + ], + "https://github.com/leeguandong/ComfyUI_VideoEditing": [ + [ + "LoadVideo2Images", + "VEdit_ControlNet_ModelLoader", + "VEdit_ModelLoader", + "VEdit_Sampler", + "VEdit_image2canny" + ], + { + "title_aux": "ComfyUI nodes to use VideoEditing" + } + ], + "https://github.com/leeguandong/ComfyUI_VisualAttentionMap": [ + [ + "DecodeLatent", + "HFModelLoader", + "ShowCrossAttn", + "ShowImages", + "ShowSelfAttn", + "Text2ImageInference" + ], + { + "title_aux": "ComfyUI_VisualAttentionMap" + } + ], + "https://github.com/leestuartx/ComfyUI-GG": [ + [ + "AddPaddingToImage", + "ForLoopNode", + "ImageAndTextDescriptionBySeed", + "ImageMetadataExtractor", + "InputNode", + "MetadataExtractBySeed", + "MetadataExtractorBySeed", + "OutputNode", + "ResizeImageProportionally", + "WorkspaceNode" + ], + { + "title_aux": "ComfyUI-GG" + } + ], + "https://github.com/lenskikh/ComfyUI-Prompt-Worker": [ + [ + "Clip and Text -> Encode", + "Prompt Body", + "Prompt Clothes", + "Prompt Merger", + "Prompt Worker", + "Prompt \u0421onstructor" + ], + { + "title_aux": "Propmt Worker" + } + ], + "https://github.com/leoleelxh/Comfy-Topaz-Photo": [ + [ + "ComfyTopazPhoto", + "ComfyTopazPhotoTestAndClean" + ], + { + "title_aux": "Comfy-Topaz-Photo" + } + ], + "https://github.com/leoleelxh/ComfyUI-LLMs": [ + [ + "LLMs Chat", + "LLMs Vision Unified", + "LLMs_Vision_Unified" + ], + { + "title_aux": "ComfyUI-LLMs" + } + ], + "https://github.com/leonardomiramondi/flux-context-comfyui": [ + [ + "FluxKontextNode" + ], + { + "title_aux": "Flux Context ComfyUI Node" + } + ], + "https://github.com/lepiai/ComfyUI-Minitools": [ + [ + "LP-CropTransparentEdges", + "LP-ImageToMaskWithAlpha", + "LP-TranslateToEN", + "LP-color2RGB", + "LP-hex2dec", + "NumericSlider" + ], + { + "title_aux": "ComfyUI-Minitools" + } + ], + "https://github.com/lerignoux/ComfyUI-PechaKucha": [ + [ + "GeneratePowerpoint", + "SplitPrompt" + ], + { + "title_aux": "ComfyUI-PechaKucha" + } + ], + "https://github.com/lgldlk/ComfyUI-PC-ding-dong": [ + [ + "pc ding dong", + "pc ding dong text", + "pc time sleep" + ], + { + "title_aux": "ComfyUI-PC-ding-dong" + } + ], + "https://github.com/lgldlk/ComfyUI-PSD-Replace": [ + [ + "psd replace" + ], + { + "title_aux": "ComfyUI-PSD-Replace" + } + ], + "https://github.com/liangt/comfyui-loadimagewithsubfolder": [ + [ + "LoadImageWithSubfolder" + ], + { + "title_aux": "comfyui-loadimagewithsubfolder" + } + ], + "https://github.com/licyk/ComfyUI-HakuImg": [ + [ + "BlendImage", + "Blur", + "Chromatic", + "Color", + "Curve", + "CustomExif", + "Flip", + "Glow", + "InOutPaint", + "LenDistortion", + "OutlineExpansion", + "PixelOE", + "Pixelize", + "PreResize", + "SaveImageWithCustomExif", + "Sketch", + "TiltShift" + ], + { + "title_aux": "ComfyUI-HakuImg" + } + ], + "https://github.com/licyk/ComfyUI-TCD-Sampler": [ + [ + "TCDScheduler" + ], + { + "title_aux": "ComfyUI-TCD-Sampler" + } + ], + "https://github.com/lihaoyun6/ComfyUI-BlindWatermark": [ + [ + "ApplyBlindWatermark", + "ApplyBlindWatermarkAdvanced", + "DecodeBlindWatermark", + "DecodeBlindWatermarkAdvanced" + ], + { + "title_aux": "ComfyUI-BlindWatermark" + } + ], + "https://github.com/lihaoyun6/ComfyUI-CSV-Random-Picker": [ + [ + "CSVRandomPicker" + ], + { + "title_aux": "ComfyUI-CSV-Random-Picker" + } + ], + "https://github.com/lingha0h/comfyui_kj": [ + [ + "cpm_textInput" + ], + { + "title_aux": "comfyui_kj" + } + ], + "https://github.com/linjian-ufo/ComfyUI_GLM4V_voltspark": [ + [ + "Glm4vBatchNode", + "Glm4vNode" + ], + { + "title_aux": "GLM-4V Image Descriptor" + } + ], + "https://github.com/linjian-ufo/comfyui_deepseek_lj257_update": [ + [ + "DeepSeekChatNode" + ], + { + "title_aux": "DeepSeek Chat Node for ComfyUI" + } + ], + "https://github.com/linksluckytime/comfyui_snacknodes": [ + [ + "ImageInfo", + "ImageScaler", + "TextBox", + "TextProcessor" + ], + { + "title_aux": "comfyui_snacknodes" + } + ], + "https://github.com/linshier/comfyui-remote-tools": [ + [ + "LoadBase64(js)", + "LoadBase64FromRemote", + "SendBase64ToRemote" + ], + { + "title_aux": "comfyui-remote-tools" + } + ], + "https://github.com/lisaks/comfyui-panelforge": [ + [ + "FrameNode", + "PageNode", + "RowNode" + ], + { + "title_aux": "Pixstri ComfyUI Comics" + } + ], + "https://github.com/liuqianhonga/ComfyUI-Html2Image": [ + [ + "CameraWatermark", + "TemplateToImage", + "WebpageScreenshot" + ], + { + "title_aux": "ComfyUI-Html2Image" + } + ], + "https://github.com/liuqianhonga/ComfyUI-Image-Compressor": [ + [ + "BatchImageCompressor", + "ImageCompressor" + ], + { + "title_aux": "ComfyUI-Image-Compressor" + } + ], + "https://github.com/liuqianhonga/ComfyUI-QHNodes": [ + [ + "BatchImageCompressor", + "CameraWatermark", + "DownloadCheckpoint", + "DownloadControlNet", + "DownloadLora", + "DownloadUNET", + "DownloadVAE", + "DynamicExpression", + "FileSave", + "Gemini", + "ImageCompressor", + "ImageCountFromFolder", + "JsonToCSV", + "JsonUnpack", + "LoadImageFromFolder", + "LoadLoraFromFolder", + "LoadPromptsFromFolder", + "PresetSizeLatent", + "SamplerSettings", + "ShowTranslateString", + "StringConverter", + "StringFormatter", + "StringList", + "StringListFromCSV", + "StringListToCSV", + "StringMatcher", + "StringTranslate", + "TemplateToImage", + "TimeFormatter", + "UnifiedPromptGenerator", + "WebpageScreenshot" + ], + { + "title_aux": "ComfyUI-QHNodes" + } + ], + "https://github.com/liuqianhonga/ComfyUI-String-Helper": [ + [ + "JsonToCSV", + "ShowTranslateString", + "StringConverter", + "StringFormatter", + "StringList", + "StringListFromCSV", + "StringListToCSV", + "StringMatcher", + "StringTranslate", + "TimeFormatter" + ], + { + "title_aux": "ComfyUI-String-Helper" + } + ], + "https://github.com/liushuchun/ComfyUI_Lora_List_With_Url_Loader": [ + [ + "LoraListUrlLoader" + ], + { + "title_aux": "ComfyUI_Lora_List_With_Url_Loader" + } + ], + "https://github.com/liusida/ComfyUI-AutoCropFaces": [ + [ + "AutoCropFaces" + ], + { + "title_aux": "ComfyUI-AutoCropFaces" + } + ], + "https://github.com/liusida/ComfyUI-B-LoRA": [ + [ + "LoadBLoRA" + ], + { + "title_aux": "ComfyUI-B-LoRA" + } + ], + "https://github.com/liusida/ComfyUI-Debug": [ + [ + "DebugInspectorNode", + "DebugModelInspectorNode", + "DebugModelPrintOutNode" + ], + { + "title_aux": "ComfyUI-Debug" + } + ], + "https://github.com/liusida/ComfyUI-Login": [ + [ + "LoadImageIncognito" + ], + { + "title_aux": "ComfyUI-Login" + } + ], + "https://github.com/liusida/ComfyUI-SD3-nodes": [ + [ + "SD3EmptyLatent", + "SD3LoadCLIPs", + "SD3LoadCheckpoint" + ], + { + "title_aux": "ComfyUI-SD3-nodes" + } + ], + "https://github.com/livepeer/ComfyUI-Stream-Pack": [ + [ + "FaceMeshDrawNode", + "FaceMeshMaskNode", + "FaceMeshNode", + "FeatureBankAttentionProcessor", + "SuperResolutionModelLoader", + "SuperResolutionUpscale" + ], + { + "title_aux": "ComfyUI-Stream-Pack" + } + ], + "https://github.com/ljleb/comfy-mecha": [ + [ + "Already Loaded Model Mecha Recipe", + "Any Model Mecha Recipe", + "Blocks Mecha Hyper", + "Bool Mecha Hyper", + "Float Mecha Hyper", + "Int Mecha Hyper", + "Lora Mecha Recipe", + "Mecha Converter", + "Mecha Deserializer", + "Mecha Merge Method Cache Unit", + "Mecha Merger", + "Mecha Recipe List", + "Mecha Regex Weights", + "Mecha Serializer", + "Model Mecha Recipe", + "SD1-LDM Mecha Blocks Parameters", + "SDXL-SGM Mecha Blocks Parameters", + "String Mecha Hyper" + ], + { + "title_aux": "Mecha Merge Node Pack" + } + ], + "https://github.com/lks-ai/ComfyUI-StableAudioSampler": [ + [ + "StableAudioConditioning", + "StableAudioLoadModel", + "StableAudioPrompt", + "StableAudioSampler" + ], + { + "author": "lks-ai", + "description": "A Simple integration of Stable Audio Diffusion with knobs and stuff!", + "nickname": "stableaudio", + "title": "StableAudioSampler", + "title_aux": "ComfyUI Stable Audio Open 1.0 Sampler" + } + ], + "https://github.com/lks-ai/anynode": [ + [ + "AnyNode", + "AnyNodeAnthropic", + "AnyNodeCodeViewer", + "AnyNodeExport", + "AnyNodeGemini", + "AnyNodeLocal" + ], + { + "author": "newsbubbles", + "description": "This single node uses an LLM to generate a functionality based on your request. You can make the node do anything.", + "nickname": "AnyNode", + "title": "AnyNode v0.1.1", + "title_aux": "ComfyUI AnyNode: Any Node you ask for" + } + ], + "https://github.com/lldacing/ComfyUI_BEN_ll": [ + [ + "BlurFusionForegroundEstimationForBen", + "GetMaskByBen", + "LoadRembgByBenModel", + "RembgByBen", + "RembgByBenAdvanced" + ], + { + "title_aux": "ComfyUI_BEN_ll" + } + ], + "https://github.com/lldacing/ComfyUI_BiRefNet_ll": [ + [ + "AutoDownloadBiRefNetModel", + "BlurFusionForegroundEstimation", + "GetMaskByBiRefNet", + "LoadRembgByBiRefNetModel", + "RembgByBiRefNet", + "RembgByBiRefNetAdvanced" + ], + { + "title_aux": "ComfyUI_BiRefNet_ll" + } + ], + "https://github.com/lldacing/ComfyUI_Patches_ll": [ + [ + "ApplyFirstBlockCachePatch", + "ApplyFirstBlockCachePatchAdvanced", + "ApplyTeaCachePatch", + "ApplyTeaCachePatchAdvanced", + "DitForwardOverrider", + "FluxForwardOverrider", + "VideoForwardOverrider" + ], + { + "title_aux": "ComfyUI_Patches_ll" + } + ], + "https://github.com/lldacing/ComfyUI_PuLID_Flux_ll": [ + [ + "ApplyPulidFlux", + "FixPulidFluxPatch", + "PulidFluxEvaClipLoader", + "PulidFluxFaceDetector", + "PulidFluxInsightFaceLoader", + "PulidFluxModelLoader", + "PulidFluxOptions" + ], + { + "title_aux": "ComfyUI_PuLID_Flux_ll" + } + ], + "https://github.com/lldacing/ComfyUI_StableDelight_ll": [ + [ + "ApplyStableDelight", + "LoadStableDelightModel" + ], + { + "title_aux": "ComfyUI_StableDelight_ll" + } + ], + "https://github.com/lldacing/ComfyUI_StableHair_ll": [ + [ + "ApplyHairRemover", + "ApplyHairTransfer", + "LoadStableHairRemoverModel", + "LoadStableHairTransferModel" + ], + { + "title_aux": "ComfyUI_StableHair_ll" + } + ], + "https://github.com/lldacing/comfyui-easyapi-nodes": [ + [ + "Base64ToImage", + "Base64ToMask", + "BboxToBbox", + "BboxToCropData", + "BboxesToBboxes", + "ColorPicker", + "ConvertToJsonStr", + "ConvertTypeToAny", + "CopyAndRenameFiles", + "CropImageByBbox", + "CropTargetSizeImageByBbox", + "EmptyOutputNode", + "FilterSortDependSubGraphs", + "FilterValueForList", + "ForEachClose", + "ForEachOpen", + "GetImageBatchSize", + "GetValueFromJsonObj", + "IfElseForEmptyObject", + "ImageEqual", + "ImageSizeGetter", + "ImageToBase64", + "ImageToBase64Advanced", + "IndexOfList", + "IndexesOfList", + "InnerIntCompare", + "InnerIntMathOperation", + "InnerLoopClose", + "InsightFaceBBOXDetect", + "IntToList", + "IntToNumber", + "IsNoneOrEmpty", + "IsNoneOrEmptyOptional", + "JoinList", + "ListMerge", + "ListUnWrapper", + "ListWrapper", + "LoadImageFromLocalPath", + "LoadImageFromURL", + "LoadImageToBase64", + "LoadJsonStrToList", + "LoadLocalFilePath", + "LoadMaskFromLocalPath", + "LoadMaskFromURL", + "MaskByBboxes", + "MaskImageToBase64", + "MaskToBase64", + "MaskToBase64Image", + "MaskToRle", + "NodeListToList", + "NoneNode", + "ReadTextFromLocalFile", + "RleToMask", + "SDBaseVerNumber", + "SamAutoMaskSEGS", + "SamAutoMaskSEGSAdvanced", + "SaveImagesWithoutOutput", + "SaveSingleImageWithoutOutput", + "SaveTextToFileByImagePath", + "SaveTextToLocalFile", + "SelectBbox", + "SelectBboxes", + "ShowBoolean", + "ShowFloat", + "ShowInt", + "ShowNumber", + "ShowString", + "SliceList", + "SortDependSubGraphs", + "SplitStringToList", + "StringArea", + "StringToList", + "TryFreeMemory" + ], + { + "title_aux": "comfyui-easyapi-nodes" + } + ], + "https://github.com/lo-th/Comfyui_three_js": [ + [ + "ThreeView" + ], + { + "title_aux": "Comfyui_three_js" + } + ], + "https://github.com/logtd/ComfyUI-4DHumans": [ + [ + "LoadDetectron", + "LoadHMR", + "ProcessHumans", + "SelectHuman" + ], + { + "title_aux": "ComfyUI-4DHumans" + } + ], + "https://github.com/logtd/ComfyUI-APGScaling": [ + [ + "APGFunction" + ], + { + "title_aux": "ComfyUI-APGScaling" + } + ], + "https://github.com/logtd/ComfyUI-DiLightNet": [ + [ + "LoadDiLightControlNet", + "PrepareDiLightCond" + ], + { + "title_aux": "ComfyUI-DiLightNet" + } + ], + "https://github.com/logtd/ComfyUI-FLATTEN": [ + [ + "ApplyFlattenAttentionNode", + "CreateFlowNoiseNode", + "FlattenCheckpointLoaderNode", + "KSamplerFlattenNode", + "TrajectoryNode", + "UnsamplerFlattenNode" + ], + { + "title_aux": "ComfyUI-FLATTEN" + } + ], + "https://github.com/logtd/ComfyUI-Fluxtapoz": [ + [ + "AddFluxFlow", + "ApplyFluxRaveAttention", + "ApplyRefFlux", + "ApplyRegionalConds", + "ConfigureModifiedFlux", + "CreateRegionalCond", + "FlowEditForwardSampler", + "FlowEditGuider", + "FlowEditReverseSampler", + "FlowEditSampler", + "FluxAttnOverride", + "FluxDeGuidance", + "FluxForwardODESampler", + "FluxInverseSampler", + "FluxNoiseMixer", + "FluxReverseODESampler", + "InFluxFlipSigmas", + "InFluxModelSamplingPred", + "OutFluxModelSamplingPred", + "PAGAttention", + "PrepareAttnBank", + "RFDoubleBlocksOverride", + "RFSingleBlocksOverride", + "RegionalStyleModelApply", + "SEGAttention" + ], + { + "title_aux": "ComfyUI-Fluxtapoz" + } + ], + "https://github.com/logtd/ComfyUI-InstanceDiffusion": [ + [ + "ApplyScaleUModelNode", + "DownloadInstanceDiffusionModels", + "InstanceDiffusionTrackingPrompt", + "LoadInstanceFusersNode", + "LoadInstancePositionNetModel", + "LoadInstanceScaleUNode" + ], + { + "title_aux": "InstanceDiffusion Nodes" + } + ], + "https://github.com/logtd/ComfyUI-InversedNoise": [ + [ + "CombineNoiseLatentNode", + "MixNoiseNode", + "SamplerInversedEulerNode" + ], + { + "title_aux": "ComfyUI-InversedNoise" + } + ], + "https://github.com/logtd/ComfyUI-MochiEdit": [ + [ + "MochiPrepareSigmas", + "MochiResampler", + "MochiUnsampler", + "MochiWrapperResampler", + "MochiWrapperSamplerCustom", + "MochiWrapperUnsampler" + ], + { + "title_aux": "ComfyUI-MochiEdit" + } + ], + "https://github.com/logtd/ComfyUI-MotionThiefExperiment": [ + [ + "ApplyRefMotionNode", + "MotionRefSettingsCustomNode", + "MotionRefSettingsDefaultNode" + ], + { + "title_aux": "ComfyUI-MotionThiefExperiment" + } + ], + "https://github.com/logtd/ComfyUI-RAVE_ATTN": [ + [ + "ApplyRaveAttentionNode", + "AttentionOverrideSD15Node", + "AttentionOverrideSDXLNode" + ], + { + "title_aux": "ComfyUI-RAVE Attention" + } + ], + "https://github.com/logtd/ComfyUI-ReNoise": [ + [ + "ReNoiseModelSamplingPred", + "ReNoiseSampler" + ], + { + "title_aux": "ComfyUI-ReNoise" + } + ], + "https://github.com/logtd/ComfyUI-RefSampling": [ + [ + "ApplyRefContentNode", + "ApplyRefStyleNode", + "ApplyRefUNetNode" + ], + { + "title_aux": "ComfyUI-RefSampling" + } + ], + "https://github.com/logtd/ComfyUI-RefUNet": [ + [ + "ConfigRefMapAdv", + "ConfigureRefNet", + "CreateRefBank", + "CustomRefMapSD1", + "PrepareRefLatents", + "ReadSampler", + "RefModelSamplingPred", + "VisionClipEncode", + "WriteSampler" + ], + { + "title_aux": "ComfyUI-RefUNet" + } + ], + "https://github.com/logtd/ComfyUI-SEGAttention": [ + [ + "SEGAttention" + ], + { + "title_aux": "ComfyUI-SEGAttention" + } + ], + "https://github.com/logtd/ComfyUI-SSREncoder": [ + [ + "ApplySSR", + "EncodeSSRQuery", + "LoadSSRAligner", + "LoadSSRAttention" + ], + { + "title_aux": "ComfyUI-SSREncoder" + } + ], + "https://github.com/logtd/ComfyUI-SeeCoder": [ + [ + "LoadSeeCoder", + "LoadSeeCoderUncond", + "SeecoderEncode" + ], + { + "title_aux": "ComfyUI-SeeCoder" + } + ], + "https://github.com/logtd/ComfyUI-TrackingNodes": [ + [ + "OpenPoseTrackerNode", + "YOLOTrackerNode" + ], + { + "title_aux": "Tracking Nodes for Videos" + } + ], + "https://github.com/logtd/ComfyUI-ViewCrafter": [ + [ + "ApplyViewCrafter", + "LoadViewCrafter", + "ScaleImages" + ], + { + "title_aux": "ComfyUI-ViewCrafter" + } + ], + "https://github.com/lonelyowl13/artist_randomizer": [ + [ + "AddRandomArtists", + "TextInput" + ], + { + "title_aux": "Artist tag randomizer for comfyui" + } + ], + "https://github.com/longgui0318/comfyui-common-util": [ + [ + "Added Layer Info To Array", + "Enhanced Random Light Source", + "Float Relay", + "HLFrequencyDetailRestore", + "Hex to Color", + "Image Add Alpha", + "Image Frequency Analyzer", + "Image Relay", + "Image Remove Alpha", + "Image Resize With Padding", + "Init Layer Info Array", + "Int Relay", + "Layer Image Seleted", + "Layer Images IPAdapter Advanced", + "Layer Info Array Fuse", + "Mask Relay", + "String Relay" + ], + { + "title_aux": "comfyui-common-util" + } + ], + "https://github.com/longgui0318/comfyui-llm-assistant": [ + [ + "Chat With LLM", + "Generate Stable Diffsution Prompt With LLM", + "Translate Text With LLM" + ], + { + "title_aux": "comfyui-llm-assistant" + } + ], + "https://github.com/longgui0318/comfyui-magic-clothing": [ + [ + "Add Magic Clothing Attention", + "Change Pipeline Dtype And Device", + "Change Pixel Value Normalization", + "Diffusers Model Makeup &MC", + "Diffusers Scheduler Loader &MC", + "Load Magic Clothing Adapter", + "Load Magic Clothing Model", + "Load Magic Clothing Pipeline", + "Load Magic Clothing Pipeline With Path", + "RUN Magic Clothing Diffusers Model" + ], + { + "title_aux": "comfyui-magic-clothing" + } + ], + "https://github.com/longgui0318/comfyui-mask-util": [ + [ + "Image Adaptive Crop M&R", + "Image Adaptive Crop With Mask", + "Image Change DType", + "Image Change Device", + "Image Resolution Adaptive With X", + "Image Resolution Limit With 8K", + "Load Image With Name", + "Mask Change DType", + "Mask Change Device", + "Mask Selection Of Masks", + "Model Change Device", + "Model Change Device Repeaters", + "Output Image To Input", + "Split Masks" + ], + { + "title_aux": "comfyui-mask-util" + } + ], + "https://github.com/lord-lethris/ComfyUI-RPG-Characters": [ + [ + "ModelLikenessSwitch", + "PromptConcatenatorNode", + "PromptConditioningConverter", + "PromptSelectorNode", + "RPGArtStyleSelector", + "RPGCharacterSelector" + ], + { + "title_aux": "ComfyUI-RPG-Characters" + } + ], + "https://github.com/lordgasmic/comfyui_save_image_with_options": [ + [ + "SaveImageWithOptions" + ], + { + "title_aux": "comfyui_save_image_with_options" + } + ], + "https://github.com/lordgasmic/comfyui_wildcards": [ + [ + "CLIPTextEncodeWithWildcards" + ], + { + "title_aux": "comfyui_wildcards" + } + ], + "https://github.com/lquesada/ComfyUI-Inpaint-CropAndStitch": [ + [ + "InpaintCrop", + "InpaintCropImproved", + "InpaintExtendOutpaint", + "InpaintResize", + "InpaintStitch", + "InpaintStitchImproved" + ], + { + "title_aux": "ComfyUI-Inpaint-CropAndStitch" + } + ], + "https://github.com/lquesada/ComfyUI-Interactive": [ + [ + "InteractiveFloat", + "InteractiveInteger", + "InteractiveReset", + "InteractiveSave", + "InteractiveSeed", + "InteractiveSelector", + "InteractiveSelectorWithParameters", + "InteractiveString", + "InteractiveStringAppend", + "InteractiveStringMultiline", + "InteractiveSwitch", + "InteractiveSwitchWithParameters" + ], + { + "title_aux": "ComfyUI-Interactive" + } + ], + "https://github.com/lquesada/ComfyUI-Prompt-Combinator": [ + [ + "PromptCombinator", + "PromptCombinatorExportGallery", + "PromptCombinatorMerger", + "PromptCombinatorRandomPrompt" + ], + { + "title_aux": "ComfyUI-Prompt-Combinator" + } + ], + "https://github.com/lrzjason/ComfyUI-Watermark-Detection": [ + [ + "WatermarkDetector", + "WatermarkDetectorLoader" + ], + { + "title_aux": "ComfyUI Watermark Detection Node" + } + ], + "https://github.com/lrzjason/Comfyui-In-Context-Lora-Utils": [ + [ + "AddMaskForICLora", + "AutoPatch", + "ConcatContextWindow", + "CreateContextWindow" + ], + { + "title_aux": "Comfyui-In-Context-Lora-Utils" + } + ], + "https://github.com/lrzjason/Comfyui-Kolors-Utils": [ + [ + "SaveKolors", + "SaveWeightAsKolorsUnet" + ], + { + "title_aux": "Comfyui Kolors Utils" + } + ], + "https://github.com/lrzjason/Comfyui-ThinkRemover": [ + [ + "ThinkRemover" + ], + { + "title_aux": "Comfyui-ThinkRemover" + } + ], + "https://github.com/ltdrdata/ComfyUI-Impact-Pack": [ + [ + "AddMask", + "AnyPipeToBasic", + "BasicPipeToDetailerPipe", + "BasicPipeToDetailerPipeSDXL", + "BboxDetectorCombined_v2", + "BboxDetectorSEGS", + "BitwiseAndMask", + "BitwiseAndMaskForEach", + "CLIPSegDetectorProvider", + "CfgScheduleHookProvider", + "CombineRegionalPrompts", + "CoreMLDetailerHookProvider", + "CustomNoiseDetailerHookProvider", + "CustomSamplerDetailerHookProvider", + "DenoiseScheduleHookProvider", + "DenoiseSchedulerDetailerHookProvider", + "DetailerForEach", + "DetailerForEachDebug", + "DetailerForEachDebugPipe", + "DetailerForEachPipe", + "DetailerForEachPipeForAnimateDiff", + "DetailerHookCombine", + "DetailerPipeToBasicPipe", + "EditBasicPipe", + "EditDetailerPipe", + "EditDetailerPipeSDXL", + "EmptySegs", + "FaceDetailer", + "FaceDetailerPipe", + "FromBasicPipe", + "FromBasicPipe_v2", + "FromDetailerPipe", + "FromDetailerPipeSDXL", + "FromDetailerPipe_v2", + "GITSSchedulerFuncProvider", + "ImageListToImageBatch", + "ImageMaskSwitch", + "ImageReceiver", + "ImageSender", + "ImpactAssembleSEGS", + "ImpactBoolean", + "ImpactCombineConditionings", + "ImpactCompare", + "ImpactConcatConditionings", + "ImpactConditionalBranch", + "ImpactConditionalBranchSelMode", + "ImpactConditionalStopIteration", + "ImpactControlBridge", + "ImpactControlNetApplyAdvancedSEGS", + "ImpactControlNetApplySEGS", + "ImpactControlNetClearSEGS", + "ImpactConvertDataType", + "ImpactCount_Elts_in_SEGS", + "ImpactDecomposeSEGS", + "ImpactDilateMask", + "ImpactDilateMaskInSEGS", + "ImpactDilate_Mask_SEG_ELT", + "ImpactDummyInput", + "ImpactEdit_SEG_ELT", + "ImpactExecutionOrderController", + "ImpactFlattenMask", + "ImpactFloat", + "ImpactFrom_SEG_ELT", + "ImpactFrom_SEG_ELT_bbox", + "ImpactFrom_SEG_ELT_crop_region", + "ImpactGaussianBlurMask", + "ImpactGaussianBlurMaskInSEGS", + "ImpactHFTransformersClassifierProvider", + "ImpactIPAdapterApplySEGS", + "ImpactIfNone", + "ImpactImageBatchToImageList", + "ImpactImageInfo", + "ImpactInt", + "ImpactInversedSwitch", + "ImpactIsNotEmptySEGS", + "ImpactKSamplerAdvancedBasicPipe", + "ImpactKSamplerBasicPipe", + "ImpactLatentInfo", + "ImpactListBridge", + "ImpactLogger", + "ImpactLogicalOperators", + "ImpactMakeAnyList", + "ImpactMakeImageBatch", + "ImpactMakeImageList", + "ImpactMakeMaskBatch", + "ImpactMakeMaskList", + "ImpactMakeTileSEGS", + "ImpactMinMax", + "ImpactNeg", + "ImpactNegativeConditioningPlaceholder", + "ImpactNodeSetMuteState", + "ImpactQueueTrigger", + "ImpactQueueTriggerCountdown", + "ImpactRemoteBoolean", + "ImpactRemoteInt", + "ImpactSAM2VideoDetectorSEGS", + "ImpactSEGSClassify", + "ImpactSEGSConcat", + "ImpactSEGSIntersectionFilter", + "ImpactSEGSLabelAssign", + "ImpactSEGSLabelFilter", + "ImpactSEGSMerge", + "ImpactSEGSNMSFilter", + "ImpactSEGSOrderedFilter", + "ImpactSEGSPicker", + "ImpactSEGSRangeFilter", + "ImpactSEGSToMaskBatch", + "ImpactSEGSToMaskList", + "ImpactScaleBy_BBOX_SEG_ELT", + "ImpactSchedulerAdapter", + "ImpactSegsAndMask", + "ImpactSegsAndMaskForEach", + "ImpactSelectNthItemOfAnyList", + "ImpactSetWidgetValue", + "ImpactSimpleDetectorSEGS", + "ImpactSimpleDetectorSEGSPipe", + "ImpactSimpleDetectorSEGS_for_AD", + "ImpactSleep", + "ImpactStringSelector", + "ImpactSwitch", + "ImpactValueReceiver", + "ImpactValueSender", + "ImpactWildcardEncode", + "ImpactWildcardProcessor", + "IterativeImageUpscale", + "IterativeLatentUpscale", + "KSamplerAdvancedProvider", + "KSamplerProvider", + "LamaRemoverDetailerHookProvider", + "LatentPixelScale", + "LatentReceiver", + "LatentSender", + "LatentSwitch", + "MaskDetailerPipe", + "MaskListToMaskBatch", + "MaskRectArea", + "MaskRectAreaAdvanced", + "MaskToSEGS", + "MaskToSEGS_for_AnimateDiff", + "MasksToMaskList", + "MediaPipeFaceMeshToSEGS", + "NoiseInjectionDetailerHookProvider", + "NoiseInjectionHookProvider", + "ONNXDetectorProvider", + "ONNXDetectorSEGS", + "PixelKSampleHookCombine", + "PixelKSampleUpscalerProvider", + "PixelKSampleUpscalerProviderPipe", + "PixelTiledKSampleUpscalerProvider", + "PixelTiledKSampleUpscalerProviderPipe", + "PreviewBridge", + "PreviewBridgeLatent", + "PreviewDetailerHookProvider", + "ReencodeLatent", + "ReencodeLatentPipe", + "RegionalPrompt", + "RegionalSampler", + "RegionalSamplerAdvanced", + "RemoveImageFromSEGS", + "RemoveNoiseMask", + "SAMDetectorCombined", + "SAMDetectorSegmented", + "SAMLoader", + "SEGSDetailer", + "SEGSDetailerForAnimateDiff", + "SEGSLabelFilterDetailerHookProvider", + "SEGSOrderedFilterDetailerHookProvider", + "SEGSPaste", + "SEGSPreview", + "SEGSPreviewCNet", + "SEGSRangeFilterDetailerHookProvider", + "SEGSSwitch", + "SEGSToImageList", + "SEGSUpscaler", + "SEGSUpscalerPipe", + "SegmDetectorCombined_v2", + "SegmDetectorSEGS", + "Segs Mask", + "Segs Mask ForEach", + "SegsToCombinedMask", + "SetDefaultImageForSEGS", + "StepsScheduleHookProvider", + "StringListToString", + "SubtractMask", + "SubtractMaskForEach", + "TiledKSamplerProvider", + "ToBasicPipe", + "ToBinaryMask", + "ToDetailerPipe", + "ToDetailerPipeSDXL", + "TwoAdvancedSamplersForMask", + "TwoSamplersForMask", + "TwoSamplersForMaskUpscalerProvider", + "TwoSamplersForMaskUpscalerProviderPipe", + "UnsamplerDetailerHookProvider", + "UnsamplerHookProvider", + "VariationNoiseDetailerHookProvider", + "WildcardPromptFromString" + ], + { + "author": "Dr.Lt.Data", + "description": "This extension offers various detector nodes and detailer nodes that allow you to configure a workflow that automatically enhances facial details. And provide iterative upscaler.", + "nickname": "Impact Pack", + "preemptions": [ + "SAMLoader" + ], + "title": "Impact Pack", + "title_aux": "ComfyUI Impact Pack" + } + ], + "https://github.com/ltdrdata/ComfyUI-Impact-Subpack": [ + [ + "UltralyticsDetectorProvider" + ], + { + "author": "Dr.Lt.Data", + "description": "This extension provides UltralyticsDetectorProvider node", + "nickname": "Impact Subpack", + "title": "Impact Subpack", + "title_aux": "ComfyUI Impact Subpack" + } + ], + "https://github.com/ltdrdata/ComfyUI-Inspire-Pack": [ + [ + "AnimeLineArt_Preprocessor_Provider_for_SEGS //Inspire", + "ApplyLBW //Inspire", + "ApplyRegionalIPAdapters //Inspire", + "BindImageListPromptList //Inspire", + "CLIPTextEncodeWithWeight //Inspire", + "CacheBackendData //Inspire", + "CacheBackendDataList //Inspire", + "CacheBackendDataNumberKey //Inspire", + "CacheBackendDataNumberKeyList //Inspire", + "CacheBridge //Inspire", + "Canny_Preprocessor_Provider_for_SEGS //Inspire", + "ChangeImageBatchSize //Inspire", + "ChangeLatentBatchSize //Inspire", + "CheckpointLoaderSimpleShared //Inspire", + "ColorMapToMasks //Inspire", + "ColorMaskToDepthMask //Inspire", + "Color_Preprocessor_Provider_for_SEGS //Inspire", + "CompositeNoise //Inspire", + "ConcatConditioningsWithMultiplier //Inspire", + "ConditioningStretch //Inspire", + "ConditioningUpscale //Inspire", + "DWPreprocessor_Provider_for_SEGS //Inspire", + "DropItems //Inspire", + "FakeScribblePreprocessor_Provider_for_SEGS //Inspire", + "FloatRange //Inspire", + "ForeachListBegin //Inspire", + "ForeachListEnd //Inspire", + "FromIPAdapterPipe //Inspire", + "GlobalSampler //Inspire", + "GlobalSeed //Inspire", + "HEDPreprocessor_Provider_for_SEGS //Inspire", + "HyperTile //Inspire", + "IPAdapterModelHelper //Inspire", + "ImageBatchSplitter //Inspire", + "InpaintPreprocessor_Provider_for_SEGS //Inspire", + "IsCached //Inspire", + "KSampler //Inspire", + "KSamplerAdvanced //Inspire", + "KSamplerAdvancedPipe //Inspire", + "KSamplerAdvancedProgress //Inspire", + "KSamplerPipe //Inspire", + "KSamplerProgress //Inspire", + "LatentBatchSplitter //Inspire", + "LeRes_DepthMap_Preprocessor_Provider_for_SEGS //Inspire", + "LineArt_Preprocessor_Provider_for_SEGS //Inspire", + "ListCounter //Inspire", + "LoadDiffusionModelShared //Inspire", + "LoadImage //Inspire", + "LoadImageListFromDir //Inspire", + "LoadImagesFromDir //Inspire", + "LoadLBW //Inspire", + "LoadPromptsFromDir //Inspire", + "LoadPromptsFromFile //Inspire", + "LoadSinglePromptFromFile //Inspire", + "LoadTextEncoderShared //Inspire", + "LoraBlockInfo //Inspire", + "LoraLoaderBlockWeight //Inspire", + "MakeBasicPipe //Inspire", + "MakeLBW //Inspire", + "Manga2Anime_LineArt_Preprocessor_Provider_for_SEGS //Inspire", + "MediaPipeFaceMeshDetectorProvider //Inspire", + "MediaPipe_FaceMesh_Preprocessor_Provider_for_SEGS //Inspire", + "MeshGraphormerDepthMapPreprocessorProvider_for_SEGS //Inspire", + "MiDaS_DepthMap_Preprocessor_Provider_for_SEGS //Inspire", + "OpenPose_Preprocessor_Provider_for_SEGS //Inspire", + "PromptBuilder //Inspire", + "PromptExtractor //Inspire", + "RGB_HexToHSV //Inspire", + "RandomGeneratorForList //Inspire", + "RandomNoise //Inspire", + "RegionalCFG //Inspire", + "RegionalConditioningColorMask //Inspire", + "RegionalConditioningSimple //Inspire", + "RegionalIPAdapterColorMask //Inspire", + "RegionalIPAdapterEncodedColorMask //Inspire", + "RegionalIPAdapterEncodedMask //Inspire", + "RegionalIPAdapterMask //Inspire", + "RegionalPromptColorMask //Inspire", + "RegionalPromptSimple //Inspire", + "RegionalSeedExplorerColorMask //Inspire", + "RegionalSeedExplorerMask //Inspire", + "RemoveBackendData //Inspire", + "RemoveBackendDataNumberKey //Inspire", + "RemoveControlNet //Inspire", + "RemoveControlNetFromRegionalPrompts //Inspire", + "RetrieveBackendData //Inspire", + "RetrieveBackendDataNumberKey //Inspire", + "SaveLBW //Inspire", + "ScheduledCFGGuider //Inspire", + "ScheduledPerpNegCFGGuider //Inspire", + "SeedExplorer //Inspire", + "SeedLogger //Inspire", + "SelectNthMask //Inspire", + "ShowCachedInfo //Inspire", + "StableCascade_CheckpointLoader //Inspire", + "TilePreprocessor_Provider_for_SEGS //Inspire", + "ToIPAdapterPipe //Inspire", + "UnzipPrompt //Inspire", + "WildcardEncode //Inspire", + "WorklistToItemList //Inspire", + "XY Input: Lora Block Weight //Inspire", + "ZipPrompt //Inspire", + "Zoe_DepthMap_Preprocessor_Provider_for_SEGS //Inspire" + ], + { + "author": "Dr.Lt.Data", + "description": "This extension provides various nodes to support Lora Block Weight, Regional Nodes, Backend Cache, Prompt Utils, List Utils and the Impact Pack.", + "nickname": "Inspire Pack", + "nodename_pattern": "Inspire$", + "title": "Inspire Pack", + "title_aux": "ComfyUI Inspire Pack" + } + ], + "https://github.com/ltdrdata/comfyui-connection-helper": [ + [], + { + "author": "Dr.Lt.Data", + "description": "Helper", + "nickname": "Connection Helper", + "nodename_pattern": "Inspire$", + "title": "ComfyUI Connection Helper", + "title_aux": "ComfyUI Connection Helper" + } + ], + "https://github.com/ltdrdata/was-node-suite-comfyui": [ + [ + "BLIP Analyze Image", + "BLIP Model Loader", + "Blend Latents", + "Boolean To Text", + "Bounded Image Blend", + "Bounded Image Blend with Mask", + "Bounded Image Crop", + "Bounded Image Crop with Mask", + "Bus Node", + "CLIP Input Switch", + "CLIP Vision Input Switch", + "CLIPSEG2", + "CLIPSeg Batch Masking", + "CLIPSeg Masking", + "CLIPSeg Model Loader", + "CLIPTextEncode (BlenderNeko Advanced + NSP)", + "CLIPTextEncode (NSP)", + "Cache Node", + "Checkpoint Loader", + "Checkpoint Loader (Simple)", + "Conditioning Input Switch", + "Constant Number", + "Control Net Model Input Switch", + "Convert Masks to Images", + "Create Grid Image", + "Create Grid Image from Batch", + "Create Morph Image", + "Create Morph Image from Path", + "Create Video from Path", + "Debug Number to Console", + "Dictionary to Console", + "Diffusers Hub Model Down-Loader", + "Diffusers Model Loader", + "Export API", + "HSL to Hex", + "Hex to HSL", + "Image Analyze", + "Image Aspect Ratio", + "Image Batch", + "Image Blank", + "Image Blend", + "Image Blend by Mask", + "Image Blending Mode", + "Image Bloom Filter", + "Image Bounds", + "Image Bounds to Console", + "Image Canny Filter", + "Image Chromatic Aberration", + "Image Color Palette", + "Image Crop Face", + "Image Crop Location", + "Image Crop Square Location", + "Image Displacement Warp", + "Image Dragan Photography Filter", + "Image Edge Detection Filter", + "Image Film Grain", + "Image Filter Adjustments", + "Image Flip", + "Image Generate Gradient", + "Image Gradient Map", + "Image High Pass Filter", + "Image History Loader", + "Image Input Switch", + "Image Levels Adjustment", + "Image Load", + "Image Lucy Sharpen", + "Image Median Filter", + "Image Mix RGB Channels", + "Image Monitor Effects Filter", + "Image Nova Filter", + "Image Padding", + "Image Paste Crop", + "Image Paste Crop by Location", + "Image Paste Face", + "Image Perlin Noise", + "Image Perlin Power Fractal", + "Image Pixelate", + "Image Power Noise", + "Image Rembg (Remove Background)", + "Image Remove Background (Alpha)", + "Image Remove Color", + "Image Resize", + "Image Rotate", + "Image Rotate Hue", + "Image SSAO (Ambient Occlusion)", + "Image SSDO (Direct Occlusion)", + "Image Save", + "Image Seamless Texture", + "Image Select Channel", + "Image Select Color", + "Image Send HTTP", + "Image Shadows and Highlights", + "Image Size to Number", + "Image Stitch", + "Image Style Filter", + "Image Threshold", + "Image Tiled", + "Image Transpose", + "Image Voronoi Noise Filter", + "Image fDOF Filter", + "Image to Latent Mask", + "Image to Noise", + "Image to Seed", + "Images to Linear", + "Images to RGB", + "Inset Image Bounds", + "Integer place counter", + "KSampler (WAS)", + "KSampler Cycle", + "Latent Batch", + "Latent Input Switch", + "Latent Noise Injection", + "Latent Size to Number", + "Latent Upscale by Factor (WAS)", + "Load Cache", + "Load Image Batch", + "Load Lora", + "Load Text File", + "Logic Boolean", + "Logic Boolean Primitive", + "Logic Comparison AND", + "Logic Comparison OR", + "Logic Comparison XOR", + "Logic NOT", + "Lora Input Switch", + "Lora Loader", + "Mask Arbitrary Region", + "Mask Batch", + "Mask Batch to Mask", + "Mask Ceiling Region", + "Mask Crop Dominant Region", + "Mask Crop Minority Region", + "Mask Crop Region", + "Mask Dilate Region", + "Mask Dominant Region", + "Mask Erode Region", + "Mask Fill Holes", + "Mask Floor Region", + "Mask Gaussian Region", + "Mask Invert", + "Mask Minority Region", + "Mask Paste Region", + "Mask Rect Area", + "Mask Rect Area (Advanced)", + "Mask Smooth Region", + "Mask Threshold Region", + "Masks Add", + "Masks Combine Batch", + "Masks Combine Regions", + "Masks Subtract", + "MiDaS Depth Approximation", + "MiDaS Mask Image", + "MiDaS Model Loader", + "Model Input Switch", + "Number Counter", + "Number Input Condition", + "Number Input Switch", + "Number Multiple Of", + "Number Operation", + "Number PI", + "Number to Float", + "Number to Int", + "Number to Seed", + "Number to String", + "Number to Text", + "Prompt Multiple Styles Selector", + "Prompt Styles Selector", + "Random Number", + "SAM Image Mask", + "SAM Model Loader", + "SAM Parameters", + "SAM Parameters Combine", + "Samples Passthrough (Stat System)", + "Save Text File", + "Seed", + "String to Text", + "Tensor Batch to Image", + "Text Add Token by Input", + "Text Add Tokens", + "Text Compare", + "Text Concatenate", + "Text Contains", + "Text Dictionary Convert", + "Text Dictionary Get", + "Text Dictionary Keys", + "Text Dictionary New", + "Text Dictionary To Text", + "Text Dictionary Update", + "Text File History Loader", + "Text Find", + "Text Find and Replace", + "Text Find and Replace Input", + "Text Find and Replace by Dictionary", + "Text Input Switch", + "Text List", + "Text List Concatenate", + "Text List to Text", + "Text Load Line From File", + "Text Multiline", + "Text Multiline (Code Compatible)", + "Text Parse A1111 Embeddings", + "Text Parse Noodle Soup Prompts", + "Text Parse Tokens", + "Text Random Line", + "Text Random Prompt", + "Text Shuffle", + "Text Sort", + "Text String", + "Text String Truncate", + "Text to Conditioning", + "Text to Console", + "Text to Number", + "Text to String", + "True Random.org Number Generator", + "Upscale Model Loader", + "Upscale Model Switch", + "VAE Input Switch", + "Video Dump Frames", + "Write to GIF", + "Write to Video", + "unCLIP Checkpoint Loader" + ], + { + "title_aux": "WAS Node Suite (Revised)" + } + ], + "https://github.com/lthero-big/ComfyUI-GaussianShadingWatermark": [ + [ + "DPR_Extractor", + "DPR_GS_Latent", + "DPR_KSamplerAdvanced" + ], + { + "title_aux": "ComfyUI-GaussianShadingWatermark" + } + ], + "https://github.com/luandev/ComfyUI-CrewAI": [ + [ + "DisplayText", + "\ud83d\udcceCrewAI Agent", + "\ud83d\udcceCrewAI Agent List", + "\ud83d\udcceCrewAI Crew", + "\ud83d\udcceCrewAI LLM Chat GPT", + "\ud83d\udcceCrewAI LLM Hugging Face", + "\ud83d\udcceCrewAI LLM Ollama", + "\ud83d\udcceCrewAI LLM OpenAI", + "\ud83d\udcceCrewAI Task", + "\ud83d\udcceCrewAI Task List", + "\ud83d\udcceCrewAI Text" + ], + { + "title_aux": "ComfyUI CrewAI" + } + ], + "https://github.com/lucak5s/comfyui_gfpgan": [ + [ + "GFPGANRestorer" + ], + { + "title_aux": "ComfyUI GFPGAN" + } + ], + "https://github.com/lujiazho/ComfyUI-CatvtonFluxWrapper": [ + [ + "CatvtonFluxSampler", + "LoadCatvtonFlux", + "LoadCatvtonFluxLoRA", + "ModelPrinter" + ], + { + "title_aux": "ComfyUI-CatvtonFluxWrapper" + } + ], + "https://github.com/lum3on/ComfyUI-FrameUtilitys": [ + [ + "FrameClipper", + "FrameExtender", + "FrameExtenderAdvanced", + "FrameRepeater", + "FrameReplacer" + ], + { + "title_aux": "ComfyUI-FrameUtilitys" + } + ], + "https://github.com/lum3on/ComfyUI-ModelQuantizer": [ + [ + "ControlNetFP8QuantizeNode", + "ControlNetMetadataViewerNode", + "ModelToStateDict", + "QuantizeFP8Format", + "QuantizeModel", + "SaveAsSafeTensor" + ], + { + "title_aux": "ComfyUI-ModelQuantizer" + } + ], + "https://github.com/lum3on/ComfyUI-StableAudioX": [ + [ + "AudioXAdvancedVolumeControl", + "AudioXAudioProcessor", + "AudioXEnhancedTextToAudio", + "AudioXEnhancedTextToMusic", + "AudioXEnhancedVideoToAudio", + "AudioXModelLoader", + "AudioXMultiModalGeneration", + "AudioXPromptHelper", + "AudioXTextToAudio", + "AudioXTextToMusic", + "AudioXVideoAudioCombiner", + "AudioXVideoMuter", + "AudioXVideoToAudio", + "AudioXVideoToMusic", + "AudioXVolumeControl" + ], + { + "title_aux": "ComfyUI-AudioX" + } + ], + "https://github.com/lum3on/ComfyUI_MJ-Scraper": [ + [ + "MJScraper" + ], + { + "title_aux": "ComfyUI Midjourney Scraper Node" + } + ], + "https://github.com/lum3on/comfyui_EdgeTAM": [ + [ + "EdgeTAMVideoTracker", + "InteractiveMaskEditor" + ], + { + "title_aux": "comfyui_EdgeTAM" + } + ], + "https://github.com/lum3on/comfyui_LLM_Polymath": [ + [ + "ConceptEraserNode", + "flux_context_preset", + "polymath_SaveAbsolute", + "polymath_StringListPicker", + "polymath_TextSplitter", + "polymath_chat", + "polymath_helper", + "polymath_scraper", + "polymath_settings", + "polymath_text_mask" + ], + { + "title_aux": "comfyui_LLM_Polymath" + } + ], + "https://github.com/lumalabs/ComfyUI-LumaAI-API": [ + [ + "CharacterReference", + "ConcatReferences", + "ImgBBUpload", + "LumaAIClient", + "LumaAddAudio2Video", + "LumaExtendGeneration", + "LumaImage2Video", + "LumaImageGeneration", + "LumaInterpolateGenerations", + "LumaModifyImage", + "LumaPreviewVideo", + "LumaText2Video", + "LumaUpscaleGeneration", + "Reference" + ], + { + "title_aux": "ComfyUI-LumaAI-API" + } + ], + "https://github.com/lxe/ComfyUI-OpenAI-Compat-LLM-Node": [ + [ + "OpenAILLMNode" + ], + { + "title_aux": "ComfyUI OpenAI Compatible LLM Node" + } + ], + "https://github.com/m-sokes/ComfyUI-Sokes-Nodes": [ + [ + "ComfyUI Folder Paths | sokes \ud83e\uddac", + "Current Date & Time | sokes \ud83e\uddac", + "Generate Random Background | sokes \ud83e\uddac", + "Hex Color Swatch | sokes \ud83e\uddac", + "Hex to Color Name | sokes \ud83e\uddac", + "Image Picker | sokes \ud83e\uddac", + "Latent Switch x9 | sokes \ud83e\uddac", + "Load Random Image | sokes \ud83e\uddac", + "Random Hex Color | sokes \ud83e\uddac", + "Random Number | sokes \ud83e\uddac", + "Replace Text with RegEx | sokes \ud83e\uddac" + ], + { + "title_aux": "ComfyUI Sokes Nodes \ud83e\uddac" + } + ], + "https://github.com/maepopi/Diffusers-in-ComfyUI": [ + [ + "BLoRALoader", + "GenerateImg2Image", + "GenerateInpaintImage", + "GenerateTxt2Image", + "Img2ImgStableDiffusionPipeline", + "InpaintingStableDiffusionPipeline", + "LoRALoader", + "MakeCanny", + "Text2ImgStableDiffusionPipeline" + ], + { + "title_aux": "Diffusers-in-ComfyUI" + } + ], + "https://github.com/magekinnarus/ComfyUI-V-Prediction-Node": [ + [ + "AddParam" + ], + { + "title_aux": "ComfyUI-V-Prediction-Node" + } + ], + "https://github.com/magic-eraser-org/ComfyUI-Unwatermark": [ + [ + "Remove Watermark" + ], + { + "title_aux": "ComfyUI-Unwatermark" + } + ], + "https://github.com/mang01010/MangoNodePack": [ + [ + "CompositeMangoLoader", + "FluxGuidanceMango", + "FluxSamplerMango", + "ImageSaverMango", + "KSamplerMango", + "LatentImageMango", + "LoraStackMango", + "MangoImageLoader", + "MangoLoader", + "MangoLoader10Loras", + "MangoModelData", + "MangoPromptLoad", + "MangoTriggerExporter", + "PromptEmbedMango", + "PromptMango", + "PromptSave" + ], + { + "title_aux": "Mango Node Pack" + } + ], + "https://github.com/mango-rgb/ComfyUI-Mango-Random-node": [ + [ + "RandomFilePathNode", + "RandomImageNode", + "RandomImagePathNode", + "RandomTextNode", + "RandomVideoPathNode" + ], + { + "title_aux": "ComfyUI-Mango-Random" + } + ], + "https://github.com/manifestations/comfyui-globetrotter": [ + [ + "LoRATrainerNode", + "OllamaLLMNode", + "OllamaVisionNode", + "TextCombinerNode" + ], + { + "title_aux": "ComfyUI Globetrotter Nodes" + } + ], + "https://github.com/manifestations/comfyui-outfit": [ + [ + "OllamaLLMNode", + "SimpleOllamaNode" + ], + { + "title_aux": "ComfyUI Outfit Nodes" + } + ], + "https://github.com/mape/ComfyUI-mape-Helpers": [ + [ + "mape Variable" + ], + { + "author": "mape", + "description": "Various QoL improvements like prompt tweaking, variable assignment, image preview, fuzzy search, error reporting, organizing and node navigation.", + "nickname": "\ud83d\udfe1 mape's helpers", + "title": "mape's helpers", + "title_aux": "mape's helpers" + } + ], + "https://github.com/maracman/ComfyUI-SubjectStyle-CSV": [ + [ + "CSVPromptProcessor" + ], + { + "title_aux": "ComfyUI-SubjectStyle-CSV" + } + ], + "https://github.com/marawan206/ComfyUI-FaceCropper": [ + [ + "NodoFaceCropping" + ], + { + "title_aux": "Face Cropper Node (2:3 Ratio)" + } + ], + "https://github.com/marcoc2/ComfyUI-AnotherUtils": [ + [ + "CustomCrop", + "LoadImagesOriginal", + "NearestUpscale", + "PixelArtNormalizer", + "SmartResize" + ], + { + "title_aux": "Image Processing Suite for ComfyUI" + } + ], + "https://github.com/marcoc2/ComfyUI_CogView4-6B_diffusers": [ + [ + "CogView4Generator" + ], + { + "title_aux": "ComfyUI-Cog" + } + ], + "https://github.com/marduk191/ComfyUI-Fluxpromptenhancer": [ + [ + "FluxPromptEnhance" + ], + { + "title_aux": "Flux Prompt Enhance Node for ComfyUI" + } + ], + "https://github.com/marduk191/comfyui-marnodes": [ + [ + "ImageToDevice", + "marduk191_5_text_string", + "marduk191_5way_text_switch", + "marduk191_s_random_latent", + "marduk191_workflow_settings" + ], + { + "author": "\u02f6marduk191", + "description": "marduk191s nodes.", + "nickname": "marduk191 workflow settings", + "title": "marduk191 workflow settings", + "title_aux": "marduk191 workflow settings" + } + ], + "https://github.com/marhensa/sdxl-recommended-res-calc": [ + [ + "RecommendedResCalc" + ], + { + "title_aux": "Recommended Resolution Calculator" + } + ], + "https://github.com/marklieberman/ComfyUI-Liebs-Picker": [ + [ + "LiebsPicker" + ], + { + "title_aux": "ComfyUI-Liebs-Picker" + } + ], + "https://github.com/marklieberman/ComfyUI-Liebs-Title": [ + [ + "LiebsTitleVar" + ], + { + "title_aux": "ComfyUI-Liebs-Title" + } + ], + "https://github.com/marklieberman/ComfyUI-Liebs-Toast": [ + [ + "LiebsToast" + ], + { + "title_aux": "ComfyUI-Liebs-Toast" + } + ], + "https://github.com/markuryy/ComfyUI-Flux-Prompt-Saver": [ + [ + "FluxPromptSaver", + "FluxTextSampler", + "ModelName" + ], + { + "title_aux": "ComfyUI Flux Prompt Saver" + } + ], + "https://github.com/markuryy/ComfyUI-Simple-Video-XY-Plot": [ + [ + "VideoXYPlotSampler" + ], + { + "title_aux": "Video XY Plot" + } + ], + "https://github.com/markuryy/ComfyUI-SuperLoader": [ + [ + "Display String", + "Display String Multiline", + "LoRA Metadata" + ], + { + "title_aux": "Super Loader" + } + ], + "https://github.com/martijnat/comfyui-previewlatent": [ + [ + "PreviewLatent", + "PreviewLatentAdvanced", + "PreviewLatentXL" + ], + { + "title_aux": "comfyui-previewlatent" + } + ], + "https://github.com/massao000/ComfyUI_aspect_ratios": [ + [ + "Aspect Ratios Node" + ], + { + "title_aux": "ComfyUI_aspect_ratios" + } + ], + "https://github.com/matan1905/ComfyUI-Serving-Toolkit": [ + [ + "AlwaysExecute", + "CommandPickerServing", + "DiscordServing", + "ServingInputImage", + "ServingInputImageAsLatent", + "ServingInputNumber", + "ServingInputText", + "ServingInputTextImage", + "ServingMultiImageOutput", + "ServingOutput", + "ServingTextOutput", + "TelegramServing", + "WebSocketServing" + ], + { + "title_aux": "ComfyUI Serving toolkit" + } + ], + "https://github.com/matorzhin/milan-nodes-comfyui": [ + [ + "LoadMultipleImagesExtended", + "LoadOneImageExtended" + ], + { + "title_aux": "milan-nodes-comfyui" + } + ], + "https://github.com/mattjohnpowell/comfyui-lmstudio-image-to-text-node": [ + [ + "Expo Lmstudio Image To Text", + "Expo Lmstudio Text Generation", + "Expo Lmstudio Unified", + "ExpoLmstudioImageToText", + "ExpoLmstudioTextGeneration", + "ExpoLmstudioUnified" + ], + { + "author": "Matt John Powell", + "description": "This extension provides three custom nodes for ComfyUI that integrate LM Studio's capabilities:", + "nickname": "LM Studio Nodes", + "title": "LM Studio Nodes for ComfyUI", + "title_aux": "LM Studio Image to Text Node for ComfyUI" + } + ], + "https://github.com/mav-rik/facerestore_cf": [ + [ + "CropFace", + "FaceRestoreCFWithModel", + "FaceRestoreModelLoader" + ], + { + "title_aux": "Facerestore CF (Code Former)" + } + ], + "https://github.com/mbrostami/ComfyUI-HF": [ + [ + "GPT2Node" + ], + { + "title_aux": "ComfyUI-HF" + } + ], + "https://github.com/mbrostami/ComfyUI-TITrain": [ + [ + "TextualInversionTraining", + "TextualInversionTrainingSDXL" + ], + { + "title_aux": "ComfyUI-TITrain" + } + ], + "https://github.com/mcmonkeyprojects/sd-dynamic-thresholding": [ + [ + "DynamicThresholdingFull", + "DynamicThresholdingSimple" + ], + { + "title_aux": "Dynamic Thresholding" + } + ], + "https://github.com/meanin2/comfyui-MGnodes": [ + [ + "ImageWatermarkNode", + "TextExtractorNode" + ], + { + "title_aux": "comfyui-MGnodes" + } + ], + "https://github.com/meap158/ComfyUI-Background-Replacement": [ + [ + "BackgroundReplacement", + "ImageComposite" + ], + { + "title_aux": "ComfyUI-Background-Replacement" + } + ], + "https://github.com/meap158/ComfyUI-GPU-temperature-protection": [ + [ + "GPUTemperatureProtection" + ], + { + "title_aux": "GPU temperature protection" + } + ], + "https://github.com/meap158/ComfyUI-Prompt-Expansion": [ + [ + "PromptExpansion" + ], + { + "title_aux": "ComfyUI-Prompt-Expansion" + } + ], + "https://github.com/mech-tools/comfyui-checkpoint-automatic-config": [ + [ + "CheckpointAutomaticConfig", + "ConfigPipe" + ], + { + "title_aux": "ComfyUI Checkpoint Automatic Config" + } + ], + "https://github.com/mediocreatmybest/ComfyUI-Transformers-Pipeline": [ + [ + "BatchProcessorTpl", + "CaptionExportTpl", + "CaptionGeneratorTpl", + "DebugModelNodeTpl", + "DebugNodeTpl", + "ExifMetadataExtractorTpl", + "Florence2NodeTpl", + "ImageLoaderTpl", + "ModelLoaderTpl", + "PresetModelListTpl", + "TaskListTpl" + ], + { + "title_aux": "ComfyUI-Transformers-Pipeline" + } + ], + "https://github.com/melMass/comfy_mtb": [ + [ + "Animation Builder (mtb)", + "Any To String (mtb)", + "Batch Float (mtb)", + "Batch Float Assemble (mtb)", + "Batch Float Fill (mtb)", + "Batch Make (mtb)", + "Batch Merge (mtb)", + "Batch Shake (mtb)", + "Batch Shape (mtb)", + "Batch Transform (mtb)", + "Bbox (mtb)", + "Bbox From Mask (mtb)", + "Blur (mtb)", + "Color Correct (mtb)", + "Colored Image (mtb)", + "Concat Images (mtb)", + "Crop (mtb)", + "Debug (mtb)", + "Deep Bump (mtb)", + "Export With Ffmpeg (mtb)", + "Face Swap (mtb)", + "Film Interpolation (mtb)", + "Fit Number (mtb)", + "Float To Number (mtb)", + "Get Batch From History (mtb)", + "Image Compare (mtb)", + "Image Premultiply (mtb)", + "Image Remove Background Rembg (mtb)", + "Image Resize Factor (mtb)", + "Image Tile Offset (mtb)", + "Int To Bool (mtb)", + "Int To Number (mtb)", + "Interpolate Clip Sequential (mtb)", + "Latent Lerp (mtb)", + "Load Face Analysis Model (mtb)", + "Load Face Enhance Model (mtb)", + "Load Face Swap Model (mtb)", + "Load Film Model (mtb)", + "Load Image From Url (mtb)", + "Load Image Sequence (mtb)", + "Mask To Image (mtb)", + "Math Expression (mtb)", + "Model Patch Seamless (mtb)", + "Pick From Batch (mtb)", + "Qr Code (mtb)", + "Restore Face (mtb)", + "Save Gif (mtb)", + "Save Image Grid (mtb)", + "Save Image Sequence (mtb)", + "Save Tensors (mtb)", + "Sharpen (mtb)", + "Smart Step (mtb)", + "Stack Images (mtb)", + "String Replace (mtb)", + "Styles Loader (mtb)", + "Text To Image (mtb)", + "Transform Image (mtb)", + "Uncrop (mtb)", + "Unsplash Image (mtb)", + "Vae Decode (mtb)" + ], + { + "nodename_pattern": "\\(mtb\\)$", + "title_aux": "MTB Nodes" + } + ], + "https://github.com/melMass/comfy_oiio": [ + [ + "OIIO_ColorspaceConvert", + "OIIO_ColorspaceMatchFinder", + "OIIO_LoadImage", + "OIIO_SaveImage" + ], + { + "title_aux": "comfy-oiio" + } + ], + "https://github.com/mephisto83/petty-paint-comfyui-node": [ + [ + "ConvertWhiteToAlpha", + "PPGenerateRandomFloat", + "PPGenerateRandomNumber", + "PPKSamplerAdvanced", + "PPSelectRandomValue", + "PettyImageImageColorToMask", + "PettyPaintAppend", + "PettyPaintApplyLoRAStack", + "PettyPaintArguments", + "PettyPaintBlurs", + "PettyPaintCheckpointLoaderSimple", + "PettyPaintComponent", + "PettyPaintConditioningSetMaskAndCombine", + "PettyPaintControlNetToMasking", + "PettyPaintConvert", + "PettyPaintCountFiles", + "PettyPaintEnsureDirectory", + "PettyPaintExec", + "PettyPaintFakeConvert", + "PettyPaintFileExists", + "PettyPaintImageColorsToMasks", + "PettyPaintImageCompositeMasked", + "PettyPaintImageDims", + "PettyPaintImageMaskCropper", + "PettyPaintImagePlacement", + "PettyPaintImageSave", + "PettyPaintImageStore", + "PettyPaintImageToMask", + "PettyPaintImagesToMasks", + "PettyPaintJsonMap", + "PettyPaintJsonRead", + "PettyPaintJsonReadArray", + "PettyPaintKSampler", + "PettyPaintKSamplerAdvanced", + "PettyPaintLoRAStack", + "PettyPaintLoadImage", + "PettyPaintLoadImageMasks", + "PettyPaintLoadImages", + "PettyPaintMap", + "PettyPaintMasksToImages", + "PettyPaintNot", + "PettyPaintPassThroughNode", + "PettyPaintProcessor", + "PettyPaintRemoveAddText", + "PettyPaintSDTurboScheduler", + "PettyPaintStoryImage", + "PettyPaintText", + "PettyPaintTexts_to_Conditioning", + "PettyPaintToJson", + "PettyPaintVAEDecode", + "SkippableVAEEncode" + ], + { + "title_aux": "petty-paint-comfyui-node" + } + ], + "https://github.com/meshmesh-io/ComfyUI-MeshMesh": [ + [ + "ColorPicker", + "MasksToColoredMasks" + ], + { + "title_aux": "ComfyUI-MeshMesh" + } + ], + "https://github.com/meshmesh-io/mm-comfyui-loopback": [ + [ + "Loop", + "LoopEnd", + "LoopEnd_SEGIMAGE", + "LoopStart", + "LoopStart_SEGIMAGE" + ], + { + "title_aux": "mm-comfyui-loopback" + } + ], + "https://github.com/meshmesh-io/mm-comfyui-megamask": [ + [ + "ColorListMaskToImage", + "FlattenAndCombineMaskImages" + ], + { + "title_aux": "mm-comfyui-megamask" + } + ], + "https://github.com/metal3d/ComfyUI_Human_Parts": [ + [ + "HumanParts" + ], + { + "title_aux": "Human Parts Detector" + } + ], + "https://github.com/metal3d/ComfyUI_M3D_photo_effects": [ + [ + "Bleach Bypass", + "RGB Curve" + ], + { + "title_aux": "M3D photo effects" + } + ], + "https://github.com/metncelik/comfyui_met_suite": [ + [ + "BBOXPadding", + "BBOXResize", + "ImageResizeKeepRatio", + "PrimitiveBBOX", + "RaiseError" + ], + { + "title_aux": "comfyui_met_suite" + } + ], + "https://github.com/mfg637/ComfyUI-ScheduledGuider-Ext": [ + [ + "ArctanScheduler", + "ConcatSigmas", + "CosineScheduler", + "CustomBaseLogarithm", + "CustomExponent", + "GaussianScheduler", + "InvertSigmas", + "LogNormal Scheduler", + "OffsetSigmas", + "Parametric Peak #1", + "PerpNegScheduledCFGGuider", + "PredefinedExponent", + "PredefinedLogarithm", + "ScaleToRange", + "ScheduledCFGGuider", + "SigmasToPower", + "SplitSigmasByValue", + "k/x scheduler" + ], + { + "title_aux": "ComfyUI-ScheduledGuider-Ext" + } + ], + "https://github.com/mgfxer/ComfyUI-FrameFX": [ + [ + "DynamicAnimatedWeightsHelper", + "EdgeFXSourceImages", + "FlorencePromptTravelHelper", + "LivePromptInterpolation", + "MaskSequenceHelper", + "PromptStackManager", + "PromptTravelHelper" + ], + { + "author": "mgfxer", + "description": "This extension provides various frame and mask sequence manipulation tools for animation workflows.", + "nickname": "FrameFX \ud83d\udcab", + "title": "FrameFX", + "title_aux": "ComfyUI-FrameFX" + } + ], + "https://github.com/miaoshouai/ComfyUI-Miaoshouai-Tagger": [ + [ + "Miaoshouai_Caption_Analyzer", + "Miaoshouai_Flux_CLIPTextEncode", + "Miaoshouai_SaveTags", + "Miaoshouai_Tagger" + ], + { + "title_aux": "ComfyUI-Miaoshouai-Tagger" + } + ], + "https://github.com/michaelgold/ComfyUI-HF-Model-Downloader": [ + [ + "DownloadModel", + "ModelDownloader" + ], + { + "title_aux": "ComfyUI-HF-Model-Downloader" + } + ], + "https://github.com/microbote/ComfyUI-StyledCLIPTextEncode": [ + [ + "StyledCLIPTextEncode" + ], + { + "title_aux": "StyledCLIPTextEncode" + } + ], + "https://github.com/mihaiiancu/ComfyUI_Inpaint": [ + [ + "InpaintMediapipe" + ], + { + "title_aux": "mihaiiancu/Inpaint" + } + ], + "https://github.com/mikebilly/Transparent-background-comfyUI": [ + [ + "Transparentbackground RemBg" + ], + { + "title_aux": "Transparent-background-comfyUI" + } + ], + "https://github.com/mikkel/ComfyUI-text-overlay": [ + [ + "Image Text Overlay" + ], + { + "title_aux": "ComfyUI - Text Overlay Plugin" + } + ], + "https://github.com/mikkel/comfyui-mask-boundingbox": [ + [ + "Mask Bounding Box" + ], + { + "title_aux": "ComfyUI - Mask Bounding Box" + } + ], + "https://github.com/mingsky-ai/ComfyUI-MingNodes": [ + [ + "AddWaterMarkNode", + "AdjustBrightnessContrastSaturationNode", + "BaiduTranslateNode", + "ColorBalanceNode", + "ConvertGrayChannelNode", + "HSLColorNode", + "HighlightShadowBrightnessNode", + "ImitationHueNode", + "LightShapeNode", + "RemoveWatermarkNode" + ], + { + "title_aux": "ComfyUI-MingNodes" + } + ], + "https://github.com/mira-6/comfyui-sasolver": [ + [ + "SamplerSASolver", + "SamplerSASolverExperimental" + ], + { + "title_aux": "comfyui-sasolver" + } + ], + "https://github.com/mirabarukaso/ComfyUI_Mira": [ + [ + "BooleanListInterpreter1", + "BooleanListInterpreter4", + "BooleanListInterpreter8", + "CanvasCreatorAdvanced", + "CanvasCreatorBasic", + "CanvasCreatorSimple", + "CheckpointLoaderSimpleMira", + "CreateMaskWithCanvas", + "CreateNestedPNGMask", + "CreateSimpleMask", + "CreateTillingPNGMask", + "CreateWatermarkRemovalMask", + "EightBooleanTrigger", + "EightFloats", + "EvenOrOdd", + "EvenOrOddList", + "FloatListInterpreter1", + "FloatListInterpreter4", + "FloatListInterpreter8", + "FloatMultiplication", + "FourBooleanTrigger", + "FourFloats", + "FunctionSelectAuto", + "FunctionSwap", + "ImageBrightness", + "ImageColorTransferMira", + "ImageContrast", + "ImageGamma", + "ImageGrayscale", + "ImageHUE", + "ImageRGBChannel", + "ImageSaturation", + "ImageSaverMira", + "ImageSharpness", + "ImageToneCurve", + "IntMultiplication", + "IntSubtraction", + "IntToFloatMultiplication", + "LoRALoaderWithNameStacker", + "LoRAfromText", + "LogicNot", + "NoneToZero", + "NumeralToString", + "OneFloat", + "PngColorMasksToMaskList", + "PngColorMasksToRGB", + "PngColorMasksToString", + "PngColorMasksToStringList", + "PngRectanglesToMask", + "PngRectanglesToMaskList", + "RandomNestedLayouts", + "RandomTillingLayouts", + "SN74HC1G86", + "SN74HC86", + "SN74LVC1G125", + "SeedGeneratorMira", + "SingleBooleanTrigger", + "SixBooleanTrigger", + "StepsAndCfg", + "TextBoxMira", + "TextCombinerSix", + "TextCombinerTwo", + "TextLoopCombiner", + "TextSwitcherThreeWays", + "TextSwitcherTwoWays", + "TextWildcardSeprator", + "TextWithBooleanSwitchAndCommonTextInput", + "TwoBooleanTrigger", + "TwoFloats", + "UpscaleImageByModelThenResize", + "illustrious_character_select", + "illustrious_character_select_en", + "llm_prompt_gen_node", + "local_llm_prompt_gen" + ], + { + "title_aux": "ComfyUI_Mira" + } + ], + "https://github.com/misterjoessef/MLTask_ComfyUI": [ + [ + "FacebookPosterData", + "InstagramPosterData", + "LinkedinPosterData", + "MLTaskUtilsTextImageGenerator", + "PinterestPosterData", + "SocialManMediaToPoster", + "SocialManPostData", + "SocialManPoster", + "TiktokPosterData", + "TwitterPosterData", + "YoutubePosterData" + ], + { + "title_aux": "MLTask_ComfyUI" + } + ], + "https://github.com/mittimi/ComfyUI_mittimiLoadPreset2": [ + [ + "CombineParamDataMittimi", + "LoadImageParamMittimi", + "LoadSetParamMittimi", + "SaveImageParamMittimi", + "SaveParamToPresetMittimi" + ], + { + "author": "mittimi", + "description": "This node can easily switch between models and prompts by saving presets.", + "nickname": "mittimiLoadPreset2", + "title": "mittimiLoadPreset2", + "title_aux": "ComfyUI_mittimiLoadPreset2" + } + ], + "https://github.com/mittimi/ComfyUI_mittimiRecalculateSize": [ + [ + "RecalculateSizeMittimi01" + ], + { + "author": "mittimi", + "description": "Switch between vertical and horizontal values with a single button.", + "nickname": "mittimiWidthHeight", + "title": "mittimiWidthHeight", + "title_aux": "ComfyUI_mittimiRecalculateSize" + } + ], + "https://github.com/mittimi/ComfyUI_mittimiWidthHeight": [ + [ + "WidthHeightMittimi01" + ], + { + "author": "mittimi", + "description": "Switch between vertical and horizontal values with a single button.", + "nickname": "mittimiWidthHeight", + "title": "mittimiWidthHeight", + "title_aux": "ComfyUI_mittimiDaisyChainText" + } + ], + "https://github.com/mo230761/InsertAnything-ComfyUI-official": [ + [ + "CropBack", + "CropBackNoScaling", + "FillProcess", + "FillProcessNoScaling", + "MaskOption", + "ReduxProcess" + ], + { + "title_aux": "ComfyUI-Text-Translation" + } + ], + "https://github.com/mobilehacker/ComfyUI_format-lora-stack": [ + [ + "FormatLoraStack" + ], + { + "title_aux": "ComfyUI_format-lora-stack" + } + ], + "https://github.com/modelscope/comfyscope": [ + [ + "DashScopeFLUXAPI" + ], + { + "title_aux": "Dashscope FLUX API for ComfyUI" + } + ], + "https://github.com/modusCell/ComfyUI-dimension-node-modusCell": [ + [ + "DimensionProviderFree modusCell", + "DimensionProviderRatio modusCell", + "String Concat modusCell" + ], + { + "title_aux": "Preset Dimensions" + } + ], + "https://github.com/mohseni-mr/ComfyUI-Mohseni-Kit": [ + [ + "FloatPreview" + ], + { + "title_aux": "ComfyUI Mohseni Kit" + } + ], + "https://github.com/mohsensd1373/comfyui_wordpress": [ + [ + "SaveToWordPressNode" + ], + { + "title_aux": "comfyui_wordpress" + } + ], + "https://github.com/monkeyWie/ComfyUI-FormInput": [ + [ + "BooleanInput_FormInput", + "DisplayText_FormInput", + "TextInput_FormInput" + ], + { + "title_aux": "ComfyUI-FormInput" + } + ], + "https://github.com/moon7star9/ComfyUI_BiRefNet_Universal": [ + [ + "BiRefNet_Loader", + "BiRefNet_Remove_Background" + ], + { + "title_aux": "ComfyUI_BiRefNet_Universal" + } + ], + "https://github.com/morino-kumasan/comfyui-toml-prompt": [ + [ + "CheckPointLoaderSimpleFromString", + "IntSelector", + "JsonExtractFloat", + "JsonExtractInt", + "JsonExtractString", + "KSamplerFromJsonInfo", + "LatentSelector", + "MultipartCLIPTextEncode", + "MultipleLoraTagLoader", + "PromptLoader", + "SeedGenerator", + "StringConcat", + "StringConcatInt", + "StringPicker", + "StringSelector", + "StringViewer", + "SummaryReader", + "TomlPromptDecode" + ], + { + "title_aux": "comfyui-toml-prompt" + } + ], + "https://github.com/moustafa-nasr/ComfyUI-SimpleLogger": [ + [ + "Log Image", + "LogImageNode" + ], + { + "title_aux": "ComfyUI-SimpleLogger" + } + ], + "https://github.com/moyi7712/ComfyUI_Seamless_Patten": [ + [ + "SeamlessApply", + "SeamlessKSampler", + "SeamlessKSamplerAdvanced", + "SeamlessVae" + ], + { + "title_aux": "ComfyUI_Seamless_Patten" + } + ], + "https://github.com/mr7thing/circle_pattern_processor": [ + [ + "CirclePatternProcessor", + "CirclePatternSVGExporter", + "ImageBinarizer" + ], + { + "title_aux": "Circle Pattern Processor for ComfyUI" + } + ], + "https://github.com/mrchipset/ComfyUI-SaveImageS3": [ + [ + "SaveImageS3" + ], + { + "author": "Mr.Chip", + "description": "This extension offers a custom node to save image to S3-compatible oss.", + "nickname": "SaveImageS3", + "title": "SaveImageS3", + "title_aux": "ComfyUI-SaveImageS3" + } + ], + "https://github.com/mrhan1993/ComfyUI-Fooocus": [ + [ + "AlignYourStepsScheduler", + "BasicScheduler", + "CLIPLoader", + "CLIPMergeSimple", + "CLIPSave", + "CLIPSetLastLayer", + "CLIPTextEncode", + "CLIPTextEncodeSDXL", + "CLIPTextEncodeSDXLRefiner", + "CLIPVisionEncode", + "CLIPVisionLoader", + "Canny", + "CheckpointLoader", + "CheckpointLoaderSimple", + "CheckpointSave", + "ClearVram", + "ConditioningAverage", + "ConditioningCombine", + "ConditioningConcat", + "ConditioningSetArea", + "ConditioningSetAreaPercentage", + "ConditioningSetMask", + "ConditioningSetTimestepRange", + "ConditioningZeroOut", + "ControlNetApply", + "ControlNetApplyAdvanced", + "ControlNetLoader", + "CropMask", + "DiffControlNetLoader", + "DiffusersLoader", + "DualCLIPLoader", + "EmptyImage", + "EmptyLatentImage", + "EnhanceControl", + "EnhanceControls", + "ExponentialScheduler", + "FeatherMask", + "FlipSigmas", + "FooocusSampler", + "FooocusSettings", + "FreeU", + "FreeU_V2", + "GLIGENLoader", + "GLIGENTextBoxApply", + "GrowMask", + "HyperTile", + "HypernetworkLoader", + "ImageBatch", + "ImageBlend", + "ImageBlur", + "ImageColorToMask", + "ImageCompositeMasked", + "ImageCrop", + "ImageInvert", + "ImageOnlyCheckpointLoader", + "ImageOnlyCheckpointSave", + "ImagePadForOutpaint", + "ImagePrompts", + "ImageQuantize", + "ImageScale", + "ImageScaleBy", + "ImageScaleToTotalPixels", + "ImageSharpen", + "ImageToMask", + "ImageUpscaleWithModel", + "InpaintModelConditioning", + "InpaintOutpaint", + "InvertMask", + "JoinImageWithAlpha", + "KSampler", + "KSamplerAdvanced", + "KSamplerSelect", + "KarrasScheduler", + "LatentAdd", + "LatentBatch", + "LatentBatchSeedBehavior", + "LatentBlend", + "LatentComposite", + "LatentCompositeMasked", + "LatentCrop", + "LatentFlip", + "LatentFromBatch", + "LatentInterpolate", + "LatentMultiply", + "LatentRotate", + "LatentSubtract", + "LatentUpscale", + "LatentUpscaleBy", + "LoadImage", + "LoadImageMask", + "LoadLatent", + "LoraLoader", + "LoraLoaderModelOnly", + "LoraStacks", + "MaskComposite", + "MaskToImage", + "ModelMergeAdd", + "ModelMergeBlocks", + "ModelMergeSimple", + "ModelMergeSubtract", + "ModelSamplingContinuousEDM", + "ModelSamplingDiscrete", + "PatchModelAddDownscale", + "PerpNeg", + "PhotoMakerEncode", + "PhotoMakerLoader", + "PolyexponentialScheduler", + "PorterDuffImageComposite", + "PreviewImage", + "RebatchImages", + "RebatchLatents", + "RepeatImageBatch", + "RepeatLatentBatch", + "RescaleCFG", + "SDTurboScheduler", + "SD_4XUpscale_Conditioning", + "SVD_img2vid_Conditioning", + "SamplerCustom", + "SamplerDPMPP_2M_SDE", + "SamplerDPMPP_SDE", + "SamplerTCD", + "SaveAnimatedPNG", + "SaveAnimatedWEBP", + "SaveImage", + "SaveLatent", + "SelfAttentionGuidance", + "SetLatentNoiseMask", + "SolidMask", + "SplitImageWithAlpha", + "SplitSigmas", + "StableZero123_Conditioning", + "StableZero123_Conditioning_Batched", + "StyleModelApply", + "StyleModelLoader", + "TomePatchModel", + "UNETLoader", + "UpscaleModelLoader", + "UpscaleVary", + "VAEDecode", + "VAEDecodeTiled", + "VAEEncode", + "VAEEncodeForInpaint", + "VAEEncodeTiled", + "VAELoader", + "VAESave", + "VPScheduler", + "VideoLinearCFGGuidance", + "unCLIPCheckpointLoader", + "unCLIPConditioning" + ], + { + "author": "Konie", + "title_aux": "ComfyUI-Fooocus" + } + ], + "https://github.com/muhammederem/blip-comfyui": [ + [ + "Blip Processor Node", + "List to Text Node" + ], + { + "title_aux": "BLIP Vision-Language Model Integration" + } + ], + "https://github.com/mullakhmetov/comfyui_dynamic_util_nodes": [ + [ + "ConcatStrings", + "FormatString", + "GetFiles", + "LoadImageByPath", + "StringOutput" + ], + { + "title_aux": "comfyui_dynamic_util_nodes" + } + ], + "https://github.com/muxueChen/ComfyUI_NTCosyVoice": [ + [ + "NTCosyVoiceCrossLingualSampler", + "NTCosyVoiceInstruct2Sampler", + "NTCosyVoiceZeroShotSampler" + ], + { + "title_aux": "CosyVoice2 for ComfyUI" + } + ], + "https://github.com/muzi12888/ComfyUI-PoseKeypoint-Mask": [ + [ + "Image Brightness", + "Openpose Keypoint Mask" + ], + { + "title_aux": "PoseKeypoint Mask" + } + ], + "https://github.com/my-opencode/ComfyUI_IndustrialMagick": [ + [ + "IndustrialMagick", + "IndustrialMagickImageIngest" + ], + { + "title_aux": "ComfyUI_IndustrialMagick" + } + ], + "https://github.com/my-opencode/ComfyUI_KSamplerTimer": [ + [ + "KSamplerTimer" + ], + { + "author": "Ludovic Anterieur", + "description": "This extension provides a wrapper of the native KSampler which outputs generation time.", + "nickname": "\u23f1", + "title": "KSampler (timer)", + "title_aux": "ComfyUI_KSamplerTimer" + } + ], + "https://github.com/myshell-ai/ComfyUI-ShellAgent-Plugin": [ + [ + "ShellAgentPluginInputAudio", + "ShellAgentPluginInputBoolean", + "ShellAgentPluginInputFloat", + "ShellAgentPluginInputImage", + "ShellAgentPluginInputInteger", + "ShellAgentPluginInputText", + "ShellAgentPluginInputVideo", + "ShellAgentPluginOutputBoolean", + "ShellAgentPluginOutputFloat", + "ShellAgentPluginOutputInteger", + "ShellAgentPluginOutputText", + "ShellAgentPluginSaveAudio", + "ShellAgentPluginSaveAudios", + "ShellAgentPluginSaveImage", + "ShellAgentPluginSaveImages", + "ShellAgentPluginSaveVideoVHS" + ], + { + "author": "MyShell", + "description": "", + "title": "comfyui-shellagent-plugin", + "title_aux": "ComfyUI-ShellAgent-Plugin" + } + ], + "https://github.com/n0neye/A3D-comfyui-integration": [ + [ + "A3DListener", + "UniqueNodeName" + ], + { + "title_aux": "A3D ComfyUI Integration" + } + ], + "https://github.com/nagolinc/ComfyUI_FastVAEDecorder_SDXL": [ + [ + "FastLatentToImage" + ], + { + "title_aux": "ComfyUI_FastVAEDecorder_SDXL" + } + ], + "https://github.com/nagolinc/comfyui_openai_node": [ + [ + "OpenAINode" + ], + { + "title_aux": "comfyui_openai_node" + } + ], + "https://github.com/nako-nakoko/ComfyUI_Mel_Nodes": [ + [ + "AddFileNameonly", + "ResolutionSwitcher", + "Split Image Batch", + "Unet Selector_gguf", + "mel_RandomIntNode", + "mel_TextFilterNode", + "mel_TextSplitNode", + "mel_TextSplitNode2" + ], + { + "title_aux": "ComfyUI_Mel_Nodes" + } + ], + "https://github.com/namtb96/OmniGen2-Simple-Node": [ + [ + "OmniGen2ModelLoader", + "OmniGen2Sampler" + ], + { + "title_aux": "OmniGen2 Simple Node" + } + ], + "https://github.com/narusas/Comfyui-Logic-Support": [ + [ + "BooleanIndexAdder", + "NumberConditionChecker", + "NumberRangeIndex", + "NumberSequenceGenerator", + "StringConcatenator", + "StringSwitchByNumber" + ], + { + "title_aux": "ComfyUI Logic Support" + } + ], + "https://github.com/natto-maki/ComfyUI-NegiTools": [ + [ + "NegiTools_CompositeImages", + "NegiTools_DepthEstimationByMarigold", + "NegiTools_DetectFaceRotationForInpainting", + "NegiTools_ImageProperties", + "NegiTools_LatentProperties", + "NegiTools_NoiseImageGenerator", + "NegiTools_OpenAiDalle3", + "NegiTools_OpenAiGpt", + "NegiTools_OpenAiGpt4v", + "NegiTools_OpenAiTranslate", + "NegiTools_OpenPoseToPointList", + "NegiTools_PointListToMask", + "NegiTools_RandomImageLoader", + "NegiTools_SaveImageToDirectory", + "NegiTools_SeedGenerator", + "NegiTools_StereoImageGenerator", + "NegiTools_StringFunction" + ], + { + "title_aux": "ComfyUI-NegiTools" + } + ], + "https://github.com/nchenevey1/comfyui-gimp-nodes": [ + [ + "NC_LoadImageGIMP", + "NC_LoadMaskGIMP", + "NC_SendImageDimsWebSocketGIMP", + "NC_SendImageWebSocketGIMP" + ], + { + "title_aux": "comfyui-gimp-nodes" + } + ], + "https://github.com/negaga53/comfyui-imgloader": [ + [ + "ImageLoader" + ], + { + "title_aux": "ComfyUI Universal Image Loader" + } + ], + "https://github.com/neggo/comfyui-sambanova": [ + [ + "SambaNova API Node", + "SambaNovaNode" + ], + { + "title_aux": "comfyui-sambanova" + } + ], + "https://github.com/neocrz/comfyui-usetaesd": [ + [ + "DecodeTAESD", + "DecodeTAESDTiled", + "EncodeTAESD", + "EncodeTAESDTiled" + ], + { + "title_aux": "comfyui-usetaesd" + } + ], + "https://github.com/neph1/comfyui-smooth-step-lora-loader": [ + [ + "Smooth_Step_Lora_Loader" + ], + { + "title_aux": "comfyui-smooth-step-lora-loader" + } + ], + "https://github.com/neverbiasu/ComfyUI-BAGEL": [ + [ + "BagelImageEdit", + "BagelImageUnderstanding", + "BagelModelLoader", + "BagelTextToImage" + ], + { + "title_aux": "ComfyUI-BAGEL" + } + ], + "https://github.com/neverbiasu/ComfyUI-ChatTTS": [ + [ + "ChatTTSLoader", + "ChatTTS_ExtractSpeaker", + "ChatTTS_LoadSpeakerProfile", + "ChatTTS_Sampler", + "ChatTTS_SaveSpeakerProfile", + "ChatTTS_SeedBasedSpeaker", + "ChatTTS_TextNormalizer", + "ChatTTS_TextSplitter" + ], + { + "title_aux": "ComfyUI-ChatTTS" + } + ], + "https://github.com/neverbiasu/ComfyUI-Dashscope": [ + [ + "DashscopeEmoCaller", + "DashscopeLLMLoader", + "DashscopeModelCaller", + "DashscopeOCRCaller", + "DashscopeVLMLoader" + ], + { + "title_aux": "ComfyUI-Dashscope" + } + ], + "https://github.com/neverbiasu/ComfyUI-Image-Captioner": [ + [ + "ImageCaptioner" + ], + { + "title_aux": "ComfyUI-Image-Captioner" + } + ], + "https://github.com/neverbiasu/ComfyUI-SAM2": [ + [ + "GroundingDinoModelLoader (segment anything2)", + "GroundingDinoSAM2Segment (segment anything2)", + "InvertMask (segment anything)", + "IsMaskEmpty", + "SAM2ModelLoader (segment anything2)" + ], + { + "title_aux": "ComfyUI SAM2(Segment Anything 2)" + } + ], + "https://github.com/neverbiasu/ComfyUI-StyleShot": [ + [ + "StyleShotApply" + ], + { + "title_aux": "ComfyUI-StyleShot" + } + ], + "https://github.com/ngosset/ComfyUI-ImageSimilarity": [ + [ + "Image Similarity" + ], + { + "title_aux": "ImageSimilarity" + } + ], + "https://github.com/nicehero/comfyui-SegGPT": [ + [ + "SegGPT" + ], + { + "title_aux": "comfyui-SegGPT" + } + ], + "https://github.com/nickve28/ComfyUI-Nich-Utils": [ + [ + "Image from Dir Selector (Nich)", + "Select Text with Regular Expression (Nich)" + ], + { + "title_aux": "ComfyUI Nich Utils" + } + ], + "https://github.com/nicofdga/DZ-FaceDetailer": [ + [ + "DZ_Face_Detailer" + ], + { + "title_aux": "DZ-FaceDetailer" + } + ], + "https://github.com/niknah/ComfyUI-F5-TTS": [ + [ + "F5TTSAudio", + "F5TTSAudioAdvanced", + "F5TTSAudioInputs" + ], + { + "title_aux": "ComfyUI F5-TTS" + } + ], + "https://github.com/niknah/ComfyUI-Hunyuan-3D-2": [ + [ + "Hunyuan3D2ImageTo3D" + ], + { + "title_aux": "ComfyUI Hunyuan-3D-2" + } + ], + "https://github.com/niknah/ComfyUI-InfiniteYou": [ + [ + "InfiniteYouSampler" + ], + { + "title_aux": "ComfyUI-InfiniteYou" + } + ], + "https://github.com/niknah/audio-general-ComfyUI": [ + [ + "AudioBassTreble", + "AudioConcat", + "AudioInfo", + "AudioMix", + "AudioPitch", + "AudioSampleRate", + "AudioSpeed", + "AudioTrimSilenceRosa", + "AudioTrimSilenceVAD" + ], + { + "title_aux": "Audio General" + } + ], + "https://github.com/nilor-corp/nilor-nodes": [ + [ + "Nilor Blur Analysis", + "Nilor Categorize String", + "Nilor Count Images In Directory", + "Nilor Extract Filename from Path", + "Nilor Int To List Of Bools", + "Nilor Interpolated Float List", + "Nilor Inverse Map Float List", + "Nilor List of Ints", + "Nilor Load Image By Index", + "Nilor One Minus Float List", + "Nilor Output Filename String", + "Nilor Random String", + "Nilor Remap Float List", + "Nilor Remap Float List Auto Input", + "Nilor Repeat & Trim Image Batch", + "Nilor Repeat, Shuffle, & Trim Image Batch", + "Nilor Save EXR Arbitrary", + "Nilor Save Image To HF Dataset", + "Nilor Save Video To HF Dataset", + "Nilor Select Index From List", + "Nilor Shuffle Image Batch", + "Nilor To Sparse Index Method", + "Nilor n Fractions of Int" + ], + { + "title_aux": "Nilor Nodes by Nilor Corp" + } + ], + "https://github.com/ningxiaoxiao/comfyui-NDI": [ + [ + "NDI_LoadImage", + "NDI_SendImage" + ], + { + "title_aux": "comfyui-NDI" + } + ], + "https://github.com/nirbhay-faaya/ImgProcessing_ComfyUI": [ + [ + "ImageConcat", + "ImageCropMultEight", + "ImageCut", + "LightingPreprocessor" + ], + { + "title_aux": "ImgProcessing_ComfyUI" + } + ], + "https://github.com/nirex0/ComfyUI_pytorch_openpose": [ + [ + "pytorch_openpose" + ], + { + "title_aux": "ComfyUI_pytorch_openpose" + } + ], + "https://github.com/nisaruj/comfyui-daam": [ + [ + "CLIPTextEncodeWithTokens", + "DAAMAnalyzer", + "KSamplerDAAM" + ], + { + "title_aux": "ComfyUI-DAAM" + } + ], + "https://github.com/nisimjoseph/ComfyUI_OpenAI-Prompter": [ + [ + "OpenAI Prompt Generator" + ], + { + "title_aux": "ComfyUI OpenAI Prompter" + } + ], + "https://github.com/nkchocoai/ComfyUI-DanbooruPromptQuiz": [ + [ + "DanbooruPromptComparison", + "DanbooruPromptQuiz" + ], + { + "title_aux": "ComfyUI-DanbooruPromptQuiz" + } + ], + "https://github.com/nkchocoai/ComfyUI-Dart": [ + [ + "DanbooruTagsTransformerBanTagsFromRegex", + "DanbooruTagsTransformerComposePrompt", + "DanbooruTagsTransformerComposePromptV2", + "DanbooruTagsTransformerDecode", + "DanbooruTagsTransformerDecodeBySplitedParts", + "DanbooruTagsTransformerGenerate", + "DanbooruTagsTransformerGenerateAdvanced", + "DanbooruTagsTransformerGenerationConfig", + "DanbooruTagsTransformerGetAspectRatio", + "DanbooruTagsTransformerLoader", + "DanbooruTagsTransformerRearrangedByAnimagine", + "DanbooruTagsTransformerRemoveTagToken" + ], + { + "title_aux": "ComfyUI-Dart" + } + ], + "https://github.com/nkchocoai/ComfyUI-PromptUtilities": [ + [ + "PromptUtilitiesConstString", + "PromptUtilitiesConstStringMultiLine", + "PromptUtilitiesFormatString", + "PromptUtilitiesJoinStringList", + "PromptUtilitiesLoadPreset", + "PromptUtilitiesLoadPresetAdvanced", + "PromptUtilitiesPromptWeight", + "PromptUtilitiesRandomPreset", + "PromptUtilitiesRandomPresetAdvanced", + "PromptUtilitiesReplaceOrInsertTag", + "PromptUtilitiesRoundPromptWeight", + "PromptUtilitiesSampleTags", + "PromptUtilitiesSampleTagsWithWeight" + ], + { + "title_aux": "ComfyUI-PromptUtilities" + } + ], + "https://github.com/nkchocoai/ComfyUI-SaveImageWithMetaData": [ + [ + "CreateExtraMetaData", + "SaveImageWithMetaData" + ], + { + "title_aux": "ComfyUI-SaveImageWithMetaData" + } + ], + "https://github.com/nkchocoai/ComfyUI-SizeFromPresets": [ + [ + "EmptyLatentImageFromPresetsSD15", + "EmptyLatentImageFromPresetsSDXL", + "GetSimilarResolution", + "GetSimilarResolutionEmptyLatent", + "RandomEmptyLatentImageFromPresetsSD15", + "RandomEmptyLatentImageFromPresetsSDXL", + "RandomSizeFromPresetsSD15", + "RandomSizeFromPresetsSDXL", + "SizeFromPresetsSD15", + "SizeFromPresetsSDXL" + ], + { + "title_aux": "ComfyUI-SizeFromPresets" + } + ], + "https://github.com/nkchocoai/ComfyUI-TextOnSegs": [ + [ + "CalcMaxFontSize", + "ExtractDominantColor", + "GetComplementaryColor", + "SegsToRegion", + "TextOnSegsFloodFill" + ], + { + "title_aux": "ComfyUI-TextOnSegs" + } + ], + "https://github.com/nobrainX2/comfyUI-customDia": [ + [ + "Audio retimer", + "Dia text to speech" + ], + { + "title_aux": "ComfyUI Custom Dia" + } + ], + "https://github.com/noembryo/ComfyUI-noEmbryo": [ + [ + "PromptTermList1", + "PromptTermList2", + "PromptTermList3", + "PromptTermList4", + "PromptTermList5", + "PromptTermList6" + ], + { + "author": "noEmbryo", + "description": "Some useful nodes for ComfyUI", + "nickname": "noEmbryo", + "title": "noEmbryo nodes", + "title_aux": "noEmbryo nodes" + } + ], + "https://github.com/nofunstudio/Node_Fun_ComfyUI": [ + [ + "DynamicQueueCounter", + "FalAPI_kling_video", + "FalAPI_recraft_upscale", + "FluxKontextInpaintingConditioning", + "Fun KSampler", + "IframeView", + "IndexedStringSelector", + "Kontext Inpainting Conditioning", + "LayeredInfiniteZoom", + "MultiAlphaComposite", + "Replicate flux 1.1 pro ultra", + "ReplicateAPI_flux_1_1_pro_ultra", + "ReplicateAPI_flux_fill_pro", + "StringLower" + ], + { + "title_aux": "Node_Fun_ComfyUI" + } + ], + "https://github.com/northumber/ComfyUI-northTools": [ + [ + "BooleanIndexesToString", + "ConcatHistoryString", + "ExtractMetadataByKey", + "ImageToTrue", + "LoadImagesFromDirByIndexBatch", + "LoadImagesFromDirByIndexList", + "LoadImagesFromDirList", + "SumIntegers" + ], + { + "title_aux": "ComfyUI-northTools" + } + ], + "https://github.com/nosiu/comfyui-instantId-faceswap": [ + [ + "AngleFromFace", + "AngleFromKps", + "ComposeRotated", + "ControlNetInstantIdApply", + "FaceEmbed", + "FaceEmbedCombine", + "InstantIdAdapterApply", + "InstantIdAndControlnetApply", + "Kps2dRandomizer", + "Kps3dFromImage", + "Kps3dRandomizer", + "KpsCrop", + "KpsDraw", + "KpsMaker", + "KpsRotate", + "KpsScale", + "KpsScaleBy", + "LoadInsightface", + "LoadInstantIdAdapter", + "MaskFromKps", + "PreprocessImage", + "PreprocessImageAdvanced", + "RotateImage" + ], + { + "title_aux": "comfyui-instantId-faceswap" + } + ], + "https://github.com/nosiu/comfyui-text-randomizer": [ + [ + "ConcatText", + "RandomTextChoice", + "RandomizeText", + "RandomizeTextWithCheck", + "ShowText" + ], + { + "title_aux": "comfyui-text-randomizer" + } + ], + "https://github.com/noxinias/ComfyUI_NoxinNodes": [ + [ + "NoxinChime", + "NoxinPromptLoad", + "NoxinPromptSave", + "NoxinScaledResolution", + "NoxinSimpleMath", + "NoxinSplitPrompt" + ], + { + "title_aux": "ComfyUI_NoxinNodes" + } + ], + "https://github.com/nsdtcloud3d/ComfyUI-3D-Convert": [ + [ + "ConvertTo3DFormat", + "Load3DConvertAPIKEY", + "Load3DFile" + ], + { + "title_aux": "ComfyUI-3D-Convert" + } + ], + "https://github.com/ntc-ai/ComfyUI-DARE-LoRA-Merge": [ + [ + "Apply LoRA", + "DARE Merge LoRA Stack", + "Save LoRA" + ], + { + "title_aux": "ComfyUI - Apply LoRA Stacker with DARE" + } + ], + "https://github.com/nuanarchy/ComfyUI-NuA-BIRD": [ + [ + "Bird_Deblurring_NuA", + "Bird_Denoising_NuA", + "Bird_Inpainting_NuA", + "Bird_Loader_NuA", + "Bird_Non_Uniform_Deblurring_NuA", + "Bird_Super_Resolution_NuA" + ], + { + "title_aux": "ComfyUI-NuA-BIRD" + } + ], + "https://github.com/nuanarchy/ComfyUI-NuA-FlashFace": [ + [ + "FlashFace_Loader_NuA", + "FlashFace_Sampler_NuA" + ], + { + "title_aux": "ComfyUI-NuA-FlashFace" + } + ], + "https://github.com/nullquant/ComfyUI-BrushNet": [ + [ + "BlendInpaint", + "BrushNet", + "BrushNetLoader", + "CutForInpaint", + "PowerPaint", + "PowerPaintCLIPLoader", + "RAUNet", + "Terminal" + ], + { + "author": "nullquant", + "description": "These are custom nodes for ComfyUI native implementation of BrushNet, PowerPaint and RAUNet models", + "nickname": "BrushName nodes", + "title": "BrushNet", + "title_aux": "BrushNet" + } + ], + "https://github.com/numz/ComfyUI-FlowChain": [ + [ + "WorkflowLipSync" + ], + { + "title_aux": "ComfyUI-FlowChain" + } + ], + "https://github.com/numz/ComfyUI-SeedVR2_VideoUpscaler": [ + [ + "SeedVR2", + "SeedVR2BlockSwap" + ], + { + "title_aux": "ComfyUI-SeedVR2_VideoUpscaler" + } + ], + "https://github.com/numz/Comfyui-Orpheus": [ + [ + "orpheus", + "orpheusAdvanced" + ], + { + "title_aux": "ComfyUI-Orpheus" + } + ], + "https://github.com/nux1111/ComfyUI_NetDist_Plus": [ + [ + "CombineImageBatch", + "ConditioningFromBase64(Nux)", + "ConditioningToBase64(Nux)", + "ExtractBase64FromImage(Nux)", + "ExtractBase64FromImageUpload(Nux)", + "FetchRemote", + "FetchRemoteWithExtras(Nux)", + "LatentToBase64(Nux)", + "LoadCurrentWorkflowJSON", + "LoadDiskWorkflowJSON", + "LoadImageUrl", + "LoadLatentFromBase64(Nux)", + "LoadLatentNumpy", + "LoadLatentUrl", + "LoadWorkflowJSON", + "RemoteApplyValues(Nux)", + "RemoteApplyValuesMulti(Nux)", + "RemoteChainEnd", + "RemoteChainStart", + "RemoteChainStart(Nux)", + "RemoteQueueSimple", + "RemoteQueueSimple(Nux)", + "RemoteQueueWorker", + "SaveDiskWorkflowJSON", + "SaveImageUrl", + "SaveImageWithBase64(Nux)", + "SaveLatentNumpy" + ], + { + "title_aux": "ComfyUI_NetDist_Plus" + } + ], + "https://github.com/o-l-l-i/ComfyUI-Olm-CurveEditor": [ + [ + "OlmCurveEditor" + ], + { + "title_aux": "Olm Curve Editor for ComfyUI" + } + ], + "https://github.com/o-l-l-i/ComfyUI-Olm-DragCrop": [ + [ + "OlmDragCrop" + ], + { + "title_aux": "Olm DragCrop for ComfyUI" + } + ], + "https://github.com/o-l-l-i/ComfyUI-Olm-ImageAdjust": [ + [ + "OlmImageAdjust" + ], + { + "title_aux": "Olm Image Adjust for ComfyUI" + } + ], + "https://github.com/o-l-l-i/ComfyUI-Olm-Resolution-Picker": [ + [ + "OlmResolutionPicker" + ], + { + "title_aux": "Olm Resolution Picker for ComfyUI" + } + ], + "https://github.com/o-l-l-i/ComfyUI-Olm-Sketch": [ + [ + "OlmSketch" + ], + { + "title_aux": "Olm Sketch for ComfyUI" + } + ], + "https://github.com/o-l-l-i/ComfyUI-OlmLUT": [ + [ + "OlmLUT" + ], + { + "title_aux": "Olm LUT Node for ComfyUI" + } + ], + "https://github.com/okgo4/ComfyUI-Mosaic-Mask": [ + [ + "MosaicMask" + ], + { + "title_aux": "ComfyUI-Mosaic-Mask" + } + ], + "https://github.com/olduvai-jp/ComfyUI-HfLoader": [ + [ + "ControlNet Loader From HF", + "Lora Loader From HF" + ], + { + "title_aux": "ComfyUI-HfLoader" + } + ], + "https://github.com/oleksandr612/ComfyUI-Counter": [ + [ + "Simple Counter" + ], + { + "title_aux": "ComfyUI-Counter" + } + ], + "https://github.com/olivv-cs/ComfyUI-FunPack": [ + [ + "FunPackCLIPLoader", + "FunPackImg2LatentInterpolation", + "FunPackPromptEnhancer" + ], + { + "title_aux": "ComfyUI-FunPack" + } + ], + "https://github.com/omar92/ComfyUI-QualityOfLifeSuit_Omar92": [ + [ + "CLIPStringEncode _O", + "Chat completion _O", + "ChatGPT Simple _O", + "ChatGPT _O", + "ChatGPT compact _O", + "Chat_Completion _O", + "Chat_Message _O", + "Chat_Message_fromString _O", + "Concat Text _O", + "ConcatRandomNSP_O", + "Debug String _O", + "Debug Text _O", + "Debug Text route _O", + "Edit_image _O", + "Equation1param _O", + "Equation2params _O", + "GetImage_(Width&Height) _O", + "GetLatent_(Width&Height) _O", + "ImageScaleFactor _O", + "ImageScaleFactorSimple _O", + "LatentUpscaleFactor _O", + "LatentUpscaleFactorSimple _O", + "LatentUpscaleMultiply", + "Note _O", + "QOL Split String", + "RandomNSP _O", + "Replace Text _O", + "String _O", + "Text _O", + "Text2Image _O", + "Trim Text _O", + "VAEDecodeParallel _O", + "combine_chat_messages _O", + "compine_chat_messages _O", + "concat Strings _O", + "create image _O", + "create_image _O", + "debug Completeion _O", + "debug messages_O", + "float _O", + "floatToInt _O", + "floatToText _O", + "int _O", + "intToFloat _O", + "load_openAI _O", + "replace String _O", + "replace String advanced _O", + "saveTextToFile _O", + "seed _O", + "selectLatentFromBatch _O", + "string2Image _O", + "trim String _O", + "variation_image _O" + ], + { + "title_aux": "Quality of life Suit:V2" + } + ], + "https://github.com/openvino-dev-samples/comfyui_openvino": [ + [ + "OpenVINO_TorchCompileModel" + ], + { + "title_aux": "ComfyUI-OpenVINO" + } + ], + "https://github.com/opvelll/ComfyUI_TextListProduct": [ + [ + "ProductedString", + "PromptPairConcat", + "TextListProduct", + "TextListProductWithSingleA", + "TextListProductWithSingleB", + "TextListProductWithSingleBoth" + ], + { + "title_aux": "Comfy UI Text List Product" + } + ], + "https://github.com/orange90/ComfyUI-Regex-Runner": [ + [ + "RegexNode" + ], + { + "title_aux": " ComfyUI-Regex-Runner" + } + ], + "https://github.com/orex2121/comfyui-OreX": [ + [ + "IoNetVision", + "orex IoNet Chat", + "orex IoNet Vision", + "orex IoNet Vision Url", + "orex Load Image", + "orex Load Image Batch", + "orex Save Image" + ], + { + "title_aux": "comfyui-OreX" + } + ], + "https://github.com/orion4d/Calculator_Pro": [ + [ + "DataConverter", + "LengthConverter", + "ManualRateConverter", + "MassConverter", + "ScientificCalculatorTri", + "TimeConverter", + "UniversalConverter", + "VolumeConverter" + ], + { + "title_aux": "CalculatorPro - Node Suite for ComfyUI" + } + ], + "https://github.com/orion4d/ComfyUI-Image-Effects": [ + [ + "AsciiArtNode", + "AsciiTextNode", + "AuroraNode", + "BarrelDistortionNode", + "CSSFiltersNode", + "ChannelMixerNode", + "ColorBalanceNode", + "CrystallizeNode", + "CurvesNode", + "FilmGrainNode", + "FisheyeNode", + "GodRaysNode", + "HexagonalPixelateNode", + "HolographicNode", + "KaleidoscopeAdvancedNode", + "KaleidoscopeNode", + "LensFlareNode", + "LevelsNode", + "LightLeaksNode", + "NeonGlowNode", + "PinchNode", + "PolaroidNode", + "PolygonNode", + "RippleNode", + "SaverPlusNode", + "ShadowHighlightNode", + "SpherizeNode", + "TriangulateNode", + "VHSGlitchNode", + "VibranceNode", + "VintageTVNode", + "VoronoiNode" + ], + { + "title_aux": "ComfyUI-Image-Effects" + } + ], + "https://github.com/orion4d/ComfyUI_colormaster": [ + [ + "AnnotateHexLines", + "ColorPaletteExtractor", + "HexColorToImage", + "ImageCollageNode", + "SelectHexLine" + ], + { + "title_aux": "ComfyUI Colormaster Nodes" + } + ], + "https://github.com/orion4d/ComfyUI_extract_imag": [ + [ + "ExtractAndSaveImagesFromDocument" + ], + { + "title_aux": "ComfyUI_extract_imag" + } + ], + "https://github.com/orion4d/ComfyUI_image-display": [ + [ + "DisplayImageWithMask" + ], + { + "title_aux": "Display Image with Mask for ComfyUI" + } + ], + "https://github.com/orion4d/ComfyUI_pdf_nodes": [ + [ + "PDFExtractTextFromPages", + "PDFGetPageCount", + "PDFLoad", + "PDFMerge", + "PDFRotatePages", + "PDFSave", + "PDFSelectPageAndExtractText" + ], + { + "title_aux": "ComfyUI PDF Nodes" + } + ], + "https://github.com/orion4d/illusion_node": [ + [ + "AdvancedAutostereogramNode", + "AutostereogramNode", + "CheckerboardNode", + "ColorImageNode", + "PatternGeneratorNode", + "TessellationNode", + "TileImageRepeaterNode" + ], + { + "title_aux": "ComfyUI Illusion & Pattern Nodes" + } + ], + "https://github.com/orssorbit/ComfyUI-wanBlockswap": [ + [ + "wanBlockSwap" + ], + { + "title_aux": "ComfyUI-wanBlockswap" + } + ], + "https://github.com/oshtz/ComfyUI-oshtz-nodes": [ + [ + "EasyAspectRatioNode", + "GPTImage1", + "LLMAIONode", + "LoRASwitcherNode", + "LoRASwitcherNode20", + "LoRASwitcherNode40", + "LoraSwitcherDynamic", + "StringSplitterNode" + ], + { + "title_aux": "oshtz Nodes" + } + ], + "https://github.com/osi1880vr/prompt_quill_comfyui": [ + [ + "PromptQuillGenerate", + "PromptQuillGenerateConditioning", + "PromptQuillSail", + "PromptQuillSailConditioning" + ], + { + "title_aux": "ComfyUI_Prompt-Quill" + } + ], + "https://github.com/ostris/ComfyUI-FlexTools": [ + [ + "Flex2Conditioner", + "FlexGuidance", + "FlexLoraLoader", + "FlexLoraLoaderModelOnly" + ], + { + "nodename_pattern": "- Ostris$", + "title_aux": "Flex.1 tools" + } + ], + "https://github.com/ostris/ostris_nodes_comfyui": [ + [ + "Batch Image Loader - Ostris", + "LLM Pipe Loader - Ostris", + "LLM Prompt Upsampling - Ostris", + "One Seed - Ostris", + "Save Image Direct - Ostris", + "Text Box - Ostris" + ], + { + "nodename_pattern": "- Ostris$", + "title_aux": "Ostris Nodes ComfyUI" + } + ], + "https://github.com/ownimage/ComfyUI-ownimage": [ + [ + "Caching Image Loader" + ], + { + "title_aux": "ComfyUI-ownimage" + } + ], + "https://github.com/oxysoft/ComfyUI-gowiththeflow": [ + [ + "KSamplerNoiseless", + "NoiseWarperNode" + ], + { + "title_aux": "ComfyUI-gowiththeflow" + } + ], + "https://github.com/oyvindg/ComfyUI-TrollSuite": [ + [ + "BinaryImageMask", + "ImagePadding", + "LoadLastImage", + "RandomMask", + "TransparentImage" + ], + { + "title_aux": "ComfyUI-TrollSuite" + } + ], + "https://github.com/oztrkoguz/ComfyUI_StoryCreator": [ + [ + "Kosmos2SamplerSimple2", + "KosmosLoader2", + "StoryLoader", + "StorySamplerSimple", + "Write2" + ], + { + "title_aux": "ComfyUI StoryCreater" + } + ], + "https://github.com/p1atdev/comfyui-timm-backbone": [ + [ + "TimmBackboneImageEncode", + "TimmBackboneImageNormalize", + "TimmBackboneLoader", + "TimmBackboneRGB2BGR", + "TimmEmbedsPrint" + ], + { + "title_aux": "comfyui-timm-backbone" + } + ], + "https://github.com/palant/image-resize-comfyui": [ + [ + "ImageResize" + ], + { + "title_aux": "Image Resize for ComfyUI" + } + ], + "https://github.com/pamparamm/ComfyUI-ppm": [ + [ + "AttentionCouplePPM", + "CFGLimiterGuider", + "CFGPPSamplerSelect", + "CLIPMicroConditioning", + "CLIPNegPip", + "CLIPTextEncodeBREAK", + "CLIPTextEncodeInvertWeights", + "CLIPTokenCounter", + "ConditioningZeroOutCombine", + "ConvertTimestepToSigma", + "DynSamplerSelect", + "DynamicThresholdingPost", + "DynamicThresholdingSimplePost", + "EmptyLatentImageAR", + "FreeU2PPM", + "Guidance Limiter", + "LatentOperationTonemapLuminance", + "LatentToMaskBB", + "LatentToWidthHeight", + "MaskCompositePPM", + "PPMSamplerSelect", + "RenormCFGPost", + "RescaleCFGPost" + ], + { + "title_aux": "ComfyUI-ppm" + } + ], + "https://github.com/pamparamm/ComfyUI-vectorscope-cc": [ + [ + "DiffusionCG", + "NormalizeLatent", + "VectorscopeCC" + ], + { + "title_aux": "ComfyUI Vectorscope CC" + } + ], + "https://github.com/pamparamm/sd-perturbed-attention": [ + [ + "NormalizedAttentionGuidance", + "PerturbedAttention", + "Pladis", + "SlidingWindowGuidanceAdvanced", + "SmoothedEnergyGuidanceAdvanced", + "TRTAttachPag", + "TRTPerturbedAttention", + "TokenPerturbationGuidance" + ], + { + "title_aux": "sd-perturbed-attention" + } + ], + "https://github.com/pants007/comfy-pants": [ + [ + "CLIPTextEncodeAIO", + "Image Make Square" + ], + { + "title_aux": "pants" + } + ], + "https://github.com/papcorns/ComfyUI-Papcorns-Node-LoadImageFromUrl": [ + [ + "LoadImageFromUrlOrPath" + ], + { + "title_aux": "ComfyUI Load Image From URL" + } + ], + "https://github.com/papcorns/Papcorns-Comfyui-Custom-Nodes": [ + [ + "PapcornsAspectResize", + "UploadImageToGCS" + ], + { + "title_aux": "Papcorns ComfyUI Custom Nodes" + } + ], + "https://github.com/pathway8-sudo/ComfyUI-Pathway-CutPNG-Node": [ + [ + "CutPNGNode" + ], + { + "title_aux": "ComfyUI-Pathway-CutPNG-Node" + } + ], + "https://github.com/patriciogonzalezvivo/comfyui_glslnodes": [ + [ + "float", + "glslBuffers", + "glslEditor", + "glslEditorPro", + "glslUniforms", + "glslViewer", + "int", + "vec2", + "vec2 (pos)", + "vec3", + "vec3 (pos)", + "vec4", + "vec4 (color)" + ], + { + "author": "Patricio Gonzalez Vivo", + "description": "A set of nodes to work with GLSL shaders", + "nickname": "GLSL Nodes", + "title": "GLSL Nodes", + "title_aux": "GLSL Nodes" + } + ], + "https://github.com/paulh4x/ComfyUI_PHRenderFormerWrapper": [ + [ + "RenderFormerCamera", + "RenderFormerCameraTarget", + "RenderFormerExampleScene", + "RenderFormerFromJSON", + "RenderFormerGenerator", + "RenderFormerLighting", + "RenderFormerLightingCombine", + "RenderFormerLightingTarget", + "RenderFormerLoadMesh", + "RenderFormerMeshCombine", + "RenderFormerMeshTarget", + "RenderFormerModelLoader", + "RenderFormerRandomizeColors", + "RenderFormerRemeshMesh", + "RenderFormerSceneBuilder" + ], + { + "title_aux": "ComfyUI_PHRenderFormerWrapper" + } + ], + "https://github.com/paulo-coronado/comfy_clip_blip_node": [ + [ + "CLIPTextEncodeBLIP", + "CLIPTextEncodeBLIP-2", + "Example" + ], + { + "title_aux": "comfy_clip_blip_node" + } + ], + "https://github.com/pawelmal0101/ComfyUI-Webhook": [ + [ + "Webhook" + ], + { + "title_aux": "ComfyUI Webhook Notifier" + } + ], + "https://github.com/pbpbpb2705/ComfyUI-LyraVSIH": [ + [ + "MultiObjectMask" + ], + { + "title_aux": "ComfyUI-LyraVSIH" + } + ], + "https://github.com/penposs/ComfyUI_Gemini_Pro": [ + [ + "Gemini File Processing", + "Gemini File Upload", + "Gemini Pro", + "Gemini-Pro-Chat", + "Gemini-Pro-Editimage" + ], + { + "title_aux": "ComfyUI Gemini Pro Node" + } + ], + "https://github.com/penposs/Comfyui_wan_api": [ + [ + "WanAPIImageToVideo", + "WanAPIImageUploader", + "WanAPI_Image2Video", + "WanAPI_ImageUploader" + ], + { + "title_aux": "Comfyui_wan_api" + } + ], + "https://github.com/pharmapsychotic/comfy-cliption": [ + [ + "CLIPtionBeamSearch", + "CLIPtionGenerate", + "CLIPtionLoader" + ], + { + "title_aux": "comfy-cliption" + } + ], + "https://github.com/phazei/ComfyUI-Prompt-Stash": [ + [ + "PromptStashManager", + "PromptStashPassthrough", + "PromptStashSaver" + ], + { + "title_aux": "Prompt Stash" + } + ], + "https://github.com/philiprodriguez/ComfyUI-HunyuanImageLatentToVideoLatent": [ + [ + "HunyuanImageLatentToVideoLatent" + ], + { + "title_aux": "ComfyUI-HunyuanImageLatentToVideoLatent" + } + ], + "https://github.com/philipy1219/ComfyUI-CloudStorage": [ + [ + "LoadImageFromCloud", + "LoadMaskFromCloud", + "LoadVideoFromCloud", + "SaveImageToCloud", + "UploadFileToCloud" + ], + { + "title_aux": "ComfyUI-CloudStorage" + } + ], + "https://github.com/philipy1219/ComfyUI-TaylorSeer": [ + [ + "FluxBlockSwap", + "HidreamBlockSwap", + "TaylorSeer" + ], + { + "title_aux": "ComfyUI-TaylorSeer" + } + ], + "https://github.com/philz1337x/ComfyUI-ClarityAI": [ + [ + "Clarity AI Upscaler" + ], + { + "title_aux": "\u2728 Clarity AI - Creative Image Upscaler and Enhancer for ComfyUI" + } + ], + "https://github.com/phuvinh010701/ComfyUI-Nudenet": [ + [ + "ApplyNudenet", + "FilterdLabel", + "NudenetModelLoader" + ], + { + "title_aux": "ComfyUI-Nudenet" + } + ], + "https://github.com/phyblas/paint-by-example_comfyui": [ + [ + "PaintbyExampleAdvanced", + "PaintbyExampleGen", + "PaintbyExampleSimple", + "PaintbyIchimatsu", + "PaintbySingleColor" + ], + { + "title_aux": "paint-by-example @ ComfyUI" + } + ], + "https://github.com/pictorialink/ComfyUI-Custom-Node-Config": [ + [ + "FormSubmitNode" + ], + { + "title_aux": "ComfyUI-Custom-Node-Config" + } + ], + "https://github.com/pictorialink/ComfyUI-Qwen3-llama.cpp": [ + [ + "Qwen25_VL", + "Qwen3" + ], + { + "title_aux": "ComfyUI-Qwen3-llama.cpp" + } + ], + "https://github.com/pictorialink/ComfyUI-Text-Translation": [ + [ + "Get_Translator", + "Text", + "Text_Concatenate", + "Text_Switch", + "Text_Translation", + "Text_Translation_V2", + "Text_Translation_V2_Full" + ], + { + "title_aux": "ComfyUI-Text-Translation" + } + ], + "https://github.com/picturesonpictures/comfy_PoP": [ + [ + "AdaptiveCannyDetector_PoP", + "AnyAspectRatio", + "ConditioningMultiplier_PoP", + "ConditioningNormalizer_PoP", + "DallE3_PoP", + "EfficientAttention", + "LoadImageResizer_PoP", + "LoraStackLoader10_PoP", + "LoraStackLoader_PoP", + "VAEDecoderPoP", + "VAEEncoderPoP" + ], + { + "title_aux": "comfy_PoP" + } + ], + "https://github.com/pikenrover/ComfyUI_PRNodes": [ + [ + "CheckpointLoaderSimpleExtended", + "EmptyLatentImageScaleBy", + "ImageScaleTo", + "LoadRandomImage", + "LoraLoaderExtended", + "RandomPrompt", + "RandomPromptMixed", + "Save Image w/Metadata" + ], + { + "title_aux": "ComfyUI_PRNodes" + } + ], + "https://github.com/pixelworldai/ComfyUI-AlphaFlatten": [ + [ + "FlattenByAlpha" + ], + { + "title_aux": "ComfyUI-AlphaFlatten" + } + ], + "https://github.com/pkpkTech/ComfyUI-SaveAVIF": [ + [ + "SaveAvif" + ], + { + "title_aux": "ComfyUI-SaveAVIF" + } + ], + "https://github.com/pkpkTech/ComfyUI-TemporaryLoader": [ + [ + "LoadTempCheckpoint", + "LoadTempLoRA", + "LoadTempMultiLoRA" + ], + { + "title_aux": "ComfyUI-TemporaryLoader" + } + ], + "https://github.com/playbook3d/playbook3d-comfyui-nodes": [ + [ + "Beauty Pass Sequence", + "Depth Pass Sequence", + "Mask Pass Sequence", + "Outline Pass Sequence", + "Playbook Aspect Ratio Select", + "Playbook Beauty", + "Playbook Beauty Sequence", + "Playbook Boolean", + "Playbook Depth", + "Playbook Depth Sequence", + "Playbook Float", + "Playbook Image", + "Playbook LoRA Select", + "Playbook LoRA Selection", + "Playbook Mask", + "Playbook Mask Sequence", + "Playbook Number", + "Playbook Outline", + "Playbook Outline Sequence", + "Playbook Render Result", + "Playbook Seed", + "Playbook Text", + "Playbook Video" + ], + { + "title_aux": "Playbook Nodes" + } + ], + "https://github.com/plugcrypt/CRT-Nodes": [ + [ + "AdvancedStringReplace", + "AudioCompressor", + "AudioPreviewer", + "AutopromptProcessor", + "Boolean Transform", + "CLIPTextEncodeFluxMerged", + "CRT Post-Process Suite", + "CRTChromaKeyOverlay", + "CRTFirstLastFrameSelector", + "CRTLoadLastMedia", + "CRTLoadLastVideo", + "CRTPctCropCalculator", + "CRTPostProcess", + "CRT_UpscaleModelAdv", + "ClearStyleModelDualCache", + "FaceEnhancementPipeline", + "FaceEnhancementPipelineWithInjection", + "FancyNoteNode", + "FileLoaderCrawl", + "FluxAIO_CRT", + "FluxControlnetSampler", + "FluxControlnetSamplerWithInjection", + "FluxLoraBlocksPatcher", + "FluxSemanticEncoder", + "FluxTiledSamplerCustomAdvanced", + "ImageLoaderCrawl", + "LatentNoiseInjectionSampler", + "LoadImageResize", + "LoadVideoForVCaptioning", + "Lora Loader Str", + "MaskEmptyFloatNode", + "MaskPassOrPlaceholder", + "ParametricEQNode", + "PonyFaceEnhancementPipelineWithInjection", + "PonyUpscaleSamplerWithInjection", + "Remove Trailing Comma", + "Resolution", + "SamplerSchedulerSelector", + "SaveImageWithPath", + "SaveTextWithPath", + "SaveVideoWithPath", + "SeamlessLoopBlender", + "SimpleFluxShiftNode", + "SimpleKnobNode", + "SimpleToggleNode", + "SmartControlNetApply", + "SmartPreprocessor", + "SmartStyleModelApplyDual", + "Toggle Lora Unet Blocks L1", + "Toggle Lora Unet Blocks L2", + "Video Duration Calculator", + "VideoLoaderCrawl" + ], + { + "author": "chflame", + "description": "A set of nodes for ComfyUI that can composite layer and mask to achieve Photoshop like functionality.", + "nickname": "LayerStyle", + "title": "LayerStyle", + "title_aux": "CRT-Nodes" + } + ], + "https://github.com/pmarmotte2/ComfyUI-Speaker-Isolation": [ + [ + "SpeakerDiarizer" + ], + { + "title_aux": "ComfyUI-Speaker-Isolation" + } + ], + "https://github.com/pnikolic-amd/ComfyUI_MIGraphX": [ + [ + "CompileDiffusersMIGraphX" + ], + { + "title_aux": "MIGraphX Node for ComfyUI" + } + ], + "https://github.com/pollockjj/ComfyUI-MultiGPU": [ + [ + "DeviceSelectorMultiGPU", + "HunyuanVideoEmbeddingsAdapter" + ], + { + "title_aux": "ComfyUI-MultiGPU" + } + ], + "https://github.com/portu-sim/comfyui_bmab": [ + [ + "BMAB Alpha Composit", + "BMAB Base64 Image", + "BMAB Basic", + "BMAB Black And White", + "BMAB Blend", + "BMAB Clip Text Encoder SDXL", + "BMAB Conditioning To Bind", + "BMAB Context", + "BMAB ControlNet", + "BMAB ControlNet IPAdapter", + "BMAB ControlNet Openpose", + "BMAB Crop", + "BMAB Detail Anything", + "BMAB Detect And Mask", + "BMAB Detect And Paste", + "BMAB Detection Crop", + "BMAB Detector", + "BMAB Dummy", + "BMAB Edge", + "BMAB Extractor", + "BMAB Face Detailer", + "BMAB Flux ControlNet", + "BMAB Flux Integrator", + "BMAB Google Gemini Prompt", + "BMAB Image Storage", + "BMAB Import Integrator", + "BMAB Inpaint", + "BMAB Integrator", + "BMAB KSampler", + "BMAB KSamplerHiresFix", + "BMAB KSamplerHiresFixWithUpscaler", + "BMAB KSamplerKohyaDeepShrink", + "BMAB Lama Inpaint", + "BMAB LoRA Loader", + "BMAB Load Image", + "BMAB Load Output Image", + "BMAB Masks To Images", + "BMAB Model To Bind", + "BMAB Noise Generator", + "BMAB Normalize Size", + "BMAB Openpose Hand Detailer", + "BMAB Outpaint By Ratio", + "BMAB Person Detailer", + "BMAB Preview Text", + "BMAB Prompt", + "BMAB Reframe", + "BMAB Remote Access And Save", + "BMAB Remove Background", + "BMAB Resize By Person", + "BMAB Resize By Ratio", + "BMAB Resize and Fill", + "BMAB SD-WebUI API BMAB Extension", + "BMAB SD-WebUI API ControlNet", + "BMAB SD-WebUI API I2I", + "BMAB SD-WebUI API Server", + "BMAB SD-WebUI API T2I", + "BMAB SD-WebUI API T2I Hires.Fix", + "BMAB Save Image", + "BMAB SeedGenerator", + "BMAB Segment Anything", + "BMAB Simple Hand Detailer", + "BMAB Square", + "BMAB Subframe Hand Detailer", + "BMAB Text", + "BMAB ToBind", + "BMAB Upscale With Model", + "BMAB Upscaler", + "BMAB Watermark", + "BMAB Zoom Out" + ], + { + "title_aux": "comfyui_bmab" + } + ], + "https://github.com/prodogape/ComfyUI-EasyOCR": [ + [ + "Apply EasyOCR" + ], + { + "title_aux": "ComfyUI-EasyOCR" + } + ], + "https://github.com/prodogape/ComfyUI-Minio": [ + [ + "Load Image From Minio", + "Save Image To Minio", + "Set Minio Config" + ], + { + "title_aux": "Comfyui-Minio" + } + ], + "https://github.com/prodogape/ComfyUI-OmDet": [ + [ + "Apply OmDet" + ], + { + "title_aux": "ComfyUI-OmDet" + } + ], + "https://github.com/prodogape/Comfyui-Yolov8-JSON": [ + [ + "Apply Yolov8 Model", + "Apply Yolov8 Model Seg", + "Draw Labelme Json", + "Load Yolov8 Model", + "Load Yolov8 Model From Path", + "Save Labelme Json" + ], + { + "title_aux": "Comfyui-Yolov8-JSON" + } + ], + "https://github.com/pschroedl/ComfyUI-SAM2-Realtime": [ + [ + "DownloadAndLoadSAM2RealtimeModel", + "Sam2RealtimeSegmentation" + ], + { + "title_aux": "ComfyUI-SAM2-Realtime" + } + ], + "https://github.com/ptmaster/ComfyUI-Load-Diffusion-Model-to-Muti-GPUs/raw/refs/heads/main/Load%20Diffusion%20Model%20into%20Muti%20GPUs.py": [ + [ + "OverrideLoadedDiffusionDevice" + ], + { + "title_aux": "ComfyUI-Load-Diffusion-Model-to-Muti-GPUs" + } + ], + "https://github.com/ptmaster/Comfyui-PT-Keyframe-Camera": [ + [ + "PT_KeyframeCamera" + ], + { + "title_aux": "Comfyui-PT-Keyframe-Camera" + } + ], + "https://github.com/ptmaster/comfyui-audio-speed": [ + [ + "PT48KHZ", + "PTAudioSpeed", + "PTEnsureStereo" + ], + { + "title_aux": "ComfyUI-audio-speed" + } + ], + "https://github.com/pupba/Comfy_ForEach": [ + [ + "EventBridgeTriggerNode", + "FolderImageLoaderNode", + "IndexedImageSelectorNode", + "IndexedNameSelectorNode", + "IsLastIndexNode", + "LoadPreCheckpointModel", + "LoadPreControlNetModel", + "SaveExactNameImageNode", + "StringViewer", + "TaskIDStorageNode" + ], + { + "title_aux": "ComfyForEach" + } + ], + "https://github.com/purewater2011/comfyui_color_detection": [ + [ + "IsYellowish", + "YellowHeatmap" + ], + { + "title_aux": "comfyui_color_detection" + } + ], + "https://github.com/purpen/ComfyUI-AIRedoon": [ + [ + "AIRedoonApplyLoRAStack", + "AIRedoonCheckLoraFile", + "AIRedoonCheckModelFile", + "AIRedoonConcatText", + "AIRedoonImageCaptioning", + "AIRedoonImageRGBA2RGB", + "AIRedoonLoRAStack", + "AIRedoonPreviewText", + "AIRedoonQwenModelLoader", + "AIRedoonSaveText", + "AIRedoonTranslator" + ], + { + "title_aux": "AIRedoon" + } + ], + "https://github.com/purpen/ComfyUI-ImageTagger": [ + [ + "AIRedoonImageCaptioning" + ], + { + "title_aux": "ComfyUI-ImageTagger" + } + ], + "https://github.com/pvlprk/comfyui-pvl-api-nodes": [ + [ + "PVL Call OpenAI Assistant", + "PVL ComfyDeploy API Caller", + "PVL KONTEXT MAX", + "PvlKontextMax" + ], + { + "title_aux": "ComfyUI Assistant Node" + } + ], + "https://github.com/pxl-pshr/GlitchNodes": [ + [ + "ASCII", + "Corruptor", + "DataBend", + "DitherMe", + "FrequencyModulation", + "GlitchIT", + "LineScreen", + "LuminousFlow", + "OrderedDithering", + "PixelFloat", + "PixelRedistribution", + "Rekked", + "Scanz", + "TvGlitch", + "VHSonAcid", + "VaporWave", + "VideoModulation", + "interference" + ], + { + "title_aux": "GlitchNodes" + } + ], + "https://github.com/pythongosssss/ComfyUI-Custom-Scripts": [ + [ + "CheckpointLoader|pysssss", + "ConstrainImageforVideo|pysssss", + "ConstrainImage|pysssss", + "LoadText|pysssss", + "LoraLoader|pysssss", + "MathExpression|pysssss", + "MultiPrimitive|pysssss", + "PlaySound|pysssss", + "Repeater|pysssss", + "ReroutePrimitive|pysssss", + "SaveText|pysssss", + "ShowText|pysssss", + "StringFunction|pysssss", + "SystemNotification|pysssss" + ], + { + "title_aux": "ComfyUI-Custom-Scripts" + } + ], + "https://github.com/pythongosssss/ComfyUI-WD14-Tagger": [ + [ + "WD14Tagger|pysssss" + ], + { + "title_aux": "ComfyUI WD 1.4 Tagger" + } + ], + "https://github.com/pzc163/Comfyui_MiniCPMv2_6-prompt-generator": [ + [ + "Prompt_Generator", + "Save_Prompts" + ], + { + "title_aux": "Comfyui_MiniCPMv2_6-prompt-generator" + } + ], + "https://github.com/quank123wip/ComfyUI-Step1X-Edit": [ + [ + "Step-1XEditNode" + ], + { + "title_aux": "ComfyUI-Step1X-Edit" + } + ], + "https://github.com/quasiblob/ComfyUI-EsesCompositionGuides": [ + [ + "EsesCompositionGuides" + ], + { + "title_aux": "ComfyUI-EsesCompositionGuides" + } + ], + "https://github.com/quasiblob/ComfyUI-EsesImageAdjustments": [ + [ + "EsesImageAdjustments2" + ], + { + "title_aux": "ComfyUI-EsesImageAdjustments" + } + ], + "https://github.com/quasiblob/ComfyUI-EsesImageCompare": [ + [ + "EsesImageCompare" + ], + { + "title_aux": "ComfyUI-EsesImageCompare" + } + ], + "https://github.com/quasiblob/ComfyUI-EsesImageEffectBloom": [ + [ + "EsesImageEffectBloom" + ], + { + "title_aux": "ComfyUI-EsesImageEffectBloom" + } + ], + "https://github.com/quasiblob/ComfyUI-EsesImageEffectCurves": [ + [ + "EsesImageEffectCurves" + ], + { + "title_aux": "ComfyUI-EsesImageEffectCurves" + } + ], + "https://github.com/quasiblob/ComfyUI-EsesImageEffectLevels": [ + [ + "EsesImageEffectLevels" + ], + { + "title_aux": "ComfyUI-EsesImageEffectLevels" + } + ], + "https://github.com/quasiblob/ComfyUI-EsesImageLensEffects": [ + [ + "EsesImageLensEffects" + ], + { + "title_aux": "ComfyUI-EsesImageLensEffects" + } + ], + "https://github.com/quasiblob/ComfyUI-EsesImageOffset": [ + [ + "EsesImageOffset" + ], + { + "title_aux": "ComfyUI-EsesImageOffset" + } + ], + "https://github.com/quasiblob/ComfyUI-EsesImageResize": [ + [ + "EsesImageResize" + ], + { + "title_aux": "EsesImageResize" + } + ], + "https://github.com/quasiblob/ComfyUI-EsesImageTransform": [ + [ + "EsesImageTransform" + ], + { + "title_aux": "ComfyUI-EsesImageTransform" + } + ], + "https://github.com/quasiblob/EsesCompositionGoldenRatio": [ + [ + "EsesCompositionGoldenRatio" + ], + { + "title_aux": "EsesCompositionGoldenRatio" + } + ], + "https://github.com/qwixiwp/queuetools": [ + [ + "load images (queue tools)" + ], + { + "title_aux": "queuetools" + } + ], + "https://github.com/r3dial/redial-discomphy": [ + [ + "DiscordMessage" + ], + { + "title_aux": "Redial Discomphy - Discord Integration for ComfyUI" + } + ], + "https://github.com/r3dsd/comfyui-template-loader": [ + [ + "TemplateLoader" + ], + { + "title_aux": "Comfyui-Template-Loader" + } + ], + "https://github.com/raindrop313/ComfyUI-WanVideoStartEndFrames": [ + [ + "WanVideoSEDecode", + "WanVideoSEImageClipEncode", + "WanVideoSEModelLoader", + "WanVideoSESampler", + "WanVideoSEVAELoader" + ], + { + "title_aux": "ComfyUI-WanVideoStartEndFrames" + } + ], + "https://github.com/raindrop313/ComfyUI_SD3_Flowedit": [ + [ + "FlowEditCFGGuider", + "FlowEditSampler", + "OutSD3ModelSamplingPred" + ], + { + "title_aux": "ComfyUI_SD3_Flowedit" + } + ], + "https://github.com/rainlizard/ComfyUI-Raffle": [ + [ + "PreviewHistory", + "Raffle", + "TagCategoryStrength" + ], + { + "title_aux": "Raffle" + } + ], + "https://github.com/ramesh-x90/ComfyUI_pyannote": [ + [ + "Speaker Diarization", + "Whisper Segments to Speaker" + ], + { + "title_aux": "ComfyUI_pyannote" + } + ], + "https://github.com/ramyma/A8R8_ComfyUI_nodes": [ + [ + "AttentionCouple", + "AttentionCoupleRegion", + "AttentionCoupleRegions", + "Base64ImageInput", + "Base64ImageOutput" + ], + { + "title_aux": "A8R8 ComfyUI Nodes" + } + ], + "https://github.com/randjtw/advance-aesthetic-score": [ + [ + "Adv_Scoring" + ], + { + "title_aux": "advance-aesthetic-score" + } + ], + "https://github.com/randomnoner11/ComfyUI-MistralAI-API": [ + [ + "InvokeMistralEndpoint", + "LoadFewShotPrompt" + ], + { + "title_aux": "ComfyUI-MistralAI-API" + } + ], + "https://github.com/ratulrafsan/Comfyui-SAL-VTON": [ + [ + "SALVTON_Apply", + "SV_random" + ], + { + "title_aux": "Comfyui-SAL-VTON" + } + ], + "https://github.com/raykindle/ComfyUI_Step1X-Edit": [ + [ + "Step1XEditGenerate", + "Step1XEditModelLoader", + "Step1XEditTeaCacheGenerate", + "Step1XEditTeaCacheModelLoader" + ], + { + "title_aux": "ComfyUI_Step1X-Edit" + } + ], + "https://github.com/raysers/Mflux-ComfyUI": [ + [ + "MfluxControlNetLoader", + "MfluxCustomModels", + "MfluxImg2Img", + "MfluxLorasLoader", + "MfluxModelsDownloader", + "MfluxModelsLoader", + "QuickMfluxNode" + ], + { + "title_aux": "Mflux-ComfyUI" + } + ], + "https://github.com/rcfcu2000/zhihuige-nodes-comfyui": [ + [ + "Combine ZHGMasks", + "Cover ZHGMasks", + "From ZHG pip", + "GroundingDinoModelLoader (zhihuige)", + "GroundingDinoPIPESegment (zhihuige)", + "GroundingDinoSAMSegment (zhihuige)", + "InvertMask (zhihuige)", + "SAMModelLoader (zhihuige)", + "To ZHG pip", + "ZHG FaceIndex", + "ZHG GetMaskArea", + "ZHG Image Levels", + "ZHG SaveImage", + "ZHG SmoothEdge", + "ZHG UltimateSDUpscale" + ], + { + "title_aux": "zhihuige-nodes-comfyui" + } + ], + "https://github.com/rcsaquino/comfyui-custom-nodes": [ + [ + "BackgroundRemover | rcsaquino", + "VAELoader | rcsaquino", + "VAEProcessor | rcsaquino" + ], + { + "title_aux": "rcsaquino/comfyui-custom-nodes" + } + ], + "https://github.com/rdancer/ComfyUI_Florence2SAM2": [ + [ + "RdancerFlorence2SAM2GenerateMask" + ], + { + "title_aux": "ComfyUI_Florence2SAM2" + } + ], + "https://github.com/rdomunky/comfyui-subfolderimageloader": [ + [ + "SubfolderImageLoader" + ], + { + "title_aux": "comfyui-subfolderimageloader" + } + ], + "https://github.com/reallusion/ComfyUI-Reallusion": [ + [ + "additional_image", + "control_net", + "core", + "upscale_data" + ], + { + "title_aux": "Reallusion ComfyUI Custom Nodes" + } + ], + "https://github.com/receyuki/comfyui-prompt-reader-node": [ + [ + "SDAnyConverter", + "SDBatchLoader", + "SDLoraLoader", + "SDLoraSelector", + "SDParameterExtractor", + "SDParameterGenerator", + "SDPromptMerger", + "SDPromptReader", + "SDPromptSaver", + "SDTypeConverter" + ], + { + "author": "receyuki", + "description": "The ultimate solution for managing image metadata and multi-tool compatibility. ComfyUI node version of the SD Prompt Reader", + "nickname": "SD Prompt Reader", + "title": "SD Prompt Reader", + "title_aux": "SD Prompt Reader" + } + ], + "https://github.com/recraft-ai/ComfyUI-RecraftAI": [ + [ + "RecraftBackgroundRemover", + "RecraftBackgroundReplacer", + "RecraftClarityUpscaler", + "RecraftClient", + "RecraftGenerativeUpscaler", + "RecraftImageGenerator", + "RecraftImageToImageTransformer", + "RecraftInpainter" + ], + { + "title_aux": "ComfyUI-RecraftAI" + } + ], + "https://github.com/redhottensors/ComfyUI-Prediction": [ + [ + "AvoidErasePrediction", + "CFGPrediction", + "CharacteristicGuidancePrediction", + "CombinePredictions", + "ConditionedPrediction", + "EarlyMiddleLatePrediction", + "InterpolatePredictions", + "LogSigmas", + "PerpNegPrediction", + "SamplerCustomPrediction", + "ScalePrediction", + "ScaledGuidancePrediction", + "SelectSigmas", + "SplitAtSigma", + "SwitchPredictions" + ], + { + "author": "RedHotTensors", + "description": "Fully customizable Classifer Free Guidance for ComfyUI", + "nickname": "ComfyUI-Prediction", + "title": "ComfyUI-Prediction", + "title_aux": "ComfyUI-Prediction" + } + ], + "https://github.com/regiellis/ComfyUI-EasyColorCorrector": [ + [ + "BatchColorCorrection", + "ColorCorrectionViewer", + "ColorPaletteExtractor", + "EasyColorCorrection", + "FilmEmulation", + "RawImageProcessor", + "VAEColorCorrector" + ], + { + "title_aux": "Easy Color Correction" + } + ], + "https://github.com/regiellis/ComfyUI-EasyNoobai": [ + [ + "EasyNoobai", + "EasyNoobaiMasterModel", + "NoobaiArtists", + "NoobaiCharacters", + "NoobaiClothing", + "NoobaiE621Artists", + "NoobaiE621Characters", + "NoobaiHairstyles", + "NoobaiPony", + "NoobaiPoses" + ], + { + "title_aux": "ComfyUI-EasyNoobai" + } + ], + "https://github.com/regiellis/ComfyUI-EasyPony": [ + [ + "EasyPony" + ], + { + "title_aux": "ComfyUI-EasyPony" + } + ], + "https://github.com/revirevy/Comfyui_saveimage_imgbb": [ + [ + "ImgBBUploader", + "LLM_prompt_generator" + ], + { + "author": "N.RHEVI", + "description": "This custom node allow save image to imgbb.", + "nickname": "save image to imgbb", + "title": "save image to imgbb", + "title_aux": "Comfyui_saveimage_imgbb" + } + ], + "https://github.com/rgthree/rgthree-comfy": [ + [], + { + "author": "rgthree", + "description": "A bunch of nodes I created that I also find useful.", + "nickname": "rgthree", + "nodename_pattern": " \\(rgthree\\)$", + "title": "Comfy Nodes", + "title_aux": "rgthree's ComfyUI Nodes" + } + ], + "https://github.com/rhdunn/comfyui-audio-processing": [ + [ + "ComfyAudio.ApplyFilterBank", + "ComfyAudio.GriffinLim", + "ComfyAudio.InverseSpectrogram", + "ComfyAudio.LinearFilterBank", + "ComfyAudio.LoadAudio", + "ComfyAudio.MelScaleFilterBank", + "ComfyAudio.PlotFilterBank", + "ComfyAudio.PlotSpectrogram", + "ComfyAudio.PlotWaveform", + "ComfyAudio.Spectrogram" + ], + { + "title_aux": "comfyui-audio-processing" + } + ], + "https://github.com/rhdunn/comfyui-bus-plugin": [ + [ + "ComfyBus.CLIPConditioningBusNode", + "ComfyBus.CLIPEncodedPromptBusNode", + "ComfyBus.CheckpointBusNode", + "ComfyBus.ImageBusNode", + "ComfyBus.ImageParameterBusNode", + "ComfyBus.ImageScaleToSideParameterBusNode", + "ComfyBus.ImageSizeBusNode", + "ComfyBus.LatentImageBusNode", + "ComfyBus.LatentImageParameterBusNode", + "ComfyBus.PromptBusNode", + "ComfyBus.PromptSDXLBusNode" + ], + { + "title_aux": "comfyui-bus-plugin" + } + ], + "https://github.com/rhplus0831/ComfyMepi": [ + [ + "MepiCheckpoint", + "MepiImageSize", + "MepiNegativePrompt", + "MepiPositivePrompt", + "MepiSaveImage", + "MepiStepsAndCfg" + ], + { + "title_aux": "ComfyMepi" + } + ], + "https://github.com/richinsley/Comfy-LFO": [ + [ + "LFO_Pulse", + "LFO_Sawtooth", + "LFO_Sine", + "LFO_Square", + "LFO_Triangle" + ], + { + "title_aux": "Comfy-LFO" + } + ], + "https://github.com/ricklove/comfyui-ricklove": [ + [ + "RL_BBox", + "RL_CacheImageSequence", + "RL_CacheMaskSequence", + "RL_CivitaiTopImagePrompts", + "RL_Crop_Resize", + "RL_Crop_Resize_Batch", + "RL_Finetune_Analyze", + "RL_Finetune_Analyze_Batch", + "RL_Finetune_Variable", + "RL_ForceDependencyOrder", + "RL_ForceDependencyOrder_ImageString", + "RL_ForceDependencyOrder_Images", + "RL_ForceDependencyOrder_Latents", + "RL_ForceDependencyOrder_String", + "RL_ForceDependencyOrder_Strings", + "RL_IfFileExists", + "RL_Image_Shadow", + "RL_Image_Threshold_Channels", + "RL_Internet_Search", + "RL_LoadImageSequence", + "RL_Load_Flow", + "RL_LoraTextExtractTags", + "RL_Optical_Flow_Dip", + "RL_RebootComfyIfLeaky", + "RL_SaveImageSequence", + "RL_Save_Flow", + "RL_SequenceContext", + "RL_Sequence_ToFilePathList", + "RL_StopIfBlack", + "RL_Uncrop", + "RL_Warp_Image", + "RL_Zoe_Depth_Map_Preprocessor", + "RL_Zoe_Depth_Map_Preprocessor_Raw_Infer", + "RL_Zoe_Depth_Map_Preprocessor_Raw_Process" + ], + { + "title_aux": "comfyui-ricklove" + } + ], + "https://github.com/rickyars/comfyui-llm-tile": [ + [ + "TiledImageGenerator", + "TiledImageGeneratorAdvanced" + ], + { + "title_aux": "Tiled Image Generator for ComfyUI" + } + ], + "https://github.com/risunobushi/ComfyUI-Similarity-Score": [ + [ + "ImageSimilarityScores" + ], + { + "title_aux": "ComfyUI-Similarity-Score" + } + ], + "https://github.com/risunobushi/ComfyUI_DisplacementMapTools": [ + [ + "DisplaceLogo", + "ExtractDisplacementMap" + ], + { + "title_aux": "ComfyUI_DisplacementMapTools" + } + ], + "https://github.com/risunobushi/ComfyUI_sm4ll-Wrapper": [ + [ + "VTONAPINode" + ], + { + "title_aux": "ComfyUI_sm4ll-Wrapper" + } + ], + "https://github.com/risunobushi/comfyUI_FrequencySeparation_RGB-HSV": [ + [ + "FrequencyCombination", + "FrequencyCombinationHSV", + "FrequencySeparation", + "FrequencySeparationHSV" + ], + { + "title_aux": "comfyUI_FrequencySeparation_RGB-HSV" + } + ], + "https://github.com/rkfg/ComfyUI-Dia_tts": [ + [ + "DiaModelLoader", + "DiaSampler" + ], + { + "title_aux": "Dia realistic TTS" + } + ], + "https://github.com/robertvoy/ComfyUI-Distributed": [ + [ + "DistributedCollector", + "DistributedSeed", + "UltimateSDUpscaleDistributed" + ], + { + "title_aux": "ComfyUI-Distributed" + } + ], + "https://github.com/robertvoy/ComfyUI-Flux-Continuum": [ + [ + "BatchSlider", + "BooleanToEnabled", + "CannySlider", + "ConfigurableDrawText", + "ConfigurableModelRouter", + "ControlNetSlider", + "DenoiseSlider", + "DrawTextConfig", + "FluxContinuumModelRouter", + "GPUSlider", + "GuidanceSlider", + "IPAdapterSlider", + "ImageBatchBoolean", + "ImpactControlBridgeFix", + "IntPass", + "LatentPass", + "MaxShiftSlider", + "OutputGetString", + "PipePass", + "ResolutionMultiplySlider", + "ResolutionPicker", + "SEGSPass", + "SamplerParameterPacker", + "SamplerParameterUnpacker", + "SelectFromBatch", + "SimpleTextTruncate", + "SplitVec2", + "SplitVec3", + "StepSlider", + "TextVersions" + ], + { + "title_aux": "ComfyUI Flux Continuum: Modular Interface" + } + ], + "https://github.com/robtl2/ComfyUI-ComfyBridge": [ + [ + "CB_ImageReceiver", + "CB_ImageSender" + ], + { + "title_aux": "ComfyUI-ComfyBridge" + } + ], + "https://github.com/rohitsainier/ComfyUI-InstagramDownloader": [ + [ + "InstagramDownloader", + "MediaOrganizer" + ], + { + "title_aux": "ComfyUI-InstagramDownloader" + } + ], + "https://github.com/romeobuilderotti/ComfyUI-PNG-Metadata": [ + [ + "SetMetadataAll", + "SetMetadataString" + ], + { + "title_aux": "ComfyUI PNG Metadata" + } + ], + "https://github.com/ronaldzgithub/ComfyUI_Appstore": [ + [ + "ComfyUIAppstoreHost", + "ComfyUIAppstoreParam", + "sdAppstore_saveImage" + ], + { + "title_aux": "ComfyUI_Appstore" + } + ], + "https://github.com/ronniebasak/ComfyUI-Tara-LLM-Integration": [ + [ + "TaraAdvancedComposition", + "TaraApiKeyLoader", + "TaraApiKeySaver", + "TaraDaisyChainNode", + "TaraLLMConfig", + "TaraPresetLLMConfig", + "TaraPrompter", + "TaraPrompterAdvanced" + ], + { + "title_aux": "ComfyUI-Tara-LLM-Integration" + } + ], + "https://github.com/ronsantash/Comfyui-flexi-lora-loader": [ + [ + "ComfyUIFlexiLoRALoader" + ], + { + "title_aux": "ComfyUIFlexiLoRALoader" + } + ], + "https://github.com/rookiepsi/comfypsi_blur_mask": [ + [ + "comfypsi_blur_mask" + ], + { + "title_aux": "Blur Mask" + } + ], + "https://github.com/rookiepsi/comfyui-extended": [ + [ + "ImageLiquify", + "ImageSwitch", + "MaskSwitch", + "PreviewBoolean", + "PreviewFloat", + "PreviewInteger", + "PreviewMask", + "PreviewText", + "PrimitiveBoolean", + "PrimitiveDimensions", + "PrimitiveFloat", + "PrimitiveInteger", + "PrimitiveText", + "UtilityExpression", + "UtilityImageDimensions", + "UtilitySwitch", + "rookiepsi_BlurMask", + "rookiepsi_ConstructMask", + "rookiepsi_CropImageToMask", + "rookiepsi_ResizeMask" + ], + { + "title_aux": "ComfyUI Extended" + } + ], + "https://github.com/roundyyy/ComfyUI-mesh-simplifier": [ + [ + "MeshSimplifierNode" + ], + { + "title_aux": "Mesh Simplifier for ComfyUI" + } + ], + "https://github.com/royceschultz/ComfyUI-Notifications": [ + [ + "Notif-PlaySound", + "Notif-SystemNotification", + "Notif-UnifiedNotification", + "Notif-Webhook" + ], + { + "title_aux": "ComfyUI-Notifications" + } + ], + "https://github.com/royceschultz/ComfyUI-TranscriptionTools": [ + [ + "TT-AudioSink", + "TT-ConvertVhsAudioToAudio", + "TT-LoadAudio", + "TT-LoadBatch", + "TT-LoadVideoAudio", + "TT-LoadWhisperModel", + "TT-WhisperTranscription", + "TT-WhisperTranscriptionBatch" + ], + { + "title_aux": "ComfyUI-TranscriptionTools" + } + ], + "https://github.com/rubi-du/ComfyUI-BiRefNet-Super": [ + [ + "BiRefNet_Lite", + "BiRefNet_Super", + "BiRefNet_onnx" + ], + { + "title_aux": "ComfyUI-BiRefNet-lite" + } + ], + "https://github.com/rubi-du/ComfyUI-Flux-Inpainting": [ + [ + "Flux Inpainting", + "FluxGuffInpainting", + "FluxInpainting", + "FluxSimpleInpainting", + "FluxTransformerInpainting", + "FluxVAELoader" + ], + { + "title_aux": "ComfyUI-Flux-Inpainting" + } + ], + "https://github.com/rubi-du/ComfyUI-ICC-nodes": [ + [ + "LoadImageICC", + "PreviewImageICC", + "SaveImageICC" + ], + { + "title_aux": "ComfyUI-ICC-nodes" + } + ], + "https://github.com/rui40000/RUI-Nodes": [ + [ + "ABCondition", + "CharacterCount" + ], + { + "title_aux": "RUI-Nodes" + } + ], + "https://github.com/ruiqutech/ComfyUI-RuiquNodes": [ + [ + "EvaluateListMultiple1", + "EvaluateListMultiple3", + "EvaluateListMultiple6", + "EvaluateListMultiple9", + "EvaluateMultiple1", + "EvaluateMultiple3", + "EvaluateMultiple6", + "EvaluateMultiple9", + "ImageDilate", + "ImageErode", + "ListPath", + "MaskDilate", + "MaskErode", + "PreviewMask", + "RangeSplit", + "SaveMask", + "StringAsAny", + "StringConcat1", + "StringConcat3", + "StringConcat6", + "StringConcat9", + "StringPathStem", + "TermsToList", + "VAEDecodeSave" + ], + { + "title_aux": "RuiquNodes for ComfyUI" + } + ], + "https://github.com/runtime44/comfyui_r44_nodes": [ + [ + "Runtime44ColorMatch", + "Runtime44DynamicKSampler", + "Runtime44FilmGrain", + "Runtime44ImageEnhance", + "Runtime44ImageOverlay", + "Runtime44ImageResizer", + "Runtime44ImageToNoise", + "Runtime44IterativeUpscaleFactor", + "Runtime44MaskSampler", + "Runtime44TiledMaskSampler", + "Runtime44Upscaler" + ], + { + "title_aux": "Runtime44 ComfyUI Nodes" + } + ], + "https://github.com/ruucm/ruucm-comfy": [ + [ + "BatchAverageImage", + "LoadExternalLoraModelOnly", + "RuucmShareScreen" + ], + { + "nodename_pattern": " \\(ruucm\\)$", + "title_aux": "Ruucm's ComfyUI Nodes" + } + ], + "https://github.com/ryanontheinside/ComfyUI-DeepLiveCam": [ + [ + "DeepLiveCamNode" + ], + { + "title_aux": "Deep Live Cam for ComfyUI" + } + ], + "https://github.com/ryanontheinside/ComfyUI_ControlFreak": [ + [ + "ControlFreak" + ], + { + "title_aux": "Control Freak for ComfyUI" + } + ], + "https://github.com/ryanontheinside/ComfyUI_Doom": [ + [ + "Doom" + ], + { + "title_aux": "Doom" + } + ], + "https://github.com/ryanontheinside/ComfyUI_EfficientTAM": [ + [ + "EfficientTAMLoader", + "EfficientTAMPredictor" + ], + { + "title_aux": "ComfyUI-EfficientTAM" + } + ], + "https://github.com/ryanontheinside/ComfyUI_ProfilerX": [ + [ + "CATEGORY", + "ExecutionTracker", + "FUNCTION", + "INPUT_TYPES", + "OUTPUT_NODE", + "ProfilerX", + "RETURN_TYPES" + ], + { + "title_aux": "ComfyUI_ProfilerX" + } + ], + "https://github.com/ryanontheinside/ComfyUI_RealtimeNodes": [ + [ + "BlendshapeControlFloat", + "BlendshapeControlInt", + "BlendshapeTrigger", + "CompareMediaPipeEmbeddings", + "CoordinateConverter", + "FaceDetectionToMask", + "FaceLandmarkPosition", + "FaceTextureWarp", + "HandLandmarkPosition", + "HeadPoseControlFloat", + "HeadPoseControlInt", + "HeadPoseTrigger", + "MaskFromFaceLandmarks", + "MaskFromHandLandmarks", + "MaskFromPoseLandmarks", + "MediaPipeFaceDetector", + "MediaPipeFaceDetectorModelLoader", + "MediaPipeFaceLandmarker", + "MediaPipeFaceLandmarkerModelLoader", + "MediaPipeFaceStylizer", + "MediaPipeFaceStylizerModelLoader", + "MediaPipeGestureRecognizer", + "MediaPipeGestureRecognizerModelLoader", + "MediaPipeHandLandmarker", + "MediaPipeHandLandmarkerModelLoader", + "MediaPipeHolisticLandmarker", + "MediaPipeHolisticVisualizer", + "MediaPipeImageEmbedder", + "MediaPipeImageEmbedderModelLoader", + "MediaPipeImageSegmenter", + "MediaPipeImageSegmenterModelLoader", + "MediaPipeInteractiveSegmenter", + "MediaPipeInteractiveSegmenterModelLoader", + "MediaPipeObjectDetector", + "MediaPipeObjectDetectorModelLoader", + "MediaPipePoseLandmarker", + "MediaPipePoseLandmarkerModelLoader", + "Point2D", + "PointList", + "PoseLandmarkPosition", + "RTCoordinateConverter", + "RTDrawLines", + "RTDrawPoints", + "RTDrawPolygon", + "ReshapeMediaPipeEmbedding", + "SelectMediaPipeSegment", + "VisualizeFaceDetections", + "VisualizeFaceLandmarks", + "VisualizeGestureRecognitions", + "VisualizeHandLandmarks", + "VisualizeObjectDetections", + "VisualizePoseLandmarks" + ], + { + "title_aux": "Nodes for use with real-time applications of ComfyUI" + } + ], + "https://github.com/ryanontheinside/ComfyUI_RyanOnTheInside": [ + [ + "ACEStepAnalyzeLatent", + "ACEStepAudioPostProcessor", + "ACEStepExtendGuider", + "ACEStepHybridGuider", + "ACEStepMaskVisualizer", + "ACEStepRepaintGuider", + "ACEStepTimeRange", + "AdvancedLuminanceMask", + "AnimatedFeaturePreview", + "AreaFeatureNode", + "AudioChannelMerge", + "AudioChannelSplit", + "AudioDither", + "AudioFade", + "AudioFeatureExtractor", + "AudioFeatureVisualizer", + "AudioFilter", + "AudioGain", + "AudioInfo", + "AudioLatentBlend", + "AudioLatentInfo", + "AudioMaskAnalyzer", + "AudioPad", + "AudioPitchShift", + "AudioRegionMask", + "AudioResample", + "AudioSeparatorSimple", + "AudioSubtract", + "AudioTemporalMask", + "AudioTimeStretch", + "AudioTrim", + "AudioVolumeNormalization", + "Audio_Combine", + "Audio_Concatenate", + "BrightnessFeatureNode", + "ColorFeatureNode", + "Color_Picker", + "ContextModifier", + "DepthBlender", + "DepthFeatureNode", + "DepthInjection", + "DepthMapProtrusion", + "DepthRippleEffect", + "DepthShapeModifier", + "DepthShapeModifierPrecise", + "Doom_", + "DownloadCREPEModel", + "DownloadOpenUnmixModel", + "DrawableFeatureNode", + "DyeImage", + "EffectVisualizer", + "EmbeddingGuidedLatentInterpolate", + "EmitterEmissionRateModulation", + "EmitterMovement", + "EmptyImageAndMaskFromAudio", + "EmptyImageFromAudio", + "EmptyMaskFromAudio", + "FeatureAccumulate", + "FeatureCombine", + "FeatureContiguousInterpolate", + "FeatureFade", + "FeatureInfoNode", + "FeatureInterpolateMulti", + "FeatureInterpolator", + "FeatureMath", + "FeatureMixer", + "FeatureOscillator", + "FeaturePeakDetector", + "FeatureRebase", + "FeatureRenormalize", + "FeatureScaler", + "FeatureSmoothing", + "FeatureToFilteredList", + "FeatureToFlexFloatParam", + "FeatureToFlexIntParam", + "FeatureToFloat", + "FeatureToLatentKeyframe", + "FeatureToMask", + "FeatureToSplineData", + "FeatureToTimestepKeyframe", + "FeatureToWeightsStrategy", + "FeatureTruncateOrExtend", + "FlexAudioPitchShift", + "FlexAudioTimeStretch", + "FlexAudioVisualizerCircular", + "FlexAudioVisualizerContour", + "FlexAudioVisualizerLine", + "FlexFeatureAttentionControl", + "FlexImageBloom", + "FlexImageChromaticAberration", + "FlexImageColorGrade", + "FlexImageContrast", + "FlexImageDepthWarp", + "FlexImageEdgeDetect", + "FlexImageGlitch", + "FlexImageHorizontalToVertical", + "FlexImageHueShift", + "FlexImageKaleidoscope", + "FlexImageParallax", + "FlexImagePixelate", + "FlexImagePosterize", + "FlexImageTiltShift", + "FlexImageTransform", + "FlexImageVignette", + "FlexImageWarp", + "FlexLatentBlend", + "FlexLatentInterpolate", + "FlexLatentNoise", + "FlexMaskBinary", + "FlexMaskDepthChamber", + "FlexMaskEmanatingRings", + "FlexMaskInterpolate", + "FlexMaskMath", + "FlexMaskMorph", + "FlexMaskOpacity", + "FlexMaskRandomShapes", + "FlexMaskTransform", + "FlexMaskVoronoiScheduled", + "FlexMaskWarp", + "FlexMaskWavePropagation", + "FlexVideoDirection", + "FlexVideoFrameBlend", + "FlexVideoSeek", + "FlexVideoSpeed", + "FlexlatentAudioBlend", + "FloatFeatureNode", + "FrequencyFilterCustom", + "FrequencyFilterPreset", + "FrequencyRange", + "GravityWell", + "ImageCASBatch", + "ImageChunk", + "ImageDifference", + "ImageIndexSelect", + "ImageInterval", + "ImageIntervalSelectPercentage", + "ImageScaleToTarget", + "Image_Shuffle", + "Knob", + "LatentFrequencyBlender", + "LocationFromMask", + "LocationFromPoint", + "LocationTransform", + "MIDIFeatureExtractor", + "MIDILoader", + "MIDIToAudio", + "ManualFeatureFromPipe", + "ManualFeatureNode", + "ManualFeaturePipe", + "ManualWhisperAlignmentData", + "MaskCompositePlus", + "MaskMath", + "MaskMorph", + "MaskRings", + "MaskToAudioMask", + "MaskTransform", + "MaskWarp", + "MotionFeatureNode", + "MovingShape", + "OpticalFlowDirectionMask", + "OpticalFlowMaskModulation", + "OpticalFlowParticleSystem", + "ParticleColorModulation", + "ParticleEmissionMask", + "ParticleEmitter", + "ParticleSizeModulation", + "ParticleSpeedModulation", + "PitchFeatureExtractor", + "PitchRange", + "PitchRangeByNoteNode", + "PitchRangePreset", + "PitchVisualizer", + "PoseInterpolator", + "PreviewFeature", + "ProximityFeatureNode", + "ProximityVisualizer", + "RhythmFeatureExtractor", + "SplineFeatureModulator", + "SplineRhythmModulator", + "SpringJointSetting", + "StaticBody", + "SwapDevice", + "TextMaskNode", + "TimeFeatureNode", + "TranslucentComposite", + "TriggerBuilder", + "VideoChunk", + "Vortex", + "WhisperAutoAdjust", + "WhisperFeature", + "WhisperTextRenderer", + "WhisperTimeAdjuster", + "WhisperToPromptTravel", + "_mfc" + ], + { + "title_aux": "RyanOnTheInside" + } + ], + "https://github.com/ryanontheinside/ComfyUI_SuperResolution": [ + [ + "SuperResolutionModelLoader", + "SuperResolutionUpscale" + ], + { + "title_aux": "ComfyUI_SuperResolution" + } + ], + "https://github.com/s9roll7/comfyui_cotracker_node": [ + [ + "CoTrackerNode", + "GridPointGeneratorNode", + "PerlinCoordinateRandomizerNode", + "XYMotionAmplifierNode" + ], + { + "title_aux": "Comfyui CoTracker Node" + } + ], + "https://github.com/saftle/uber_comfy_nodes": [ + [ + "ControlNet Selector", + "ControlNetOptionalLoader", + "DiffusersSelector", + "MultiInputVariableRewrite", + "SaveImageJPGNoMeta" + ], + { + "title_aux": "Suplex Misc ComfyUI Nodes" + } + ], + "https://github.com/sakura1bgx/ComfyUI_FlipStreamViewer": [ + [ + "FlipStreamBatchPrompt", + "FlipStreamChat", + "FlipStreamFileSelect_AnimateDiffModel", + "FlipStreamFileSelect_Checkpoints", + "FlipStreamFileSelect_ControlNetModel", + "FlipStreamFileSelect_Input", + "FlipStreamFileSelect_Output", + "FlipStreamFileSelect_TensorRT", + "FlipStreamFileSelect_VAE", + "FlipStreamFilmVfi", + "FlipStreamGate", + "FlipStreamGetParam", + "FlipStreamGetPreviewRoi", + "FlipStreamImageSize", + "FlipStreamInputBox", + "FlipStreamLogBox", + "FlipStreamParseJson", + "FlipStreamPreviewBox", + "FlipStreamRembg", + "FlipStreamScreenGrabber", + "FlipStreamSection", + "FlipStreamSegMask", + "FlipStreamSelectBox_Samplers", + "FlipStreamSelectBox_Scheduler", + "FlipStreamSetMessage", + "FlipStreamSetParam", + "FlipStreamSetUpdateAndReload", + "FlipStreamSlider", + "FlipStreamSource", + "FlipStreamSwitch", + "FlipStreamSwitchImage", + "FlipStreamSwitchLatent", + "FlipStreamTextBox", + "FlipStreamTextReplace", + "FlipStreamVideoInput", + "FlipStreamViewer" + ], + { + "title_aux": "ComfyUI_FlipStreamViewer" + } + ], + "https://github.com/sanbuphy/ComfyUI-AudioLDM": [ + [ + "AudioLDM", + "PreviewAudioLDM", + "SaveAudioLDM" + ], + { + "title_aux": "ComfyUI-AudioLDM" + } + ], + "https://github.com/santiagosamuel3455/ComfyUI-GeminiImageToPrompt": [ + [ + "DeepseekR1KlingAINode", + "GeminiImageToPromptNode", + "GeminiTextToCinematicPromptNode", + "ShowGeneratedText", + "ShowTextNode" + ], + { + "title_aux": "ComfyUI-GeminiImageToPrompt" + } + ], + "https://github.com/scraed/LanPaint": [ + [ + "LanPaint_KSampler", + "LanPaint_KSamplerAdvanced", + "LanPaint_MaskBlend", + "LanPaint_SamplerCustom", + "LanPaint_SamplerCustomAdvanced" + ], + { + "title_aux": "LanPaint" + } + ], + "https://github.com/sdfxai/SDFXBridgeForComfyUI": [ + [ + "SDFXClipTextEncode" + ], + { + "title_aux": "SDFXBridgeForComfyUI - ComfyUI Custom Node for SDFX Integration" + } + ], + "https://github.com/sdtana/ComfyUI-FDG": [ + [ + "FDGNode" + ], + { + "title_aux": "ComfyUI-FDG" + } + ], + "https://github.com/seanjang990/comfyui-document-auto-crop": [ + [ + "CropRotateNode" + ], + { + "title_aux": "ComfyUI Document Auto Crop Node" + } + ], + "https://github.com/seanlynch/comfyui-optical-flow": [ + [ + "Apply optical flow", + "Compute optical flow", + "Visualize optical flow" + ], + { + "title_aux": "ComfyUI Optical Flow" + } + ], + "https://github.com/seanlynch/srl-nodes": [ + [ + "SRL Conditional Interrrupt", + "SRL Eval", + "SRL Filter Image List", + "SRL Format String" + ], + { + "title_aux": "SRL's nodes" + } + ], + "https://github.com/sebord/ComfyUI-LMCQ": [ + [ + "LmcqCodeDecryptionLoader", + "LmcqCodeEncryption", + "LmcqDeepGen", + "LmcqDeepLoader", + "LmcqGetMachineCode", + "LmcqImageSaver", + "LmcqImageSaverTransit", + "LmcqImageSaverWeb", + "LmcqInputValidator", + "LmcqLoadFluxNF4Checkpoint", + "LmcqRuntimeLoraDecryption", + "LmcqRuntimeLoraEncryption", + "LmcqRuntimeModelDecryption", + "LmcqRuntimeModelEncryption", + "LmcqRuntimeWorkflowDecryption", + "LmcqRuntimeWorkflowEncryption" + ], + { + "title_aux": "ComfyUI-LMCQ" + } + ], + "https://github.com/sergekatzmann/ComfyUI_Nimbus-Pack": [ + [ + "AdjustAndRoundDimensions", + "AspectRatioMobileDevices", + "ImageResizeAndCropNode", + "ImageSquareAdapterNode", + "PopularScreenResolutions" + ], + { + "title_aux": "ComfyUI_Nimbus-Pack" + } + ], + "https://github.com/sh570655308/ComfyUI-GigapixelAI": [ + [ + "GigapixelAI", + "GigapixelModelSettings", + "GigapixelUpscaleSettings" + ], + { + "title_aux": "ComfyUI-GigapixelAI" + } + ], + "https://github.com/sh570655308/ComfyUI-TopazVideoAI": [ + [ + "TopazUpscaleParams", + "TopazVideoAI" + ], + { + "title_aux": "ComfyUI-TopazVideoAI" + } + ], + "https://github.com/shabri-arrahim/ComfyUI-Safety-Checker": [ + [ + "CompVisSafetyChecker", + "FalconsAISafetyChecker", + "loadImageBase64" + ], + { + "title_aux": "ComfyUI Safety Checker" + } + ], + "https://github.com/shadowcz007/comfyui-Image-reward": [ + [ + "ImageBatchToList_", + "ImageRewardScore_" + ], + { + "title_aux": "comfyui-Image-reward" + } + ], + "https://github.com/shadowcz007/comfyui-consistency-decoder": [ + [ + "VAEDecodeConsistencyDecoder", + "VAELoaderConsistencyDecoder" + ], + { + "title_aux": "Consistency Decoder" + } + ], + "https://github.com/shadowcz007/comfyui-edit-mask": [ + [ + "EditMask" + ], + { + "title_aux": "comfyui-edit-mask" + } + ], + "https://github.com/shadowcz007/comfyui-liveportrait": [ + [ + "ExpressionEditor_", + "ExpressionVideo2VideoNode", + "ExpressionVideoNode", + "FaceCropInfo", + "LivePortraitNode", + "LivePortraitVideoNode", + "Retargeting" + ], + { + "title_aux": "comfyui-liveportrait" + } + ], + "https://github.com/shadowcz007/comfyui-mixlab-nodes": [ + [ + "3DImage", + "AnalyzeAudio", + "AppInfo", + "ApplyVisualStylePrompting_", + "AreaToMask", + "AudioPlay", + "CenterImage", + "CkptNames_", + "Color", + "ComparingTwoFrames_", + "CompositeImages_", + "CreateJsonNode", + "DepthViewer", + "DynamicDelayProcessor", + "EmbeddingPrompt", + "EnhanceImage", + "FaceToMask", + "FeatheredMask", + "FloatSlider", + "FloatingVideo", + "Font", + "GLIGENTextBoxApply_Advanced", + "GetImageSize_", + "GradientImage", + "GridDisplayAndSave", + "GridInput", + "GridOutput", + "ImageBatchToList_", + "ImageColorTransfer", + "ImageCropByAlpha", + "ImageListToBatch_", + "ImagesPrompt_", + "IncrementingListNode_", + "IntNumber", + "JoinWithDelimiter", + "KeyInput", + "LimitNumber", + "ListSplit_", + "LoadImagesFromPath", + "LoadImagesFromURL", + "LoadImagesToBatch", + "LoraNames_", + "LoraPrompt", + "MaskListMerge_", + "MaskListReplace_", + "MergeLayers", + "MirroredImage", + "MultiplicationNode", + "NewLayer", + "NoiseImage", + "OutlineMask", + "P5Input", + "PreviewMask_", + "PromptImage", + "PromptSimplification", + "PromptSlide", + "RandomPrompt", + "ResizeImageMixlab", + "SamplerNames_", + "SaveImageAndMetadata_", + "SaveImageToLocal", + "ScreenShare", + "Seed_", + "ShowLayer", + "SmoothMask", + "SpeechRecognition", + "SpeechSynthesis", + "SplitImage", + "SplitLongMask", + "StyleAlignedBatchAlign_", + "StyleAlignedReferenceSampler_", + "StyleAlignedSampleReferenceLatents_", + "SvgImage", + "SwitchByIndex", + "TESTNODE_", + "TESTNODE_TOKEN", + "TextImage", + "TextInput_", + "TextToNumber", + "TransparentImage", + "VAEDecodeConsistencyDecoder", + "VAELoaderConsistencyDecoder" + ], + { + "title_aux": "comfyui-mixlab-nodes" + } + ], + "https://github.com/shadowcz007/comfyui-sound-lab": [ + [ + "AudioPlay", + "Musicgen_", + "StableAudio_" + ], + { + "title_aux": "comfyui-sound-lab" + } + ], + "https://github.com/shadowcz007/comfyui-try-on": [ + [ + "CatVTONNode", + "FashionClothMask", + "FashionClothMask2" + ], + { + "author": "chflame", + "description": "CatVTON warpper for ComfyUI", + "nickname": "CatVTON_Wrapper", + "title": "CatVTON_Wrapper", + "title_aux": "comfyui-try-on" + } + ], + "https://github.com/shadowcz007/comfyui-ultralytics-yolo": [ + [ + "DetectByLabel" + ], + { + "title_aux": "comfyui-ultralytics-yolo" + } + ], + "https://github.com/shahkoorosh/ComfyUI-KGnodes": [ + [ + "CustomResolutionLatentNode", + "FaceDetectorAndCropper", + "ImageScaleToSide", + "OverlayRGBAonRGB", + "StyleSelector", + "TextBehindImage" + ], + { + "author": "ShahKoorosh", + "description": "This Custom node pack offers various nodes to make it easier to use ComfyUI.", + "nickname": "KGnodes", + "title": "ComfyUI-KGnodes", + "title_aux": "ComfyUI-KGnodes" + } + ], + "https://github.com/shahkoorosh/ComfyUI-PersianText": [ + [ + "PersianText" + ], + { + "author": "shahkoorosh", + "description": "A powerful ComfyUI node for rendering text with advanced styling options, including full support for Persian/Farsi and Arabic scripts.", + "nickname": "PersianText", + "title": "ComfyUI-PersianText", + "title_aux": "ComfyUI-PersianText" + } + ], + "https://github.com/shenduldh/ComfyUI-Lightning": [ + [ + "ApplyFBCacheAndSkipBlocks", + "ApplyMBCacheAndSkipBlocks", + "ApplyMBCacheAndSkipBlocksForSana", + "ApplySageAttention", + "ApplySpargeAttn", + "ApplyTeaCacheAndSkipBlocks", + "ApplyToCa", + "ApplyTokenMerging", + "CompileAndQuantizeModel", + "SanaCLIPLoader", + "SanaDiffusionLoader", + "SanaEmptyLatentImage", + "SanaTextEncode", + "SanaVAELoader", + "SaveSpargeAttnHyperparams" + ], + { + "title_aux": "ComfyUI-Lightning" + } + ], + "https://github.com/shi3z/ComfyUI_Memeplex_DALLE": [ + [ + "DallERender", + "GPT", + "MemeplexCustomSDXLRender", + "MemeplexRender", + "TextInput", + "TextSend" + ], + { + "title_aux": "ComfyUI_Memeplex_DALLE" + } + ], + "https://github.com/shiertier/ComfyUI-TeaCache-lumina2": [ + [ + "TeaCacheForLumina2", + "TeaCacheForLuminaAuto", + "TeaCacheForLuminaNext" + ], + { + "title_aux": "ComfyUI-TeaCache-Lumina" + } + ], + "https://github.com/shiimizu/ComfyUI-PhotoMaker-Plus": [ + [ + "PhotoMakerEncodePlus", + "PhotoMakerInsightFaceLoader", + "PhotoMakerLoaderPlus", + "PhotoMakerLoraLoaderPlus", + "PhotoMakerStyles", + "PrepImagesForClipVisionFromPath" + ], + { + "title_aux": "ComfyUI PhotoMaker Plus" + } + ], + "https://github.com/shiimizu/ComfyUI-TiledDiffusion": [ + [ + "NoiseInversion", + "SpotDiffusionParams_TiledDiffusion", + "TiledDiffusion", + "VAEDecodeTiled_TiledDiffusion", + "VAEEncodeTiled_TiledDiffusion" + ], + { + "title_aux": "Tiled Diffusion & VAE for ComfyUI" + } + ], + "https://github.com/shiimizu/ComfyUI-semantic-aware-guidance": [ + [ + "SemanticAwareGuidance" + ], + { + "title_aux": "Semantic-aware Guidance (S-CFG)" + } + ], + "https://github.com/shiimizu/ComfyUI_smZNodes": [ + [ + "smZ CLIPTextEncode", + "smZ Settings" + ], + { + "title_aux": "smZNodes" + } + ], + "https://github.com/shingo1228/ComfyUI-SDXL-EmptyLatentImage": [ + [ + "SDXL Empty Latent Image" + ], + { + "title_aux": "ComfyUI-SDXL-EmptyLatentImage" + } + ], + "https://github.com/shingo1228/ComfyUI-send-eagle-slim": [ + [ + "Send Image to Eagle" + ], + { + "title_aux": "ComfyUI-send-Eagle(slim)" + } + ], + "https://github.com/shinich39/comfyui-break-workflow": [ + [ + "BreakWorkflow" + ], + { + "author": "shinich39", + "description": "Break the execution, save the incompleted image then continue later.", + "nickname": "comfyui-break-workflow", + "title": "comfyui-break-workflow", + "title_aux": "comfyui-break-workflow" + } + ], + "https://github.com/shinich39/comfyui-dynamic-routes": [ + [ + "DynamicRoutes" + ], + { + "author": "shinich39", + "description": "Shuffle nodes after queue execution.", + "nickname": "comfyui-dynamic-routes", + "title": "comfyui-dynamic-routes", + "title_aux": "comfyui-dynamic-routes" + } + ], + "https://github.com/shinich39/comfyui-get-meta": [ + [ + "GetBooleanFromImage", + "GetComboFromImage", + "GetFloatFromImage", + "GetIntFromImage", + "GetNodesFromImage", + "GetPromptFromImage", + "GetStringFromImage", + "GetWorkflowFromImage" + ], + { + "author": "shinich39", + "description": "Get metadata from image.", + "nickname": "comfyui-get-meta", + "title": "comfyui-get-meta", + "title_aux": "comfyui-get-meta" + } + ], + "https://github.com/shinich39/comfyui-no-one-above-me": [ + [ + "NoOneAboveMe" + ], + { + "author": "shinich39", + "description": "Fix node to top.", + "nickname": "comfyui-no-one-above-me", + "title": "comfyui-no-one-above-me", + "title_aux": "comfyui-no-one-above-me" + } + ], + "https://github.com/shobhitic/ComfyUI-PlusMinusTextClip": [ + [ + "PlusMinusTextClip" + ], + { + "title_aux": "PlusMinusTextClip - Single node for Positive and Negative Prompts" + } + ], + "https://github.com/shockz0rz/comfy-easy-grids": [ + [ + "FloatToText", + "GridFloatList", + "GridFloats", + "GridIntList", + "GridInts", + "GridLoras", + "GridStringList", + "GridStrings", + "ImageGridCommander", + "IntToText", + "SaveImageGrid", + "TextConcatenator" + ], + { + "title_aux": "comfy-easy-grids" + } + ], + "https://github.com/silveroxides/ComfyUI-ModelUtils": [ + [ + "CLIPMetaKeys", + "CheckpointMetaKeys", + "LoRAMetaKeys", + "UNetMetaKeys" + ], + { + "title_aux": "Model Utility Toolkit" + } + ], + "https://github.com/silveroxides/ComfyUI_EmbeddingToolkit": [ + [ + "SaveA1111WeightedEmbeddings", + "SaveTokenEmbeddings", + "SaveWeightedEmbeddings", + "SliceExistingEmbedding" + ], + { + "title_aux": "ComfyUI_EmbeddingToolkit" + } + ], + "https://github.com/silveroxides/ComfyUI_FDGuidance": [ + [ + "FrequencyDecoupledGuidance" + ], + { + "title_aux": "ComfyUI_FDGuidance" + } + ], + "https://github.com/silveroxides/ComfyUI_PowerShiftScheduler": [ + [ + "PowerShiftScheduler" + ], + { + "title_aux": "ComfyUI Power Shift Scheduler" + } + ], + "https://github.com/silveroxides/ComfyUI_SigmoidOffsetScheduler": [ + [ + "SigmoidOffsetScheduler" + ], + { + "title_aux": "ComfyUI Sigmoid Offset Scheduler" + } + ], + "https://github.com/sipherxyz/comfyui-art-venture": [ + [ + "AV_AwsBedrockClaudeApi", + "AV_AwsBedrockMistralApi", + "AV_CheckpointMerge", + "AV_CheckpointModelsToParametersPipe", + "AV_CheckpointSave", + "AV_ClaudeApi", + "AV_ControlNetEfficientLoader", + "AV_ControlNetEfficientLoaderAdvanced", + "AV_ControlNetEfficientStacker", + "AV_ControlNetEfficientStackerSimple", + "AV_ControlNetLoader", + "AV_ControlNetPreprocessor", + "AV_LLMApiConfig", + "AV_LLMChat", + "AV_LLMCompletion", + "AV_LLMMessage", + "AV_LoraListLoader", + "AV_LoraListStacker", + "AV_LoraLoader", + "AV_OpenAIApi", + "AV_ParametersPipeToCheckpointModels", + "AV_ParametersPipeToPrompts", + "AV_PromptsToParametersPipe", + "AV_SAMLoader", + "AV_VAELoader", + "AspectRatioSelector", + "BLIPCaption", + "BLIPLoader", + "BooleanPrimitive", + "CheckpointNameSelector", + "ColorBlend", + "ColorCorrect", + "DeepDanbooruCaption", + "DependenciesEdit", + "DownloadAndLoadBlip", + "DownloadISNetModel", + "Fooocus_KSampler", + "Fooocus_KSamplerAdvanced", + "GetBoolFromJson", + "GetFloatFromJson", + "GetIntFromJson", + "GetObjectFromJson", + "GetSAMEmbedding", + "GetTextFromJson", + "ISNetLoader", + "ISNetSegment", + "ImageAlphaComposite", + "ImageApplyChannel", + "ImageExtractChannel", + "ImageGaussianBlur", + "ImageMuxer", + "ImageRepeat", + "ImageScaleDown", + "ImageScaleDownBy", + "ImageScaleDownToSize", + "ImageScaleToMegapixels", + "LaMaInpaint", + "LoadImageAsMaskFromUrl", + "LoadImageFromUrl", + "LoadJsonFromText", + "LoadJsonFromUrl", + "LoadLaMaModel", + "MergeModels", + "NumberScaler", + "OverlayInpaintedImage", + "OverlayInpaintedLatent", + "PrepareImageAndMaskForInpaint", + "QRCodeGenerator", + "RandomFloat", + "RandomInt", + "SAMEmbeddingToImage", + "SDXLAspectRatioSelector", + "SDXLPromptStyler", + "SeedSelector", + "StringToInt", + "StringToNumber", + "TextRandomMultiline", + "TextSwitchCase" + ], + { + "title_aux": "comfyui-art-venture" + } + ], + "https://github.com/sipie800/ComfyUI-PuLID-Flux-Enhanced": [ + [ + "ApplyPulidFlux", + "PulidFluxEvaClipLoader", + "PulidFluxInsightFaceLoader", + "PulidFluxModelLoader" + ], + { + "title_aux": "ComfyUI-PuLID-Flux-Enhanced" + } + ], + "https://github.com/sittere/ComfyUI-YK_Line-loading": [ + [ + "MultiTextLoader" + ], + { + "title_aux": "ComfyUI-YK Line loading" + } + ], + "https://github.com/sjh00/ComfyUI-LoadImageWithInfo": [ + [ + "LoadImageWithInfo", + "SaveImageWithInfo" + ], + { + "title_aux": "ComfyUI LoadImageWithInfo" + } + ], + "https://github.com/skayka/ComfyUI-DreamFit": [ + [ + "DreamFitAdapterInfo", + "DreamFitCheckpointLoader", + "DreamFitConditioningInfo", + "DreamFitEncode", + "DreamFitFluxAdapter", + "DreamFitFluxAdapterV2", + "DreamFitFluxAdapterV3", + "DreamFitKSampler", + "DreamFitKSamplerV2", + "DreamFitKSamplerV3", + "DreamFitModelValidator", + "DreamFitSamplerAdvanced", + "DreamFitSamplerV4", + "DreamFitSimple", + "DreamFitUnified", + "DreamFitUnifiedV2" + ], + { + "title_aux": "ComfyUI-DreamFit" + } + ], + "https://github.com/skfoo/ComfyUI-Coziness": [ + [ + "LoraTextExtractor-b1f83aa2", + "MultiLoraLoader-70bf3d77" + ], + { + "title_aux": "ComfyUI-Coziness" + } + ], + "https://github.com/skycoder182/comfyui-filename-tools": [ + [ + "ExtractAndTrimFilename", + "LoadImageWithFilename" + ], + { + "title_aux": "Filename Tools" + } + ], + "https://github.com/skycoder182/comfyui-skycoder-tools": [ + [ + "Aspect_Ratio_and_Tile_size_calculator", + "BLIP2Captioning", + "BooleanToggle", + "ConcatenateAndTestIfEmpty", + "DirectoryImageInfo", + "DirectoryImageLoader", + "ImageBasicNode" + ], + { + "title_aux": "Skycoder Tools" + } + ], + "https://github.com/slvslvslv/ComfyUI-SmartHelperNodes": [ + [ + "SmartFormatString", + "SmartFormatString10", + "SmartHVLoraSelect", + "SmartHVLoraStack", + "SmartLoadLoRA", + "SmartModelOrLoraToString", + "SmartPrompt", + "SmartRemoveComments", + "SmartSaveText", + "SmartShowAnything" + ], + { + "title_aux": "ComfyUI Smart Helper Nodes" + } + ], + "https://github.com/slvslvslv/ComfyUI-SmartImageTools": [ + [ + "SmartBackgroundRemove", + "SmartGenerateImage", + "SmartImagePaletteConvert", + "SmartImagePaletteExtract", + "SmartImagePoint", + "SmartImagePreviewScaled", + "SmartImageRegion", + "SmartImagesProcessor", + "SmartPoint", + "SmartPointSet", + "SmartPointSetMerge", + "SmartPreviewPalette", + "SmartSaveAnimatedPNG", + "SmartSavePNG", + "SmartSemiTransparenceRemove", + "SmartVideoPreviewScaled" + ], + { + "title_aux": "ComfyUI-SmartImageTools" + } + ], + "https://github.com/slyt/comfyui-ollama-nodes": [ + [ + "BooleanToString", + "DownloadHuggingfaceModel", + "FloatToString", + "GenerateOllama", + "IntToString", + "ListModels", + "ListToString", + "PullModel" + ], + { + "title_aux": "comfyui-ollama-nodes" + } + ], + "https://github.com/sm079/ComfyUI-Face-Detection": [ + [ + "FaceCombine", + "FaceDetection" + ], + { + "title_aux": "ComfyUI-Face-Detection" + } + ], + "https://github.com/smagnetize/kb-comfyui-nodes": [ + [ + "SingleImageDataUrlLoader" + ], + { + "title_aux": "kb-comfyui-nodes" + } + ], + "https://github.com/smlbiobot/ComfyUI-Flux-Replicate-API": [ + [ + "SML_FluxProUltra_Replicate_Standalone", + "SML_FluxPro_Replicate_Standalone" + ], + { + "title_aux": "ComfyUI-Flux-Replicate-API" + } + ], + "https://github.com/smlbiobot/sml-comfyui-prompt-expansion": [ + [ + "SML_Prompt_Generator" + ], + { + "title_aux": "sml-comfyui-prompt-expansion" + } + ], + "https://github.com/smthemex/ComfyUI_AniCrafter": [ + [ + "AniCrafterLoader", + "AniCrafterPreImage", + "AniCrafterPreText", + "AniCrafterPreVideo", + "AniCrafterSampler" + ], + { + "title_aux": "ComfyUI_AniCrafter" + } + ], + "https://github.com/smthemex/ComfyUI_AnyDoor": [ + [ + "AnyDoor_LoadModel", + "AnyDoor_img2img" + ], + { + "title_aux": "ComfyUI_AnyDoor" + } + ], + "https://github.com/smthemex/ComfyUI_CSD_MT": [ + [ + "CSDMTLoader", + "CSDMTSampler" + ], + { + "title_aux": "ComfyUI_CSD_MT" + } + ], + "https://github.com/smthemex/ComfyUI_CSGO_Wrapper": [ + [ + "Blip_Loader", + "CSGO_Loader", + "CSGO_Sampler" + ], + { + "title_aux": "ComfyUI_CSGO_Wrapper" + } + ], + "https://github.com/smthemex/ComfyUI_ChatGLM_API": [ + [ + "Glm_4_9b_Chat", + "Glm_4v_9b", + "Glm_Lcoal_Or_Repo", + "ZhipuaiApi_Character", + "ZhipuaiApi_Txt", + "ZhipuaiApi_img" + ], + { + "title_aux": "ComfyUI_ChatGLM_API" + } + ], + "https://github.com/smthemex/ComfyUI_CustomNet": [ + [ + "CustomNet_LoadModel", + "CustomNet_Sampler" + ], + { + "title_aux": "ComfyUI_CustomNet" + } + ], + "https://github.com/smthemex/ComfyUI_DICE_Talk": [ + [ + "Dice_Talk_Loader", + "Dice_Talk_PreData", + "Dice_Talk_Sampler" + ], + { + "title_aux": "ComfyUI_DICE_Talk" + } + ], + "https://github.com/smthemex/ComfyUI_DeepFakeDefenders": [ + [ + "DeepFakeDefender_Loader", + "DeepFakeDefender_Sampler" + ], + { + "title_aux": "ComfyUI_DeepFakeDefenders" + } + ], + "https://github.com/smthemex/ComfyUI_Demucs": [ + [ + "Demucs_Loader", + "Demucs_Sampler" + ], + { + "title_aux": "ComfyUI_Demucs" + } + ], + "https://github.com/smthemex/ComfyUI_Diffree": [ + [ + "Diffree_Model_Loader", + "Diffree_Sampler" + ], + { + "title_aux": "ComfyUI_Diffree" + } + ], + "https://github.com/smthemex/ComfyUI_DiffuEraser": [ + [ + "DiffuEraserLoader", + "DiffuEraserSampler" + ], + { + "title_aux": "ComfyUI_DiffuEraser" + } + ], + "https://github.com/smthemex/ComfyUI_EchoMimic": [ + [ + "Echo_LoadModel", + "Echo_Sampler" + ], + { + "title_aux": "ComfyUI_EchoMimic" + } + ], + "https://github.com/smthemex/ComfyUI_Face_Anon_Simple": [ + [ + "Face_Anon_Simple_Align", + "Face_Anon_Simple_LoadModel", + "Face_Anon_Simple_Sampler" + ], + { + "title_aux": "ComfyUI_Face_Anon_Simple" + } + ], + "https://github.com/smthemex/ComfyUI_FoleyCrafter": [ + [ + "FoleyCrafter_LoadModel", + "FoleyCrafter_Sampler" + ], + { + "title_aux": "ComfyUI_FoleyCrafter" + } + ], + "https://github.com/smthemex/ComfyUI_FollowYourEmoji": [ + [ + "Emoji_Make_Temple", + "FollowYouEmoji_LoadModel", + "FollowYouEmoji_Sampler" + ], + { + "title_aux": "ComfyUI_FollowYourEmoji" + } + ], + "https://github.com/smthemex/ComfyUI_Hallo2": [ + [ + "HalloLoader", + "HalloPreImgAndAudio", + "HallosSampler", + "HallosUpscaleloader", + "HallosVideoUpscale" + ], + { + "title_aux": "ComfyUI_Hallo2" + } + ], + "https://github.com/smthemex/ComfyUI_HiDiffusion_Pro": [ + [ + "HI_Diffusers_Model_Loader", + "Hi_Sampler" + ], + { + "title_aux": "ComfyUI_HiDiffusion_Pro" + } + ], + "https://github.com/smthemex/ComfyUI_HunyuanAvatar_Sm": [ + [ + "HY_Avatar_Loader", + "HY_Avatar_PreData", + "HY_Avatar_Sampler" + ], + { + "title_aux": "ComfyUI_HunyuanAvatar_Sm" + } + ], + "https://github.com/smthemex/ComfyUI_ID_Animator": [ + [ + "ID_Animator", + "ID_Repo_Choice" + ], + { + "title_aux": "ComfyUI_ID_Animator" + } + ], + "https://github.com/smthemex/ComfyUI_InstantIR_Wrapper": [ + [ + "InstantIR_Loader", + "InstantIR_Sampler" + ], + { + "author": "zhaoyafei", + "title_aux": "ComfyUI_InstantIR_Wrapper" + } + ], + "https://github.com/smthemex/ComfyUI_KV_Edit": [ + [ + "KV_Edit_Load", + "KV_Edit_PreData", + "KV_Edit_Sampler" + ], + { + "title_aux": "ComfyUI_KV_Edit" + } + ], + "https://github.com/smthemex/ComfyUI_Light_A_Video": [ + [ + "Light_A_Video_Loader", + "Light_A_Video_Sampler" + ], + { + "title_aux": "ComfyUI_Light_A_Video" + } + ], + "https://github.com/smthemex/ComfyUI_Llama3_8B": [ + [ + "ChatQA_1p5_8b", + "Local_Or_Repo_Choice", + "Meta_Llama3_8B", + "MiniCPM_Llama3_V25" + ], + { + "title_aux": "ComfyUI_Llama3_8B" + } + ], + "https://github.com/smthemex/ComfyUI_MS_Diffusion": [ + [ + "MS_Object_img_Batch", + "MSdiffusion_Model_Loader", + "MSdiffusion_Sampler" + ], + { + "title_aux": "ComfyUI_MS_Diffusion" + } + ], + "https://github.com/smthemex/ComfyUI_MangaNinjia": [ + [ + "MangaNinjiaLoader", + "MangaNinjiaSampler", + "MarkImageNode" + ], + { + "title_aux": "ComfyUI_MangaNinjia" + } + ], + "https://github.com/smthemex/ComfyUI_MooER": [ + [ + "MooER_LoadModel", + "MooER_Sampler" + ], + { + "title_aux": "ComfyUI_MooER" + } + ], + "https://github.com/smthemex/ComfyUI_OmniParser": [ + [ + "OmniParser_Loader", + "OmniParser_Sampler" + ], + { + "title_aux": "ComfyUI_OmniParser" + } + ], + "https://github.com/smthemex/ComfyUI_PBR_Maker": [ + [ + "Load_MatForger", + "MatForger_Sampler" + ], + { + "title_aux": "ComfyUI_PBR_Maker" + } + ], + "https://github.com/smthemex/ComfyUI_ParlerTTS": [ + [ + "ParlerTTS_LoadModel", + "ParlerTTS_Sampler" + ], + { + "title_aux": "ComfyUI_ParlerTTS" + } + ], + "https://github.com/smthemex/ComfyUI_PartPacker": [ + [ + "PartPacker_Loader", + "PartPacker_Sampler" + ], + { + "title_aux": "ComfyUI_PartPacker" + } + ], + "https://github.com/smthemex/ComfyUI_Personalize_Anything": [ + [ + "Personalize_Anything_Load", + "Personalize_Anything_Sampler" + ], + { + "title_aux": "ComfyUI_Personalize_Anything" + } + ], + "https://github.com/smthemex/ComfyUI_PhotoDoodle": [ + [ + "PhotoDoodle_Loader", + "PhotoDoodle_Sampler" + ], + { + "title_aux": "ComfyUI_PhotoDoodle" + } + ], + "https://github.com/smthemex/ComfyUI_Pic2Story": [ + [ + "Pic2Story_Loader", + "Pic2Story_Sampler" + ], + { + "title_aux": "ComfyUI_Pic2Story" + } + ], + "https://github.com/smthemex/ComfyUI_Pipeline_Tool": [ + [ + "Pipeline_Tool" + ], + { + "title_aux": "ComfyUI_Pipeline_Tool" + } + ], + "https://github.com/smthemex/ComfyUI_Pops": [ + [ + "Pops_Decoder", + "Pops_Repo_Loader", + "Pops_Sampler" + ], + { + "title_aux": "ComfyUI_Pops" + } + ], + "https://github.com/smthemex/ComfyUI_SVFR": [ + [ + "SVFR_LoadModel", + "SVFR_Sampler", + "SVFR_img2mask" + ], + { + "title_aux": "ComfyUI_SVFR" + } + ], + "https://github.com/smthemex/ComfyUI_Sapiens": [ + [ + "SapiensLoader", + "SapiensSampler" + ], + { + "title_aux": "ComfyUI_Sapiens" + } + ], + "https://github.com/smthemex/ComfyUI_SongGeneration": [ + [ + "SongGeneration_Sampler", + "SongGeneration_Stage1", + "SongGeneration_Stage2" + ], + { + "title_aux": "ComfyUI_SongGeneration" + } + ], + "https://github.com/smthemex/ComfyUI_Sonic": [ + [ + "SONICSampler", + "SONICTLoader", + "SONIC_PreData" + ], + { + "title_aux": "ComfyUI_Sonic" + } + ], + "https://github.com/smthemex/ComfyUI_StableAudio_Open": [ + [ + "StableAudio_ModelLoader", + "StableAudio_Sampler" + ], + { + "title_aux": "ComfyUI_StableAudio_Open" + } + ], + "https://github.com/smthemex/ComfyUI_Stable_Makeup": [ + [ + "StableMakeup_LoadModel", + "StableMakeup_Sampler" + ], + { + "author": "Sajjad Ayobbi", + "title_aux": "ComfyUI_Stable_Makeup" + } + ], + "https://github.com/smthemex/ComfyUI_StoryDiffusion": [ + [ + "Comic_Type", + "EasyFunction_Lite", + "Pre_Translate_prompt", + "StoryDiffusion_Apply", + "StoryDiffusion_CLIPTextEncode", + "StoryDiffusion_KSampler", + "StoryDiffusion_Lora_Control" + ], + { + "title_aux": "ComfyUI_StoryDiffusion" + } + ], + "https://github.com/smthemex/ComfyUI_Streamv2v_Plus": [ + [ + "Stream_Lora_Loader", + "Stream_Model_Loader", + "Stream_Sampler" + ], + { + "title_aux": "ComfyUI_Streamv2v_Plus" + } + ], + "https://github.com/smthemex/ComfyUI_TRELLIS": [ + [ + "Trellis_LoadModel", + "Trellis_Sampler", + "Trellis_multiimage_loader" + ], + { + "title_aux": "ComfyUI_TRELLIS" + } + ], + "https://github.com/smthemex/ComfyUI_VisualCloze": [ + [ + "Img_Quadruple", + "VisualCloze_Aplly", + "VisualCloze_CLIPText", + "VisualCloze_KSampler" + ], + { + "title_aux": "ComfyUI_VisualCloze" + } + ], + "https://github.com/smthemex/ComfyUI_YuE": [ + [ + "YUE_Stage_A_Loader", + "YUE_Stage_A_Sampler", + "YUE_Stage_B_Loader", + "YUE_Stage_B_Sampler" + ], + { + "title_aux": "ComfyUI_YuE" + } + ], + "https://github.com/sn0w12/ComfyUI-Sn0w-Scripts": [ + [ + "Character Selector", + "Copy/Paste Textbox", + "Filter Tags", + "Generate All Characters", + "Get Font Size", + "Load Lora Folder", + "Load Lora Sn0w", + "Lora Selector", + "Lora Tester", + "Prompt Combine", + "Prompt Selector", + "Sn0w KSampler", + "Sn0w Lora Stacker", + "TaggedTiledUpscaler", + "Upscale Image With Model By" + ], + { + "title_aux": "ComfyUI-Sn0w-Scripts" + } + ], + "https://github.com/sneccc/comfyui-snek-nodes": [ + [ + "Aesthetics", + "Aesthetics V2", + "Load AI Toolkit Latent Flux", + "Save_Image_And_Caption", + "Send_to_Eagle", + "\ud83d\udc0d Random Prompt From JSON" + ], + { + "title_aux": "comfyui-snek-nodes" + } + ], + "https://github.com/souki202/ComfyUI-LoadImage-Advanced": [ + [ + "ColorAdjustment", + "LoadImageUpscale", + "LoadImageUpscaleBy" + ], + { + "title_aux": "ComfyUI-LoadImage-Advanced" + } + ], + "https://github.com/sourceful-official/LoadLoraModelOnlyWithUrl": [ + [ + "LoadLoraModelOnlyWithUrl" + ], + { + "title_aux": "LoadLoraModelOnlyWithUrl" + } + ], + "https://github.com/sousakujikken/ComfyUI-PixydustQuantizer": [ + [ + "CRTLikeEffectNode", + "Quantizer", + "XYBlurNode" + ], + { + "title_aux": "ComfyUI-PixydustQuantizer" + } + ], + "https://github.com/space-nuko/ComfyUI-Disco-Diffusion": [ + [ + "DiscoDiffusion_DiscoDiffusion", + "DiscoDiffusion_DiscoDiffusionExtraSettings", + "DiscoDiffusion_GuidedDiffusionLoader", + "DiscoDiffusion_OpenAICLIPLoader" + ], + { + "title_aux": "Disco Diffusion" + } + ], + "https://github.com/space-nuko/ComfyUI-OpenPose-Editor": [ + [ + "Nui.OpenPoseEditor" + ], + { + "title_aux": "OpenPose Editor" + } + ], + "https://github.com/space-nuko/nui-suite": [ + [ + "Nui.DynamicPromptsTextGen", + "Nui.FeelingLuckyTextGen", + "Nui.OutputString" + ], + { + "title_aux": "nui suite" + } + ], + "https://github.com/spacepxl/ComfyUI-Depth-Pro": [ + [ + "DepthPro", + "FocalFromList", + "FocalMMtoPX", + "FocalPXtoMM", + "LoadDepthPro", + "MetricDepthToInverse", + "MetricDepthToRelative" + ], + { + "title_aux": "ComfyUI-Depth-Pro" + } + ], + "https://github.com/spacepxl/ComfyUI-HQ-Image-Save": [ + [ + "LoadEXR", + "LoadEXRFrames", + "LoadImageAndPrompt", + "LoadLatentEXR", + "SaveEXR", + "SaveEXRFrames", + "SaveImageAndPromptExact", + "SaveImageAndPromptIncremental", + "SaveLatentEXR", + "SaveTiff" + ], + { + "title_aux": "ComfyUI-HQ-Image-Save" + } + ], + "https://github.com/spacepxl/ComfyUI-LossTesting": [ + [ + "Measure Timestep Loss" + ], + { + "title_aux": "ComfyUI-LossTesting" + } + ], + "https://github.com/spacepxl/ComfyUI-RAVE": [ + [ + "ConditioningDebug", + "ImageGridCompose", + "ImageGridDecompose", + "KSamplerRAVE", + "LatentGridCompose", + "LatentGridDecompose" + ], + { + "title_aux": "ComfyUI-RAVE" + } + ], + "https://github.com/spacepxl/ComfyUI-StyleGan": [ + [ + "BatchAverageStyleGANLatents", + "BlendStyleGANLatents", + "GenerateStyleGANLatent", + "LoadStyleGAN", + "StyleGANInversion", + "StyleGANLatentFromBatch", + "StyleGANSampler" + ], + { + "title_aux": "ComfyUI-StyleGan" + } + ], + "https://github.com/spawner1145/CUI-Lumina2-TeaCache": [ + [ + "LPIPS_Model_Loader", + "Store_Baseline_Image", + "TeaCache_LPIPS_Evaluator", + "TeaCache_Lumina2", + "TeaCache_Patcher", + "TeaCache_Result_Collector" + ], + { + "title_aux": "CUI-Lumina2-TeaCache" + } + ], + "https://github.com/spawner1145/comfyui-aichat": [ + [ + "GeminiApiLoader_Zho", + "GeminiChat_Zho", + "GeminiFileUploader_Zho", + "GeminiImageEncoder_Zho", + "GeminiTextBlock_Zho", + "OpenAIApiLoader_Zho", + "OpenAIChat_Zho", + "OpenAIFileUploader_Zho", + "OpenAIImageEncoder_Zho", + "OpenAITextBlock_Zho" + ], + { + "title_aux": "comfyui-aichat" + } + ], + "https://github.com/spinagon/ComfyUI-seam-carving": [ + [ + "SeamCarving" + ], + { + "title_aux": "ComfyUI-seam-carving" + } + ], + "https://github.com/spinagon/ComfyUI-seamless-tiling": [ + [ + "CircularVAEDecode", + "MakeCircularVAE", + "OffsetImage", + "SeamlessTile" + ], + { + "title_aux": "Seamless tiling Node for ComfyUI" + } + ], + "https://github.com/spro/comfyui-mirror": [ + [ + "LatentMirror" + ], + { + "title_aux": "Latent Mirror node for ComfyUI" + } + ], + "https://github.com/ssitu/ComfyUI_UltimateSDUpscale": [ + [ + "UltimateSDUpscale", + "UltimateSDUpscaleCustomSample", + "UltimateSDUpscaleNoUpscale" + ], + { + "title_aux": "UltimateSDUpscale" + } + ], + "https://github.com/ssitu/ComfyUI_fabric": [ + [ + "FABRICPatchModel", + "FABRICPatchModelAdv", + "KSamplerAdvFABRICAdv", + "KSamplerFABRIC", + "KSamplerFABRICAdv" + ], + { + "title_aux": "ComfyUI fabric" + } + ], + "https://github.com/ssitu/ComfyUI_restart_sampling": [ + [ + "KRestartSampler", + "KRestartSamplerAdv", + "KRestartSamplerCustom", + "KRestartSamplerSimple", + "RestartSampler", + "RestartScheduler" + ], + { + "title_aux": "Restart Sampling" + } + ], + "https://github.com/ssitu/ComfyUI_roop": [ + [ + "RoopImproved", + "roop" + ], + { + "title_aux": "ComfyUI roop" + } + ], + "https://github.com/stavsap/comfyui-downloader": [ + [ + "DownloadSummaryParser", + "DownloadTokenLoader", + "Downloader" + ], + { + "title_aux": "comfyui-downloader" + } + ], + "https://github.com/stavsap/comfyui-kokoro": [ + [ + "KokoroGenerator", + "KokoroSpeaker", + "KokoroSpeakerCombiner" + ], + { + "title_aux": "comfyui-kokoro" + } + ], + "https://github.com/stavsap/comfyui-ollama": [ + [ + "OllamaConnectivityV2", + "OllamaGenerate", + "OllamaGenerateAdvance", + "OllamaGenerateV2", + "OllamaLoadContext", + "OllamaOptionsV2", + "OllamaSaveContext", + "OllamaVision" + ], + { + "title_aux": "ComfyUI Ollama" + } + ], + "https://github.com/stepfun-ai/ComfyUI-StepVideo": [ + [ + "TI2V", + "TI2V_API" + ], + { + "title_aux": "ComfyUI-StepVideo" + } + ], + "https://github.com/stevenwg/ComfyUI-VideoGrid": [ + [ + "VideosConcateHorizontal:", + "VideosConcateVertical" + ], + { + "title_aux": "ComfyUI-VideoGrid" + } + ], + "https://github.com/stormcenter/ComfyUI-AutoSplitGridImage": [ + [ + "EvenImageResizer", + "GridImageSplitter" + ], + { + "title_aux": "ComfyUI-AutoSplitGridImage" + } + ], + "https://github.com/stormcenter/ComfyUI-LivePhotoCreator": [ + [ + "ImageCompareTransition", + "LivePhotoCreator", + "LivePhotoPreview" + ], + { + "title_aux": "ComfyUI LivePhoto Creator" + } + ], + "https://github.com/stormcenter/ComfyUI-SVGFullfill": [ + [ + "SVGEditor", + "SVGUploader" + ], + { + "title_aux": "ComfyUI-SVGFullfill" + } + ], + "https://github.com/storyicon/comfyui_musev_evolved": [ + [ + "AnimationZoom (comfyui_musev_evolved)", + "ImageSelector (comfyui_musev_evolved)", + "MuseVImg2Vid V1 (comfyui_musev_evolved)", + "MuseVPredictor V1 (comfyui_musev_evolved)" + ], + { + "author": "infguo", + "title_aux": "ComfyUI MuseV Evolved" + } + ], + "https://github.com/storyicon/comfyui_segment_anything": [ + [ + "GroundingDinoModelLoader (segment anything)", + "GroundingDinoSAMSegment (segment anything)", + "InvertMask (segment anything)", + "IsMaskEmpty", + "SAMModelLoader (segment anything)" + ], + { + "title_aux": "segment anything" + } + ], + "https://github.com/strand1/ComfyUI-Autogen": [ + [ + "AutogenAssistantAgent", + "AutogenCodeExecutor", + "AutogenGroupChat", + "AutogenModel" + ], + { + "title_aux": "ComfyUI-Autogen" + } + ], + "https://github.com/strawberryPunch/vram_optimizer": [ + [ + "StrawberryGPUMonitor", + "StrawberryVramOptimizer", + "custom_nodes" + ], + { + "nodename_pattern": "StFist", + "title_aux": "StrawberryFist VRAM Optimizer" + } + ], + "https://github.com/strimmlarn/ComfyUI-Strimmlarns-Aesthetic-Score": [ + [ + "AesthetlcScoreSorter", + "CalculateAestheticScore", + "LoadAesteticModel", + "ScoreToNumber" + ], + { + "title_aux": "ComfyUI_Strimmlarns_aesthetic_score" + } + ], + "https://github.com/styler00dollar/ComfyUI-deepcache": [ + [ + "DeepCache" + ], + { + "title_aux": "ComfyUI-deepcache" + } + ], + "https://github.com/styler00dollar/ComfyUI-sudo-latent-upscale": [ + [ + "SudoLatentUpscale" + ], + { + "title_aux": "ComfyUI-sudo-latent-upscale" + } + ], + "https://github.com/sugarkwork/ComfyUI_AspectRatioToSize": [ + [ + "AspectRatio", + "AspectRatioToSize", + "CalcFactorWidthHeight", + "CalculateImagePadding", + "MatchImageToAspectRatio", + "SizeToWidthHeight" + ], + { + "title_aux": "ComfyUI_AspectRatioToSize" + } + ], + "https://github.com/sugarkwork/comfyui-trtupscaler": [ + [ + "TRTUpscaler" + ], + { + "title_aux": "comfyui-trtupscaler" + } + ], + "https://github.com/sugarkwork/comfyui_cohere": [ + [ + "SimpleCohereNode" + ], + { + "title_aux": "comfyui_cohere" + } + ], + "https://github.com/sugarkwork/comfyui_tag_fillter": [ + [ + "TagCategory", + "TagCategoryEnhance", + "TagComparator", + "TagEnhance", + "TagFilter", + "TagIf", + "TagMerger", + "TagMerger4", + "TagMerger6", + "TagRemover", + "TagReplace", + "TagSelector", + "TagSwitcher", + "TagWildcardFilter" + ], + { + "title_aux": "comfyui_tag_filter" + } + ], + "https://github.com/superyoman/comfyui_lumaAPI": [ + [ + "LUMA_API_YoC", + "LUMA_API_result_YoC" + ], + { + "title_aux": "comfyui_lumaAPI" + } + ], + "https://github.com/surinder83singh/ComfyUI-compare-videos": [ + [ + "CompareVideos" + ], + { + "title_aux": "Compare Videos" + } + ], + "https://github.com/svetozarov/AS_LLM_nodes": [ + [ + "AS_ComfyGPT", + "AS_GeminiCaptioning", + "AS_MultimodalGemini" + ], + { + "title_aux": "AS_LLM_nodes" + } + ], + "https://github.com/sweetndata/ComfyUI-Image-Harmonizer": [ + [ + "harmonizer" + ], + { + "title_aux": "ComfyUI-Image-Harmonizer" + } + ], + "https://github.com/sweetndata/ComfyUI-googletrans": [ + [ + "googletrans" + ], + { + "title_aux": "ComfyUI-googletrans" + } + ], + "https://github.com/sweetndata/ComfyUI_Sticker_Compositer": [ + [ + "Sticker_Compositer" + ], + { + "title_aux": "ComfyUI_Sticker_Compositer" + } + ], + "https://github.com/syllebra/bilbox-comfyui": [ + [ + "BilboXLut", + "BilboXPhotoPrompt", + "BilboXVignette" + ], + { + "title_aux": "BilboX's ComfyUI Custom Nodes" + } + ], + "https://github.com/sylym/comfy_vid2vid": [ + [ + "CheckpointLoaderSimpleSequence", + "DdimInversionSequence", + "KSamplerSequence", + "LoadImageMaskSequence", + "LoadImageSequence", + "LoraLoaderSequence", + "SetLatentNoiseSequence", + "TrainUnetSequence", + "VAEEncodeForInpaintSequence" + ], + { + "title_aux": "Vid2vid" + } + ], + "https://github.com/synthetai/ComfyUI-JM-KLing-API": [ + [ + "JM-KLingAI-API/api-key", + "JM-KLingAI-API/hybrid-video", + "JM-KLingAI-API/image-downloader", + "JM-KLingAI-API/image-generation", + "JM-KLingAI-API/image2video", + "JM-KLingAI-API/lip-sync", + "JM-KLingAI-API/lip-sync-async", + "JM-KLingAI-API/multi-image2video", + "JM-KLingAI-API/query-status", + "JM-KLingAI-API/text2video", + "JM-KLingAI-API/video-downloader" + ], + { + "title_aux": "ComfyUI-JM-KLing-API" + } + ], + "https://github.com/synthetai/ComfyUI-JM-MiniMax-API": [ + [ + "JM-MiniMax-API/check-video-status", + "JM-MiniMax-API/download-video", + "JM-MiniMax-API/load-audio", + "JM-MiniMax-API/text-to-speech", + "JM-MiniMax-API/video-generation", + "JM-MiniMax-API/voice-cloning", + "JM-MiniMax-API/voice-design" + ], + { + "title_aux": "ComfyUI-JM-MiniMax-API" + } + ], + "https://github.com/synthetai/ComfyUI-JM-Volcengine-API": [ + [ + "VolcengineI2VS2Pro", + "volcengine-i2v-s2pro", + "volcengine-seedream-v3" + ], + { + "title_aux": "ComfyUI-JM-Volcengine-API" + } + ], + "https://github.com/synthetai/ComfyUI-ToolBox": [ + [ + "AutoDLDownload", + "CreatePaths", + "FolderDeleter", + "FolderViewe", + "PathOutput" + ], + { + "title_aux": "ComfyUI-ToolBox" + } + ], + "https://github.com/synthetai/ComfyUI_FaceEnhancer": [ + [ + "GFPGANFaceEnhancer", + "GFPGANFolderProcessor" + ], + { + "title_aux": "ComfyUI_FaceEnhancer" + } + ], + "https://github.com/synthetai/ComfyUI_PromptBatcher": [ + [ + "LoadPromptsFromDir", + "SaveTextToFiles" + ], + { + "title_aux": "ComfyUI_PromptBatcher" + } + ], + "https://github.com/sysL-padawan/comfyui-elevenlabs-integration": [ + [ + "ElevenlabsTextToEffect", + "ElevenlabsTextToVoice" + ], + { + "title_aux": "ComfyUI ElevenLabs API integration" + } + ], + "https://github.com/szhublox/ambw_comfyui": [ + [ + "Auto Merge Block Weighted", + "CLIPMergeSimple", + "CheckpointSave", + "ModelMergeBlocks", + "ModelMergeSimple" + ], + { + "title_aux": "Auto-MBW" + } + ], + "https://github.com/taabata/LCM_Inpaint_Outpaint_Comfy": [ + [ + "ComfyNodesToSaveCanvas", + "FloatNumber", + "FreeU_LCM", + "ImageDims", + "ImageOutputToComfyNodes", + "ImageResize", + "ImageShuffle", + "ImageSwitch", + "LCMGenerate", + "LCMGenerate_ReferenceOnly", + "LCMGenerate_SDTurbo", + "LCMGenerate_img2img", + "LCMGenerate_img2img_IPAdapter", + "LCMGenerate_img2img_controlnet", + "LCMGenerate_inpaintv2", + "LCMGenerate_inpaintv3", + "LCMLoader", + "LCMLoader_RefInpaint", + "LCMLoader_ReferenceOnly", + "LCMLoader_SDTurbo", + "LCMLoader_controlnet", + "LCMLoader_controlnet_inpaint", + "LCMLoader_img2img", + "LCMLoraLoader_inpaint", + "LCMLoraLoader_ipadapter", + "LCMLora_inpaint", + "LCMLora_inpaintV2", + "LCMLora_ipadapter", + "LCMT2IAdapter", + "LCM_IPAdapter", + "LCM_IPAdapter_inpaint", + "LCM_outpaint_prep", + "LoadImageNode_LCM", + "Loader_SegmindVega", + "OutpaintCanvasTool", + "SaveImage_Canvas", + "SaveImage_LCM", + "SaveImage_Puzzle", + "SaveImage_PuzzleV2", + "SegmindVega", + "SettingsSwitch", + "stitch" + ], + { + "title_aux": "LCM_Inpaint-Outpaint_Comfy" + } + ], + "https://github.com/taabata/SANA_LOWVRAM": [ + [ + "SANADiffuse", + "SANATextEncode" + ], + { + "title_aux": "SANA_LOWVRAM" + } + ], + "https://github.com/takemetosiberia/ComfyUI-SAMURAI--SAM2-": [ + [ + "SAMURAIBoxInputNode", + "SAMURAIPointsInputNode", + "SAMURAIRefineNode" + ], + { + "title_aux": "SAMURAI Nodes for ComfyUI" + } + ], + "https://github.com/talesofai/comfyui-browser": [ + [ + "DifyTextGenerator //Browser", + "LoadImageByUrl //Browser", + "SelectInputs //Browser", + "UploadToRemote //Browser", + "XyzPlot //Browser" + ], + { + "title_aux": "ComfyUI Browser" + } + ], + "https://github.com/tanglaoya321/ComfyUI-StoryMaker": [ + [ + "StoryMakerSinglePortraitNode", + "StoryMakerSwapClothNode", + "StoryMakerTwoPortraitNode" + ], + { + "title_aux": "ComfyUI-StoryMaker" + } + ], + "https://github.com/tatookan/comfyui_ssl_gemini_EXP": [ + [ + "SSL_GeminiAPIKeyConfig", + "SSL_GeminiTextPrompt" + ], + { + "title_aux": "comfyui_ssl_gemini_EXP" + } + ], + "https://github.com/tavyra/ComfyUI_Curves": [ + [ + "Curve Visualizer", + "RGB Curve Editor", + "RGBCurvesAdvanced" + ], + { + "title_aux": "ComfyUI_Curves" + } + ], + "https://github.com/tetsuoo-online/comfyui-too-xmp-metadata": [ + [ + "ReadXMPMetadata", + "WriteXMPMetadataLossless", + "WriteXMPMetadataTensor" + ], + { + "title_aux": "comfyui-too-xmp-metadata" + } + ], + "https://github.com/teward/ComfyUI-Helper-Nodes": [ + [ + "HelperNodes_CfgScale", + "HelperNodes_CheckpointSelector", + "HelperNodes_MultilineStringLiteral", + "HelperNodes_Prompt", + "HelperNodes_SDXLCommonResolutions", + "HelperNodes_SamplerSelector", + "HelperNodes_SaveImage", + "HelperNodes_SchedulerSelector", + "HelperNodes_SeedSelector", + "HelperNodes_Steps", + "HelperNodes_StringLiteral", + "HelperNodes_VAESelector", + "HelperNodes_WidthHeight" + ], + { + "title_aux": "ComfyUI-Helper-Nodes" + } + ], + "https://github.com/thalismind/ComfyUI-Blend-Nodes": [ + [ + "BlendImageNode" + ], + { + "title_aux": "ComfyUI Blend Image Nodes" + } + ], + "https://github.com/thalismind/ComfyUI-LoadImageWithFilename": [ + [ + "LoadImageFolder", + "LoadImageWithFilename", + "SaveImageWithFilename" + ], + { + "title_aux": "ComfyUI LoadImageWithFilename" + } + ], + "https://github.com/theAdamColton/ComfyUI-texflow-extension": [ + [ + "Load Texflow Depth Image", + "Save Texflow Image" + ], + { + "title_aux": "ComfyUI-texflow-extension" + } + ], + "https://github.com/theUpsider/ComfyUI-Styles_CSV_Loader": [ + [ + "Load Styles CSV" + ], + { + "title_aux": "Styles CSV Loader Extension for ComfyUI" + } + ], + "https://github.com/thecooltechguy/ComfyUI-MagicAnimate": [ + [ + "MagicAnimate", + "MagicAnimateModelLoader" + ], + { + "title_aux": "ComfyUI-MagicAnimate" + } + ], + "https://github.com/thecooltechguy/ComfyUI-Stable-Video-Diffusion": [ + [ + "SVDDecoder", + "SVDModelLoader", + "SVDSampler", + "SVDSimpleImg2Vid" + ], + { + "title_aux": "ComfyUI Stable Video Diffusion" + } + ], + "https://github.com/thedivergentai/divergent_nodes": [ + [ + "CLIPTokenCounter", + "DivergentGeminiNode", + "KoboldCppApiNode", + "LoraStrengthXYPlot", + "MusiQNode", + "SaveImageEnhancedNode" + ], + { + "title_aux": "Divergent Nodes" + } + ], + "https://github.com/theshubzworld/ComfyUI-FaceCalloutNode": [ + [ + "FaceCalloutEffect", + "IntegratedFaceComposite", + "IsolatedFaceCallout" + ], + { + "title_aux": "ComfyUI-FaceCalloutNode" + } + ], + "https://github.com/theshubzworld/ComfyUI-SD3.5-Latent-Size-Picker": [ + [ + "SD3_5EmptyLatent" + ], + { + "title_aux": "SD3.5 Empty Latent Size Picker" + } + ], + "https://github.com/theshubzworld/ComfyUI-TogetherVision": [ + [ + "Together Image \ud83c\udfa8", + "TogetherVisionBatchNode", + "TogetherVisionNode", + "TogetherVisionNode \ud83d\udd0d (Enhanced)" + ], + { + "title_aux": "Together Vision Node" + } + ], + "https://github.com/theshubzworld/ComfyUI-ollama_killer": [ + [ + "OllamaKiller" + ], + { + "title_aux": "ComfyUI-ollama_killer" + } + ], + "https://github.com/thezveroboy/ComfyUI-CSM-Nodes": [ + [ + "CSMTextToSpeech", + "LoadCSMCheckpoint", + "LoadCSMTokenizer" + ], + { + "title_aux": "ComfyUI-CSM-Nodes" + } + ], + "https://github.com/thezveroboy/ComfyUI-WAN-ClipSkip": [ + [ + "CLIPSkip" + ], + { + "title_aux": "ComfyUI-WAN-ClipSkip" + } + ], + "https://github.com/thezveroboy/ComfyUI-lut": [ + [ + "ImageToLUT" + ], + { + "title_aux": "ComfyUI-LUT" + } + ], + "https://github.com/thezveroboy/ComfyUI_ACE-Step-zveroboy": [ + [ + "ACEModelLoaderZveroboy", + "ACEStepEditZveroboy", + "ACEStepExtendZveroboy", + "ACEStepGenerateZveroboy", + "ACEStepRepaintZveroboy" + ], + { + "title_aux": "ComfyUI_ACE-Step-zveroboy" + } + ], + "https://github.com/thezveroboy/comfyui-random-image-loader": [ + [ + "LoadRandomImage" + ], + { + "title_aux": "ComfyUI Random Image Loader" + } + ], + "https://github.com/thoddnn/ComfyUI-MLX": [ + [ + "MLXClipTextEncoder", + "MLXDecoder", + "MLXLoadFlux", + "MLXSampler" + ], + { + "title_aux": "ComfyUI MLX Nodes" + } + ], + "https://github.com/tianguanggliu/Utools": [ + [ + "UTools" + ], + { + "title_aux": "comfyui-utools" + } + ], + "https://github.com/tiankuan93/ComfyUI-V-Express": [ + [ + "Load_Audio_Path", + "Load_Audio_Path_From_Video", + "Load_Image_Path", + "Load_Kps_Path", + "Load_Kps_Path_From_Video", + "Load_Video_Path", + "VEINTConstant", + "VEPreview_Video", + "VEStringConstant", + "V_Express_Loader", + "V_Express_Sampler" + ], + { + "title_aux": "V-Express: Conditional Dropout for Progressive Training of Portrait Video Generation" + } + ], + "https://github.com/tianlang0704/ComfyUI-StableProjectorzBridge": [ + [ + "ProjectorzControlnetInput", + "ProjectorzControlnetParameter", + "ProjectorzInitInput", + "ProjectorzOutput", + "ProjectorzParameter", + "ProjectorzStringToFloat", + "ProjectorzStringToInt" + ], + { + "title_aux": "Stable Projectorz Bridge" + } + ], + "https://github.com/tianyuw/ComfyUI-LLM-API": [ + [ + "PromptWithImage" + ], + { + "title_aux": "Custom nodes for llm chat with optional image input" + } + ], + "https://github.com/tighug/comfyui-eagle-feeder": [ + [ + "EagleFeederAnimatedWebp", + "EagleFeederMp4", + "EagleFeederPng" + ], + { + "title_aux": "ComfyUI Eagle Feeder" + } + ], + "https://github.com/tighug/comfyui-rating-checker": [ + [ + "RatingCheckerGantMan", + "RatingCheckerMarqo", + "RatingCheckerNudeNet" + ], + { + "title_aux": "ComfyUI Rating Checker" + } + ], + "https://github.com/tkreuziger/comfyui-claude": [ + [ + "Combine Texts", + "Describe Image", + "Transform Text" + ], + { + "title_aux": "ComfyUI and Claude" + } + ], + "https://github.com/tmagara/ComfyUI-Prediction-Boost": [ + [ + "PredictionBoost" + ], + { + "title_aux": "ComfyUI-Prediction-Boost" + } + ], + "https://github.com/tocubed/ComfyUI-AudioReactor": [ + [ + "AudioFrameTransformBeats", + "AudioFrameTransformShadertoy", + "AudioLoadPath", + "Shadertoy" + ], + { + "title_aux": "ComfyUI-AudioReactor" + } + ], + "https://github.com/tocubed/ComfyUI-EvTexture": [ + [ + "EVTEventsToImage", + "EVTLoadEvTextureModel", + "EVTTextureUpscaleVideo", + "EVTVideoToEvents" + ], + { + "title_aux": "ComfyUI-EvTexture" + } + ], + "https://github.com/tomudo/ComfyUI-ascii-art": [ + [ + "ImageToAscii" + ], + { + "author": "dfl", + "description": "CLIP text encoder that does BREAK prompting like A1111", + "nickname": "CLIP with BREAK", + "title": "CLIP with BREAK syntax", + "title_aux": "ComfyUI-ascii-art" + } + ], + "https://github.com/tooldigital/ComfyUI-Yolo-Cropper": [ + [ + "ToolYoloCropper" + ], + { + "title_aux": "Easy automatic (square) image cropper using Yolo" + } + ], + "https://github.com/toxicwind/ComfyUI-TTools": [ + [ + "TTools Extract JSON", + "TTools SD3 Resolution Solver" + ], + { + "title_aux": "TTools for ComfyUI" + } + ], + "https://github.com/toyxyz/ComfyUI_rgbx_Wrapper": [ + [ + "rgb2x" + ], + { + "title_aux": "ComfyUI_rgbx_Wrapper" + } + ], + "https://github.com/toyxyz/ComfyUI_toyxyz_test_nodes": [ + [ + "CaptureWebcam", + "Depth to normal", + "Direct Screen Capture", + "Export glb", + "ImageResize_Padding", + "LatentDelay", + "Load Random Text From File", + "LoadWebcamImage", + "Remove noise", + "SaveImagetoPath", + "VisualAreaMask" + ], + { + "title_aux": "ComfyUI_toyxyz_test_nodes" + } + ], + "https://github.com/traugdor/ComfyUI-Riffusion": [ + [ + "RiffusionNode", + "RiffusionToBatchNode" + ], + { + "title_aux": "ComfyUI-Riffusion" + } + ], + "https://github.com/traugdor/ComfyUI-UltimateSDUpscale-GGUF": [ + [ + "UltimateSDUpscaleGGUF" + ], + { + "title_aux": "ComfyUI-UltimateSDUpscale-GGUF" + } + ], + "https://github.com/traugdor/ComfyUI-quadMoons-nodes": [ + [ + "AnimateDiff Script", + "Apply ControlNet Stack", + "Control Net Stacker", + "Eff. Loader SDXL", + "Efficient Loader", + "HighRes-Fix Script", + "Image Overlay", + "Join XY Inputs of Same Type", + "KSampler (Efficient)", + "KSampler Adv. (Efficient)", + "KSampler SDXL (Eff.)", + "LatentUpscaler", + "LoRA Stack to String converter", + "LoRA Stacker", + "Manual XY Entry Info", + "NNLatentUpscale", + "Noise Control Script", + "Pack SDXL Tuple", + "Tiled Upscaler Script", + "Unpack SDXL Tuple", + "XY Input: Add/Return Noise", + "XY Input: Aesthetic Score", + "XY Input: CFG Scale", + "XY Input: Checkpoint", + "XY Input: Clip Skip", + "XY Input: Control Net", + "XY Input: Control Net Plot", + "XY Input: Denoise", + "XY Input: LoRA", + "XY Input: LoRA Plot", + "XY Input: LoRA Stacks", + "XY Input: Manual XY Entry", + "XY Input: Prompt S/R", + "XY Input: Refiner On/Off", + "XY Input: Sampler/Scheduler", + "XY Input: Seeds++ Batch", + "XY Input: Steps", + "XY Input: VAE", + "XY Plot", + "quadmoonBatchFromLatent", + "quadmoonCLIPTextEncode", + "quadmoonCLIPTextEncode2", + "quadmoonChangeBackground", + "quadmoonConvertBoolToString", + "quadmoonConvertFloatToString", + "quadmoonConvertImageToPrompt", + "quadmoonConvertIntToString", + "quadmoonConvertNormalizeHW", + "quadmoonConvertNumberToString", + "quadmoonINTConditionalOperation", + "quadmoonKSampler", + "quadmoonKSamplerAdvanced", + "quadmoonKSamplerBatched", + "quadmoonLatentImage", + "quadmoonLoadConfigs", + "quadmoonModelLoader", + "quadmoonRotationalSampler", + "quadmoonSaveNeg", + "quadmoonSavePrompt", + "quadmoonSmartNeg", + "quadmoonSmartPrompt", + "quadmoonThebutton" + ], + { + "author": "quadmoon (https://github.com/traugdor)", + "description": "These are just some nodes I wanted and couldn't find where anyone else had made them yet.", + "nickname": "quadmoon's Nodes", + "title": "quadmoon's ComfyUI nodes", + "title_aux": "quadmoon's ComfyUI nodes" + } + ], + "https://github.com/tritant/ComfyUI-Advanced-Photo-Grain": [ + [ + "PhotoFilmGrain" + ], + { + "title_aux": "Advanced Photo Grain" + } + ], + "https://github.com/tritant/ComfyUI_CreaPrompt": [ + [ + "CreaPrompt", + "CreaPrompt List", + "CreaPrompt_0", + "CreaPrompt_1", + "CreaPrompt_2", + "CreaPrompt_3", + "CreaPrompt_4" + ], + { + "title_aux": "ComfyUI-CreaPrompt" + } + ], + "https://github.com/tritant/ComfyUI_Flux_Block_Lora_Merger": [ + [ + "FluxBlockLoraMerger" + ], + { + "title_aux": "Flux Block LoRA Merger" + } + ], + "https://github.com/tritant/ComfyUI_Flux_Lora_Merger": [ + [ + "FluxLoraMerger" + ], + { + "title_aux": "Flux LoRA Merger" + } + ], + "https://github.com/tritant/ComfyUI_Remove_Banding_Artifacts": [ + [ + "ResampleBandingFix" + ], + { + "title_aux": "Remove Banding Artifacts" + } + ], + "https://github.com/trojblue/trNodes": [ + [ + "trColorCorrection", + "trLayering", + "trRouter", + "trRouterLonger" + ], + { + "title_aux": "trNodes" + } + ], + "https://github.com/troyxmccall/ComfyUI-ScaleToTargetMegapixels": [ + [ + "ScaleToTargetMegapixels" + ], + { + "title_aux": "ComfyUI-ScaleToTargetMegapixels" + } + ], + "https://github.com/trumanwong/ComfyUI-NSFW-Detection": [ + [ + "NSFWDetection" + ], + { + "title_aux": "ComfyUI-NSFW-Detection" + } + ], + "https://github.com/tsogzark/ComfyUI-load-image-from-url": [ + [ + "LoadImageFromUrlOrPath" + ], + { + "title_aux": "ComfyUI-load-image-from-url" + } + ], + "https://github.com/ttulttul/ComfyUI-Iterative-Mixer": [ + [ + "Batch Unsampler", + "Iterative Mixing KSampler", + "Iterative Mixing KSampler Advanced", + "IterativeMixingSampler", + "IterativeMixingScheduler", + "IterativeMixingSchedulerAdvanced", + "Latent Batch Comparison Plot", + "Latent Batch Statistics Plot", + "MixingMaskGenerator" + ], + { + "title_aux": "ComfyUI Iterative Mixing Nodes" + } + ], + "https://github.com/ttulttul/ComfyUI-Tensor-Operations": [ + [ + "Fast Image to Noise", + "Image Match Normalize", + "Latent Match Normalize" + ], + { + "title_aux": "ComfyUI-Tensor-Operations" + } + ], + "https://github.com/tungdop2/Comfyui_face_restorer": [ + [ + "FaceRestorer", + "FaceRestorerLoader" + ], + { + "title_aux": "Face Restorer for ComfyUI" + } + ], + "https://github.com/tungdop2/Comfyui_joy-caption-alpha-two": [ + [ + "JoyCaptioner" + ], + { + "title_aux": "Joy Caption Alpha Two for ComfyUI" + } + ], + "https://github.com/turkyden/ComfyUI-SmartCrop": [ + [ + "ImageSmartCrop" + ], + { + "title_aux": "ComfyUI-SmartCrop" + } + ], + "https://github.com/tusharbhutt/Endless-Nodes": [ + [ + "BatchNegativePrompts", + "Eight_Input_Int_Switch", + "Eight_Input_Int_Switch_Widget", + "Eight_Input_Text_Switch", + "EndlessReplicateLatents", + "FluxBatchPrompts", + "FluxKontextBatchPrompts", + "Four_Input_Int_Switch", + "Four_Input_Int_Switch_Widget", + "Four_Input_Text_Switch", + "ImageComplexityScorer", + "ImageNoveltyScorer", + "Image_saver", + "LatentReplicator", + "LatentReplicatorPrompts", + "PromptCounter", + "Random_Prompt_Multipicker", + "Random_Prompt_Selector", + "Randomizer_Chaos", + "Randomizer_Mayhem", + "Randomizer_Pandemonium", + "SDXLBatchPrompts", + "SimpleBatchPrompts", + "Six_Input_Int_Switch", + "Six_Input_Int_Switch_Widget", + "Six_Input_Text_Switch" + ], + { + "title_aux": "Endless \ufe0f\ud83c\udf0a\u2728 Nodes" + } + ], + "https://github.com/twri/sdxl_prompt_styler": [ + [ + "SDXLPromptStyler", + "SDXLPromptStylerAdvanced" + ], + { + "title_aux": "SDXL Prompt Styler" + } + ], + "https://github.com/ty0x2333/ComfyUI-Dev-Utils": [ + [ + "TY_ExecutionTime", + "TY_UploadAnything", + "TY_UrlDownload" + ], + { + "title_aux": "ComfyUI-Dev-Utils" + } + ], + "https://github.com/uarefans/ComfyUI-Fans": [ + [ + "Fans Prompt Styler Negative", + "Fans Prompt Styler Positive", + "Fans Styler", + "Fans Text Concatenate" + ], + { + "title_aux": "ComfyUI-Fans" + } + ], + "https://github.com/uetuluk/comfyui-webcam-node": [ + [ + "webcam_capture_node" + ], + { + "title_aux": "comfyui-webcam-node" + } + ], + "https://github.com/uihp/ComfyUI-String-Chain": [ + [ + "String Chain", + "String Concat", + "String Toggle", + "String Toggle (Multiline)" + ], + { + "title_aux": "ComfyUI-String-Chain" + } + ], + "https://github.com/umiyuki/comfyui-pad-to-eight": [ + [ + "Pad To Eight" + ], + { + "title_aux": "ComfyUI Pad To Eight" + } + ], + "https://github.com/un-seen/comfyui-tensorops": [ + [ + "BackgroundSelect", + "ChannelSelector", + "DownloadAndLoadFlorence2Model", + "DownloadAndLoadSAM2Model", + "FaceSwap", + "FalDifferentialDiffusion", + "FalDiffusion", + "FetchFromRedis", + "FetchJsonFromSurreal", + "Florence2Run", + "Florence2toCoordinates", + "ForegroundMask", + "GetLayerMask", + "MaskImage", + "Sam2AutoSegmentation", + "Sam2Segmentation", + "Sam2VideoSegmentation", + "Sam2VideoSegmentationAddPoints", + "SaveImageToS3", + "SaveJsonToSurreal", + "SaveTextToSurreal", + "SaveToRedis", + "SendImageOnWebSocket", + "SendJsonOnWebSocket", + "SeparateMask" + ], + { + "title_aux": "comfyui-tensorop" + } + ], + "https://github.com/un-seen/comfyui_segment_anything_plus": [ + [ + "GroundingDinoModelLoader (segment anything plus)", + "GroundingDinoSAMSegment (segment anything plus)", + "InvertMask (segment anything plus)", + "IsMaskEmpty (segment anything plus)", + "SAMModelLoader (segment anything plus)" + ], + { + "title_aux": "ComfyUI Segment Anything" + } + ], + "https://github.com/unicough/comfy_openai_image_api": [ + [ + "OpenAI Image API" + ], + { + "title_aux": "OpenAI Image API with gpt-image-1" + } + ], + "https://github.com/unwdef/unwdef-nodes-comfyui": [ + [ + "RandomTextFromMultiline", + "RandomizeLoras", + "RandomizeLorasStack", + "TextMultilineWithVariables" + ], + { + "title_aux": "unwdef-nodes" + } + ], + "https://github.com/upseem/comfyui_sun_nodes": [ + [ + "SunxAI_BatchImageLoopCloseChen", + "SunxAI_BatchImageLoopOpenChen" + ], + { + "title_aux": "SunxAI Custom Nodes for ComfyUI" + } + ], + "https://github.com/usrname0/comfyui-holdup": [ + [ + "HoldUp" + ], + { + "title_aux": "comfyui-holdup" + } + ], + "https://github.com/vadimcro/VKRiez-Edge": [ + [ + "VKriezEnhancedEdgePreprocessor", + "VKriezHybridEdgePreprocessor" + ], + { + "title_aux": "VKRiez-Edge" + } + ], + "https://github.com/vahidzxc/va-nodes": [ + [ + "VA_Seed" + ], + { + "title_aux": "va-nodes" + } + ], + "https://github.com/vahlok-alunmid/ComfyUI-ExtendIPAdapterClipVision": [ + [ + "EXTEND_CLIP_VISION_INPUT_SIZE", + "IPAdapterAdvancedSizeAware" + ], + { + "title_aux": "ComfyUI-ExtendIPAdapterClipVision" + } + ], + "https://github.com/valofey/Openrouter-Node": [ + [ + "OpenrouterNode" + ], + { + "title_aux": "OpenRouter Node" + } + ], + "https://github.com/vanche1212/ComfyUI-ZMG-Nodes": [ + [ + "VC_Load_Video_Path_Unified_Output", + "VC_Load_Video_Upload_Unified_Output", + "VC_Video_Combine_Unified_Output", + "Waveform2Audio", + "\ud83d\ude0bAPI Request Node", + "\ud83d\ude0bJSON Parser Node", + "\ud83d\ude0bOld Photo Colorization Node", + "\ud83d\ude0bOllama Request Node", + "\ud83d\ude0bSave Image Unified Output" + ], + { + "title_aux": "ZMG PLUGIN" + } + ], + "https://github.com/vanillacode314/SimpleWildcardsComfyUI": [ + [ + "SimpleConcat", + "SimpleWildcard" + ], + { + "author": "VanillaCode314", + "description": "A simple wildcard node for ComfyUI. Can also be used a style prompt node.", + "nickname": "Simple Wildcard", + "title": "Simple Wildcard", + "title_aux": "Simple Wildcard" + } + ], + "https://github.com/var1ableX/ComfyUI_Accessories": [ + [ + "ACC_AnyCast", + "AccMakeListNode", + "GetMaskDimensions", + "GetRandomDimensions", + "isImageEmpty", + "isMaskEmpty" + ], + { + "title_aux": "ComfyUI_Accessories" + } + ], + "https://github.com/vault-developer/comfyui-image-blender": [ + [ + "ImageBlender" + ], + { + "title_aux": "ImageBlender" + } + ], + "https://github.com/veighnsche/comfyui_gr85": [ + [ + "GR85_CTGPhrases", + "GR85_CTGPhrasesSimple", + "GR85_ContainsWord", + "GR85_FilterAndCombineMasks", + "GR85_Florence2RunCTPG", + "GR85_Florence2toCoordinatesGR85", + "GR85_FluxAttentionSeeker2", + "GR85_FluxAttentionSeeker3", + "GR85_FluxAttentionSeekerGenerator", + "GR85_FluxModelMergeParameters", + "GR85_ImageDimensionResizer", + "GR85_ImageSizer", + "GR85_ImageSizerAll", + "GR85_IntToString", + "GR85_IntegerSequenceModifier", + "GR85_IslandMaskGenerator", + "GR85_MaskBatchToSEGS", + "GR85_MaskConnectMST", + "GR85_MaskSplitter", + "GR85_NextSeed", + "GR85_PasteByMaskGr85", + "GR85_RandomFloat", + "GR85_RandomInt", + "GR85_RandomRatio", + "GR85_RandomizedMaskTransform", + "GR85_Sam2Segmentation", + "GR85_SaveImageFile", + "GR85_SaveTextFile", + "GR85_SeedBasedOutputSelector", + "GR85_ShowText", + "GR85_SimpleWildcardPicker", + "GR85_StrSafe", + "GR85_TagInjector", + "GR85_TagInjectorDuo", + "GR85_TagInjectorLarge", + "GR85_TagInjectorSingle", + "GR85_VerticalWildcardPicker" + ], + { + "title_aux": "comfyui_gr85" + } + ], + "https://github.com/vekitan55/SimpleFlux1Merger": [ + [ + "ExpertFlux1Merge", + "SimplifiedFlux1Merge" + ], + { + "title_aux": "Simple Flux.1 Merger for ComfyUI" + } + ], + "https://github.com/victorchall/comfyui_webcamcapture": [ + [ + "WebcamCapture" + ], + { + "title_aux": "Comfyui Webcam capture node" + } + ], + "https://github.com/vienteck/ComfyUI-Chat-GPT-Integration": [ + [ + "ChatGptPrompt" + ], + { + "title_aux": "ComfyUI-Chat-GPT-Integration" + } + ], + "https://github.com/violet-chen/comfyui-psd2png": [ + [ + "Psd2Png", + "StringInsert" + ], + { + "title_aux": "comfyui-psd2png" + } + ], + "https://github.com/violet0927/ComfyUI-HuggingFaceLoraUploader": [ + [ + "HuggingFaceLoraUploader", + "ModelScopeLoraUploader" + ], + { + "title_aux": "Hugging Face LoRA Uploader" + } + ], + "https://github.com/viperyl/ComfyUI-RGT": [ + [ + "RGT_Upscale" + ], + { + "title_aux": "ComfyUI-RGT" + } + ], + "https://github.com/vivax3794/ComfyUI-Sub-Nodes": [ + [ + "VIV_Default", + "VIV_Subgraph", + "VIV_Subgraph_Inputs", + "VIV_Subgraph_Outputs" + ], + { + "title_aux": "ComfyUI-Sub-Nodes" + } + ], + "https://github.com/vivax3794/ComfyUI-Vivax-Nodes": [ + [ + "Any String", + "Chunk Up", + "Get Chunk", + "Inspect", + "Join Chunks", + "Model From URL" + ], + { + "title_aux": "ComfyUI-Vivax-Nodes" + } + ], + "https://github.com/vkff5833/ComfyUI-MobileClient": [ + [ + "MobileClient" + ], + { + "title_aux": "ComfyUI-MobileClient" + } + ], + "https://github.com/vkff5833/ComfyUI-PromptConverter": [ + [ + "PromptConverter", + "PromptConverterWithFilter" + ], + { + "title_aux": "ComfyUI-PromptConverter" + } + ], + "https://github.com/vladpro3/ComfyUI_BishaNodes": [ + [ + "CreatePromptsWithTextFromFile", + "EmptyLatentSizePicker", + "LoadDataFromFiles", + "SimpleSizePicker", + "WildcardReplace", + "WildcardReplaceFromFile" + ], + { + "title_aux": "ComfyUI_BishaNodes" + } + ], + "https://github.com/vrgamegirl19/comfyui-vrgamedevgirl": [ + [ + "ColorMatchToReference", + "FastFilmGrain", + "FastLaplacianSharpen", + "FastSobelSharpen", + "FastUnsharpSharpen" + ], + { + "title_aux": "VRGameDevGirl Video Enhancement Nodes" + } + ], + "https://github.com/vsevolod-oparin/comfyui-kandinsky22": [ + [ + "comfy-kandinsky22-decoder-loader", + "comfy-kandinsky22-hint-combiner", + "comfy-kandinsky22-image-encoder", + "comfy-kandinsky22-img-latents", + "comfy-kandinsky22-latents", + "comfy-kandinsky22-movq-decoder", + "comfy-kandinsky22-positive-text-encoder", + "comfy-kandinsky22-prior-averaging-2", + "comfy-kandinsky22-prior-averaging-3", + "comfy-kandinsky22-prior-averaging-4", + "comfy-kandinsky22-prior-loader", + "comfy-kandinsky22-text-encoder", + "comfy-kandinsky22-unet-decoder" + ], + { + "title_aux": "Kandinsky 2.2 ComfyUI Plugin" + } + ], + "https://github.com/vuongminh1907/ComfyUI_ZenID": [ + [ + "ApplyZenID", + "InstantIDFaceAnalysis", + "InstantIDModelLoader", + "ZenIDCombineFace" + ], + { + "title_aux": "ComfyUI_ZenID" + } + ], + "https://github.com/wTechArtist/ComfyUI-CustomNodes": [ + [ + "GPT4 WWL", + "IPAdapter FaceID With Bool", + "IPAdapter Mad Scientist Weight_Type", + "Image Blending Mode Mask", + "Load Image With Bool", + "Load Lora With Shared" + ], + { + "title_aux": "ComfyUI-CustomNodes" + } + ], + "https://github.com/wTechArtist/ComfyUI-StableDelight-weiweiliang": [ + [ + "WWL_StableDelight" + ], + { + "title_aux": "ComfyUI-StableDelight-weiweiliang" + } + ], + "https://github.com/wTechArtist/ComfyUI_VVL_VideoCamera_Advanced": [ + [ + "VGGTVideoCameraNode" + ], + { + "title_aux": "ComfyUI VVL Video Camera Advanced" + } + ], + "https://github.com/wakattac/ComfyUI-AbstractImaGen": [ + [ + "AbstractImageBackground", + "AbstractImageFilledShapes", + "AbstractImageGenerator", + "AbstractImageLines", + "AbstractImageNoise", + "AbstractImagePattern", + "AbstractImagePostprocessing" + ], + { + "title_aux": "ComfyUI-AbstractImaGen" + } + ], + "https://github.com/wallish77/wlsh_nodes": [ + [ + "Alternating KSampler (WLSH)", + "Build Filename String (WLSH)", + "CLIP +/- w/Text Unified (WLSH)", + "CLIP Positive-Negative (WLSH)", + "CLIP Positive-Negative XL (WLSH)", + "CLIP Positive-Negative XL w/Text (WLSH)", + "CLIP Positive-Negative w/Text (WLSH)", + "Checkpoint Loader w/Name (WLSH)", + "Empty Latent by Pixels (WLSH)", + "Empty Latent by Ratio (WLSH)", + "Empty Latent by Size (WLSH)", + "Generate Border Mask (WLSH)", + "Grayscale Image (WLSH)", + "Image Load with Metadata (WLSH)", + "Image Save with Prompt (WLSH)", + "Image Save with Prompt File (WLSH)", + "Image Save with Prompt/Info (WLSH)", + "Image Save with Prompt/Info File (WLSH)", + "Image Scale By Factor (WLSH)", + "Image Scale by Shortside (WLSH)", + "KSamplerAdvanced (WLSH)", + "Multiply Integer (WLSH)", + "Outpaint to Image (WLSH)", + "Prompt Weight (WLSH)", + "Quick Resolution Multiply (WLSH)", + "Resolutions by Ratio (WLSH)", + "SDXL Quick Empty Latent (WLSH)", + "SDXL Quick Image Scale (WLSH)", + "SDXL Resolutions (WLSH)", + "SDXL Steps (WLSH)", + "Save Positive Prompt(WLSH)", + "Save Prompt (WLSH)", + "Save Prompt/Info (WLSH)", + "Seed and Int (WLSH)", + "Seed to Number (WLSH)", + "Simple Pattern Replace (WLSH)", + "Simple String Combine (WLSH)", + "Time String (WLSH)", + "Upscale by Factor with Model (WLSH)", + "VAE Encode for Inpaint w/Padding (WLSH)" + ], + { + "title_aux": "wlsh_nodes" + } + ], + "https://github.com/wasilone11/comfyui-pvm-node": [ + [ + "SyncPVMessengerNode" + ], + { + "title_aux": "ComfyUI Sync PVM Node" + } + ], + "https://github.com/wasilone11/comfyui-sync-lipsync-node": [ + [ + "SyncLipsyncInputNode", + "SyncLipsyncMainNode", + "SyncLipsyncOutputNode" + ], + { + "title_aux": "ComfyUI Sync Lipsync Node" + } + ], + "https://github.com/web3nomad/ComfyUI_Invisible_Watermark": [ + [ + "InvisibleWatermarkEncode" + ], + { + "title_aux": "ComfyUI Invisible Watermark" + } + ], + "https://github.com/webfiltered/DebugNode-ComfyUI": [ + [ + "WTFDebugNode" + ], + { + "title_aux": "WTF? - a debug node for ComfyUI" + } + ], + "https://github.com/webuilder/WB-ComfyUI-Utils": [ + [ + "WB_AudioDuration" + ], + { + "title_aux": "ComfyUI WB Utils" + } + ], + "https://github.com/weekii/comfyui-save-image-pro": [ + [ + "SaveImageAdvanced", + "SaveImageSimple" + ], + { + "author": "weekii", + "description": "\u4e13\u4e1a\u7ea7\u56fe\u50cf\u4fdd\u5b58\u63d2\u4ef6\uff0c\u652f\u6301\u591a\u683c\u5f0f\u3001\u81ea\u5b9a\u4e49\u547d\u540d\u548c\u9ad8\u7ea7\u529f\u80fd", + "nickname": "Save Image Pro", + "title": "ComfyUI Save Image Pro", + "title_aux": "comfyui-save-image-pro" + } + ], + "https://github.com/weilin9999/WeiLin-Comfyui-Tools": [ + [ + "WeiLinPromptUI", + "WeiLinPromptUIOnlyLoraStack", + "WeiLinPromptUIWithoutLora" + ], + { + "title_aux": "WeiLin-Comfyui-Tools" + } + ], + "https://github.com/welltop-cn/ComfyUI-TeaCache": [ + [ + "CompileModel", + "TeaCache", + "TeaCacheForCogVideoX" + ], + { + "title_aux": "ComfyUI-TeaCache" + } + ], + "https://github.com/wentao-uw/ComfyUI-template-matching": [ + [ + "IsMaskEmptyNode (template matching)", + "TemplateMatching (template matching)" + ], + { + "title_aux": "ComfyUI template matching" + } + ], + "https://github.com/westNeighbor/ComfyUI-ultimate-openpose-editor": [ + [ + "AppendageEditorNode", + "OpenposeEditorNode" + ], + { + "title_aux": "ComfyUI-ultimate-openpose-editor" + } + ], + "https://github.com/westNeighbor/ComfyUI-ultimate-openpose-estimator": [ + [ + "OpenposeEstimatorNode" + ], + { + "title_aux": "ComfyUI-ultimate-openpose-estimator" + } + ], + "https://github.com/westNeighbor/ComfyUI-ultimate-openpose-render": [ + [ + "OpenposeRenderNode" + ], + { + "title_aux": "ComfyUI-ultimate-openpose-render" + } + ], + "https://github.com/whatbirdisthat/cyberdolphin": [ + [ + "\ud83d\udc2c Gradio ChatInterface", + "\ud83d\udc2c OpenAI Advanced", + "\ud83d\udc2c OpenAI Compatible", + "\ud83d\udc2c OpenAI DALL\u00b7E", + "\ud83d\udc2c OpenAI Simple" + ], + { + "title_aux": "cyberdolphin" + } + ], + "https://github.com/whmc76/ComfyUI-Openpose-Editor-Plus": [ + [ + "CDL.OpenPoseEditorPlus" + ], + { + "title_aux": "ComfyUI-Openpose-Editor-Plus" + } + ], + "https://github.com/whmc76/ComfyUI-RemoveBackgroundSuite": [ + [ + "BiRefNetUltraV3_RBS", + "MaskProcessDetails_RBS", + "TransparentBackgroundUltra_RBS" + ], + { + "title_aux": "ComfyUI-RemoveBackgroundSuite" + } + ], + "https://github.com/whmc76/ComfyUI-UniversalToolkit": [ + [ + "AudioCropProcessUTK", + "CheckMask_UTK", + "CropByMask_UTK", + "DepthMapBlur_UTK", + "EmptyUnitGenerator_UTK", + "FillMaskedArea_UTK", + "ImageAndMaskPreview_UTK", + "ImageCombineAlpha_UTK", + "ImageConcatenateMulti_UTK", + "ImageConcatenate_UTK", + "ImageMaskScaleAs_UTK", + "ImagePadForOutpaintMasked_UTK", + "ImageRatioDetector_UTK", + "ImageRemoveAlpha_UTK", + "ImageScaleByAspectRatio_UTK", + "ImageScaleRestore_UTK", + "ImitationHueNode_UTK", + "LoadAudioPlusFromPath_UTK", + "LoadKontextPresets_UTK", + "LoraInfo_UTK", + "MaskAdd_UTK", + "MaskAnd_UTK", + "MaskSub_UTK", + "MathExpression_UTK", + "PurgeVRAM_UTK", + "RestoreCropBox_UTK", + "Show_UTK", + "TextBoxNode_UTK", + "TextConcatenate_UTK", + "ThinkRemover_UTK" + ], + { + "title_aux": "ComfyUI-UniversalToolkit" + } + ], + "https://github.com/wildminder/ComfyUI-Chatterbox": [ + [ + "ChatterboxTTS", + "ChatterboxVC" + ], + { + "title_aux": "ComfyUI-Chatterbox" + } + ], + "https://github.com/wildminder/ComfyUI-KEEP": [ + [ + "KEEP_FaceUpscaleImage", + "KEEP_ModelLoader", + "KEEP_ProcessImageSequence" + ], + { + "title_aux": "ComfyUI-KEEP" + } + ], + "https://github.com/willchil/ComfyUI-Environment-Visualizer": [ + [ + "EnvironmentVisualizer", + "InterpolateEdges", + "MapEquirectangular" + ], + { + "title_aux": "ComfyUI-Environment-Visualizer" + } + ], + "https://github.com/windfancy/zsq_prompt": [ + [ + "BatchPromptJson", + "BatchPromptSelector", + "ConnectionString", + "DoubleCLIPEncode", + "FloatMathOperation", + "ImageAddText", + "ImageEmpty", + "IndexString", + "IntMathOperation", + "JoinImageBatch", + "LLMImage", + "LLMText", + "OptionString", + "PortraitStyler", + "SaveJpgImage", + "StringInput", + "ZSQPixelLatent", + "ZSQRatioLatent", + "ZSQShowINT", + "ZSQShowText", + "checkpoint_sampler", + "controlnetStack", + "controlnetStack_2", + "imageConcat", + "imageCount", + "imageCrop", + "imageDetailTransfer", + "imageFilter", + "imageFlip", + "imageGaussianBlur", + "imageHug", + "imageRGB", + "imageRatio", + "imageResize", + "imageRotate", + "imageSaveSimple", + "imageScaleDown", + "imageScaleDownBy", + "imageSharpen", + "imageSize", + "imageTilesFromBatch", + "imagesSplitImage", + "loraStack", + "loraStack_2", + "stylesSelector", + "zsqcheckpoint", + "zsqcontrolnet", + "zsqsampler" + ], + { + "title_aux": "zsq_prompt" + } + ], + "https://github.com/wings6407/ComfyUI_HBH-image_overlay": [ + [ + "HBH_ImageCoordinatePicker", + "HBH_ImageCoordinatePreview", + "HBH_ImageInteractivePicker", + "HBH_ImageOverlay", + "HBH_ImageOverlayPreview", + "HBH_ImagePreview" + ], + { + "title_aux": "ComfyUI_HBH-image_overlay" + } + ], + "https://github.com/wirytiox/ComfyUI-SelectStringFromListWithIndex": [ + [ + "StringFromList" + ], + { + "title_aux": "ComfyUI-SelectStringFromListWithIndex" + } + ], + "https://github.com/withmpx/mpx-comfyui-nodes": [ + [ + "Agent_PickBestImageFromList", + "Agent_ReflectionOnImageList", + "ImagesTo3DModels", + "LoadImageData", + "ObjectListToImageList", + "PickFromList", + "SaveModelsToDisk", + "ShowList", + "ShowString", + "StringListToStringList", + "StringListToText", + "TextToImage", + "TextToList", + "TextToObjectList", + "TextToScriptBreakdown", + "TextToStory", + "TextToText", + "TransformObjectList", + "TwoTextToText" + ], + { + "title_aux": "mpx-comfyui-nodes" + } + ], + "https://github.com/wjl0313/ComfyUI_KimNodes": [ + [ + "Add_ImageMetadata", + "BoundingBox_Cropper", + "Crop_Paste", + "Distribute_Icons", + "Edge_Element_Cropper", + "ExtractDifferenceLora", + "IconDistributeByGrid", + "Icon_Position_Cropper", + "Image_Classification", + "Image_PixelFilter", + "Image_Resize", + "KimFilter", + "KimHDR", + "LoRA_Metadata_Reader", + "LoadImage_Metadata", + "Manual_MetadataInput", + "Mask_Noise_Cleaner", + "Mask_White_Area_Ratio", + "MaxLength_ImageListSelector", + "Percentage_Cropper", + "Pixelate_Filter", + "Prompt_Text", + "Save_Image", + "Seamless_Icon_Generator", + "Split_Mask", + "Text_Match", + "Text_Processor", + "Transparent_Area_Cropper", + "Transparent_Image_Filter", + "Whitening_Node", + "YOLOWorld_Match", + "YOLO_Crop", + "YOLO_Multi_Crop" + ], + { + "title_aux": "ComfyUI_KimNodes" + } + ], + "https://github.com/wmatson/easy-comfy-nodes": [ + [ + "EZAssocDictNode", + "EZAssocImgNode", + "EZAssocStrNode", + "EZEmptyDictNode", + "EZHttpPostNode", + "EZLoadImgBatchFromUrlsNode", + "EZLoadImgFromUrlNode", + "EZRemoveImgBackground", + "EZS3Uploader" + ], + { + "title_aux": "easy-comfy-nodes" + } + ], + "https://github.com/wmpmiles/comfyui-some-image-processing-stuff": [ + [ + "Blur Mask", + "Color Grading", + "Latent Zero Mask", + "Mask-Crop Inpaint | Post", + "Mask-Crop Inpaint | Pre", + "Mask-Crop | Post", + "Mask-Crop | Pre", + "Resample Image", + "Resample Latent", + "Resample Mask", + "Resampler | Area", + "Resampler | Jinc-Lanczos", + "Resampler | Lanczos", + "Resampler | Mitchell-Netravali", + "Resampler | Nearest-Neighbor", + "Resampler | Triangle", + "Scaler | Area", + "Scaler | Fixed", + "Scaler | Megapixels", + "Scaler | Pixel Deltas", + "Scaler | Side", + "Scaler | Sides Unlinked" + ], + { + "title_aux": "comfyui-some-image-processing-stuff" + } + ], + "https://github.com/wolfden/ComfyUi_PromptStylers": [ + [ + "SDXLPromptStylerAll", + "SDXLPromptStylerHorror", + "SDXLPromptStylerMisc", + "SDXLPromptStylerbyArtist", + "SDXLPromptStylerbyCamera", + "SDXLPromptStylerbyComposition", + "SDXLPromptStylerbyCyberpunkSurrealism", + "SDXLPromptStylerbyDepth", + "SDXLPromptStylerbyEnvironment", + "SDXLPromptStylerbyFantasySetting", + "SDXLPromptStylerbyFilter", + "SDXLPromptStylerbyFocus", + "SDXLPromptStylerbyImpressionism", + "SDXLPromptStylerbyLighting", + "SDXLPromptStylerbyMileHigh", + "SDXLPromptStylerbyMood", + "SDXLPromptStylerbyMythicalCreature", + "SDXLPromptStylerbyOriginal", + "SDXLPromptStylerbyQuantumRealism", + "SDXLPromptStylerbySteamPunkRealism", + "SDXLPromptStylerbySubject", + "SDXLPromptStylerbySurrealism", + "SDXLPromptStylerbyTheme", + "SDXLPromptStylerbyTimeofDay", + "SDXLPromptStylerbyWyvern", + "SDXLPromptbyCelticArt", + "SDXLPromptbyContemporaryNordicArt", + "SDXLPromptbyFashionArt", + "SDXLPromptbyGothicRevival", + "SDXLPromptbyIrishFolkArt", + "SDXLPromptbyRomanticNationalismArt", + "SDXLPromptbySportsArt", + "SDXLPromptbyStreetArt", + "SDXLPromptbyVikingArt", + "SDXLPromptbyWildlifeArt" + ], + { + "title_aux": "SDXL Prompt Styler (customized version by wolfden)" + } + ], + "https://github.com/wolfden/ComfyUi_String_Function_Tree": [ + [ + "StringFunction" + ], + { + "title_aux": "ComfyUi_String_Function_Tree" + } + ], + "https://github.com/wootwootwootwoot/ComfyUI-RK-Sampler": [ + [ + "RungeKuttaSampler" + ], + { + "author": "wootwootwootwoot", + "description": "Batched Runge-Kutta Samplers for ComfyUI", + "nickname": "ComfyUI-RK-Sampler", + "title": "ComfyUI-RK-Sampler", + "title_aux": "ComfyUI-RK-Sampler" + } + ], + "https://github.com/wqjuser/ComfyUI-Chat-Image": [ + [ + "LLMImageDescription" + ], + { + "title_aux": "ComfyUI-Chat-Image" + } + ], + "https://github.com/wu12023/ComfyUI-Image-Evaluation": [ + [ + "Clip_Score-\ud83d\udd2c", + "Dino_Score-\ud83d\udd2c" + ], + { + "title_aux": "ComfyUI-Image-Evaluation" + } + ], + "https://github.com/wujm424606/ComfyUi-Ollama-YN": [ + [ + "MyOllamaDeleteModel", + "MyOllamaGenerate", + "MyOllamaGenerateAdvance", + "MyOllamaLoadContext", + "MyOllamaSaveContext", + "MyOllamaSpecialGenerateAdvance", + "MyOllamaVision" + ], + { + "title_aux": "ComfyUi-Ollama-YN" + } + ], + "https://github.com/wutipong/ComfyUI-TextUtils": [ + [ + "Text Utils - Join N-Elements of String List", + "Text Utils - Join String List", + "Text Utils - Join Strings", + "Text Utils - Split String to List" + ], + { + "title_aux": "ComfyUI-TextUtils" + } + ], + "https://github.com/wwwins/ComfyUI-Simple-Aspect-Ratio": [ + [ + "SimpleAspectRatio" + ], + { + "title_aux": "ComfyUI-Simple-Aspect-Ratio" + } + ], + "https://github.com/wywywywy/ComfyUI-pause": [ + [ + "PauseWorkflowNode" + ], + { + "title_aux": "ComfyUI Pause Workflow Node" + } + ], + "https://github.com/xXAdonesXx/NodeGPT": [ + [ + "AppendAgent", + "Assistant", + "Chat", + "ChatGPT", + "CombineInput", + "Conditioning", + "CostumeAgent_1", + "CostumeAgent_2", + "CostumeMaster_1", + "Critic", + "DisplayString", + "DisplayTextAsImage", + "EVAL", + "Engineer", + "Executor", + "GroupChat", + "Image_generation_Conditioning", + "LM_Studio", + "LoadAPIconfig", + "LoadTXT", + "MemGPT", + "Memory_Excel", + "Model_1", + "Ollama", + "Output2String", + "Planner", + "Scientist", + "TextCombine", + "TextGeneration", + "TextGenerator", + "TextInput", + "TextOutput", + "UserProxy", + "llama-cpp", + "llava", + "oobaboogaOpenAI" + ], + { + "title_aux": "NodeGPT" + } + ], + "https://github.com/xfgexo/EXO-Custom-ComfyUI-Nodes": [ + [ + "ComfyUI_EXO_Clip_Text_Encode", + "ComfyUI_EXO_DisplayText", + "ComfyUI_EXO_FluxSampler", + "ComfyUI_EXO_FluxSamplerMini", + "ComfyUI_EXO_ImageRescale", + "ComfyUI_EXO_LatentImageSize", + "ComfyUI_EXO_LatentImageSizeX", + "ComfyUI_EXO_Notes", + "ComfyUI_EXO_NumericValue", + "ComfyUI_EXO_PromptBuilderDeluxe", + "ComfyUI_EXO_SaveText", + "ComfyUI_EXO_TranslateText" + ], + { + "title_aux": "EXO Custom ComfyUI Nodes" + } + ], + "https://github.com/xhiroga/ComfyUI-FramePackWrapper_PlusOne": [ + [ + "DownloadAndLoadFramePackModel", + "FramePackFindNearestBucket", + "FramePackLoraSelect", + "FramePackSampler", + "FramePackSampler_F1", + "FramePackSingleFrameResizeSampler", + "FramePackSingleFrameSampler", + "FramePackTimestampedTextEncode", + "FramePackTorchCompileSettings", + "LoadFramePackModel" + ], + { + "title_aux": "ComfyUI-FramePackWrapper_PlusOne" + } + ], + "https://github.com/xiaogui8dangjia/Comfyui-imagetoSTL": [ + [ + "ImageToSTLNode" + ], + { + "title_aux": "Comfyui-imagetoSTL" + } + ], + "https://github.com/xiaowc-lib/comfyui-dynamic-params": [ + [ + "DynamicParams" + ], + { + "title_aux": "Comfyui-Dynamic-Params" + } + ], + "https://github.com/xiaoxiaodesha/hd_node": [ + [ + "Combine HDMasks", + "Cover HDMasks", + "HD FaceIndex", + "HD GetMaskArea", + "HD Image Levels", + "HD SmoothEdge", + "HD UltimateSDUpscale" + ], + { + "title_aux": "hd-nodes-comfyui" + } + ], + "https://github.com/xingBaGan/ComfyUI-connect-ui": [ + [ + "SaveImageByWebsocket", + "reciveImageByWebsocket" + ], + { + "title_aux": "ComfyUI-connect-ui" + } + ], + "https://github.com/xlinx/ComfyUI-decadetw-auto-messaging-realtime": [ + [ + "Auto-MSG-ALL", + "Auto-MSG-Discord-Bot", + "Auto-MSG-Line-Notify", + "Auto-MSG-Telegram-Bot" + ], + { + "title_aux": "ComfyUI-decadetw-auto-messaging-realtime" + } + ], + "https://github.com/xlinx/ComfyUI-decadetw-auto-prompt-llm": [ + [ + "Auto-LLM-Chat", + "Auto-LLM-Text", + "Auto-LLM-Text-Vision", + "Auto-LLM-Vision" + ], + { + "title_aux": "ComfyUI-decadetw-auto-prompt-llm" + } + ], + "https://github.com/xlinx/ComfyUI-decadetw-spout-syphon-im-vj": [ + [ + "Im-SD-VJ-SPOUT", + "Im-SD-VJ-SYPHON" + ], + { + "title_aux": "ComfyUI-decadetw-spout-syphon-im-vj" + } + ], + "https://github.com/xliry/ComfyUI_SendDiscord": [ + [ + "SendDiscord" + ], + { + "title_aux": "ComfyUI_SendDiscord" + } + ], + "https://github.com/xmarre/TorchCompileModel_LoRASafe": [ + [ + "TorchCompileModel_LoRASafe" + ], + { + "title_aux": "LoRA-Safe TorchCompile" + } + ], + "https://github.com/xobiomesh/ComfyUI_xObiomesh": [ + [ + "OllamaModelSelect", + "OllamaTextGen", + "ShowText_xO", + "xO_ComfyUIPortRunner", + "xO_GetImageFilename", + "xO_LoadRecentFile", + "xO_TestScriptRunner", + "xO_WorkflowRunner" + ], + { + "title_aux": "ComfyUI Neural Nodes" + } + ], + "https://github.com/xs315431/Comfyui_Get_promptId": [ + [ + "GetPromptId", + "SuccessCallback" + ], + { + "title_aux": "Comfyui_Get_promptId" + } + ], + "https://github.com/xuhongming251/ComfyUI-GPEN": [ + [ + "FaceEnhancement" + ], + { + "title_aux": "ComfyUI-GPEN" + } + ], + "https://github.com/xuhongming251/ComfyUI-Jimeng": [ + [ + "JimengAPIClient", + "JimengFirstLastFrame2Video", + "JimengImage2Video", + "PreviewVideoFromUrl" + ], + { + "title_aux": "ComfyUI-Jimeng" + } + ], + "https://github.com/xuhongming251/ComfyUI-MuseTalkUtils": [ + [ + "MuseTalkPostprocess", + "MuseTalkPreprocess", + "MuseTalkTrain", + "MuseTalkTrainPreprocess", + "MuseTalkUncropMask" + ], + { + "title_aux": "ComfyUI-MuseTalkUtils" + } + ], + "https://github.com/xuhongming251/ComfyUI_Camera": [ + [ + "Load Image From Local Camera", + "Save Image To Local Camera" + ], + { + "title_aux": "ComfyUI_Camera" + } + ], + "https://github.com/yamanacn/comfyui_kontext_Analyze": [ + [ + "KontextDuoImageAnalyzer" + ], + { + "title_aux": "ComfyUI Kontext Duo Image Analyzer" + } + ], + "https://github.com/yanhuifair/comfyui-janus": [ + [ + "JanusProImageGenerationNode", + "JanusProModelLoaderNode", + "JanusProMultimodalUnderstandingNode" + ], + { + "title_aux": "comfyui-janus" + } + ], + "https://github.com/yanlang0123/ComfyUI_Lam": [ + [ + "AppParams", + "AspectRatio", + "AutioInfo", + "AutioPath", + "DoWhileEnd", + "DoWhileStart", + "EasyPromptSelecto", + "FaceFusion", + "ForEnd", + "ForInnerEnd", + "ForInnerStart", + "ForStart", + "GLM3Prompt", + "IdentifyingQR", + "IfInnerExecute", + "Image2Video", + "ImageAddMask", + "ImageBlank", + "ImageClone", + "ImageCropFaces", + "ImageLama", + "ImageToMasks", + "JyAnimationGroup", + "JyAnimationIn", + "JyAnimationOut", + "JyAudio2CaptionsGroup", + "JyAudioNative", + "JyCaptionsNative", + "JyEffectNative", + "JyMediaAnimation", + "JyMediaNative", + "JyMultiAudioGroup", + "JyMultiCaptionsGroup", + "JyMultiEffectGroup", + "JyMultiMediaGroup", + "JySaveDraft", + "JySaveOutDraft", + "JyTransition", + "LAM.OpenPoseEditorPlus", + "LamCommonHidden", + "LamCommonNames", + "LamCommonPrint", + "LamCommonPrintNoOutput", + "LamFaceAnalysisModels", + "LamGetPngInfo", + "LamHeyGemNode", + "LamHeyGemQueryNode", + "LamLoadImageBase64", + "LamLoadPathImage", + "LamLoadVideo", + "LamReadFileList", + "LamSamplerName", + "LamSaveAudio", + "LamSaveOnly", + "LamSaveVideo", + "LamScheduler", + "LamSwitcherCase", + "LamViewVideo", + "LamViewVideoOut", + "LoadDirImgPaths", + "LoadReplaceImage", + "LongTextToList", + "MultiControlNetApply", + "MultiGLIGENTextBoxApply", + "MultiIPAdapterRegional", + "MultiIntFormula", + "MultiMergeAudio", + "MultiMergeVideos", + "MultiParamFormula", + "MultiTextConcatenate", + "MultiTextEncode", + "MultiTextEncodeAdvanced", + "MultiTextSelelct", + "MultiTextSetArea", + "MultiTextSetGligen", + "MultiTextSetMask", + "OutDoWhileEnd", + "OutDoWhileStart", + "PreviewImageLam", + "PromptTranslator", + "QRCode", + "SaveImageLam", + "SaveImgOutputLam", + "SectionEnd", + "SectionStart", + "StyleSelecto", + "Text2AutioEdgeTts", + "TextListSelelct", + "VideoAddAudio", + "VideoExtractAudio", + "VideoFaceFusion", + "VideoPath", + "WaitImagSelector", + "ZhPromptTranslator" + ], + { + "title_aux": "ComfyUI_Lam" + } + ], + "https://github.com/yasser-baalla/comfyUI-SemanticImageFetch": [ + [ + "ColorGradeSampler", + "ColorGrading", + "SemanticImageFetch" + ], + { + "title_aux": "comfyUI-SemanticImageFetch" + } + ], + "https://github.com/ycchanau/ComfyUI_Preview_Magnifier": [ + [ + "YC.ImageComparerMagnifier", + "YC.PreviewImageMagnifier", + "YC.XYPreviewImageMagnifier" + ], + { + "title_aux": "ComfyUI Preview Magnifier" + } + ], + "https://github.com/ycyy/ComfyUI-YCYY-LoraInfo": [ + [ + "LoraInfo" + ], + { + "title_aux": "ComfyUI-YCYY-LoraInfo" + } + ], + "https://github.com/yffyhk/comfyui_auto_danbooru": [ + [ + "GetDanbooru", + "TagEncode" + ], + { + "title_aux": "comfyui_auto_danbooru" + } + ], + "https://github.com/yhayano-ponotech/ComfyUI-Fal-API-Flux": [ + [ + "FalAPIFluxControlNetConfigNode", + "FalAPIFluxControlNetUnionConfigNode", + "FalAPIFluxDevCannyWithLoraNode", + "FalAPIFluxDevImageToImageNode", + "FalAPIFluxDevNode", + "FalAPIFluxDevWithLoraAndControlNetImageToImageNode", + "FalAPIFluxDevWithLoraAndControlNetInpaintNode", + "FalAPIFluxDevWithLoraAndControlNetNode", + "FalAPIFluxDevWithLoraImageToImageNode", + "FalAPIFluxDevWithLoraInpaintNode", + "FalAPIFluxDevWithLoraNode", + "FalAPIFluxLoraConfigNode", + "FalAPIFluxProCannyNode", + "FalAPIFluxProDepthNode", + "FalAPIFluxProFillNode", + "FalAPIFluxProNode", + "FalAPIFluxProReduxNode", + "FalAPIFluxProV11Node", + "FalAPIFluxProV11UltraNode" + ], + { + "title_aux": "ComfyUI-Fal-API-Flux" + } + ], + "https://github.com/yhayano-ponotech/comfyui-save-image-local": [ + [ + "Local Save" + ], + { + "title_aux": "ComfyUI Local Save Node" + } + ], + "https://github.com/yhayano-ponotech/comfyui-stability-ai-api": [ + [ + "Preview3DModel", + "Save3DModel", + "StabilityControlSketch", + "StabilityControlStructure", + "StabilityControlStyle", + "StabilityEdit", + "StabilityImageCore", + "StabilityImageSD3", + "StabilityImageToVideo", + "StabilityImageUltra", + "StabilityUpscaleConservative", + "StabilityUpscaleCreative", + "StabilityUpscaleFast", + "StableFast3D", + "StablePointAware3D" + ], + { + "title_aux": "ComfyUI-Stability-AI-API" + } + ], + "https://github.com/yichengup/ComfyUI-LinearTransition": [ + [ + "GradientTransition", + "LinearTransition" + ], + { + "title_aux": "ComfyUI-LinearTransition" + } + ], + "https://github.com/yichengup/ComfyUI-YCNodes": [ + [ + "AdvancedImageSelector", + "DynamicThreshold", + "ImageBatchSelector", + "ImageBlendResize", + "ImageIC", + "ImageICAdvanced", + "ImageLoaderAdvanced", + "ImageMirror", + "ImageMosaic", + "ImageRotate", + "ImageSelector", + "ImageUpscaleTiled", + "IrregularToEllipseMask", + "LoadImagesFromFolder", + "MaskBatchComposite", + "MaskBatchCopy", + "MaskContourFillNode", + "MaskCropRestore_YC", + "MaskCrop_YC", + "MaskFilterBySolidity", + "MaskFromBatch", + "MaskPreviewNode", + "MaskRepeatBatch", + "MaskSmartValleySplit", + "MaskSplitFilter", + "MaskTopNFilter", + "TextKeyword", + "YC Extract Number", + "YC Mask Condition Switch", + "YC Seed List", + "YC Super Selector", + "YC Text Condition Switch", + "YC Text Index Switch", + "YC Universal Gate", + "YCMaskComposite", + "YCRemapMaskRange", + "YCTextImageGenerator", + "YC_FiveTextCombineNode", + "YC_Image_Save", + "YC_SingleTextNode", + "YC_textReplaceNode" + ], + { + "title_aux": "ComfyUI-YCNodes" + } + ], + "https://github.com/yichengup/ComfyUI_Yc_JanusPro": [ + [ + "ImageAnalyzer", + "JanusChatAnalyzer", + "JanusImageGenerator", + "JanusProLoader" + ], + { + "title_aux": "ComfyUI_Yc_JanusPro" + } + ], + "https://github.com/yichengup/Comfyui-Deepseek": [ + [ + "DeepseekAdvancedNode", + "DeepseekNode", + "DeepseekReasonerNode", + "SiliconDeepseekChat", + "SiliconDeepseekReasoner" + ], + { + "title_aux": "Comfyui-Deepseek" + } + ], + "https://github.com/yichengup/Comfyui-Ycanvas": [ + [ + "CanvasNode" + ], + { + "title_aux": "Comfyui-Ycanvas" + } + ], + "https://github.com/yichengup/Comfyui_Flux_Style_Adjust": [ + [ + "StyleModelAdvancedApply" + ], + { + "title_aux": "Comfyui_Flux_Style_Adjust (Redux)" + } + ], + "https://github.com/yichengup/Comfyui_Redux_Advanced": [ + [ + "StyleAdvancedApply", + "YC_LG_Redux" + ], + { + "title_aux": "Comfyui_Redux_Advanced" + } + ], + "https://github.com/yichengup/comfyui-face-liquify": [ + [ + "FaceLiquifyNode" + ], + { + "title_aux": "comfyui-face-liquify" + } + ], + "https://github.com/yiwangsimple/ComfyUI_DW_Chat": [ + [ + "DeepSeekChatNode", + "DeepSeekTranslator", + "ErrorLogNode", + "ExecutionTime", + "FileBasedChatNode", + "FluxPromptEngineeringNode", + "Gemini1_5Text", + "Gemini1_5Vision", + "GeminiFluxPrompt", + "Gemma2PromptNode", + "GemmaDialogueNode", + "GithubLinkNode", + "GroqChatNode", + "MoonshotMultiChatNode", + "MoonshotSingleChatNode", + "OllamaImageToText", + "OllamaPromptExtractor", + "OllamaTextToText", + "PaliGemma3bCaptioner", + "PromptEngineeringNode", + "PromptExtractorNode", + "Qwen2VLCaption", + "Qwen2VLLocalCaption", + "SD3LongCaptionerV2", + "SDPromptAgent", + "dwimage2" + ], + { + "title_aux": "ComfyUI_DW_Chat" + } + ], + "https://github.com/yiwangsimple/florence_dw": [ + [ + "Florence2", + "Florence2Postprocess", + "Florence2PostprocessAll", + "LoadFlorence2Model" + ], + { + "title_aux": "florence_dw" + } + ], + "https://github.com/yolain/ComfyUI-Easy-Use": [ + [ + "dynamicThresholdingFull", + "easy LLLiteLoader", + "easy XYInputs: CFG Scale", + "easy XYInputs: Checkpoint", + "easy XYInputs: ControlNet", + "easy XYInputs: Denoise", + "easy XYInputs: FluxGuidance", + "easy XYInputs: Lora", + "easy XYInputs: ModelMergeBlocks", + "easy XYInputs: NegativeCond", + "easy XYInputs: NegativeCondList", + "easy XYInputs: PositiveCond", + "easy XYInputs: PositiveCondList", + "easy XYInputs: PromptSR", + "easy XYInputs: Sampler/Scheduler", + "easy XYInputs: Seeds++ Batch", + "easy XYInputs: Steps", + "easy XYPlot", + "easy XYPlotAdvanced", + "easy a1111Loader", + "easy ab", + "easy anythingIndexSwitch", + "easy anythingInversedSwitch", + "easy applyBrushNet", + "easy applyFooocusInpaint", + "easy applyInpaint", + "easy applyPowerPaint", + "easy batchAnything", + "easy blocker", + "easy boolean", + "easy cascadeKSampler", + "easy cascadeLoader", + "easy ckptNames", + "easy cleanGpuUsed", + "easy clearCacheAll", + "easy clearCacheKey", + "easy comfyLoader", + "easy compare", + "easy conditioningIndexSwitch", + "easy controlnetLoader", + "easy controlnetLoader++", + "easy controlnetLoaderADV", + "easy controlnetNames", + "easy controlnetStack", + "easy controlnetStackApply", + "easy convertAnything", + "easy detailerFix", + "easy float", + "easy fluxLoader", + "easy forLoopEnd", + "easy forLoopStart", + "easy fullCascadeKSampler", + "easy fullLoader", + "easy fullkSampler", + "easy globalSeed", + "easy hiresFix", + "easy humanSegmentation", + "easy hunyuanDiTLoader", + "easy icLightApply", + "easy if", + "easy ifElse", + "easy imageBatchToImageList", + "easy imageChooser", + "easy imageColorMatch", + "easy imageConcat", + "easy imageCount", + "easy imageCropFromMask", + "easy imageDetailTransfer", + "easy imageIndexSwitch", + "easy imageInsetCrop", + "easy imageInterrogator", + "easy imageListToImageBatch", + "easy imagePixelPerfect", + "easy imageRatio", + "easy imageRemBg", + "easy imageSave", + "easy imageScaleDown", + "easy imageScaleDownBy", + "easy imageScaleDownToSize", + "easy imageScaleToNormPixels", + "easy imageSize", + "easy imageSizeByLongerSide", + "easy imageSizeBySide", + "easy imageSplitGrid", + "easy imageSplitList", + "easy imageSplitTiles", + "easy imageSwitch", + "easy imageTilesFromBatch", + "easy imageToBase64", + "easy imageToMask", + "easy imageUncropFromBBOX", + "easy imagesCountInDirectory", + "easy imagesSplitImage", + "easy indexAnything", + "easy injectNoiseToLatent", + "easy instantIDApply", + "easy instantIDApplyADV", + "easy int", + "easy ipadapterApply", + "easy ipadapterApplyADV", + "easy ipadapterApplyEmbeds", + "easy ipadapterApplyEncoder", + "easy ipadapterApplyFaceIDKolors", + "easy ipadapterApplyFromParams", + "easy ipadapterApplyRegional", + "easy ipadapterStyleComposition", + "easy isFileExist", + "easy isMaskEmpty", + "easy isNone", + "easy isSDXL", + "easy joinImageBatch", + "easy joyCaption2API", + "easy joyCaption3API", + "easy kSampler", + "easy kSamplerCustom", + "easy kSamplerDownscaleUnet", + "easy kSamplerInpainting", + "easy kSamplerLayerDiffusion", + "easy kSamplerSDTurbo", + "easy kSamplerTiled", + "easy kolorsLoader", + "easy latentCompositeMaskedWithCond", + "easy latentNoisy", + "easy lengthAnything", + "easy loadImageBase64", + "easy loadImagesForLoop", + "easy loraNames", + "easy loraStack", + "easy loraStackApply", + "easy makeImageForICLora", + "easy mathFloat", + "easy mathInt", + "easy mathString", + "easy mochiLoader", + "easy negative", + "easy outputToList", + "easy pipeBatchIndex", + "easy pipeEdit", + "easy pipeEditPrompt", + "easy pipeIn", + "easy pipeOut", + "easy pipeToBasicPipe", + "easy pixArtLoader", + "easy pixels", + "easy portraitMaster", + "easy poseEditor", + "easy positive", + "easy preDetailerFix", + "easy preMaskDetailerFix", + "easy preSampling", + "easy preSamplingAdvanced", + "easy preSamplingCascade", + "easy preSamplingCustom", + "easy preSamplingDynamicCFG", + "easy preSamplingLayerDiffusion", + "easy preSamplingLayerDiffusionADDTL", + "easy preSamplingNoiseIn", + "easy preSamplingSdTurbo", + "easy prompt", + "easy promptAwait", + "easy promptConcat", + "easy promptLine", + "easy promptList", + "easy promptReplace", + "easy pulIDApply", + "easy pulIDApplyADV", + "easy rangeFloat", + "easy rangeInt", + "easy removeLocalImage", + "easy samLoaderPipe", + "easy saveImageLazy", + "easy saveText", + "easy saveTextLazy", + "easy seed", + "easy seedList", + "easy showAnything", + "easy showAnythingLazy", + "easy showLoaderSettingsNames", + "easy showSpentTime", + "easy showTensorShape", + "easy sleep", + "easy sliderControl", + "easy stableDiffusion3API", + "easy string", + "easy styleAlignedBatchAlign", + "easy stylesSelector", + "easy sv3dLoader", + "easy svdLoader", + "easy textIndexSwitch", + "easy textSwitch", + "easy ultralyticsDetectorPipe", + "easy unSampler", + "easy whileLoopEnd", + "easy whileLoopStart", + "easy wildcards", + "easy wildcardsMatrix", + "easy xyAny", + "easy zero123Loader" + ], + { + "title_aux": "ComfyUI Easy Use" + } + ], + "https://github.com/yolanother/ComfyUI-Save16bitPng": [ + [ + "SaveImageARGB16PNG" + ], + { + "title_aux": "Save Uncompressed 16 Bit PNG" + } + ], + "https://github.com/yolanother/DTAIComfyImageSubmit": [ + [ + "DTSimpleSubmitImage", + "DTSubmitImage" + ], + { + "title_aux": "Comfy AI DoubTech.ai Image Sumission Node" + } + ], + "https://github.com/yolanother/DTAIComfyLoaders": [ + [ + "DTCLIPLoader", + "DTCLIPVisionLoader", + "DTCheckpointLoader", + "DTCheckpointLoaderSimple", + "DTControlNetLoader", + "DTDiffControlNetLoader", + "DTDiffusersLoader", + "DTGLIGENLoader", + "DTLoadImage", + "DTLoadImageMask", + "DTLoadLatent", + "DTLoraLoader", + "DTLorasLoader", + "DTStyleModelLoader", + "DTUpscaleModelLoader", + "DTVAELoader", + "DTunCLIPCheckpointLoader" + ], + { + "title_aux": "Comfy UI Online Loaders" + } + ], + "https://github.com/yolanother/DTAIComfyPromptAgent": [ + [ + "DTPromptAgent", + "DTPromptAgentString" + ], + { + "title_aux": "Comfy UI Prompt Agent" + } + ], + "https://github.com/yolanother/DTAIComfyQRCodes": [ + [ + "QRCode" + ], + { + "title_aux": "Comfy UI QR Codes" + } + ], + "https://github.com/yolanother/DTAIComfyVariables": [ + [ + "DTCLIPTextEncode", + "DTSingleLineStringVariable", + "DTSingleLineStringVariableNoClip", + "FloatVariable", + "IntVariable", + "StringFormat", + "StringFormatSingleLine", + "StringVariable" + ], + { + "title_aux": "Variables for Comfy UI" + } + ], + "https://github.com/yolanother/DTAIImageToTextNode": [ + [ + "DTAIImageToTextNode", + "DTAIImageUrlToTextNode" + ], + { + "title_aux": "Image to Text Node" + } + ], + "https://github.com/yondonfu/ComfyUI-Background-Edit": [ + [ + "BackgroundColor", + "Composite", + "GaussianBlur" + ], + { + "title_aux": "ComfyUI-Background-Edit" + } + ], + "https://github.com/yondonfu/ComfyUI-Torch-Compile": [ + [ + "TorchCompileLoadControlNet", + "TorchCompileLoadVAE" + ], + { + "title_aux": "ComfyUI-Torch-Compile" + } + ], + "https://github.com/yorkane/ComfyUI-KYNode": [ + [ + "KY_AnyByIndex", + "KY_AnyToList", + "KY_FilePathAnalyzer-", + "KY_FileSequenceAnalyzer", + "KY_JoinToString", + "KY_LoadImageFrom", + "KY_LoadImagesFromFolder", + "KY_MathExpression", + "KY_OpenAICaptionImage", + "KY_OpenAICaptionImages", + "KY_OpenAIChat", + "KY_ReadImage", + "KY_RegexExtractor", + "KY_RegexReplace", + "KY_SaveImageToPath" + ], + { + "title_aux": "ComfyUI-KYNode" + } + ], + "https://github.com/younyokel/comfyui_prompt_formatter": [ + [ + "CLIPTextEncodeFormatter", + "TextAppendFormatter", + "TextOnlyFormatter" + ], + { + "title_aux": "ComfyUI Prompt Formatter" + } + ], + "https://github.com/youyegit/tdxh_node_comfyui": [ + [ + "TdxhBoolNumber", + "TdxhClipVison", + "TdxhControlNetApply", + "TdxhControlNetProcessor", + "TdxhFloatInput", + "TdxhImageToSize", + "TdxhImageToSizeAdvanced", + "TdxhImg2ImgLatent", + "TdxhIntInput", + "TdxhLoraLoader", + "TdxhOnOrOff", + "TdxhReference", + "TdxhStringInput", + "TdxhStringInputTranslator", + "TdxhToggleGuest", + "TdxhToggleMaster" + ], + { + "title_aux": "tdxh_node_comfyui" + } + ], + "https://github.com/yuan199696/add_text_2_img": [ + [ + "AddText" + ], + { + "title_aux": "add_text_2_img" + } + ], + "https://github.com/yuan199696/chinese_clip_encode": [ + [ + "ChineseCLIPEncode" + ], + { + "title_aux": "chinese_clip_encode" + } + ], + "https://github.com/yushan777/ComfyUI-Y7-SBS-2Dto3D": [ + [ + "Y7_SideBySide", + "Y7_VideoSideBySide" + ], + { + "title_aux": "ComfyUI-Y7-SBS-2Dto3D" + } + ], + "https://github.com/yushan777/ComfyUI-Y7Nodes": [ + [ + "Y7Nodes_CLIP_TokenCounter", + "Y7Nodes_CatchEditTextNodeDual", + "Y7Nodes_Grid2Batch", + "Y7Nodes_ImageRow", + "Y7Nodes_ImageSizePresets", + "Y7Nodes_PromptEnhancerFlux", + "Y7Nodes_ShowAnything", + "Y7Nodes_SmolVLM", + "Y7Nodes_T5_TokenCounter", + "Y7Nodes_Text" + ], + { + "title_aux": "Y7Nodes for ComfyUI" + } + ], + "https://github.com/yuvraj108c/ComfyUI-Depth-Anything-Tensorrt": [ + [ + "DepthAnythingEngineBuilder", + "DepthAnythingTensorrt" + ], + { + "title_aux": "ComfyUI Depth Anything TensorRT" + } + ], + "https://github.com/yuvraj108c/ComfyUI-Dwpose-Tensorrt": [ + [ + "DwposeTensorrt", + "LoadDwposeTensorrtModels" + ], + { + "title_aux": "ComfyUI Dwpose TensorRT" + } + ], + "https://github.com/yuvraj108c/ComfyUI-FLOAT": [ + [ + "FloatProcess", + "LoadFloatModels" + ], + { + "title_aux": "ComfyUI FLOAT" + } + ], + "https://github.com/yuvraj108c/ComfyUI-Facerestore-Tensorrt": [ + [ + "FaceRestoreTensorrt" + ], + { + "title_aux": "ComfyUI Facerestore TensorRT" + } + ], + "https://github.com/yuvraj108c/ComfyUI-PiperTTS": [ + [ + "PiperTTS" + ], + { + "title_aux": "ComfyUI PiperTTS" + } + ], + "https://github.com/yuvraj108c/ComfyUI-Pronodes": [ + [ + "ImagesSeekerNode", + "ImagesShufflerNode", + "LoadImageFromOutputDirectoryNode", + "LoadYoutubeVideoNode", + "PreviewVHSAudioNode", + "SaveAndOverwriteImageNode", + "VHSFilenamesToPathNode" + ], + { + "title_aux": "ComfyUI-Pronodes" + } + ], + "https://github.com/yuvraj108c/ComfyUI-Rife-Tensorrt": [ + [ + "RifeTensorrt" + ], + { + "title_aux": "ComfyUI Rife TensorRT" + } + ], + "https://github.com/yuvraj108c/ComfyUI-Thera": [ + [ + "LoadTheraModel", + "TheraProcess" + ], + { + "title_aux": "ComfyUI Thera" + } + ], + "https://github.com/yuvraj108c/ComfyUI-Upscaler-Tensorrt": [ + [ + "LoadUpscalerTensorrtModel", + "UpscalerTensorrt" + ], + { + "title_aux": "ComfyUI Upscaler TensorRT" + } + ], + "https://github.com/yuvraj108c/ComfyUI-Video-Depth-Anything": [ + [ + "LoadVideoDepthAnythingModel", + "VideoDepthAnythingProcess" + ], + { + "title_aux": "ComfyUI Video Depth Anything" + } + ], + "https://github.com/yuvraj108c/ComfyUI-Vsgan": [ + [ + "DepthAnythingTrtNode", + "TTSCapcutNode", + "UpscaleVideoTrtNode" + ], + { + "title_aux": "ComfyUI-Vsgan" + } + ], + "https://github.com/yuvraj108c/ComfyUI-Whisper": [ + [ + "Add Subtitles To Background", + "Add Subtitles To Frames", + "Apply Whisper", + "Resize Cropped Subtitles" + ], + { + "title_aux": "ComfyUI Whisper" + } + ], + "https://github.com/yuvraj108c/ComfyUI-YoloNasPose-Tensorrt": [ + [ + "YoloNasPoseTensorrt" + ], + { + "title_aux": "ComfyUI YoloNasPose Tensorrt" + } + ], + "https://github.com/yuvraj108c/ComfyUI_InvSR": [ + [ + "InvSRSampler", + "LoadInvSRModels" + ], + { + "title_aux": "ComfyUI InvSR" + } + ], + "https://github.com/yvann-ba/ComfyUI_Yvann-Nodes": [ + [ + "Audio Analysis", + "Audio IPAdapter Transitions", + "Audio Peaks Detection", + "Audio Prompt Schedule", + "Audio Remixer", + "Edit Audio Weights", + "Float to Int", + "Floats To Weights Strategy", + "Floats Visualizer", + "Invert Floats", + "Load Audio Separation Model", + "Mask To Float", + "Repeat Image To Count" + ], + { + "title_aux": "ComfyUI_Yvann-Nodes" + } + ], + "https://github.com/za-wa-n-go/ComfyUI_Zwng_Nodes": [ + [ + "ZwngLoadImagePathOrURL", + "ZwngPreviewImageAndMask", + "ZwngSimpleGoogleTranslater", + "ZwngSimplePhotoshopConnector" + ], + { + "title_aux": "ComfyUI_Zwng_Nodes" + } + ], + "https://github.com/zade23/Comfyui-Distill-Any-Depth": [ + [ + "DistillAnyDepthProcessImage", + "DownloadDistillAnyDepthModel" + ], + { + "title_aux": "Comfyui-Distill-Any-Depth" + } + ], + "https://github.com/zaheenrahman/ComfyUI-ColorCorrection": [ + [ + "ClothingColorCorrection" + ], + { + "title_aux": "ComfyUI-ColorCorrection" + } + ], + "https://github.com/zccrs/comfyui-dci": [ + [ + "Base64Decoder", + "Base64Encoder", + "BinaryFileLoader", + "BinaryFileSaver", + "DCIAnalysis", + "DCIFileNode", + "DCIFileSaver", + "DCIImage", + "DCIImagePreview", + "DCIPreviewNode", + "DCISampleImage", + "DCI_Analysis", + "DCI_Base64Decoder", + "DCI_Base64Encoder", + "DCI_BinaryFileLoader", + "DCI_BinaryFileSaver", + "DCI_DebLoader", + "DCI_DebPackager", + "DCI_DirectoryLoader", + "DCI_FileNode", + "DCI_FileSaver", + "DCI_Image", + "DCI_ImagePreview", + "DCI_PreviewNode", + "DCI_SampleImage", + "DebLoader", + "DebPackager", + "DirectoryLoader" + ], + { + "title_aux": "ComfyUI DCI" + } + ], + "https://github.com/zcfrank1st/Comfyui-Toolbox": [ + [ + "PreviewJson", + "PreviewVideo", + "SaveJson", + "TestJsonPreview" + ], + { + "title_aux": "Comfyui-Toolbox" + } + ], + "https://github.com/zcfrank1st/Comfyui-Yolov8": [ + [ + "Yolov8Detection", + "Yolov8Segmentation" + ], + { + "title_aux": "ComfyUI Yolov8" + } + ], + "https://github.com/zcfrank1st/comfyui_visual_anagrams": [ + [ + "VisualAnagramsAnimate", + "VisualAnagramsSample" + ], + { + "title_aux": "comfyui_visual_anagram" + } + ], + "https://github.com/zeeoale/PromptCreatorNode": [ + [ + "PromptCreatorNode" + ], + { + "title_aux": "PromptCreatorNodetraumakom Prompt Generator" + } + ], + "https://github.com/zentrocdot/ComfyUI-RealESRGAN_Upscaler": [ + [ + "\ud83d\ude80 Universal RealESRGAN Upscaler", + "\ud83e\uddf3 Show Data" + ], + { + "title_aux": "ComfyUI-RealESRGAN_Upscaler" + } + ], + "https://github.com/zentrocdot/ComfyUI-Simple_Image_To_Prompt": [ + [ + "\ud83d\udc41\ufe0f Image To Prompt", + "\ud83d\udc41\ufe0f Image To Prompt (NO UPDATE)", + "\ud83e\uddf3 Show Data" + ], + { + "title_aux": "ComfyUI-Simple_Image_To_Prompt" + } + ], + "https://github.com/zentrocdot/ComfyUI_Circle_Detection": [ + [ + "\u270f\ufe0f Input Data", + "\ud83d\udcc4 Show Data", + "\ud83d\udd2c Circle Detection (Hough)", + "\ud83d\udd2c Ellipse Detection (Simple)" + ], + { + "title_aux": "ComfyUI_Circle_Detection" + } + ], + "https://github.com/zer0TF/cute-comfy": [ + [ + "Cute.Placeholder" + ], + { + "title_aux": "Cute Comfy" + } + ], + "https://github.com/zer0thgear/zer0-comfy-utils": [ + [ + "List Combine Node (zer0)", + "Multiline String Node (zer0)", + "Prompt Minimizer And Splitter Node (zer0)", + "Quality Tag Prepend Node (zer0)", + "Tavern Card Creation Node (zer0)", + "Tavern Card Info Node (zer0)" + ], + { + "author": "zer0gear", + "description": "Dubiously useful nodes that I've made for my own use.", + "nickname": "zer0gear Comfy Utils", + "title": "zer0gear's Comfy Utilities", + "title_aux": "zer0 Comfy Utilities" + } + ], + "https://github.com/zeroxoxo/ComfyUI-Fast-Style-Transfer": [ + [ + "FastStyleTransfer", + "NeuralStyleTransfer", + "TrainFastStyleTransfer" + ], + { + "title_aux": "ComfyUI-Fast-Style-Transfer" + } + ], + "https://github.com/zfkun/ComfyUI_zfkun": [ + [ + "ZFLoadImagePath", + "ZFPreviewText", + "ZFPreviewTextMultiline", + "ZFShareScreen", + "ZFTextTranslation" + ], + { + "title_aux": "ComfyUI_zfkun" + } + ], + "https://github.com/zhangp365/ComfyUI-utils-nodes": [ + [ + "BooleanControlOutput", + "CheckpointLoaderSimpleWithSwitch", + "ColorCorrectOfUtils", + "ConcatTextOfUtils", + "CropByMaskToSpecificSize", + "DeepfaceAnalyzeFaceAttributes", + "DetectorForNSFW", + "EmptyConditioning", + "FloatMultipleAddLiteral", + "FrameAdjuster", + "GeminiPromptEnhance", + "GenderControlOutput", + "ImageAutoSelector", + "ImageBatchOneOrMore", + "ImageCompositeMaskedOneByOne", + "ImageCompositeMaskedWithSwitch", + "ImageCompositeWatermark", + "ImageConcanateOfUtils", + "ImageMaskColorAverage", + "ImageResizeTo8x", + "ImageTransition", + "ImageTransitionBottomToTop", + "ImageTransitionLeftToRight", + "ImageTransitionRightToLeft", + "ImageTransitionTopToBottom", + "ImagesConcanateToGrid", + "IntMultipleAddLiteral", + "LoadImageMaskWithSwitch", + "LoadImageMaskWithoutListDir", + "LoadImageWithSwitch", + "LoadImageWithoutListDir", + "MaskAreaComparison", + "MaskAutoSelector", + "MaskCoverFourCorners", + "MaskFastGrow", + "MaskFromFaceModel", + "MaskofCenter", + "MatchImageRatioToPreset", + "ModifyTextGender", + "NeedImageSizeAndCount", + "SplitMask", + "TextInputAutoSelector", + "TextPreview", + "TorchCompileModelAdvanced", + "UpscaleImageWithModelIfNeed", + "VolcanoImageEditNode", + "VolcanoOutpaintingNode" + ], + { + "title_aux": "zhangp365/ComfyUI-utils-nodes" + } + ], + "https://github.com/zhangp365/ComfyUI_photomakerV2_native": [ + [ + "PhotoMakerEncodeV2", + "PhotoMakerLoaderV2" + ], + { + "title_aux": "ComfyUI_photomakerV2_native" + } + ], + "https://github.com/zhilemann/ComfyUI-moondream2": [ + [ + "moondream2_Caption", + "moondream2_DownLoad", + "moondream2_Encode", + "moondream2_Query" + ], + { + "title_aux": "ComfyUI-moondream2" + } + ], + "https://github.com/zhiselfly/ComfyUI-Alimama-ControlNet-compatible": [ + [ + "SD3AlimamaInpaintControlNetApplyAdvanced", + "SD3AlimamaInpaintControlNetLoader" + ], + { + "title_aux": "ComfyUI-Alimama-ControlNet-compatible" + } + ], + "https://github.com/zhongpei/ComfyUI-InstructIR": [ + [ + "InstructIRProcess", + "LoadInstructIRModel" + ], + { + "title_aux": "ComfyUI for InstructIR" + } + ], + "https://github.com/zhuanqianfish/ComfyUI-EasyNode": [ + [ + "EasyCaptureNode", + "EasyVideoOutputNode", + "SendImageWebSocket" + ], + { + "title_aux": "EasyCaptureNode for ComfyUI" + } + ], + "https://github.com/zhulu111/ComfyUI_Bxb": [ + [ + "bxbSwitch", + "sdBxb", + "sdBxb_saveImage", + "sdBxb_textInput" + ], + { + "title_aux": "ComfyUI_Bxb" + } + ], + "https://github.com/zichongc/ComfyUI-Attention-Distillation": [ + [ + "ADOptimizer", + "ADSampler", + "LoadDistiller", + "LoadPILImage", + "PureText", + "ResizeImage" + ], + { + "title_aux": "ComfyUI-Attention-Distillation" + } + ], + "https://github.com/ziwang-com/comfyui-deepseek-r1": [ + [ + "deep_gen", + "deep_load" + ], + { + "title_aux": "comfyui-deepseek-r1" + } + ], + "https://github.com/zmwv823/ComfyUI_Anytext": [ + [ + "UL_AnyText2Fonts", + "UL_AnyTextComposer", + "UL_AnyTextEncoder", + "UL_AnyTextFontImg", + "UL_AnyTextFormatter", + "UL_AnyTextLoader", + "UL_AnyTextSampler", + "UL_DiffusersCheckpointLoader", + "UL_DiffusersControlNetApplyAdvanced", + "UL_DiffusersControlNetLoader", + "UL_Image_Generation_Diffusers_Sampler", + "UL_Image_Generation_Glyph_ByT5", + "UL_Image_Generation_Glyph_ByT5_Checkponits_Loader", + "UL_Image_Generation_Glyph_ByT5_Font", + "UL_Image_Generation_JoyType_Font_Img", + "UL_Image_Generation_JoyType_Render_List", + "UL_Image_Process_Common_Cv2_Canny", + "UL_Translator", + "UL_TranslatorLoader", + "U_LoRAS" + ], + { + "title_aux": "ComfyUI_Anytext" + } + ], + "https://github.com/zohac/ComfyUI_ZC_DrawShape": [ + [ + "ZcDrawShape" + ], + { + "author": "Zohac", + "description": "nodes for artists, designers and animators.", + "nickname": "Zc DrawShape", + "title": "Zc DrawShape", + "title_aux": "ComfyUI_ZC_DrawShape" + } + ], + "https://github.com/zombieyang/sd-ppp": [ + [ + "CLIP Text Encode PS Regional", + "Get Image From Photoshop Layer", + "Send Images To Photoshop" + ], + { + "title_aux": "SD-PPP" + } + ], + "https://github.com/zubenelakrab/ComfyUI-ASV-Nodes": [ + [ + "ASVPromptGenerator" + ], + { + "title_aux": "ComfyUI-ASV-Nodes Node" + } + ], + "https://github.com/zygion/comfyui-zygion-util-nodes": [ + [ + "ItemListNode", + "SceneQueueNode", + "TemplateInputNode", + "TemplateProcessorNode", + "TriggerPassthroughNode" + ], + { + "title_aux": "i-zygion-util-nodes" + } + ], + "https://github.com/zzubnik/TT_TextTools": [ + [ + "TT_StoryCombiner", + "TT_TextFileSelectorNode", + "TT_TextInput", + "TT_TextReplacer" + ], + { + "title_aux": "TT_TextTools" + } + ], + "https://github.com/zzw5516/ComfyUI-zw-tools": [ + [ + "ZwPrompt", + "ZwPromptText" + ], + { + "title_aux": "ComfyUI-zw-tools" + } + ], + "https://raw.githubusercontent.com/1shadow1/hayo_comfyui_nodes/main/LZCNodes.py": [ + [ + "LoadPILImages", + "MergeImages", + "make_transparentmask", + "tensor_trans_pil", + "words_generatee" + ], + { + "title_aux": "Hayo comfyui nodes" + } + ], + "https://raw.githubusercontent.com/CaptainGrock/ComfyUIInvisibleWatermark/main/Invisible%20Watermark.py": [ + [ + "Apply Invisible Watermark", + "Extract Watermark" + ], + { + "title_aux": "ComfyUIInvisibleWatermark" + } + ], + "https://raw.githubusercontent.com/NeuralNotW0rk/ComfyUI-Waveform-Extensions/main/EXT_AudioManipulation.py": [ + [ + "BatchJoinAudio", + "CutAudio", + "DuplicateAudio", + "JoinAudio", + "ResampleAudio", + "ReverseAudio", + "StretchAudio" + ], + { + "title_aux": "Waveform Extensions" + } + ], + "https://raw.githubusercontent.com/Onierous/QRNG_Node_ComfyUI/main/qrng_node.py": [ + [ + "QRNG_Node_CSV" + ], + { + "title_aux": "QRNG_Node_ComfyUI" + } + ], + "https://raw.githubusercontent.com/SadaleNet/CLIPTextEncodeA1111-ComfyUI/master/custom_nodes/clip_text_encoder_a1111.py": [ + [ + "CLIPTextEncodeA1111", + "RerouteTextForCLIPTextEncodeA1111" + ], + { + "title_aux": "ComfyUI A1111-like Prompt Custom Node Solution" + } + ], + "https://raw.githubusercontent.com/Ser-Hilary/SDXL_sizing/main/conditioning_sizing_for_SDXL.py": [ + [ + "get_aspect_from_image", + "get_aspect_from_ints", + "sizing_node", + "sizing_node_basic", + "sizing_node_unparsed" + ], + { + "title_aux": "SDXL_sizing" + } + ], + "https://raw.githubusercontent.com/barckley75/comfyUI_DaVinciResolve/main/custom_nodes/node_text_to_speech.py": [ + [ + "TextToSpeech" + ], + { + "title_aux": "comfyUI_DaVinciResolve" + } + ], + "https://raw.githubusercontent.com/bkunbargi/BrevImage/main/BrevLoadImage.py": [ + [ + "BrevImage" + ], + { + "title_aux": "BrevImage" + } + ], + "https://raw.githubusercontent.com/catscandrive/comfyui-imagesubfolders/main/loadImageWithSubfolders.py": [ + [ + "LoadImagewithSubfolders" + ], + { + "title_aux": "Image loader with subfolders" + } + ], + "https://raw.githubusercontent.com/dawangraoming/ComfyUI_ksampler_gpu/main/ksampler_gpu.py": [ + [ + "KSamplerAdvancedGPU", + "KSamplerGPU" + ], + { + "title_aux": "KSampler GPU" + } + ], + "https://raw.githubusercontent.com/fitCorder/fcSuite/main/fcSuite.py": [ + [ + "fcFloat", + "fcFloatMatic", + "fcHex", + "fcInteger" + ], + { + "title_aux": "fcSuite" + } + ], + "https://raw.githubusercontent.com/folkghost/comfyui_search_csv/main/search_csv_node.py": [ + [ + "Search CSV" + ], + { + "title_aux": "CSV Search Node" + } + ], + "https://raw.githubusercontent.com/huimengshiguang/AspectAwareTiling/refs/heads/main/hmsg-quanjing.py": [ + [ + "AspectAwareTiling" + ], + { + "title_aux": "AspectAwareTiling" + } + ], + "https://raw.githubusercontent.com/lordgasmic/comfyui_wildcards/master/wildcards.py": [ + [ + "CLIPTextEncodeWithWildcards" + ], + { + "title_aux": "Wildcards" + } + ], + "https://raw.githubusercontent.com/lrzjason/ComfyUIJasonNode/main/SDXLMixSampler.py": [ + [ + "SDXLMixSampler" + ], + { + "title_aux": "ComfyUIJasonNode" + } + ], + "https://raw.githubusercontent.com/m957ymj75urz/ComfyUI-Custom-Nodes/main/clip-text-encode-split/clip_text_encode_split.py": [ + [ + "RawText", + "RawTextCombine", + "RawTextEncode", + "RawTextReplace" + ], + { + "title_aux": "m957ymj75urz/ComfyUI-Custom-Nodes" + } + ], + "https://raw.githubusercontent.com/nicolai256/comfyUI_Nodes_nicolai256/main/yugioh-presets.py": [ + [ + "yugioh_Presets" + ], + { + "title_aux": "comfyUI_Nodes_nicolai256" + } + ], + "https://raw.githubusercontent.com/ntdviet/comfyui-ext/main/custom_nodes/gcLatentTunnel/gcLatentTunnel.py": [ + [ + "gcLatentTunnel" + ], + { + "title_aux": "ntdviet/comfyui-ext" + } + ], + "https://raw.githubusercontent.com/s1dlx/comfy_meh/main/meh.py": [ + [ + "MergingExecutionHelper" + ], + { + "title_aux": "comfy_meh" + } + ], + "https://raw.githubusercontent.com/seghier/ComfyUI_LibreTranslate/main/translate_node.py": [ + [ + "LibreTranslateLocally", + "LibreTranslateOnline" + ], + { + "title_aux": "ComfyUI_LibreTranslate" + } + ], + "https://raw.githubusercontent.com/taabata/Comfy_Syrian_Falcon_Nodes/main/SyrianFalconNodes.py": [ + [ + "CompositeImage", + "KSamplerAlternate", + "KSamplerPromptEdit", + "KSamplerPromptEditAndAlternate", + "LoopBack", + "QRGenerate", + "WordAsImage" + ], + { + "title_aux": "Syrian Falcon Nodes" + } + ], + "https://raw.githubusercontent.com/throttlekitty/SDXLCustomAspectRatio/main/SDXLAspectRatio.py": [ + [ + "SDXLAspectRatio" + ], + { + "preemptions": [ + "SAMLoader" + ], + "title_aux": "SDXLCustomAspectRatio" + } + ], + "https://raw.githubusercontent.com/time-river/ComfyUI-CLIPSeg/main/custom_nodes/clipseg.py": [ + [ + "CLIPSeg", + "CombineSegMasks" + ], + { + "title_aux": "CLIPSeg" + } + ], + "https://raw.githubusercontent.com/tudal/Hakkun-ComfyUI-nodes/main/hakkun_nodes.py": [ + [ + "Any Converter", + "Calculate Upscale", + "Image Resize To Height", + "Image Resize To Width", + "Image size to string", + "Load Random Image", + "Load Text", + "Multi Text Merge", + "Prompt Parser", + "Random Line", + "Random Line 4" + ], + { + "title_aux": "Hakkun-ComfyUI-nodes" + } + ], + "https://raw.githubusercontent.com/ultimatech-cn/FaceSimilarity/main/faceSimilarity.py": [ + [ + "Face-analyze", + "Face-similarity" + ], + { + "title_aux": "FaceSimilarity" + } + ], + "https://raw.githubusercontent.com/vxinhao/color2rgb/main/color2rgb.py": [ + [ + "color2RGB" + ], + { + "title_aux": "color2rgb" + } + ], + "https://raw.githubusercontent.com/wsippel/comfyui_ws/main/sdxl_utility.py": [ + [ + "SDXLResolutionPresets" + ], + { + "title_aux": "SDXLResolutionPresets" + } + ] +} \ No newline at end of file diff --git a/user/default/ComfyUI-Manager/cache/746607195_github-stats.json b/user/default/ComfyUI-Manager/cache/746607195_github-stats.json new file mode 100644 index 0000000000000000000000000000000000000000..e9f228db812ea07550f6864bcf448240043bd887 --- /dev/null +++ b/user/default/ComfyUI-Manager/cache/746607195_github-stats.json @@ -0,0 +1,14047 @@ +{ + "https://github.com/0x-jerry/comfyui-rembg": { + "author_account_age_days": 3600, + "last_update": "2025-04-07 09:23:31", + "stars": 0 + }, + "https://github.com/0xRavenBlack/ComfyUI-OOP": { + "author_account_age_days": 1771, + "last_update": "2025-03-02 11:59:14", + "stars": 8 + }, + "https://github.com/0xbitches/ComfyUI-LCM": { + "author_account_age_days": 922, + "last_update": "2023-11-11 21:24:33", + "stars": 257 + }, + "https://github.com/1038lab/ComfyUI-EdgeTTS": { + "author_account_age_days": 843, + "last_update": "2025-06-20 18:14:14", + "stars": 49 + }, + "https://github.com/1038lab/ComfyUI-JoyCaption": { + "author_account_age_days": 843, + "last_update": "2025-06-12 21:15:17", + "stars": 29 + }, + "https://github.com/1038lab/ComfyUI-LBM": { + "author_account_age_days": 843, + "last_update": "2025-05-27 17:37:31", + "stars": 55 + }, + "https://github.com/1038lab/ComfyUI-MegaTTS": { + "author_account_age_days": 843, + "last_update": "2025-06-19 19:12:51", + "stars": 42 + }, + "https://github.com/1038lab/ComfyUI-MiniMax-Remover": { + "author_account_age_days": 843, + "last_update": "2025-06-27 21:57:55", + "stars": 53 + }, + "https://github.com/1038lab/ComfyUI-Mosaic": { + "author_account_age_days": 843, + "last_update": "2025-07-05 16:12:04", + "stars": 1 + }, + "https://github.com/1038lab/ComfyUI-OmniGen": { + "author_account_age_days": 843, + "last_update": "2025-04-18 18:33:34", + "stars": 278 + }, + "https://github.com/1038lab/ComfyUI-Pollinations": { + "author_account_age_days": 843, + "last_update": "2025-07-07 07:11:19", + "stars": 37 + }, + "https://github.com/1038lab/ComfyUI-RMBG": { + "author_account_age_days": 843, + "last_update": "2025-07-15 23:03:12", + "stars": 1179 + }, + "https://github.com/1038lab/ComfyUI-ReduxFineTune": { + "author_account_age_days": 843, + "last_update": "2025-06-21 19:10:36", + "stars": 58 + }, + "https://github.com/1038lab/ComfyUI-SparkTTS": { + "author_account_age_days": 843, + "last_update": "2025-04-15 19:28:39", + "stars": 106 + }, + "https://github.com/1038lab/ComfyUI-WildPromptor": { + "author_account_age_days": 843, + "last_update": "2025-07-12 18:50:44", + "stars": 38 + }, + "https://github.com/111496583yzy/comfyui-PuzzleCrack-Effect": { + "author_account_age_days": 2274, + "last_update": "2025-01-13 10:15:44", + "stars": 3 + }, + "https://github.com/11cafe/comfyui-workspace-manager": { + "author_account_age_days": 596, + "last_update": "2025-04-16 14:02:54", + "stars": 1325 + }, + "https://github.com/11dogzi/CYBERPUNK-STYLE-DIY": { + "author_account_age_days": 516, + "last_update": "2025-06-20 07:49:50", + "stars": 87 + }, + "https://github.com/11dogzi/ComfUI-EGAdapterMadAssistant": { + "author_account_age_days": 516, + "last_update": "2024-08-02 05:24:19", + "stars": 39 + }, + "https://github.com/11dogzi/Comfyui-ergouzi-Nodes": { + "author_account_age_days": 516, + "last_update": "2024-08-23 12:04:09", + "stars": 84 + }, + "https://github.com/11dogzi/Comfyui-ergouzi-kaiguan": { + "author_account_age_days": 516, + "last_update": "2025-06-22 14:48:37", + "stars": 68 + }, + "https://github.com/11dogzi/Comfyui-ergouzi-samplers": { + "author_account_age_days": 516, + "last_update": "2024-06-28 05:28:05", + "stars": 27 + }, + "https://github.com/1hew/ComfyUI-1hewNodes": { + "author_account_age_days": 839, + "last_update": "2025-07-17 12:44:48", + "stars": 4 + }, + "https://github.com/1mckw/Comfyui-Gelbooru": { + "author_account_age_days": 1081, + "last_update": "2025-04-06 14:11:25", + "stars": 4 + }, + "https://github.com/1zhangyy1/comfyui-vidu-nodes": { + "author_account_age_days": 850, + "last_update": "2025-03-21 12:25:22", + "stars": 8 + }, + "https://github.com/2frames/ComfyUI-AQnodes": { + "author_account_age_days": 381, + "last_update": "2025-06-08 12:51:07", + "stars": 1 + }, + "https://github.com/2kpr/ComfyUI-PMRF": { + "author_account_age_days": 1310, + "last_update": "2024-10-11 00:11:40", + "stars": 214 + }, + "https://github.com/2kpr/ComfyUI-UltraPixel": { + "author_account_age_days": 1310, + "last_update": "2024-07-27 14:52:10", + "stars": 225 + }, + "https://github.com/311-code/ComfyUI-MagicClip_Strength": { + "author_account_age_days": 3163, + "last_update": "2024-09-22 12:07:40", + "stars": 2 + }, + "https://github.com/31702160136/ComfyUI-GrsAI": { + "author_account_age_days": 2395, + "last_update": "2025-07-05 11:35:32", + "stars": 9 + }, + "https://github.com/42lux/ComfyUI-42lux": { + "author_account_age_days": 4090, + "last_update": "2025-07-08 22:32:40", + "stars": 15 + }, + "https://github.com/438443467/ComfyUI-GPT4V-Image-Captioner": { + "author_account_age_days": 805, + "last_update": "2025-04-06 02:06:59", + "stars": 27 + }, + "https://github.com/45uee/ComfyUI-Color_Transfer": { + "author_account_age_days": 2694, + "last_update": "2025-05-12 22:12:06", + "stars": 29 + }, + "https://github.com/54rt1n/ComfyUI-DareMerge": { + "author_account_age_days": 4442, + "last_update": "2025-03-27 14:57:35", + "stars": 92 + }, + "https://github.com/5x00/ComfyUI-PiAPI-Faceswap": { + "author_account_age_days": 1363, + "last_update": "2025-01-12 14:49:09", + "stars": 2 + }, + "https://github.com/5x00/ComfyUI-VLM-Captions": { + "author_account_age_days": 1363, + "last_update": "2025-01-04 21:27:47", + "stars": 7 + }, + "https://github.com/6174/comflowy-nodes": { + "author_account_age_days": 4510, + "last_update": "2024-12-03 13:31:04", + "stars": 14 + }, + "https://github.com/807502278/ComfyUI-3D-MeshTool": { + "author_account_age_days": 2404, + "last_update": "2024-10-18 09:59:54", + "stars": 23 + }, + "https://github.com/807502278/ComfyUI-WJNodes": { + "author_account_age_days": 2404, + "last_update": "2025-07-02 12:07:41", + "stars": 11 + }, + "https://github.com/807502278/ComfyUI_MaskGCT": { + "author_account_age_days": 2404, + "last_update": "2025-03-05 09:15:32", + "stars": 27 + }, + "https://github.com/80sVectorz/ComfyUI-Static-Primitives": { + "author_account_age_days": 1862, + "last_update": "2025-03-14 11:42:07", + "stars": 11 + }, + "https://github.com/834t/ComfyUI_834t_scene_composer": { + "author_account_age_days": 589, + "last_update": "2025-06-23 10:55:47", + "stars": 1 + }, + "https://github.com/852wa/ComfyUI-AAP": { + "author_account_age_days": 754, + "last_update": "2025-01-29 13:21:59", + "stars": 9 + }, + "https://github.com/852wa/ComfyUI-ColorshiftColor": { + "author_account_age_days": 754, + "last_update": "2025-02-01 12:17:38", + "stars": 50 + }, + "https://github.com/A043-studios/ComfyUI-ASDF-Pixel-Sort-Nodes": { + "author_account_age_days": 1040, + "last_update": "2025-06-12 12:51:33", + "stars": 3 + }, + "https://github.com/A043-studios/Comfyui-ascii-generator": { + "author_account_age_days": 1040, + "last_update": "2025-06-25 14:55:32", + "stars": 0 + }, + "https://github.com/A043-studios/comfyui-deforum-x-flux-nodes": { + "author_account_age_days": 1040, + "last_update": "2025-06-10 14:28:27", + "stars": 0 + }, + "https://github.com/A043-studios/comfyui-pixel3dmm": { + "author_account_age_days": 1040, + "last_update": "2025-06-10 08:11:51", + "stars": 3 + }, + "https://github.com/A4P7J1N7M05OT/ComfyUI-AutoColorGimp": { + "author_account_age_days": 864, + "last_update": "2024-05-23 00:26:10", + "stars": 1 + }, + "https://github.com/A4P7J1N7M05OT/ComfyUI-PixelOE-Wrapper": { + "author_account_age_days": 864, + "last_update": "2025-01-21 22:26:11", + "stars": 11 + }, + "https://github.com/AARG-FAN/Image-Vector-for-ComfyUI": { + "author_account_age_days": 890, + "last_update": "2024-06-23 14:56:16", + "stars": 138 + }, + "https://github.com/AEmotionStudio/ComfyUI-ChristmasTheme": { + "author_account_age_days": 494, + "last_update": "2025-06-03 13:01:58", + "stars": 41 + }, + "https://github.com/AEmotionStudio/ComfyUI-DiscordSend": { + "author_account_age_days": 494, + "last_update": "2025-06-03 13:03:23", + "stars": 10 + }, + "https://github.com/AEmotionStudio/ComfyUI-EnhancedLinksandNodes": { + "author_account_age_days": 494, + "last_update": "2025-06-03 13:02:36", + "stars": 38 + }, + "https://github.com/AEmotionStudio/ComfyUI-MagnifyGlass": { + "author_account_age_days": 494, + "last_update": "2025-06-13 19:26:31", + "stars": 12 + }, + "https://github.com/AEmotionStudio/ComfyUI-ShaderNoiseKSampler": { + "author_account_age_days": 494, + "last_update": "2025-06-20 08:52:02", + "stars": 46 + }, + "https://github.com/AI2lab/comfyUI-siliconflow-api-2lab": { + "author_account_age_days": 583, + "last_update": "2024-08-01 15:13:33", + "stars": 8 + }, + "https://github.com/AIDC-AI/ComfyUI-Copilot": { + "author_account_age_days": 402, + "last_update": "2025-07-18 05:54:37", + "stars": 1991 + }, + "https://github.com/AIExplorer25/ComfyUI_AutoDownloadModels": { + "author_account_age_days": 3858, + "last_update": "2025-04-05 22:05:47", + "stars": 16 + }, + "https://github.com/AIExplorer25/ComfyUI_ChatGptHelper": { + "author_account_age_days": 3858, + "last_update": "2025-05-18 19:11:40", + "stars": 0 + }, + "https://github.com/AIExplorer25/ComfyUI_ImageCaptioner": { + "author_account_age_days": 3858, + "last_update": "2025-06-07 19:49:36", + "stars": 0 + }, + "https://github.com/AIFSH/AniTalker-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-08-06 03:08:44", + "stars": 5 + }, + "https://github.com/AIFSH/ComfyUI-3d-photo-inpainting": { + "author_account_age_days": 622, + "last_update": "2024-06-19 13:59:49", + "stars": 14 + }, + "https://github.com/AIFSH/ComfyUI-AuraSR": { + "author_account_age_days": 622, + "last_update": "2024-06-27 14:00:16", + "stars": 22 + }, + "https://github.com/AIFSH/ComfyUI-DiffSynth-Studio": { + "author_account_age_days": 622, + "last_update": "2024-08-05 08:48:03", + "stars": 85 + }, + "https://github.com/AIFSH/ComfyUI-FishSpeech": { + "author_account_age_days": 622, + "last_update": "2024-05-23 01:18:49", + "stars": 39 + }, + "https://github.com/AIFSH/ComfyUI-GPT_SoVITS": { + "author_account_age_days": 622, + "last_update": "2024-08-09 22:00:45", + "stars": 239 + }, + "https://github.com/AIFSH/ComfyUI-Hallo": { + "author_account_age_days": 622, + "last_update": "2024-06-24 06:43:23", + "stars": 305 + }, + "https://github.com/AIFSH/ComfyUI-I2V-Adapter": { + "author_account_age_days": 622, + "last_update": "2024-07-02 01:59:49", + "stars": 21 + }, + "https://github.com/AIFSH/ComfyUI-IP_LAP": { + "author_account_age_days": 622, + "last_update": "2024-06-14 07:05:39", + "stars": 34 + }, + "https://github.com/AIFSH/ComfyUI-Live2DViewer": { + "author_account_age_days": 622, + "last_update": "2024-06-14 07:04:49", + "stars": 9 + }, + "https://github.com/AIFSH/ComfyUI-MARS5-TTS": { + "author_account_age_days": 622, + "last_update": "2024-07-02 02:00:28", + "stars": 29 + }, + "https://github.com/AIFSH/ComfyUI-MimicBrush": { + "author_account_age_days": 622, + "last_update": "2024-06-17 22:26:53", + "stars": 115 + }, + "https://github.com/AIFSH/ComfyUI-MimicMotion": { + "author_account_age_days": 622, + "last_update": "2024-08-06 06:21:16", + "stars": 376 + }, + "https://github.com/AIFSH/ComfyUI-MuseTalk_FSH": { + "author_account_age_days": 622, + "last_update": "2024-06-14 07:05:19", + "stars": 21 + }, + "https://github.com/AIFSH/ComfyUI-RVC": { + "author_account_age_days": 622, + "last_update": "2024-06-14 07:05:25", + "stars": 24 + }, + "https://github.com/AIFSH/ComfyUI-UVR5": { + "author_account_age_days": 622, + "last_update": "2024-06-20 07:31:20", + "stars": 97 + }, + "https://github.com/AIFSH/ComfyUI-UniAnimate": { + "author_account_age_days": 622, + "last_update": "2024-06-30 09:20:25", + "stars": 39 + }, + "https://github.com/AIFSH/ComfyUI-WhisperX": { + "author_account_age_days": 622, + "last_update": "2025-04-01 00:14:44", + "stars": 51 + }, + "https://github.com/AIFSH/ComfyUI-XTTS": { + "author_account_age_days": 622, + "last_update": "2024-06-24 09:45:59", + "stars": 59 + }, + "https://github.com/AIFSH/ComfyUI_V-Express": { + "author_account_age_days": 622, + "last_update": "2024-06-23 09:54:57", + "stars": 87 + }, + "https://github.com/AIFSH/CosyVoice-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-09-10 22:21:37", + "stars": 266 + }, + "https://github.com/AIFSH/DHLive-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-11-14 01:45:45", + "stars": 24 + }, + "https://github.com/AIFSH/DiffMorpher-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-07-17 01:24:59", + "stars": 16 + }, + "https://github.com/AIFSH/DiffSynth-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-09-07 12:23:07", + "stars": 0 + }, + "https://github.com/AIFSH/EchoMimicV2-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-12-08 08:53:21", + "stars": 58 + }, + "https://github.com/AIFSH/EzAudio-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-10-08 05:22:46", + "stars": 9 + }, + "https://github.com/AIFSH/F5-TTS-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-11-14 01:43:03", + "stars": 36 + }, + "https://github.com/AIFSH/FancyVideo-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-10-12 07:21:51", + "stars": 36 + }, + "https://github.com/AIFSH/FireRedTTS-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-10-24 01:18:51", + "stars": 12 + }, + "https://github.com/AIFSH/GSTTS-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-08-25 03:23:24", + "stars": 41 + }, + "https://github.com/AIFSH/HivisionIDPhotos-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-09-16 14:16:06", + "stars": 155 + }, + "https://github.com/AIFSH/IMAGDressing-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-11-14 01:44:02", + "stars": 62 + }, + "https://github.com/AIFSH/JoyHallo-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-11-14 01:44:39", + "stars": 8 + }, + "https://github.com/AIFSH/MaskGCT-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-11-14 01:40:15", + "stars": 62 + }, + "https://github.com/AIFSH/MiniMates-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-11-14 01:36:30", + "stars": 29 + }, + "https://github.com/AIFSH/OmniGen-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-11-14 01:37:33", + "stars": 209 + }, + "https://github.com/AIFSH/PyramidFlow-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-10-10 13:59:16", + "stars": 14 + }, + "https://github.com/AIFSH/RealisDance-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-09-13 14:38:59", + "stars": 49 + }, + "https://github.com/AIFSH/SemiChat-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2025-02-19 23:21:48", + "stars": 12 + }, + "https://github.com/AIFSH/SenseVoice-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-07-16 06:41:25", + "stars": 13 + }, + "https://github.com/AIFSH/StyleShot-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-08-17 00:25:29", + "stars": 4 + }, + "https://github.com/AIFSH/VideoSys-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-09-01 09:11:57", + "stars": 6 + }, + "https://github.com/AIFSH/ViewCrafter-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-09-19 11:11:25", + "stars": 8 + }, + "https://github.com/AIFSH/VocalSeparation-ComfyUI": { + "author_account_age_days": 622, + "last_update": "2024-10-24 07:16:37", + "stars": 19 + }, + "https://github.com/AIGCTeam/ComfyUI_kkTranslator_nodes": { + "author_account_age_days": 601, + "last_update": "2024-09-13 07:34:18", + "stars": 7 + }, + "https://github.com/AIGODLIKE/AIGODLIKE-COMFYUI-TRANSLATION": { + "author_account_age_days": 892, + "last_update": "2025-03-24 00:01:12", + "stars": 2289 + }, + "https://github.com/AIGODLIKE/AIGODLIKE-ComfyUI-Studio": { + "author_account_age_days": 892, + "last_update": "2025-01-06 11:31:20", + "stars": 345 + }, + "https://github.com/AIGODLIKE/ComfyUI-CUP": { + "author_account_age_days": 892, + "last_update": "2025-06-29 09:56:53", + "stars": 48 + }, + "https://github.com/AIGODLIKE/ComfyUI-ToonCrafter": { + "author_account_age_days": 892, + "last_update": "2024-07-17 02:28:49", + "stars": 367 + }, + "https://github.com/AIPOQUE/ComfyUI-APQNodes": { + "author_account_age_days": 274, + "last_update": "2024-11-21 08:56:49", + "stars": 105 + }, + "https://github.com/AIToldMeTo/comfyui-cache-cleaner": { + "author_account_age_days": 221, + "last_update": "2025-05-29 10:44:45", + "stars": 8 + }, + "https://github.com/AIWarper/ComfyUI-NormalCrafterWrapper": { + "author_account_age_days": 269, + "last_update": "2025-07-18 20:14:36", + "stars": 64 + }, + "https://github.com/AIWarper/ComfyUI-WarperNodes": { + "author_account_age_days": 269, + "last_update": "2025-06-25 02:11:15", + "stars": 10 + }, + "https://github.com/AInseven/ComfyUI-fastblend": { + "author_account_age_days": 2074, + "last_update": "2024-11-22 03:32:25", + "stars": 219 + }, + "https://github.com/AIrjen/OneButtonPrompt": { + "author_account_age_days": 834, + "last_update": "2025-07-20 12:15:47", + "stars": 1000 + }, + "https://github.com/AJO-reading/ComfyUI-AjoNodes": { + "author_account_age_days": 241, + "last_update": "2025-06-16 08:10:10", + "stars": 7 + }, + "https://github.com/AKharytonchyk/ComfyUI-telegram-bot-node": { + "author_account_age_days": 3274, + "last_update": "2025-06-23 22:03:39", + "stars": 0 + }, + "https://github.com/ALatentPlace/ComfyUI_yanc": { + "author_account_age_days": 1851, + "last_update": "2025-01-22 14:44:17", + "stars": 64 + }, + "https://github.com/ALatentPlace/YANC_LMStudio": { + "author_account_age_days": 1851, + "last_update": "2025-04-30 14:57:13", + "stars": 10 + }, + "https://github.com/APZmedia/APZmedia-comfy-together-lora": { + "author_account_age_days": 2868, + "last_update": "2025-02-15 13:14:17", + "stars": 0 + }, + "https://github.com/APZmedia/APZmedia-comfyui-fast-image-save": { + "author_account_age_days": 2868, + "last_update": "2025-04-21 19:22:43", + "stars": 4 + }, + "https://github.com/APZmedia/ComfyUI-APZmedia-cleanName-from-string": { + "author_account_age_days": 2868, + "last_update": "2025-04-21 19:22:10", + "stars": 7 + }, + "https://github.com/ARZUMATA/ComfyUI-ARZUMATA": { + "author_account_age_days": 2158, + "last_update": "2025-04-08 08:00:15", + "stars": 4 + }, + "https://github.com/ARZUMATA/ComfyUI-ARZUMATA-PixelIt": { + "author_account_age_days": 2158, + "last_update": "2025-06-04 13:11:52", + "stars": 1 + }, + "https://github.com/ARZUMATA/ComfyUI-ARZUMATA-Qwen2": { + "author_account_age_days": 2158, + "last_update": "2025-06-04 13:10:22", + "stars": 1 + }, + "https://github.com/Aaron-CHM/ComfyUI-z-a1111-sd-webui-DanTagGen": { + "author_account_age_days": 1917, + "last_update": "2024-07-17 03:55:26", + "stars": 4 + }, + "https://github.com/AbdullahAlfaraj/Comfy-Photoshop-SD": { + "author_account_age_days": 4059, + "last_update": "2024-06-14 07:04:37", + "stars": 293 + }, + "https://github.com/AbstractEyes/comfyui-lycoris": { + "author_account_age_days": 1770, + "last_update": "2025-06-29 19:28:07", + "stars": 5 + }, + "https://github.com/AbyssBadger0/ComfyUI_BadgerTools": { + "author_account_age_days": 880, + "last_update": "2024-11-12 11:10:16", + "stars": 8 + }, + "https://github.com/AbyssBadger0/ComfyUI_Kolors_awesome_prompts": { + "author_account_age_days": 880, + "last_update": "2024-08-29 15:19:06", + "stars": 5 + }, + "https://github.com/Acly/comfyui-inpaint-nodes": { + "author_account_age_days": 4196, + "last_update": "2025-03-31 09:53:40", + "stars": 1004 + }, + "https://github.com/Acly/comfyui-tooling-nodes": { + "author_account_age_days": 4196, + "last_update": "2025-06-15 10:32:50", + "stars": 520 + }, + "https://github.com/AconexOfficial/ComfyUI_GOAT_Nodes": { + "author_account_age_days": 1872, + "last_update": "2025-05-14 08:38:12", + "stars": 9 + }, + "https://github.com/Aero-Ex/ComfyUI-Vision-LLM-Analyzer": { + "author_account_age_days": 1142, + "last_update": "2025-07-17 07:03:51", + "stars": 0 + }, + "https://github.com/Aerse/ComfyUI-Seed-Nodes": { + "author_account_age_days": 3769, + "last_update": "2025-06-10 08:19:10", + "stars": 5 + }, + "https://github.com/AgencyMind/ComfyUI-GPU-Preprocessor-Wrapper": { + "author_account_age_days": 251, + "last_update": "2025-06-13 08:15:25", + "stars": 3 + }, + "https://github.com/AgencyMind/ComfyUI-Satori": { + "author_account_age_days": 251, + "last_update": "2025-06-27 01:29:00", + "stars": 0 + }, + "https://github.com/AhBumm/ComfyUI_BillBum_APIset_Nodes": { + "author_account_age_days": 1200, + "last_update": "2025-06-25 05:15:21", + "stars": 10 + }, + "https://github.com/AiMiDi/ComfyUI-Aimidi-nodes": { + "author_account_age_days": 1667, + "last_update": "2024-06-20 17:26:02", + "stars": 0 + }, + "https://github.com/AkashKarnatak/ComfyUI_faishme": { + "author_account_age_days": 2144, + "last_update": "2025-03-10 20:04:22", + "stars": 0 + }, + "https://github.com/Aksaz/comfyui-seamless-clone": { + "author_account_age_days": 274, + "last_update": "2025-05-20 07:08:24", + "stars": 10 + }, + "https://github.com/AlekPet/ComfyUI_Custom_Nodes_AlekPet": { + "author_account_age_days": 3091, + "last_update": "2025-07-10 10:35:17", + "stars": 1288 + }, + "https://github.com/Alexankharin/camera-comfyUI": { + "author_account_age_days": 2512, + "last_update": "2025-07-13 18:05:52", + "stars": 13 + }, + "https://github.com/Aljnk/ComfyUI-JNK-Tiny-Nodes": { + "author_account_age_days": 3794, + "last_update": "2025-07-14 10:36:50", + "stars": 2 + }, + "https://github.com/Altair200333/ComfyUI_Flux_1.1_PRO": { + "author_account_age_days": 3101, + "last_update": "2025-03-23 19:29:25", + "stars": 0 + }, + "https://github.com/Alvaroeai/ComfyUI-Text2Json": { + "author_account_age_days": 4092, + "last_update": "2024-11-26 16:40:31", + "stars": 1 + }, + "https://github.com/Amorano/Jovi_Capture": { + "author_account_age_days": 5603, + "last_update": "2025-05-31 18:38:22", + "stars": 6 + }, + "https://github.com/Amorano/Jovi_Colorizer": { + "author_account_age_days": 5603, + "last_update": "2025-05-22 20:00:19", + "stars": 6 + }, + "https://github.com/Amorano/Jovi_GLSL": { + "author_account_age_days": 5603, + "last_update": "2025-07-13 22:58:45", + "stars": 17 + }, + "https://github.com/Amorano/Jovi_MIDI": { + "author_account_age_days": 5603, + "last_update": "2025-05-05 04:11:06", + "stars": 6 + }, + "https://github.com/Amorano/Jovi_Measure": { + "author_account_age_days": 5603, + "last_update": "2025-05-05 04:10:36", + "stars": 2 + }, + "https://github.com/Amorano/Jovi_Spout": { + "author_account_age_days": 5603, + "last_update": "2025-07-05 19:22:17", + "stars": 7 + }, + "https://github.com/Amorano/Jovimetrix": { + "author_account_age_days": 5603, + "last_update": "2025-07-13 18:16:40", + "stars": 363 + }, + "https://github.com/Andro-Meta/ComfyUI-Ovis2": { + "author_account_age_days": 663, + "last_update": "2025-03-24 04:27:56", + "stars": 5 + }, + "https://github.com/AngelCookies/ComfyUI-Seed-Tracker": { + "author_account_age_days": 1212, + "last_update": "2025-06-23 23:56:50", + "stars": 0 + }, + "https://github.com/Anibaaal/ComfyUI-UX-Nodes": { + "author_account_age_days": 3768, + "last_update": "2025-01-23 13:35:49", + "stars": 2 + }, + "https://github.com/AonekoSS/ComfyUI-LoRA-Tuner": { + "author_account_age_days": 4483, + "last_update": "2025-03-27 17:07:38", + "stars": 9 + }, + "https://github.com/AonekoSS/ComfyUI-SimpleCounter": { + "author_account_age_days": 4483, + "last_update": "2025-03-27 17:08:39", + "stars": 1 + }, + "https://github.com/ArcherFMY/Diffusion360_ComfyUI": { + "author_account_age_days": 3780, + "last_update": "2025-03-17 06:08:17", + "stars": 44 + }, + "https://github.com/ArdeniusAI/ComfyUI-Ardenius": { + "author_account_age_days": 518, + "last_update": "2024-11-24 09:57:46", + "stars": 5 + }, + "https://github.com/Arkanun/ReadCSV_ComfyUI": { + "author_account_age_days": 3340, + "last_update": "2025-02-05 23:06:48", + "stars": 0 + }, + "https://github.com/ArtBot2023/CharacterFaceSwap": { + "author_account_age_days": 684, + "last_update": "2024-05-22 20:53:09", + "stars": 91 + }, + "https://github.com/ArtHommage/HommageTools": { + "author_account_age_days": 924, + "last_update": "2025-05-20 20:40:25", + "stars": 3 + }, + "https://github.com/ArtsticH/ComfyUI_EasyKitHT_NodeAlignPro": { + "author_account_age_days": 480, + "last_update": "2025-05-01 01:49:07", + "stars": 11 + }, + "https://github.com/Aryan185/ComfyUI-ExternalAPI-Helpers": { + "author_account_age_days": 1563, + "last_update": "2025-07-17 14:05:18", + "stars": 1 + }, + "https://github.com/AshMartian/ComfyUI-DirGir": { + "author_account_age_days": 4977, + "last_update": "2025-05-04 03:34:19", + "stars": 25 + }, + "https://github.com/AstroCorp/ComfyUI-AstroCorp-Nodes": { + "author_account_age_days": 3232, + "last_update": "2025-07-07 22:35:57", + "stars": 0 + }, + "https://github.com/AuroBit/ComfyUI-AnimateAnyone-reproduction": { + "author_account_age_days": 781, + "last_update": "2024-06-14 09:03:24", + "stars": 37 + }, + "https://github.com/AuroBit/ComfyUI-OOTDiffusion": { + "author_account_age_days": 781, + "last_update": "2024-07-12 03:49:27", + "stars": 463 + }, + "https://github.com/AustinMroz/ComfyUI-DynamicOversampling": { + "author_account_age_days": 4465, + "last_update": "2024-06-14 07:06:51", + "stars": 0 + }, + "https://github.com/AustinMroz/ComfyUI-MinCache": { + "author_account_age_days": 4465, + "last_update": "2024-12-25 18:52:07", + "stars": 2 + }, + "https://github.com/AustinMroz/ComfyUI-SpliceTools": { + "author_account_age_days": 4465, + "last_update": "2024-06-14 07:07:21", + "stars": 6 + }, + "https://github.com/AustinMroz/ComfyUI-WorkflowCheckpointing": { + "author_account_age_days": 4465, + "last_update": "2024-10-17 19:59:40", + "stars": 11 + }, + "https://github.com/Auttasak-L/ComfyUI-ImageCropper": { + "author_account_age_days": 3040, + "last_update": "2024-05-23 05:04:53", + "stars": 1 + }, + "https://github.com/BAIS1C/ComfyUI_RSS_Feed_Reader": { + "author_account_age_days": 880, + "last_update": "2025-04-24 14:09:18", + "stars": 4 + }, + "https://github.com/BIMer-99/ComfyUI_FishSpeech_EX": { + "author_account_age_days": 1623, + "last_update": "2024-12-21 11:35:08", + "stars": 7 + }, + "https://github.com/BIMer-99/Comfyui_Hunyuan3D_EX": { + "author_account_age_days": 1623, + "last_update": "2024-12-09 17:50:23", + "stars": 7 + }, + "https://github.com/BNP1111/comfyui_flux_corrector": { + "author_account_age_days": 887, + "last_update": "2025-04-25 16:47:45", + "stars": 4 + }, + "https://github.com/BXYMartin/ComfyUI-InstantIDUtils": { + "author_account_age_days": 2834, + "last_update": "2024-05-23 00:08:50", + "stars": 3 + }, + "https://github.com/BZcreativ/ComfyUI-FLUX-TOGETHER-API": { + "author_account_age_days": 3628, + "last_update": "2024-11-02 14:45:28", + "stars": 3 + }, + "https://github.com/BadCafeCode/masquerade-nodes-comfyui": { + "author_account_age_days": 821, + "last_update": "2024-06-19 04:16:54", + "stars": 433 + }, + "https://github.com/BahaC/ComfyUI-ZonosTTS": { + "author_account_age_days": 1697, + "last_update": "2025-02-19 06:28:38", + "stars": 20 + }, + "https://github.com/Beinsezii/bsz-cui-extras": { + "author_account_age_days": 2617, + "last_update": "2024-05-22 20:46:45", + "stars": 24 + }, + "https://github.com/Bellzs/ComfyUI-LoRA-Assistant": { + "author_account_age_days": 3398, + "last_update": "2025-01-27 09:47:46", + "stars": 16 + }, + "https://github.com/BenNarum/ComfyUI_CAS": { + "author_account_age_days": 3463, + "last_update": "2024-07-13 12:00:40", + "stars": 3 + }, + "https://github.com/BenNarum/SigmaWaveFormNode": { + "author_account_age_days": 3463, + "last_update": "2024-06-20 15:20:35", + "stars": 5 + }, + "https://github.com/BennyKok/comfyui-deploy": { + "author_account_age_days": 3387, + "last_update": "2025-07-19 17:45:43", + "stars": 1371 + }, + "https://github.com/BetaDoggo/ComfyUI-Cloud-APIs": { + "author_account_age_days": 1189, + "last_update": "2025-05-01 06:24:47", + "stars": 37 + }, + "https://github.com/BetaDoggo/ComfyUI-FastSDCPU": { + "author_account_age_days": 1189, + "last_update": "2024-09-16 05:34:01", + "stars": 9 + }, + "https://github.com/BetaDoggo/ComfyUI-Gatcha-Embedding": { + "author_account_age_days": 1189, + "last_update": "2024-08-28 00:24:01", + "stars": 1 + }, + "https://github.com/BetaDoggo/ComfyUI-VideoPlayer": { + "author_account_age_days": 1189, + "last_update": "2024-08-05 04:45:12", + "stars": 17 + }, + "https://github.com/BetaDoggo/ComfyUI-WDV-Nodes": { + "author_account_age_days": 1189, + "last_update": "2024-08-01 07:59:10", + "stars": 1 + }, + "https://github.com/BetaDoggo/ComfyUI-YetAnotherSafetyChecker": { + "author_account_age_days": 1189, + "last_update": "2024-07-19 18:11:11", + "stars": 5 + }, + "https://github.com/Big-Idea-Technology/ComfyUI-Book-Tools": { + "author_account_age_days": 1263, + "last_update": "2025-04-21 15:40:34", + "stars": 28 + }, + "https://github.com/Big-Idea-Technology/ComfyUI_LLM_Node": { + "author_account_age_days": 1263, + "last_update": "2025-04-19 11:58:55", + "stars": 65 + }, + "https://github.com/BigStationW/ComfyUi-Load-Image-And-Display-Prompt-Metadata": { + "author_account_age_days": 77, + "last_update": "2025-07-05 08:46:55", + "stars": 14 + }, + "https://github.com/BigStationW/ComfyUi-RescaleCFGAdvanced": { + "author_account_age_days": 77, + "last_update": "2025-05-07 18:10:18", + "stars": 25 + }, + "https://github.com/BigWhiteFly/ComfyUI-ImageConcat": { + "author_account_age_days": 2732, + "last_update": "2025-05-21 01:16:27", + "stars": 0 + }, + "https://github.com/Billius-AI/ComfyUI-Path-Helper": { + "author_account_age_days": 526, + "last_update": "2024-05-22 23:25:08", + "stars": 18 + }, + "https://github.com/Bin-sam/DynamicPose-ComfyUI": { + "author_account_age_days": 325, + "last_update": "2024-09-11 12:09:11", + "stars": 5 + }, + "https://github.com/Black-Lioness/ComfyUI-PromptUtils": { + "author_account_age_days": 1246, + "last_update": "2024-11-22 03:05:11", + "stars": 2 + }, + "https://github.com/BlackVortexAI/ComfyUI-BVortexNodes": { + "author_account_age_days": 347, + "last_update": "2024-10-23 09:19:54", + "stars": 2 + }, + "https://github.com/BlakeOne/ComfyUI-CustomScheduler": { + "author_account_age_days": 2924, + "last_update": "2024-05-23 00:23:56", + "stars": 17 + }, + "https://github.com/BlakeOne/ComfyUI-NodePresets": { + "author_account_age_days": 2924, + "last_update": "2024-05-23 00:24:07", + "stars": 13 + }, + "https://github.com/BlakeOne/ComfyUI-NodeReset": { + "author_account_age_days": 2924, + "last_update": "2024-05-23 00:24:18", + "stars": 3 + }, + "https://github.com/BlakeOne/ComfyUI-SchedulerMixer": { + "author_account_age_days": 2924, + "last_update": "2024-05-23 00:23:44", + "stars": 10 + }, + "https://github.com/BlenderNeko/ComfyUI_ADV_CLIP_emb": { + "author_account_age_days": 869, + "last_update": "2024-08-07 15:13:31", + "stars": 391 + }, + "https://github.com/BlenderNeko/ComfyUI_Cutoff": { + "author_account_age_days": 869, + "last_update": "2024-05-22 15:01:45", + "stars": 387 + }, + "https://github.com/BlenderNeko/ComfyUI_Noise": { + "author_account_age_days": 869, + "last_update": "2024-06-10 16:38:48", + "stars": 300 + }, + "https://github.com/BlenderNeko/ComfyUI_SeeCoder": { + "author_account_age_days": 869, + "last_update": "2024-05-22 14:57:04", + "stars": 38 + }, + "https://github.com/BlenderNeko/ComfyUI_TiledKSampler": { + "author_account_age_days": 869, + "last_update": "2024-05-22 14:56:49", + "stars": 384 + }, + "https://github.com/Blonicx/ComfyUI-X-Rework": { + "author_account_age_days": 1114, + "last_update": "2025-05-07 17:02:20", + "stars": 1 + }, + "https://github.com/BlueprintCoding/ComfyUI_AIDocsClinicalTools": { + "author_account_age_days": 836, + "last_update": "2025-02-22 17:07:39", + "stars": 4 + }, + "https://github.com/BobRandomNumber/ComfyUI-DiaTTS": { + "author_account_age_days": 235, + "last_update": "2025-06-02 03:02:19", + "stars": 8 + }, + "https://github.com/BobRandomNumber/ComfyUI-KyutaiTTS": { + "author_account_age_days": 235, + "last_update": "2025-07-09 04:52:46", + "stars": 5 + }, + "https://github.com/BobsBlazed/Bobs-Lora-Loader": { + "author_account_age_days": 2605, + "last_update": "2025-06-27 12:02:38", + "stars": 5 + }, + "https://github.com/BobsBlazed/Bobs_Latent_Optimizer": { + "author_account_age_days": 2605, + "last_update": "2025-06-04 03:00:27", + "stars": 40 + }, + "https://github.com/BoyuanJiang/FitDiT-ComfyUI": { + "author_account_age_days": 3472, + "last_update": "2025-01-21 12:09:05", + "stars": 101 + }, + "https://github.com/Bria-AI/ComfyUI-BRIA-API": { + "author_account_age_days": 1869, + "last_update": "2025-06-16 13:24:17", + "stars": 51 + }, + "https://github.com/BuffMcBigHuge/ComfyUI-Google-AI-Studio": { + "author_account_age_days": 3304, + "last_update": "2025-07-02 22:33:54", + "stars": 2 + }, + "https://github.com/BuffMcBigHuge/ComfyUI-Zonos": { + "author_account_age_days": 3304, + "last_update": "2025-04-29 21:48:07", + "stars": 72 + }, + "https://github.com/Burgstall-labs/ComfyUI-BETA-Cropnodes": { + "author_account_age_days": 182, + "last_update": "2025-07-02 17:37:50", + "stars": 6 + }, + "https://github.com/Burgstall-labs/ComfyUI-BETA-Helpernodes": { + "author_account_age_days": 182, + "last_update": "2025-07-02 17:37:50", + "stars": 6 + }, + "https://github.com/Burgstall-labs/ComfyUI-BS-Textchop": { + "author_account_age_days": 182, + "last_update": "2025-04-05 07:45:54", + "stars": 0 + }, + "https://github.com/Burgstall-labs/ComfyUI-BS_Kokoro-onnx": { + "author_account_age_days": 182, + "last_update": "2025-01-19 19:05:24", + "stars": 36 + }, + "https://github.com/CC-BryanOttho/ComfyUI_API_Manager": { + "author_account_age_days": 876, + "last_update": "2024-06-14 07:13:34", + "stars": 23 + }, + "https://github.com/CC-SUN6/ccsun_node": { + "author_account_age_days": 760, + "last_update": "2025-02-12 07:58:41", + "stars": 0 + }, + "https://github.com/CHAOSEA/ComfyUI_FaceAlignPaste": { + "author_account_age_days": 357, + "last_update": "2025-03-27 13:34:40", + "stars": 12 + }, + "https://github.com/CY-CHENYUE/ComfyUI-FramePack-HY": { + "author_account_age_days": 589, + "last_update": "2025-05-08 09:38:09", + "stars": 18 + }, + "https://github.com/CY-CHENYUE/ComfyUI-Free-GPU": { + "author_account_age_days": 589, + "last_update": "2025-02-16 16:30:36", + "stars": 11 + }, + "https://github.com/CY-CHENYUE/ComfyUI-GPT-API": { + "author_account_age_days": 589, + "last_update": "2025-04-17 09:51:35", + "stars": 70 + }, + "https://github.com/CY-CHENYUE/ComfyUI-Gemini-API": { + "author_account_age_days": 589, + "last_update": "2025-05-08 05:52:02", + "stars": 219 + }, + "https://github.com/CY-CHENYUE/ComfyUI-InpaintEasy": { + "author_account_age_days": 589, + "last_update": "2025-01-24 16:09:46", + "stars": 75 + }, + "https://github.com/CY-CHENYUE/ComfyUI-Janus-Pro": { + "author_account_age_days": 589, + "last_update": "2025-01-30 08:08:20", + "stars": 615 + }, + "https://github.com/CY-CHENYUE/ComfyUI-MiniCPM-Plus": { + "author_account_age_days": 589, + "last_update": "2024-10-09 06:56:04", + "stars": 23 + }, + "https://github.com/CY-CHENYUE/ComfyUI-MiniCPM-o": { + "author_account_age_days": 589, + "last_update": "2025-02-16 18:52:28", + "stars": 34 + }, + "https://github.com/CY-CHENYUE/ComfyUI-Molmo": { + "author_account_age_days": 589, + "last_update": "2024-10-14 15:06:36", + "stars": 131 + }, + "https://github.com/CY-CHENYUE/ComfyUI-OmniGenX": { + "author_account_age_days": 589, + "last_update": "2025-01-24 16:13:13", + "stars": 6 + }, + "https://github.com/CY-CHENYUE/ComfyUI-Redux-Prompt": { + "author_account_age_days": 589, + "last_update": "2025-01-24 15:43:29", + "stars": 93 + }, + "https://github.com/CYBERLOOM-INC/ComfyUI-nodes-hnmr": { + "author_account_age_days": 640, + "last_update": "2024-05-22 17:55:41", + "stars": 9 + }, + "https://github.com/CavinHuang/comfyui-nodes-docs": { + "author_account_age_days": 3117, + "last_update": "2025-03-26 02:12:29", + "stars": 238 + }, + "https://github.com/Chan-0312/ComfyUI-EasyDeforum": { + "author_account_age_days": 2257, + "last_update": "2024-05-22 23:22:14", + "stars": 11 + }, + "https://github.com/Chan-0312/ComfyUI-IPAnimate": { + "author_account_age_days": 2257, + "last_update": "2024-05-22 23:22:03", + "stars": 74 + }, + "https://github.com/Chan-0312/ComfyUI-Prompt-Preview": { + "author_account_age_days": 2257, + "last_update": "2024-06-14 09:01:37", + "stars": 34 + }, + "https://github.com/Chaoses-Ib/ComfyUI_Ib_CustomNodes": { + "author_account_age_days": 2270, + "last_update": "2025-02-08 13:11:30", + "stars": 39 + }, + "https://github.com/Charlweed/image_transceiver": { + "author_account_age_days": 5488, + "last_update": "2025-01-06 19:22:50", + "stars": 2 + }, + "https://github.com/Charonartist/Comfyui_gemini_tts_node": { + "author_account_age_days": 385, + "last_update": "2025-05-26 01:17:59", + "stars": 0 + }, + "https://github.com/Charonartist/comfyui-auto-lora-v2": { + "author_account_age_days": 385, + "last_update": "2025-06-17 15:00:30", + "stars": 0 + }, + "https://github.com/CheNing233/ComfyUI_Image_Pin": { + "author_account_age_days": 2837, + "last_update": "2025-07-13 08:11:47", + "stars": 2 + }, + "https://github.com/ChenDarYen/ComfyUI-NAG": { + "author_account_age_days": 2292, + "last_update": "2025-07-06 22:39:57", + "stars": 185 + }, + "https://github.com/ChenDarYen/ComfyUI-TimestepShiftModel": { + "author_account_age_days": 2292, + "last_update": "2025-01-07 18:22:10", + "stars": 9 + }, + "https://github.com/Chengym2023/ComfyUI-DeepSeek_Online": { + "author_account_age_days": 791, + "last_update": "2025-04-07 01:09:05", + "stars": 0 + }, + "https://github.com/ChrisColeTech/ComfyUI-Elegant-Resource-Monitor": { + "author_account_age_days": 2803, + "last_update": "2024-09-23 21:48:27", + "stars": 13 + }, + "https://github.com/ChrisColeTech/ComfyUI-Line-counter": { + "author_account_age_days": 2803, + "last_update": "2025-03-12 00:07:25", + "stars": 2 + }, + "https://github.com/Chrisvenator/ComfyUI-Painting-by-colors-generator": { + "author_account_age_days": 2120, + "last_update": "2025-06-03 07:56:17", + "stars": 0 + }, + "https://github.com/ClownsharkBatwing/RES4LYF": { + "author_account_age_days": 421, + "last_update": "2025-07-09 23:39:04", + "stars": 340 + }, + "https://github.com/Clybius/ComfyUI-ClybsChromaNodes": { + "author_account_age_days": 2125, + "last_update": "2025-07-08 14:27:15", + "stars": 9 + }, + "https://github.com/Clybius/ComfyUI-Extra-Samplers": { + "author_account_age_days": 2125, + "last_update": "2024-11-15 17:21:45", + "stars": 88 + }, + "https://github.com/Clybius/ComfyUI-Latent-Modifiers": { + "author_account_age_days": 2125, + "last_update": "2024-06-14 09:02:44", + "stars": 80 + }, + "https://github.com/CoiiChan/ComfyUI-Depth-Visualization-Advanced": { + "author_account_age_days": 2289, + "last_update": "2025-06-17 03:43:27", + "stars": 4 + }, + "https://github.com/CoiiChan/ComfyUI-FuncAsTexture-CoiiNode": { + "author_account_age_days": 2289, + "last_update": "2025-06-24 03:34:32", + "stars": 1 + }, + "https://github.com/CoiiChan/comfyui-every-person-seg-coii": { + "author_account_age_days": 2289, + "last_update": "2025-06-20 08:51:56", + "stars": 4 + }, + "https://github.com/ComfyAssets/ComfyUI-KikoStats": { + "author_account_age_days": 57, + "last_update": "2025-06-21 15:03:38", + "stars": 1 + }, + "https://github.com/ComfyAssets/ComfyUI-KikoTools": { + "author_account_age_days": 57, + "last_update": "2025-06-28 16:31:43", + "stars": 0 + }, + "https://github.com/ComfyAssets/ComfyUI_PromptManager": { + "author_account_age_days": 57, + "last_update": "2025-06-19 23:56:57", + "stars": 26 + }, + "https://github.com/ComfyAssets/ComfyUI_Selectors": { + "author_account_age_days": 57, + "last_update": "2025-06-13 16:13:05", + "stars": 0 + }, + "https://github.com/ComfyUI-JH/ComfyUI-JH-Misc-Nodes": { + "author_account_age_days": 214, + "last_update": "2024-12-28 19:44:14", + "stars": 1 + }, + "https://github.com/ComfyUI-JH/ComfyUI-JH-XMP-Metadata-Nodes": { + "author_account_age_days": 214, + "last_update": "2024-12-31 21:44:05", + "stars": 2 + }, + "https://github.com/ComplexRobot/ComfyUI-Simple-VFI": { + "author_account_age_days": 4815, + "last_update": "2025-03-31 15:37:25", + "stars": 0 + }, + "https://github.com/Conor-Collins/ComfyUI-CoCoTools_IO": { + "author_account_age_days": 565, + "last_update": "2025-07-20 18:30:02", + "stars": 50 + }, + "https://github.com/CosmicLaca/ComfyUI_Primere_Nodes": { + "author_account_age_days": 4046, + "last_update": "2025-06-14 14:59:08", + "stars": 125 + }, + "https://github.com/CpreForEver/CFE_comfyui": { + "author_account_age_days": 344, + "last_update": "2024-12-09 01:38:42", + "stars": 0 + }, + "https://github.com/Creeper-MZ/comfyui_nai_api": { + "author_account_age_days": 1394, + "last_update": "2024-10-02 21:30:26", + "stars": 0 + }, + "https://github.com/Creepybits/ComfyUI-Creepy_nodes": { + "author_account_age_days": 1998, + "last_update": "2025-07-20 11:41:56", + "stars": 13 + }, + "https://github.com/Creepybits/ComfyUI-Save_To_GDrive": { + "author_account_age_days": 1999, + "last_update": "2025-07-03 00:27:01", + "stars": 5 + }, + "https://github.com/Creepybits/ComfyUI-Save_To_OneDrive": { + "author_account_age_days": 1999, + "last_update": "2025-07-15 20:30:08", + "stars": 2 + }, + "https://github.com/Cryptyox/anaglyphTool-Comfyui": { + "author_account_age_days": 1319, + "last_update": "2025-05-13 16:12:27", + "stars": 7 + }, + "https://github.com/Curt-Park/human-parser-comfyui-node-in-pure-python": { + "author_account_age_days": 3577, + "last_update": "2025-03-18 00:51:34", + "stars": 4 + }, + "https://github.com/CyanAutumn/ComfyUi_Random_Manage_Cyan": { + "author_account_age_days": 1493, + "last_update": "2024-12-19 10:54:08", + "stars": 3 + }, + "https://github.com/Cyber-BlackCat/ComfyUI-Image-Vector": { + "author_account_age_days": 806, + "last_update": "2025-04-27 05:40:25", + "stars": 2 + }, + "https://github.com/Cyber-BlackCat/ComfyUI-MoneyMaker": { + "author_account_age_days": 806, + "last_update": "2025-06-27 10:04:22", + "stars": 11 + }, + "https://github.com/Cyber-BlackCat/ComfyUI_Auto_Caption": { + "author_account_age_days": 806, + "last_update": "2025-05-29 02:14:55", + "stars": 13 + }, + "https://github.com/Cyberschorsch/ComfyUI-checkpoint-config-loader": { + "author_account_age_days": 5549, + "last_update": "2024-07-31 13:54:16", + "stars": 1 + }, + "https://github.com/Cyrus-Hei/comfyui-prompt-bank": { + "author_account_age_days": 996, + "last_update": "2025-07-01 16:56:30", + "stars": 0 + }, + "https://github.com/DJ-Tribefull/Comfyui_FOCUS_nodes": { + "author_account_age_days": 180, + "last_update": "2025-02-02 00:46:30", + "stars": 5 + }, + "https://github.com/Danand/ComfyUI-ComfyCouple": { + "author_account_age_days": 4680, + "last_update": "2024-08-10 22:24:01", + "stars": 62 + }, + "https://github.com/DanielHabib/ComfyUI-Voxels": { + "author_account_age_days": 3975, + "last_update": "2024-09-16 15:41:02", + "stars": 4 + }, + "https://github.com/Danteday/ComfyUI-NoteManager": { + "author_account_age_days": 2708, + "last_update": "2025-04-20 19:52:58", + "stars": 11 + }, + "https://github.com/DareFail/ComfyUI-Roboflow": { + "author_account_age_days": 4978, + "last_update": "2024-09-25 18:30:43", + "stars": 33 + }, + "https://github.com/DarioFT/ComfyUI-VideoDirCombiner": { + "author_account_age_days": 3868, + "last_update": "2025-03-08 13:58:12", + "stars": 5 + }, + "https://github.com/DataCTE/prompt_injection": { + "author_account_age_days": 1169, + "last_update": "2024-06-21 12:56:43", + "stars": 92 + }, + "https://github.com/DavidPiazza/network_bending": { + "author_account_age_days": 2271, + "last_update": "2025-07-03 18:58:52", + "stars": 0 + }, + "https://github.com/Dayuppy/ComfyUI-DiscordWebhook": { + "author_account_age_days": 4606, + "last_update": "2024-10-12 05:12:07", + "stars": 3 + }, + "https://github.com/De-Zoomer/ComfyUI-DeZoomer-Nodes": { + "author_account_age_days": 1246, + "last_update": "2025-06-28 17:36:41", + "stars": 22 + }, + "https://github.com/DeJoker/pipeline-parallel-comfy": { + "author_account_age_days": 3382, + "last_update": "2024-07-29 06:59:37", + "stars": 3 + }, + "https://github.com/DebugPadawan/DebugPadawans-ComfyUI-Essentials": { + "author_account_age_days": 192, + "last_update": "2025-06-21 12:46:56", + "stars": 0 + }, + "https://github.com/Deep-Neko/ComfyUI_ascii_art": { + "author_account_age_days": 146, + "last_update": "2025-02-24 13:07:36", + "stars": 1 + }, + "https://github.com/Derfuu/Derfuu_ComfyUI_ModdedNodes": { + "author_account_age_days": 2166, + "last_update": "2024-06-22 02:12:19", + "stars": 416 + }, + "https://github.com/DesertPixelAi/ComfyUI-Desert-Pixel-Nodes": { + "author_account_age_days": 537, + "last_update": "2025-06-22 10:33:31", + "stars": 17 + }, + "https://github.com/DesertPixelAi/comfyui-dp-them-styler": { + "author_account_age_days": 537, + "last_update": "2025-07-10 08:29:21", + "stars": 1 + }, + "https://github.com/DiaoDaiaChan/ComfyUI_API_Request": { + "author_account_age_days": 876, + "last_update": "2025-06-02 14:54:47", + "stars": 3 + }, + "https://github.com/DiffusionLight/DiffusionLight-ComfyUI": { + "author_account_age_days": 592, + "last_update": "2025-07-02 11:04:14", + "stars": 2 + }, + "https://github.com/DiffusionWave/PickResolution_DiffusionWave": { + "author_account_age_days": 113, + "last_update": "2025-05-19 23:16:22", + "stars": 0 + }, + "https://github.com/DigitalIO/ComfyUI-stable-wildcards": { + "author_account_age_days": 4430, + "last_update": "2025-03-17 17:53:33", + "stars": 25 + }, + "https://github.com/DimaChaichan/LAizypainter-Exporter-ComfyUI": { + "author_account_age_days": 3464, + "last_update": "2024-05-22 23:14:06", + "stars": 6 + }, + "https://github.com/Diohim/ComfyUI-Unusual-Tools": { + "author_account_age_days": 171, + "last_update": "2025-07-15 09:12:54", + "stars": 0 + }, + "https://github.com/Dobidop/ComfyStereo": { + "author_account_age_days": 1851, + "last_update": "2025-03-23 18:45:54", + "stars": 24 + }, + "https://github.com/DoctorDiffusion/ComfyUI-BEN": { + "author_account_age_days": 733, + "last_update": "2024-12-15 18:19:01", + "stars": 41 + }, + "https://github.com/DoctorDiffusion/ComfyUI-MediaMixer": { + "author_account_age_days": 733, + "last_update": "2024-12-05 03:05:44", + "stars": 19 + }, + "https://github.com/DoctorDiffusion/ComfyUI-Schedulizer": { + "author_account_age_days": 733, + "last_update": "2024-11-30 03:13:29", + "stars": 6 + }, + "https://github.com/DoctorDiffusion/ComfyUI-SnakeOil": { + "author_account_age_days": 733, + "last_update": "2024-12-31 00:59:19", + "stars": 4 + }, + "https://github.com/DoctorDiffusion/ComfyUI-basic-pitch": { + "author_account_age_days": 733, + "last_update": "2024-12-25 19:07:11", + "stars": 1 + }, + "https://github.com/Dontdrunk/ComfyUI-DD-Nodes": { + "author_account_age_days": 3295, + "last_update": "2025-07-06 10:59:40", + "stars": 62 + }, + "https://github.com/Dontdrunk/ComfyUI-DD-Translation": { + "author_account_age_days": 3295, + "last_update": "2025-07-16 14:19:37", + "stars": 283 + }, + "https://github.com/DrJKL/ComfyUI-Anchors": { + "author_account_age_days": 5386, + "last_update": "2024-06-20 18:23:00", + "stars": 6 + }, + "https://github.com/DrMWeigand/ComfyUI-StereoVision": { + "author_account_age_days": 1423, + "last_update": "2025-02-04 14:24:46", + "stars": 9 + }, + "https://github.com/DrMWeigand/ComfyUI_ColorImageDetection": { + "author_account_age_days": 1423, + "last_update": "2024-07-15 13:21:10", + "stars": 3 + }, + "https://github.com/DrStone71/ComfyUI-Prompt-Translator": { + "author_account_age_days": 337, + "last_update": "2025-06-17 00:22:24", + "stars": 0 + }, + "https://github.com/DraconicDragon/ComfyUI-RyuuNoodles": { + "author_account_age_days": 1765, + "last_update": "2025-07-14 21:41:46", + "stars": 4 + }, + "https://github.com/DraconicDragon/ComfyUI-Venice-API": { + "author_account_age_days": 1765, + "last_update": "2025-06-16 18:58:57", + "stars": 5 + }, + "https://github.com/DragonDiffusionbyBoyo/BoyoSupercoolWrapper": { + "author_account_age_days": 203, + "last_update": "2025-06-01 16:44:46", + "stars": 4 + }, + "https://github.com/DragonDiffusionbyBoyo/Boyonodes": { + "author_account_age_days": 203, + "last_update": "2025-05-19 22:59:06", + "stars": 2 + }, + "https://github.com/Dream-Pixels-Forge/ComfyUI-Mzikart-Mixer": { + "author_account_age_days": 2247, + "last_update": "2025-07-18 01:39:33", + "stars": 0 + }, + "https://github.com/Duanyll/duanyll_nodepack": { + "author_account_age_days": 3124, + "last_update": "2025-07-17 12:00:48", + "stars": 0 + }, + "https://github.com/Eagle-CN/ComfyUI-Addoor": { + "author_account_age_days": 3018, + "last_update": "2025-04-25 01:03:58", + "stars": 50 + }, + "https://github.com/Easymode-ai/ComfyUI-BPT": { + "author_account_age_days": 1664, + "last_update": "2025-02-28 00:32:37", + "stars": 8 + }, + "https://github.com/Easymode-ai/ComfyUI-ShadowR": { + "author_account_age_days": 1664, + "last_update": "2025-02-21 20:53:27", + "stars": 10 + }, + "https://github.com/EeroHeikkinen/ComfyUI-eesahesNodes": { + "author_account_age_days": 5108, + "last_update": "2024-09-01 11:43:02", + "stars": 70 + }, + "https://github.com/Elaine-chennn/comfyui-overlay-media": { + "author_account_age_days": 1534, + "last_update": "2024-10-09 11:07:46", + "stars": 0 + }, + "https://github.com/Electrofried/ComfyUI-OpenAINode": { + "author_account_age_days": 3011, + "last_update": "2024-06-14 09:01:22", + "stars": 28 + }, + "https://github.com/EllangoK/ComfyUI-post-processing-nodes": { + "author_account_age_days": 3169, + "last_update": "2025-01-20 07:16:46", + "stars": 226 + }, + "https://github.com/EmAySee/ComfyUI_EmAySee_CustomNodes": { + "author_account_age_days": 1980, + "last_update": "2025-07-11 18:25:15", + "stars": 1 + }, + "https://github.com/EnragedAntelope/ComfyUI-ConstrainResolution": { + "author_account_age_days": 360, + "last_update": "2025-03-30 13:06:11", + "stars": 5 + }, + "https://github.com/EnragedAntelope/ComfyUI-Doubutsu-Describer": { + "author_account_age_days": 360, + "last_update": "2025-03-30 13:06:28", + "stars": 10 + }, + "https://github.com/EnragedAntelope/ComfyUI-EACloudNodes": { + "author_account_age_days": 360, + "last_update": "2025-04-22 00:44:56", + "stars": 6 + }, + "https://github.com/EnragedAntelope/comfyui-relight": { + "author_account_age_days": 360, + "last_update": "2025-05-16 16:06:28", + "stars": 75 + }, + "https://github.com/Erehr/ComfyUI-Eagle-Autosend": { + "author_account_age_days": 3662, + "last_update": "2025-07-17 07:05:26", + "stars": 4 + }, + "https://github.com/Erehr/ComfyUI-EreNodes": { + "author_account_age_days": 3662, + "last_update": "2025-07-14 13:27:50", + "stars": 33 + }, + "https://github.com/EvilBT/ComfyUI_SLK_joy_caption_two": { + "author_account_age_days": 3990, + "last_update": "2025-06-18 23:00:26", + "stars": 592 + }, + "https://github.com/Excidos/ComfyUI-Documents": { + "author_account_age_days": 398, + "last_update": "2024-07-11 20:15:21", + "stars": 54 + }, + "https://github.com/Excidos/ComfyUI-Lumina-Next-SFT-DiffusersWrapper": { + "author_account_age_days": 398, + "last_update": "2024-07-30 10:27:07", + "stars": 17 + }, + "https://github.com/ExponentialML/ComfyUI_ModelScopeT2V": { + "author_account_age_days": 2015, + "last_update": "2024-05-23 00:12:17", + "stars": 27 + }, + "https://github.com/ExponentialML/ComfyUI_Native_DynamiCrafter": { + "author_account_age_days": 2015, + "last_update": "2024-06-08 02:33:02", + "stars": 112 + }, + "https://github.com/ExponentialML/ComfyUI_VisualStylePrompting": { + "author_account_age_days": 2015, + "last_update": "2024-05-23 00:12:41", + "stars": 301 + }, + "https://github.com/ExterminanzHS/Gecco-Discord-Autosend": { + "author_account_age_days": 3599, + "last_update": "2024-09-05 12:33:30", + "stars": 1 + }, + "https://github.com/Extraltodeus/ComfyUI-AutomaticCFG": { + "author_account_age_days": 3541, + "last_update": "2024-09-10 17:44:50", + "stars": 414 + }, + "https://github.com/Extraltodeus/DistanceSampler": { + "author_account_age_days": 3541, + "last_update": "2025-06-19 22:54:08", + "stars": 37 + }, + "https://github.com/Extraltodeus/LoadLoraWithTags": { + "author_account_age_days": 3541, + "last_update": "2025-02-25 18:12:40", + "stars": 78 + }, + "https://github.com/Extraltodeus/Negative-attention-for-ComfyUI-": { + "author_account_age_days": 3541, + "last_update": "2025-03-20 15:10:24", + "stars": 9 + }, + "https://github.com/Extraltodeus/Skimmed_CFG": { + "author_account_age_days": 3541, + "last_update": "2024-10-25 20:59:10", + "stars": 199 + }, + "https://github.com/Extraltodeus/Stable-Diffusion-temperature-settings": { + "author_account_age_days": 3541, + "last_update": "2024-07-10 00:27:51", + "stars": 43 + }, + "https://github.com/Extraltodeus/Uncond-Zero-for-ComfyUI": { + "author_account_age_days": 3541, + "last_update": "2024-07-10 00:27:36", + "stars": 49 + }, + "https://github.com/Extraltodeus/Vector_Sculptor_ComfyUI": { + "author_account_age_days": 3541, + "last_update": "2024-08-28 05:29:07", + "stars": 120 + }, + "https://github.com/Extraltodeus/noise_latent_perlinpinpin": { + "author_account_age_days": 3541, + "last_update": "2024-08-13 14:19:11", + "stars": 34 + }, + "https://github.com/Extraltodeus/pre_cfg_comfy_nodes_for_ComfyUI": { + "author_account_age_days": 3541, + "last_update": "2025-05-24 07:36:22", + "stars": 50 + }, + "https://github.com/Extraltodeus/sigmas_tools_and_the_golden_scheduler": { + "author_account_age_days": 3541, + "last_update": "2024-12-13 00:18:40", + "stars": 84 + }, + "https://github.com/FaberVS/MultiModel": { + "author_account_age_days": 2162, + "last_update": "2025-05-06 14:27:08", + "stars": 1 + }, + "https://github.com/Fannovel16/ComfyUI-Frame-Interpolation": { + "author_account_age_days": 3523, + "last_update": "2025-04-30 11:32:27", + "stars": 750 + }, + "https://github.com/Fannovel16/ComfyUI-MagickWand": { + "author_account_age_days": 3523, + "last_update": "2025-03-31 10:26:14", + "stars": 113 + }, + "https://github.com/Fannovel16/ComfyUI-MotionDiff": { + "author_account_age_days": 3523, + "last_update": "2024-08-01 01:01:53", + "stars": 201 + }, + "https://github.com/Fannovel16/ComfyUI-Video-Matting": { + "author_account_age_days": 3523, + "last_update": "2024-08-14 01:28:50", + "stars": 210 + }, + "https://github.com/Fannovel16/comfyui_controlnet_aux": { + "author_account_age_days": 3523, + "last_update": "2025-06-20 08:57:29", + "stars": 3198 + }, + "https://github.com/Fantaxico/ComfyUI-GCP-Storage": { + "author_account_age_days": 927, + "last_update": "2024-06-14 09:05:52", + "stars": 4 + }, + "https://github.com/FaraamFide/ComfyUI-ParamNodes": { + "author_account_age_days": 1231, + "last_update": "2025-07-05 15:29:32", + "stars": 1 + }, + "https://github.com/Feidorian/feidorian-ComfyNodes": { + "author_account_age_days": 3146, + "last_update": "2024-06-20 11:31:37", + "stars": 5 + }, + "https://github.com/FewBox/fewbox-outfit-comfyui": { + "author_account_age_days": 3006, + "last_update": "2025-04-27 01:02:28", + "stars": 0 + }, + "https://github.com/Fictiverse/ComfyUI_Fictiverse": { + "author_account_age_days": 1063, + "last_update": "2024-12-02 16:48:03", + "stars": 14 + }, + "https://github.com/Fihade/IC-Light-ComfyUI-Node": { + "author_account_age_days": 3138, + "last_update": "2024-07-02 03:47:17", + "stars": 8 + }, + "https://github.com/FinetunersAI/ComfyUI_Finetuners_Suite": { + "author_account_age_days": 412, + "last_update": "2025-01-30 08:30:13", + "stars": 2 + }, + "https://github.com/FizzleDorf/ComfyUI-AIT": { + "author_account_age_days": 2371, + "last_update": "2024-06-22 03:13:05", + "stars": 52 + }, + "https://github.com/FizzleDorf/ComfyUI_FizzNodes": { + "author_account_age_days": 2371, + "last_update": "2024-10-29 01:51:46", + "stars": 448 + }, + "https://github.com/Flow-two/ComfyUI-WanStartEndFramesNative": { + "author_account_age_days": 1899, + "last_update": "2025-03-28 04:58:45", + "stars": 77 + }, + "https://github.com/FlyingFireCo/tiled_ksampler": { + "author_account_age_days": 1024, + "last_update": "2024-05-22 23:15:17", + "stars": 86 + }, + "https://github.com/ForeignGods/ComfyUI-Mana-Nodes": { + "author_account_age_days": 1635, + "last_update": "2024-05-29 18:29:05", + "stars": 235 + }, + "https://github.com/FortunaCournot/comfyui_stereoscopic": { + "author_account_age_days": 1894, + "last_update": "2025-07-21 00:52:23", + "stars": 3 + }, + "https://github.com/Franck-Demongin/NX_HuggingFace_Flux": { + "author_account_age_days": 2162, + "last_update": "2024-08-14 02:17:21", + "stars": 4 + }, + "https://github.com/Franck-Demongin/NX_PromptStyler": { + "author_account_age_days": 2162, + "last_update": "2024-05-22 23:25:21", + "stars": 9 + }, + "https://github.com/Franck-Demongin/NX_Translator": { + "author_account_age_days": 2162, + "last_update": "2024-08-14 02:17:01", + "stars": 1 + }, + "https://github.com/FredBill1/comfyui-fb-utils": { + "author_account_age_days": 2708, + "last_update": "2025-03-14 08:09:14", + "stars": 2 + }, + "https://github.com/FunnyFinger/ComfyUi-RadarWeightNode": { + "author_account_age_days": 967, + "last_update": "2025-04-22 09:12:55", + "stars": 1 + }, + "https://github.com/FunnyFinger/Dynamic_Sliders_stack": { + "author_account_age_days": 967, + "last_update": "2025-04-22 10:00:31", + "stars": 3 + }, + "https://github.com/FuouM/ComfyUI-EbSynth": { + "author_account_age_days": 2072, + "last_update": "2025-03-30 06:30:52", + "stars": 92 + }, + "https://github.com/FuouM/ComfyUI-FirstOrderMM": { + "author_account_age_days": 2072, + "last_update": "2025-03-27 12:22:31", + "stars": 5 + }, + "https://github.com/FuouM/ComfyUI-MatAnyone": { + "author_account_age_days": 2072, + "last_update": "2025-03-24 03:43:48", + "stars": 10 + }, + "https://github.com/FuouM/ComfyUI-StyleTransferPlus": { + "author_account_age_days": 2072, + "last_update": "2025-03-27 12:15:58", + "stars": 11 + }, + "https://github.com/FuouM/FM_nodes": { + "author_account_age_days": 2072, + "last_update": "2025-03-27 12:16:55", + "stars": 5 + }, + "https://github.com/Fuwuffyi/ComfyUI-VisualArea-Nodes": { + "author_account_age_days": 1554, + "last_update": "2024-11-05 17:00:49", + "stars": 72 + }, + "https://github.com/G-370/ComfyUI-SD3-Powerlab": { + "author_account_age_days": 1910, + "last_update": "2024-06-22 19:17:18", + "stars": 20 + }, + "https://github.com/GACLove/ComfyUI-Lightx2vWrapper": { + "author_account_age_days": 1801, + "last_update": "2025-07-16 11:58:12", + "stars": 15 + }, + "https://github.com/GHOSTLXH/ComfyUI-Counternodes": { + "author_account_age_days": 2560, + "last_update": "2025-02-20 12:58:43", + "stars": 10 + }, + "https://github.com/GTSuya-Studio/ComfyUI-Gtsuya-Nodes": { + "author_account_age_days": 2947, + "last_update": "2024-05-22 21:31:52", + "stars": 12 + }, + "https://github.com/GadzoinksOfficial/comfyui_gprompts": { + "author_account_age_days": 547, + "last_update": "2025-05-16 05:25:09", + "stars": 0 + }, + "https://github.com/GadzoinksOfficial/gadzoinks_ComfyUI": { + "author_account_age_days": 547, + "last_update": "2025-05-12 09:51:17", + "stars": 0 + }, + "https://github.com/GamingDaveUk/daves_nodes": { + "author_account_age_days": 823, + "last_update": "2025-02-22 06:22:19", + "stars": 0 + }, + "https://github.com/Gary-yeh/ComfyUI-WebPrompter": { + "author_account_age_days": 878, + "last_update": "2025-06-26 08:24:16", + "stars": 0 + }, + "https://github.com/Gary-yeh/comfyui-super-captioner": { + "author_account_age_days": 878, + "last_update": "2025-07-07 15:32:34", + "stars": 1 + }, + "https://github.com/GavChap/ComfyUI-SD3LatentSelectRes": { + "author_account_age_days": 4959, + "last_update": "2025-07-16 15:39:00", + "stars": 13 + }, + "https://github.com/GeekyGhost/ComfyUI-Geeky-Kokoro-TTS": { + "author_account_age_days": 1061, + "last_update": "2025-03-21 11:44:13", + "stars": 32 + }, + "https://github.com/GeekyGhost/ComfyUI-GeekyRemB": { + "author_account_age_days": 1061, + "last_update": "2025-04-09 05:27:46", + "stars": 47 + }, + "https://github.com/GentlemanHu/ComfyUI-SunoAI": { + "author_account_age_days": 2774, + "last_update": "2024-12-17 11:46:33", + "stars": 19 + }, + "https://github.com/GiusTex/ComfyUI-DiffusersImageOutpaint": { + "author_account_age_days": 1057, + "last_update": "2025-07-07 10:31:15", + "stars": 88 + }, + "https://github.com/Goktug/comfyui-saveimage-plus": { + "author_account_age_days": 5323, + "last_update": "2024-11-13 06:03:10", + "stars": 12 + }, + "https://github.com/Good-Dream-Studio/ComfyUI-Connect": { + "author_account_age_days": 128, + "last_update": "2025-06-28 09:54:28", + "stars": 15 + }, + "https://github.com/Goshe-nite/comfyui-gps-supplements": { + "author_account_age_days": 1052, + "last_update": "2025-05-14 20:52:22", + "stars": 3 + }, + "https://github.com/Gourieff/ComfyUI-ReActor": { + "author_account_age_days": 1511, + "last_update": "2025-07-09 13:51:05", + "stars": 674 + }, + "https://github.com/GraftingRayman/ComfyUI-PuLID-Flux-GR": { + "author_account_age_days": 554, + "last_update": "2025-02-24 07:15:35", + "stars": 56 + }, + "https://github.com/GraftingRayman/ComfyUI_GraftingRayman": { + "author_account_age_days": 554, + "last_update": "2025-04-22 06:50:24", + "stars": 61 + }, + "https://github.com/GraftingRayman/ComfyUI_QueueTube": { + "author_account_age_days": 554, + "last_update": "2025-01-08 20:59:13", + "stars": 0 + }, + "https://github.com/GrailGreg/images_base64": { + "author_account_age_days": 137, + "last_update": "2025-05-13 07:12:00", + "stars": 1 + }, + "https://github.com/GreenLandisaLie/AuraSR-ComfyUI": { + "author_account_age_days": 1588, + "last_update": "2025-07-03 02:26:19", + "stars": 191 + }, + "https://github.com/GrenKain/PixelArt-Processing-Nodes-for-ComfyUI": { + "author_account_age_days": 2801, + "last_update": "2024-09-06 11:37:05", + "stars": 7 + }, + "https://github.com/GroxicTinch/EasyUI-ComfyUI": { + "author_account_age_days": 3336, + "last_update": "2025-07-01 15:25:45", + "stars": 5 + }, + "https://github.com/GrvBdgr/comfyui-negativewildcardsprocessor": { + "author_account_age_days": 264, + "last_update": "2024-11-15 19:46:39", + "stars": 1 + }, + "https://github.com/Gue-e/ComfyUI-PanoCard": { + "author_account_age_days": 2475, + "last_update": "2025-06-23 08:57:03", + "stars": 14 + }, + "https://github.com/Guillaume-Fgt/ComfyUI_StableCascadeLatentRatio": { + "author_account_age_days": 1871, + "last_update": "2024-06-14 08:59:42", + "stars": 3 + }, + "https://github.com/HAL41/ComfyUI-aichemy-nodes": { + "author_account_age_days": 3237, + "last_update": "2024-05-22 23:10:19", + "stars": 5 + }, + "https://github.com/HECer/ComfyUI-FilePathCreator": { + "author_account_age_days": 3371, + "last_update": "2025-04-17 16:32:12", + "stars": 7 + }, + "https://github.com/HJH-AILab/ComfyUI_CosyVoice2": { + "author_account_age_days": 160, + "last_update": "2025-05-21 08:36:14", + "stars": 3 + }, + "https://github.com/HJH-AILab/ComfyUI_StableAnimator": { + "author_account_age_days": 160, + "last_update": "2025-04-24 02:45:32", + "stars": 16 + }, + "https://github.com/HM-RunningHub/ComfyUI_RH_APICall": { + "author_account_age_days": 220, + "last_update": "2025-07-17 21:44:45", + "stars": 80 + }, + "https://github.com/HM-RunningHub/ComfyUI_RH_FramePack": { + "author_account_age_days": 220, + "last_update": "2025-05-05 18:32:28", + "stars": 188 + }, + "https://github.com/HM-RunningHub/ComfyUI_RH_OminiControl": { + "author_account_age_days": 220, + "last_update": "2024-12-20 08:41:09", + "stars": 137 + }, + "https://github.com/HM-RunningHub/ComfyUI_RH_Step1XEdit": { + "author_account_age_days": 220, + "last_update": "2025-04-30 17:12:58", + "stars": 22 + }, + "https://github.com/HM-RunningHub/ComfyUI_RH_UNO": { + "author_account_age_days": 220, + "last_update": "2025-04-15 17:12:25", + "stars": 51 + }, + "https://github.com/HMG-Fiverr/ComfyUI-RandomNumberButton": { + "author_account_age_days": 118, + "last_update": "2025-06-28 05:29:49", + "stars": 0 + }, + "https://github.com/Haiper-ai/ComfyUI-HaiperAI-API": { + "author_account_age_days": 1391, + "last_update": "2024-12-06 18:08:50", + "stars": 13 + }, + "https://github.com/HannibalP/comfyui-HannibalPack": { + "author_account_age_days": 2996, + "last_update": "2025-03-11 23:36:33", + "stars": 1 + }, + "https://github.com/Haoming02/comfyui-clear-screen": { + "author_account_age_days": 1722, + "last_update": "2025-03-14 06:47:03", + "stars": 1 + }, + "https://github.com/Haoming02/comfyui-diffusion-cg": { + "author_account_age_days": 1722, + "last_update": "2025-07-16 01:50:03", + "stars": 100 + }, + "https://github.com/Haoming02/comfyui-floodgate": { + "author_account_age_days": 1722, + "last_update": "2025-03-14 06:46:50", + "stars": 31 + }, + "https://github.com/Haoming02/comfyui-menu-anchor": { + "author_account_age_days": 1722, + "last_update": "2024-10-19 11:42:51", + "stars": 3 + }, + "https://github.com/Haoming02/comfyui-node-beautify": { + "author_account_age_days": 1722, + "last_update": "2025-03-14 06:46:56", + "stars": 8 + }, + "https://github.com/Haoming02/comfyui-old-photo-restoration": { + "author_account_age_days": 1722, + "last_update": "2025-06-30 04:14:30", + "stars": 48 + }, + "https://github.com/Haoming02/comfyui-prompt-format": { + "author_account_age_days": 1722, + "last_update": "2024-09-20 04:29:03", + "stars": 34 + }, + "https://github.com/Haoming02/comfyui-resharpen": { + "author_account_age_days": 1722, + "last_update": "2025-07-16 01:45:14", + "stars": 49 + }, + "https://github.com/Haoming02/comfyui-tab-handler": { + "author_account_age_days": 1722, + "last_update": "2024-09-09 09:20:58", + "stars": 4 + }, + "https://github.com/HappyXY/ComfyUI-AmazonBedrock": { + "author_account_age_days": 2629, + "last_update": "2025-07-15 12:33:29", + "stars": 0 + }, + "https://github.com/HavocsCall/comfyui_HavocsCall_Custom_Nodes": { + "author_account_age_days": 2305, + "last_update": "2025-06-07 18:56:34", + "stars": 3 + }, + "https://github.com/HaydenReeve/ComfyUI-Better-Strings": { + "author_account_age_days": 2633, + "last_update": "2025-03-27 12:41:28", + "stars": 2 + }, + "https://github.com/Hazukiaoi/ComfyUI-LM_Studio_Tools": { + "author_account_age_days": 4366, + "last_update": "2025-07-02 13:28:53", + "stars": 1 + }, + "https://github.com/HeadshotPro/ComfyUI-HeadshotPro": { + "author_account_age_days": 745, + "last_update": "2024-08-14 04:00:34", + "stars": 1 + }, + "https://github.com/HebelHuber/comfyui-enhanced-save-node": { + "author_account_age_days": 2715, + "last_update": "2024-06-14 08:59:28", + "stars": 2 + }, + "https://github.com/HellerCommaA/ComfyUI-VideoResolutions": { + "author_account_age_days": 4719, + "last_update": "2025-03-28 14:51:23", + "stars": 1 + }, + "https://github.com/Hellfiredragon/comfyui-image-manipulation": { + "author_account_age_days": 2126, + "last_update": "2025-02-17 23:25:53", + "stars": 0 + }, + "https://github.com/HelloVision/ComfyUI_HelloMeme": { + "author_account_age_days": 304, + "last_update": "2025-06-27 09:47:01", + "stars": 367 + }, + "https://github.com/Hellrunner2k/ComfyUI-HellrunnersMagicalNodes": { + "author_account_age_days": 3476, + "last_update": "2025-05-21 02:17:36", + "stars": 2 + }, + "https://github.com/Hiero207/ComfyUI-Hiero-Nodes": { + "author_account_age_days": 2089, + "last_update": "2024-08-14 01:25:26", + "stars": 6 + }, + "https://github.com/HighDoping/ComfyUI_ASSSSA": { + "author_account_age_days": 2562, + "last_update": "2025-07-02 13:28:45", + "stars": 1 + }, + "https://github.com/Holasyb918/Ghost2_Comfyui": { + "author_account_age_days": 1026, + "last_update": "2025-03-14 02:41:21", + "stars": 4 + }, + "https://github.com/Hopping-Mad-Games/ComfyUI_LiteLLM": { + "author_account_age_days": 580, + "last_update": "2025-06-25 23:22:58", + "stars": 6 + }, + "https://github.com/HowToSD/ComfyUI-Data-Analysis": { + "author_account_age_days": 566, + "last_update": "2025-06-11 04:28:54", + "stars": 16 + }, + "https://github.com/HowToSD/ComfyUI-Pt-Wrapper": { + "author_account_age_days": 566, + "last_update": "2025-06-11 04:48:46", + "stars": 6 + }, + "https://github.com/Hullabalo/ComfyUI-Loop": { + "author_account_age_days": 1002, + "last_update": "2025-05-01 15:26:44", + "stars": 8 + }, + "https://github.com/IDGallagher/ComfyUI-IG-Motion-I2V": { + "author_account_age_days": 5872, + "last_update": "2024-09-30 10:38:22", + "stars": 38 + }, + "https://github.com/IDGallagher/ComfyUI-IG-Nodes": { + "author_account_age_days": 5872, + "last_update": "2025-07-14 15:28:38", + "stars": 2 + }, + "https://github.com/IDGallagher/MotionVideoSearch": { + "author_account_age_days": 5872, + "last_update": "2025-01-13 09:37:08", + "stars": 12 + }, + "https://github.com/IIEleven11/ComfyUI-FairyTaler": { + "author_account_age_days": 2120, + "last_update": "2025-07-06 03:42:02", + "stars": 2 + }, + "https://github.com/IIs-fanta/ComfyUI-FANTA-GameBox": { + "author_account_age_days": 715, + "last_update": "2025-06-04 09:43:26", + "stars": 2 + }, + "https://github.com/INuBq8/ComfyUI-NotificationBridge": { + "author_account_age_days": 273, + "last_update": "2025-06-09 04:11:29", + "stars": 0 + }, + "https://github.com/ITurchenko/ComfyUI-SizeFromArray": { + "author_account_age_days": 4100, + "last_update": "2024-08-01 08:45:43", + "stars": 0 + }, + "https://github.com/IamCreateAI/Ruyi-Models": { + "author_account_age_days": 223, + "last_update": "2025-01-20 12:21:40", + "stars": 522 + }, + "https://github.com/IcelandicCenterArtificialIntelligence/ComfyUI-SamplerSchedulerMetricsTester": { + "author_account_age_days": 420, + "last_update": "2025-05-19 15:04:38", + "stars": 3 + }, + "https://github.com/Icyman86/ComfyUI_AnimeCharacterSelect": { + "author_account_age_days": 35, + "last_update": "2025-06-30 21:48:05", + "stars": 1 + }, + "https://github.com/Iemand005/ComfyUI-Touch-Gestures": { + "author_account_age_days": 1889, + "last_update": "2025-02-03 00:25:14", + "stars": 3 + }, + "https://github.com/Iemand005/ComfyUI-Touchpad-Gestures": { + "author_account_age_days": 1889, + "last_update": "2025-02-03 00:21:47", + "stars": 2 + }, + "https://github.com/IgalOgonov/ComfyUI_Simple_String_Repository": { + "author_account_age_days": 2621, + "last_update": "2024-12-28 20:21:22", + "stars": 3 + }, + "https://github.com/ImagineerNL/ComfyUI-IMGNR-Utils": { + "author_account_age_days": 1944, + "last_update": "2025-05-05 21:36:48", + "stars": 0 + }, + "https://github.com/ImagineerNL/ComfyUI-ToSVG-Potracer": { + "author_account_age_days": 1944, + "last_update": "2025-05-08 21:56:04", + "stars": 12 + }, + "https://github.com/Immac/ComfyUI-CoreVideoMocks": { + "author_account_age_days": 4570, + "last_update": "2025-03-17 20:21:25", + "stars": 1 + }, + "https://github.com/ImmortalPie/ComfyUI-PonySwitch": { + "author_account_age_days": 4214, + "last_update": "2025-03-27 12:49:04", + "stars": 10 + }, + "https://github.com/InceptionsAI/ComfyUI-RunComfy-Helper": { + "author_account_age_days": 921, + "last_update": "2025-07-17 09:16:53", + "stars": 2 + }, + "https://github.com/InstantStudioAI/ComfyUI-InstantStudio": { + "author_account_age_days": 221, + "last_update": "2025-03-25 06:19:54", + "stars": 4 + }, + "https://github.com/Intersection98/ComfyUI_MX_post_processing-nodes": { + "author_account_age_days": 3021, + "last_update": "2024-05-23 01:12:46", + "stars": 13 + }, + "https://github.com/Inzaniak/comfyui-ranbooru": { + "author_account_age_days": 4301, + "last_update": "2024-05-22 23:12:23", + "stars": 19 + }, + "https://github.com/Irsalistic/comfyui-dam-object-extractor": { + "author_account_age_days": 711, + "last_update": "2025-05-13 11:10:44", + "stars": 6 + }, + "https://github.com/IsItDanOrAi/ComfyUI-Stereopsis": { + "author_account_age_days": 503, + "last_update": "2025-07-08 01:45:22", + "stars": 9 + }, + "https://github.com/IsItDanOrAi/ComfyUI-exLoadout": { + "author_account_age_days": 503, + "last_update": "2025-07-11 02:36:28", + "stars": 6 + }, + "https://github.com/Isi-dev/ComfyUI-Animation_Nodes_and_Workflows": { + "author_account_age_days": 1483, + "last_update": "2025-06-11 15:26:03", + "stars": 28 + }, + "https://github.com/Isi-dev/ComfyUI-Img2DrawingAssistants": { + "author_account_age_days": 1483, + "last_update": "2024-12-15 10:03:55", + "stars": 18 + }, + "https://github.com/Isi-dev/ComfyUI-Img2PaintingAssistant": { + "author_account_age_days": 1483, + "last_update": "2025-07-01 09:18:51", + "stars": 12 + }, + "https://github.com/Isi-dev/ComfyUI-UniAnimate-W": { + "author_account_age_days": 1483, + "last_update": "2025-03-11 10:32:39", + "stars": 177 + }, + "https://github.com/Isi-dev/ComfyUI_Animation_Nodes_and_Workflows": { + "author_account_age_days": 1483, + "last_update": "2025-06-11 15:26:03", + "stars": 28 + }, + "https://github.com/Isulion/ComfyUI_Isulion": { + "author_account_age_days": 748, + "last_update": "2025-05-03 12:21:05", + "stars": 37 + }, + "https://github.com/IuvenisSapiens/ComfyUI_MiniCPM-V-2_6-int4": { + "author_account_age_days": 802, + "last_update": "2025-04-02 16:32:54", + "stars": 187 + }, + "https://github.com/IuvenisSapiens/ComfyUI_Qwen2-Audio-7B-Instruct-Int4": { + "author_account_age_days": 802, + "last_update": "2025-04-02 16:35:52", + "stars": 11 + }, + "https://github.com/IuvenisSapiens/ComfyUI_Qwen2-VL-Instruct": { + "author_account_age_days": 802, + "last_update": "2025-04-02 16:22:22", + "stars": 101 + }, + "https://github.com/JEONG-JIWOO/ComfyUI_Eugene_Nodes": { + "author_account_age_days": 2958, + "last_update": "2025-01-27 19:09:46", + "stars": 2 + }, + "https://github.com/JPS-GER/ComfyUI_JPS-Nodes": { + "author_account_age_days": 707, + "last_update": "2024-05-22 20:39:14", + "stars": 77 + }, + "https://github.com/JPrevots/ComfyUI-PhyCV": { + "author_account_age_days": 950, + "last_update": "2025-02-21 11:36:11", + "stars": 1 + }, + "https://github.com/JTriggerFish/ComfyLatentTools": { + "author_account_age_days": 4390, + "last_update": "2025-05-06 21:07:17", + "stars": 2 + }, + "https://github.com/JackEllie/ComfyUI_AI_Assistant": { + "author_account_age_days": 962, + "last_update": "2024-09-05 03:42:14", + "stars": 24 + }, + "https://github.com/Jacky-MYQ/comfyui-DataCleaning": { + "author_account_age_days": 734, + "last_update": "2025-05-10 12:26:38", + "stars": 5 + }, + "https://github.com/Jacky-MYQ/comfyui-rgb2cmyk": { + "author_account_age_days": 734, + "last_update": "2025-04-28 02:05:19", + "stars": 2 + }, + "https://github.com/Jaminanim/ComfyUI-Random-Int-Divisor-Node": { + "author_account_age_days": 1953, + "last_update": "2025-01-07 06:50:58", + "stars": 0 + }, + "https://github.com/Jannchie/ComfyUI-J": { + "author_account_age_days": 2944, + "last_update": "2025-04-07 09:03:24", + "stars": 98 + }, + "https://github.com/Jannled/owl-vit-comfyui": { + "author_account_age_days": 4070, + "last_update": "2025-05-20 00:41:53", + "stars": 0 + }, + "https://github.com/JaredTherriault/ComfyUI-JNodes": { + "author_account_age_days": 3963, + "last_update": "2025-06-14 20:09:47", + "stars": 70 + }, + "https://github.com/Jash-Vora/ComfyUI-GarmentDiT": { + "author_account_age_days": 802, + "last_update": "2025-01-04 08:22:14", + "stars": 3 + }, + "https://github.com/JayLyu/blender-in-comfyui": { + "author_account_age_days": 3660, + "last_update": "2025-07-20 07:39:06", + "stars": 1 + }, + "https://github.com/JcandZero/ComfyUI_GLM4Node": { + "author_account_age_days": 1081, + "last_update": "2024-05-22 23:12:46", + "stars": 29 + }, + "https://github.com/Jcd1230/rembg-comfyui-node": { + "author_account_age_days": 5277, + "last_update": "2024-05-22 17:58:34", + "stars": 170 + }, + "https://github.com/JerryOrbachJr/ComfyUI-RandomSize": { + "author_account_age_days": 547, + "last_update": "2024-08-25 18:35:55", + "stars": 5 + }, + "https://github.com/JettHu/ComfyUI-TCD": { + "author_account_age_days": 2749, + "last_update": "2024-07-31 13:50:21", + "stars": 133 + }, + "https://github.com/JettHu/ComfyUI_TGate": { + "author_account_age_days": 2749, + "last_update": "2024-09-24 02:15:59", + "stars": 94 + }, + "https://github.com/JiSenHua/ComfyUI-TD": { + "author_account_age_days": 1135, + "last_update": "2025-07-09 09:31:23", + "stars": 72 + }, + "https://github.com/Jint8888/Comfyui_JTnodes": { + "author_account_age_days": 442, + "last_update": "2025-04-22 16:23:53", + "stars": 1 + }, + "https://github.com/JoeNavark/comfyui_custom_sigma_editor": { + "author_account_age_days": 1239, + "last_update": "2025-05-11 18:00:22", + "stars": 12 + }, + "https://github.com/JohanK66/ComfyUI-WebhookImage": { + "author_account_age_days": 142, + "last_update": "2025-03-10 19:38:53", + "stars": 1 + }, + "https://github.com/JohnDoeSmithee/ComfyUI-SoX-Mixdown": { + "author_account_age_days": 175, + "last_update": "2025-01-26 22:42:52", + "stars": 1 + }, + "https://github.com/Jokimbe/ComfyUI-DrawThings-gRPC": { + "author_account_age_days": 4772, + "last_update": "2025-07-13 15:44:56", + "stars": 10 + }, + "https://github.com/Jonseed/ComfyUI-Detail-Daemon": { + "author_account_age_days": 2571, + "last_update": "2025-03-14 16:47:41", + "stars": 759 + }, + "https://github.com/Jordach/comfy-plasma": { + "author_account_age_days": 4904, + "last_update": "2024-05-22 18:08:28", + "stars": 75 + }, + "https://github.com/JosefKuchar/ComfyUI-AdvancedTiling": { + "author_account_age_days": 3746, + "last_update": "2024-08-02 15:16:12", + "stars": 13 + }, + "https://github.com/JosephThomasParker/ComfyUI-DrawThingsWrapper": { + "author_account_age_days": 3561, + "last_update": "2025-02-04 21:14:38", + "stars": 33 + }, + "https://github.com/Julian-adv/WildDivide": { + "author_account_age_days": 729, + "last_update": "2025-05-27 13:24:07", + "stars": 17 + }, + "https://github.com/JustLateNightAI/KeywordImageBlocker": { + "author_account_age_days": 272, + "last_update": "2025-05-07 17:25:44", + "stars": 0 + }, + "https://github.com/JustinMatters/comfyUI-JMNodes": { + "author_account_age_days": 3162, + "last_update": "2025-01-04 14:57:58", + "stars": 0 + }, + "https://github.com/KAVVATARE/ComfyUI-Light-N-Color": { + "author_account_age_days": 4522, + "last_update": "2025-03-02 16:56:41", + "stars": 1 + }, + "https://github.com/KAVVATARE/ComfyUI_RightEyeDisparity": { + "author_account_age_days": 4522, + "last_update": "2025-05-23 19:32:04", + "stars": 2 + }, + "https://github.com/KERRY-YUAN/ComfyUI_Float_Animator": { + "author_account_age_days": 1645, + "last_update": "2025-06-16 06:49:23", + "stars": 5 + }, + "https://github.com/KERRY-YUAN/ComfyUI_Simple_Executor": { + "author_account_age_days": 1645, + "last_update": "2025-04-09 03:25:32", + "stars": 2 + }, + "https://github.com/KERRY-YUAN/ComfyUI_Spark_TTS": { + "author_account_age_days": 1645, + "last_update": "2025-06-10 06:16:34", + "stars": 2 + }, + "https://github.com/KLL535/ComfyUI_PNGInfo_Sidebar": { + "author_account_age_days": 241, + "last_update": "2025-02-16 13:11:48", + "stars": 17 + }, + "https://github.com/KLL535/ComfyUI_SimpleButcher": { + "author_account_age_days": 241, + "last_update": "2025-03-09 21:53:41", + "stars": 7 + }, + "https://github.com/Kangkang625/ComfyUI-paint-by-example": { + "author_account_age_days": 1305, + "last_update": "2024-05-22 22:20:27", + "stars": 16 + }, + "https://github.com/KarmaSwint/ComfyUI-KarmaNodes": { + "author_account_age_days": 339, + "last_update": "2025-06-29 16:31:15", + "stars": 0 + }, + "https://github.com/Kayarte/AudioDriven-Latent-Space-Tools-for-ComfyUI": { + "author_account_age_days": 445, + "last_update": "2025-06-15 22:39:14", + "stars": 3 + }, + "https://github.com/Kesin11/ComfyUI-list-filter": { + "author_account_age_days": 4938, + "last_update": "2025-03-28 04:00:03", + "stars": 0 + }, + "https://github.com/KewkLW/ComfyUI-kewky_tools": { + "author_account_age_days": 2078, + "last_update": "2025-05-11 21:55:10", + "stars": 8 + }, + "https://github.com/Kidev/ComfyUI-Fisheye-effects": { + "author_account_age_days": 4993, + "last_update": "2025-04-03 19:00:30", + "stars": 16 + }, + "https://github.com/Kinglord/ComfyUI_LoRA_Sidebar": { + "author_account_age_days": 5282, + "last_update": "2025-04-27 08:48:53", + "stars": 85 + }, + "https://github.com/Kinglord/ComfyUI_Prompt_Gallery": { + "author_account_age_days": 5282, + "last_update": "2024-09-24 21:58:55", + "stars": 57 + }, + "https://github.com/Kinglord/ComfyUI_Slider_Sidebar": { + "author_account_age_days": 5282, + "last_update": "2024-09-26 02:40:30", + "stars": 40 + }, + "https://github.com/KohakuBlueleaf/z-tipo-extension": { + "author_account_age_days": 2019, + "last_update": "2025-06-10 16:57:54", + "stars": 488 + }, + "https://github.com/Koishi-Star/Euler-Smea-Dyn-Sampler": { + "author_account_age_days": 1877, + "last_update": "2024-09-01 03:57:22", + "stars": 209 + }, + "https://github.com/Koishi-Star/Pyramid_Noise_For_Inference": { + "author_account_age_days": 1877, + "last_update": "2024-09-27 17:58:43", + "stars": 6 + }, + "https://github.com/KoreTeknology/ComfyUI-Nai-Production-Nodes-Pack": { + "author_account_age_days": 3581, + "last_update": "2024-11-24 15:55:30", + "stars": 10 + }, + "https://github.com/KoreTeknology/ComfyUI-Universal-Styler": { + "author_account_age_days": 3581, + "last_update": "2025-03-01 05:37:40", + "stars": 63 + }, + "https://github.com/Kosinkadink/ComfyUI-Advanced-ControlNet": { + "author_account_age_days": 4108, + "last_update": "2025-03-05 03:01:28", + "stars": 830 + }, + "https://github.com/Kosinkadink/ComfyUI-AnimateDiff-Evolved": { + "author_account_age_days": 4108, + "last_update": "2025-04-09 21:22:11", + "stars": 3209 + }, + "https://github.com/Kosinkadink/ComfyUI-VideoHelperSuite": { + "author_account_age_days": 4108, + "last_update": "2025-07-14 02:01:48", + "stars": 1101 + }, + "https://github.com/Koushakur/ComfyUI-DenoiseChooser": { + "author_account_age_days": 1512, + "last_update": "2025-03-14 09:52:02", + "stars": 4 + }, + "https://github.com/KunmyonChoi/ComfyUI_S3_direct": { + "author_account_age_days": 5959, + "last_update": "2025-01-07 01:22:23", + "stars": 0 + }, + "https://github.com/Kurdknight/Kurdknight_comfycheck": { + "author_account_age_days": 902, + "last_update": "2025-01-15 16:47:23", + "stars": 4 + }, + "https://github.com/KwaiVGI/ComfyUI-KLingAI-API": { + "author_account_age_days": 449, + "last_update": "2025-05-06 06:25:51", + "stars": 135 + }, + "https://github.com/Ky11le/draw_tools": { + "author_account_age_days": 870, + "last_update": "2025-05-14 05:35:47", + "stars": 0 + }, + "https://github.com/Ky11le/ygo_tools": { + "author_account_age_days": 870, + "last_update": "2025-05-14 05:35:47", + "stars": 0 + }, + "https://github.com/KytraScript/ComfyUI_KytraWebhookHTTP": { + "author_account_age_days": 2171, + "last_update": "2024-05-23 00:21:43", + "stars": 5 + }, + "https://github.com/KytraScript/ComfyUI_MatAnyone_Kytra": { + "author_account_age_days": 2171, + "last_update": "2025-03-16 18:58:58", + "stars": 128 + }, + "https://github.com/LAOGOU-666/ComfyUI-LG_HotReload": { + "author_account_age_days": 486, + "last_update": "2025-06-21 16:06:56", + "stars": 205 + }, + "https://github.com/LAOGOU-666/ComfyUI_LG_FFT": { + "author_account_age_days": 486, + "last_update": "2024-10-10 04:45:57", + "stars": 8 + }, + "https://github.com/LAOGOU-666/Comfyui-LG_GroupExecutor": { + "author_account_age_days": 486, + "last_update": "2025-05-31 17:36:04", + "stars": 147 + }, + "https://github.com/LAOGOU-666/Comfyui-LG_Relight": { + "author_account_age_days": 486, + "last_update": "2025-06-16 13:28:22", + "stars": 190 + }, + "https://github.com/LAOGOU-666/Comfyui-Memory_Cleanup": { + "author_account_age_days": 486, + "last_update": "2025-04-09 16:45:10", + "stars": 143 + }, + "https://github.com/LAOGOU-666/Comfyui_LG_Tools": { + "author_account_age_days": 486, + "last_update": "2025-07-16 12:51:54", + "stars": 176 + }, + "https://github.com/LEv145/images-grid-comfy-plugin": { + "author_account_age_days": 2599, + "last_update": "2024-05-30 17:54:32", + "stars": 183 + }, + "https://github.com/LK-168/comfyui_imgutils": { + "author_account_age_days": 21, + "last_update": "2025-06-30 07:23:25", + "stars": 0 + }, + "https://github.com/LKbaba/ComfyUI-TuZi-Flux-Kontext": { + "author_account_age_days": 2880, + "last_update": "2025-06-19 03:37:53", + "stars": 22 + }, + "https://github.com/LaVie024/comfyui-lopi999-nodes": { + "author_account_age_days": 1948, + "last_update": "2025-06-25 23:41:44", + "stars": 5 + }, + "https://github.com/LamEmil/ComfyUI_ASCIIArtNode": { + "author_account_age_days": 292, + "last_update": "2025-05-18 09:22:38", + "stars": 1 + }, + "https://github.com/LaoMaoBoss/ComfyUI-WBLESS": { + "author_account_age_days": 123, + "last_update": "2025-07-18 05:07:30", + "stars": 0 + }, + "https://github.com/LargeModGames/comfyui-smart-lora-downloader": { + "author_account_age_days": 1523, + "last_update": "2025-06-12 08:40:31", + "stars": 1 + }, + "https://github.com/LarryJane491/Image-Captioning-in-ComfyUI": { + "author_account_age_days": 555, + "last_update": "2024-06-06 20:45:43", + "stars": 67 + }, + "https://github.com/LarryJane491/Lora-Training-in-Comfy": { + "author_account_age_days": 555, + "last_update": "2024-08-05 11:32:30", + "stars": 483 + }, + "https://github.com/LatentRat/comfy_remote_run": { + "author_account_age_days": 1135, + "last_update": "2024-09-08 04:06:09", + "stars": 6 + }, + "https://github.com/LatentSpaceDirective/ComfyUI-Texturaizer": { + "author_account_age_days": 250, + "last_update": "2025-01-19 14:21:04", + "stars": 15 + }, + "https://github.com/Laurent2916/comfyui-piq": { + "author_account_age_days": 3259, + "last_update": "2025-03-17 13:50:16", + "stars": 0 + }, + "https://github.com/Layer-norm/comfyui-lama-remover": { + "author_account_age_days": 723, + "last_update": "2024-08-03 04:18:39", + "stars": 132 + }, + "https://github.com/Legorobotdude/ComfyUI-VariationLab": { + "author_account_age_days": 3761, + "last_update": "2025-03-02 04:59:28", + "stars": 1 + }, + "https://github.com/Lerc/canvas_tab": { + "author_account_age_days": 5759, + "last_update": "2024-05-22 20:48:45", + "stars": 193 + }, + "https://github.com/LevelPixel/ComfyUI-LevelPixel": { + "author_account_age_days": 374, + "last_update": "2025-06-22 02:10:16", + "stars": 12 + }, + "https://github.com/LevelPixel/ComfyUI-LevelPixel-Advanced": { + "author_account_age_days": 374, + "last_update": "2025-06-09 13:45:18", + "stars": 6 + }, + "https://github.com/Lex-DRL/ComfyUI-BestResolution": { + "author_account_age_days": 4507, + "last_update": "2025-07-19 21:17:46", + "stars": 3 + }, + "https://github.com/Lhyejin/ComfyUI-Fill-Image-for-Outpainting": { + "author_account_age_days": 2993, + "last_update": "2024-08-26 00:40:09", + "stars": 9 + }, + "https://github.com/LiJT/ComfyUI-Gemini-Prompt-Generator-JT": { + "author_account_age_days": 3793, + "last_update": "2025-06-27 03:32:40", + "stars": 4 + }, + "https://github.com/Light-x02/ComfyUI-FluxSettingsNode": { + "author_account_age_days": 1169, + "last_update": "2025-04-28 21:45:01", + "stars": 7 + }, + "https://github.com/Light-x02/ComfyUI-Image-Metadata-Nodes": { + "author_account_age_days": 1169, + "last_update": "2025-05-01 18:14:59", + "stars": 7 + }, + "https://github.com/LightSketch-ai/ComfyUI-LivePortraitNode": { + "author_account_age_days": 375, + "last_update": "2024-07-17 01:24:53", + "stars": 2 + }, + "https://github.com/Lightricks/ComfyUI-LTXVideo": { + "author_account_age_days": 4582, + "last_update": "2025-07-16 15:41:42", + "stars": 2221 + }, + "https://github.com/Limbicnation/ComfyUI-TransparencyBackgroundRemover": { + "author_account_age_days": 4220, + "last_update": "2025-06-04 00:28:38", + "stars": 5 + }, + "https://github.com/Limbicnation/ComfyUIDepthEstimation": { + "author_account_age_days": 4220, + "last_update": "2025-05-14 22:31:24", + "stars": 13 + }, + "https://github.com/Limbicnation/ComfyUI_FaceDetectionNode": { + "author_account_age_days": 4220, + "last_update": "2025-06-23 01:32:50", + "stars": 2 + }, + "https://github.com/Limitex/ComfyUI-Calculation": { + "author_account_age_days": 1666, + "last_update": "2024-05-22 22:18:40", + "stars": 0 + }, + "https://github.com/Limitex/ComfyUI-Diffusers": { + "author_account_age_days": 1666, + "last_update": "2025-03-10 19:04:32", + "stars": 171 + }, + "https://github.com/Ling-APE/ComfyUI-PixelResolutionCalculator": { + "author_account_age_days": 778, + "last_update": "2025-06-02 02:45:04", + "stars": 8 + }, + "https://github.com/LingSss9/comfyui-merge": { + "author_account_age_days": 653, + "last_update": "2025-06-01 17:27:49", + "stars": 7 + }, + "https://github.com/Loewen-Hob/rembg-comfyui-node-better": { + "author_account_age_days": 862, + "last_update": "2025-04-07 09:09:34", + "stars": 65 + }, + "https://github.com/LonicaMewinsky/ComfyUI-MakeFrame": { + "author_account_age_days": 1367, + "last_update": "2024-05-22 21:29:02", + "stars": 29 + }, + "https://github.com/LonicaMewinsky/ComfyUI-RawSaver": { + "author_account_age_days": 1367, + "last_update": "2024-05-22 21:31:28", + "stars": 3 + }, + "https://github.com/LoveEatCandy/COMFYUI-ReplacePartOfImage": { + "author_account_age_days": 2832, + "last_update": "2025-06-17 05:53:17", + "stars": 0 + }, + "https://github.com/Ltamann/ComfyUI-TBG-ETUR": { + "author_account_age_days": 4610, + "last_update": "2025-07-20 09:16:12", + "stars": 15 + }, + "https://github.com/Ltamann/ComfyUI-TBG-Takeaways": { + "author_account_age_days": 4610, + "last_update": "2025-07-08 21:05:35", + "stars": 2 + }, + "https://github.com/LucipherDev/ComfyUI-AniDoc": { + "author_account_age_days": 1888, + "last_update": "2025-03-28 18:39:10", + "stars": 53 + }, + "https://github.com/LucipherDev/ComfyUI-Golden-Noise": { + "author_account_age_days": 1888, + "last_update": "2025-03-28 18:38:24", + "stars": 23 + }, + "https://github.com/LucipherDev/ComfyUI-TangoFlux": { + "author_account_age_days": 1888, + "last_update": "2025-03-28 18:39:16", + "stars": 94 + }, + "https://github.com/Ludobico/ComfyUI-ScenarioPrompt": { + "author_account_age_days": 1424, + "last_update": "2025-03-12 09:07:07", + "stars": 17 + }, + "https://github.com/LyazS/comfyui-anime-seg": { + "author_account_age_days": 3248, + "last_update": "2024-05-22 23:21:49", + "stars": 10 + }, + "https://github.com/LyazS/comfyui-nettools": { + "author_account_age_days": 3248, + "last_update": "2024-09-23 12:52:44", + "stars": 5 + }, + "https://github.com/M1kep/ComfyLiterals": { + "author_account_age_days": 4649, + "last_update": "2024-05-22 20:31:38", + "stars": 56 + }, + "https://github.com/M1kep/ComfyUI-KepOpenAI": { + "author_account_age_days": 4649, + "last_update": "2024-08-20 16:33:57", + "stars": 30 + }, + "https://github.com/M1kep/ComfyUI-OtherVAEs": { + "author_account_age_days": 4649, + "last_update": "2024-05-22 20:33:41", + "stars": 2 + }, + "https://github.com/M1kep/Comfy_KepKitchenSink": { + "author_account_age_days": 4649, + "last_update": "2024-05-22 20:33:29", + "stars": 0 + }, + "https://github.com/M1kep/Comfy_KepListStuff": { + "author_account_age_days": 4649, + "last_update": "2024-06-22 00:51:28", + "stars": 47 + }, + "https://github.com/M1kep/Comfy_KepMatteAnything": { + "author_account_age_days": 4649, + "last_update": "2024-05-22 20:33:16", + "stars": 11 + }, + "https://github.com/M1kep/KepPromptLang": { + "author_account_age_days": 4649, + "last_update": "2024-05-22 20:32:56", + "stars": 6 + }, + "https://github.com/MDMAchine/ComfyUI_MD_Nodes": { + "author_account_age_days": 2041, + "last_update": "2025-07-11 05:29:16", + "stars": 4 + }, + "https://github.com/MNeMoNiCuZ/ComfyUI-mnemic-nodes": { + "author_account_age_days": 1996, + "last_update": "2025-07-06 22:39:07", + "stars": 64 + }, + "https://github.com/Makeezi/ComfyUI-promptLAB": { + "author_account_age_days": 2173, + "last_update": "2024-05-23 01:24:51", + "stars": 0 + }, + "https://github.com/MakkiShizu/ComfyUI-Prompt-Wildcards": { + "author_account_age_days": 704, + "last_update": "2025-06-14 10:33:54", + "stars": 7 + }, + "https://github.com/MakkiShizu/ComfyUI-Qwen2_5-VL": { + "author_account_age_days": 704, + "last_update": "2025-07-05 12:10:40", + "stars": 6 + }, + "https://github.com/MakkiShizu/comfyui_reimgsize": { + "author_account_age_days": 704, + "last_update": "2025-04-27 15:34:57", + "stars": 5 + }, + "https://github.com/Mamaaaamooooo/batchImg-rembg-ComfyUI-nodes": { + "author_account_age_days": 773, + "last_update": "2024-06-14 10:24:17", + "stars": 28 + }, + "https://github.com/ManglerFTW/ComfyI2I": { + "author_account_age_days": 1046, + "last_update": "2024-06-14 11:01:01", + "stars": 175 + }, + "https://github.com/MaraScott/ComfyUI_MaraScott_Nodes": { + "author_account_age_days": 5361, + "last_update": "2025-04-26 23:44:45", + "stars": 154 + }, + "https://github.com/MarcusNyne/m9-prompts-comfyui": { + "author_account_age_days": 1814, + "last_update": "2024-08-24 16:56:53", + "stars": 1 + }, + "https://github.com/MariusKM/ComfyUI-BadmanNodes": { + "author_account_age_days": 2622, + "last_update": "2024-12-30 15:36:09", + "stars": 2 + }, + "https://github.com/MarkoCa1/ComfyUI-Text": { + "author_account_age_days": 2024, + "last_update": "2024-12-16 09:48:49", + "stars": 8 + }, + "https://github.com/MarkoCa1/ComfyUI_Segment_Mask": { + "author_account_age_days": 2024, + "last_update": "2024-05-23 00:15:51", + "stars": 22 + }, + "https://github.com/Marksusu/ComfyUI_MTCLIPEncode": { + "author_account_age_days": 1099, + "last_update": "2025-05-07 13:56:23", + "stars": 7 + }, + "https://github.com/MartinDeanMoriarty/ComfyUI-DeanLogic": { + "author_account_age_days": 3785, + "last_update": "2025-07-19 23:30:14", + "stars": 0 + }, + "https://github.com/MaruPelkar/comfyui-conditioning-resizer": { + "author_account_age_days": 3972, + "last_update": "2025-04-21 20:57:33", + "stars": 1 + }, + "https://github.com/Mason-McGough/ComfyUI-Mosaica": { + "author_account_age_days": 3596, + "last_update": "2024-08-26 20:42:35", + "stars": 6 + }, + "https://github.com/MasterDenis/VAE-Decode-Switch": { + "author_account_age_days": 1961, + "last_update": "2025-07-19 12:00:54", + "stars": 0 + }, + "https://github.com/Mattabyte/ComfyUI-SecureApiCall": { + "author_account_age_days": 1998, + "last_update": "2025-03-07 23:55:55", + "stars": 0 + }, + "https://github.com/Maxed-Out-99/ComfyUI-MaxedOut": { + "author_account_age_days": 72, + "last_update": "2025-07-19 16:53:52", + "stars": 4 + }, + "https://github.com/McKlinton2/comfyui-mcklinton-pack": { + "author_account_age_days": 1170, + "last_update": "2025-05-31 18:41:13", + "stars": 2 + }, + "https://github.com/Mcmillian/ComfyUI-SimpleToolsNodes": { + "author_account_age_days": 3287, + "last_update": "2024-09-29 14:18:23", + "stars": 0 + }, + "https://github.com/MeeeyoAI/ComfyUI_StringOps": { + "author_account_age_days": 148, + "last_update": "2025-06-04 17:47:55", + "stars": 83 + }, + "https://github.com/Meettya/ComfyUI-OneForOne": { + "author_account_age_days": 5723, + "last_update": "2025-01-07 22:49:30", + "stars": 2 + }, + "https://github.com/MetaGLM/ComfyUI-ZhipuAI-Platform": { + "author_account_age_days": 670, + "last_update": "2024-09-16 16:11:59", + "stars": 5 + }, + "https://github.com/MicheleGuidi/ComfyUI-Contextual-SAM2": { + "author_account_age_days": 1640, + "last_update": "2025-05-01 16:09:43", + "stars": 6 + }, + "https://github.com/MiddleKD/ComfyUI-denoise-mask-scheduler": { + "author_account_age_days": 921, + "last_update": "2024-11-07 12:35:00", + "stars": 6 + }, + "https://github.com/MiddleKD/ComfyUI-mem-safe-wrapper": { + "author_account_age_days": 921, + "last_update": "2024-08-01 06:47:24", + "stars": 4 + }, + "https://github.com/MiddleKD/ComfyUI-productfix": { + "author_account_age_days": 921, + "last_update": "2025-05-12 05:00:24", + "stars": 11 + }, + "https://github.com/MieMieeeee/ComfyUI-CaptionThis": { + "author_account_age_days": 1948, + "last_update": "2025-07-04 11:35:57", + "stars": 63 + }, + "https://github.com/MieMieeeee/ComfyUI-MieNodes": { + "author_account_age_days": 1948, + "last_update": "2025-07-19 10:07:21", + "stars": 51 + }, + "https://github.com/MieMieeeee/ComfyUI-MinioConnector": { + "author_account_age_days": 1948, + "last_update": "2025-03-21 09:09:09", + "stars": 3 + }, + "https://github.com/MijnSpam/ComfyUI_SwapAndScale": { + "author_account_age_days": 940, + "last_update": "2025-05-31 09:27:10", + "stars": 0 + }, + "https://github.com/MijnSpam/UploadToPushOver": { + "author_account_age_days": 940, + "last_update": "2025-05-31 09:32:38", + "stars": 1 + }, + "https://github.com/MilitantHitchhiker/MilitantHitchhiker-SwitchbladePack": { + "author_account_age_days": 451, + "last_update": "2024-10-06 07:46:05", + "stars": 3 + }, + "https://github.com/Mintbeer96/ComfyUI-KerasOCR": { + "author_account_age_days": 3568, + "last_update": "2024-07-24 16:39:41", + "stars": 3 + }, + "https://github.com/MinusZoneAI/ComfyUI-CogVideoX-MZ": { + "author_account_age_days": 457, + "last_update": "2024-10-30 10:52:42", + "stars": 106 + }, + "https://github.com/MinusZoneAI/ComfyUI-Flux1Quantize-MZ": { + "author_account_age_days": 457, + "last_update": "2024-08-14 04:01:10", + "stars": 12 + }, + "https://github.com/MinusZoneAI/ComfyUI-FluxExt-MZ": { + "author_account_age_days": 457, + "last_update": "2024-08-16 18:57:07", + "stars": 328 + }, + "https://github.com/MinusZoneAI/ComfyUI-Kolors-MZ": { + "author_account_age_days": 457, + "last_update": "2025-03-31 02:51:00", + "stars": 592 + }, + "https://github.com/MinusZoneAI/ComfyUI-Prompt-MZ": { + "author_account_age_days": 457, + "last_update": "2025-03-14 06:36:29", + "stars": 115 + }, + "https://github.com/MinusZoneAI/ComfyUI-StylizePhoto-MZ": { + "author_account_age_days": 457, + "last_update": "2024-05-23 01:13:32", + "stars": 18 + }, + "https://github.com/MinusZoneAI/ComfyUI-TrainTools-MZ": { + "author_account_age_days": 457, + "last_update": "2025-02-24 06:08:49", + "stars": 59 + }, + "https://github.com/Miosp/ComfyUI-FBCNN": { + "author_account_age_days": 2907, + "last_update": "2025-02-24 20:53:32", + "stars": 27 + }, + "https://github.com/MithrilMan/ComfyUI-MithrilNodes": { + "author_account_age_days": 4375, + "last_update": "2025-07-14 00:10:13", + "stars": 0 + }, + "https://github.com/MitoshiroPJ/ComfyUI_save_image_sdli": { + "author_account_age_days": 4359, + "last_update": "2025-07-04 12:59:35", + "stars": 1 + }, + "https://github.com/MitoshiroPJ/comfyui_nearsighted_attention": { + "author_account_age_days": 4359, + "last_update": "2025-07-04 12:30:55", + "stars": 2 + }, + "https://github.com/Miyuutsu/comfyui-save-vpred": { + "author_account_age_days": 3316, + "last_update": "2024-12-15 22:29:47", + "stars": 4 + }, + "https://github.com/MohammadAboulEla/ComfyUI-iTools": { + "author_account_age_days": 1418, + "last_update": "2025-07-02 12:27:38", + "stars": 166 + }, + "https://github.com/MokkaBoss1/ComfyUI_Mokkaboss1": { + "author_account_age_days": 770, + "last_update": "2025-06-08 11:06:37", + "stars": 16 + }, + "https://github.com/MontagenAI/ComfyUI-Montagen": { + "author_account_age_days": 221, + "last_update": "2025-05-29 10:43:37", + "stars": 20 + }, + "https://github.com/MoonGoblinDev/Civicomfy": { + "author_account_age_days": 3194, + "last_update": "2025-06-10 15:38:45", + "stars": 39 + }, + "https://github.com/MoonHugo/ComfyUI-BAGEL-Hugo": { + "author_account_age_days": 320, + "last_update": "2025-06-04 08:48:11", + "stars": 3 + }, + "https://github.com/MoonHugo/ComfyUI-BiRefNet-Hugo": { + "author_account_age_days": 320, + "last_update": "2025-05-25 15:37:49", + "stars": 318 + }, + "https://github.com/MoonHugo/ComfyUI-FFmpeg": { + "author_account_age_days": 320, + "last_update": "2025-06-04 07:30:29", + "stars": 86 + }, + "https://github.com/MoonHugo/ComfyUI-StableAudioOpen": { + "author_account_age_days": 320, + "last_update": "2024-10-18 04:12:04", + "stars": 27 + }, + "https://github.com/Moooonet/ComfyUI-Align": { + "author_account_age_days": 378, + "last_update": "2025-05-12 09:40:03", + "stars": 151 + }, + "https://github.com/MovieLabs/comfyui-movielabs-util": { + "author_account_age_days": 4786, + "last_update": "2025-07-12 01:02:15", + "stars": 1 + }, + "https://github.com/MrForExample/ComfyUI-3D-Pack": { + "author_account_age_days": 1952, + "last_update": "2025-06-19 11:10:43", + "stars": 3247 + }, + "https://github.com/MrForExample/ComfyUI-AnimateAnyone-Evolved": { + "author_account_age_days": 1952, + "last_update": "2024-06-14 12:02:47", + "stars": 548 + }, + "https://github.com/MrSamSeen/ComfyUI_SSBeforeAfterNode": { + "author_account_age_days": 3982, + "last_update": "2025-05-25 01:55:29", + "stars": 1 + }, + "https://github.com/MrSamSeen/ComfyUI_SSStereoscope": { + "author_account_age_days": 3982, + "last_update": "2025-04-27 11:44:51", + "stars": 28 + }, + "https://github.com/Munkyfoot/ComfyUI-TextOverlay": { + "author_account_age_days": 3436, + "last_update": "2025-06-07 04:46:39", + "stars": 37 + }, + "https://github.com/MuziekMagie/ComfyUI-Matchering": { + "author_account_age_days": 363, + "last_update": "2024-07-23 14:39:52", + "stars": 50 + }, + "https://github.com/MzMaXaM/ComfyUi-MzMaXaM": { + "author_account_age_days": 2130, + "last_update": "2025-06-01 16:34:55", + "stars": 10 + }, + "https://github.com/N3rd00d/ComfyUI-Paint3D-Nodes": { + "author_account_age_days": 468, + "last_update": "2024-08-19 12:52:20", + "stars": 69 + }, + "https://github.com/NMWave/ComfyUI-Nader-Tagging": { + "author_account_age_days": 970, + "last_update": "2025-04-09 01:07:33", + "stars": 2 + }, + "https://github.com/NVIDIAGameWorks/ComfyUI-RTX-Remix": { + "author_account_age_days": 4072, + "last_update": "2025-06-04 21:48:12", + "stars": 43 + }, + "https://github.com/NakamuraShippo/ComfyUI-NS-ManySliders": { + "author_account_age_days": 753, + "last_update": "2024-11-03 02:48:52", + "stars": 5 + }, + "https://github.com/NakamuraShippo/ComfyUI-NS-PromptList": { + "author_account_age_days": 753, + "last_update": "2025-06-21 08:50:06", + "stars": 8 + }, + "https://github.com/NakamuraShippo/ComfyUI-NS-Util": { + "author_account_age_days": 754, + "last_update": "2025-07-16 12:59:18", + "stars": 1 + }, + "https://github.com/NeoDroleDeGueule/comfyui-image-mixer": { + "author_account_age_days": 515, + "last_update": "2025-06-11 16:54:15", + "stars": 0 + }, + "https://github.com/NeoGriever/ComfyUI-NeoGriever": { + "author_account_age_days": 4680, + "last_update": "2024-12-12 02:55:40", + "stars": 2 + }, + "https://github.com/NeonLightning/neonllama": { + "author_account_age_days": 4608, + "last_update": "2025-06-20 22:49:39", + "stars": 1 + }, + "https://github.com/Nestorchik/NStor-ComfyUI-Translation": { + "author_account_age_days": 1716, + "last_update": "2024-06-14 10:25:32", + "stars": 2 + }, + "https://github.com/NeuralSamurAI/ComfyUI-Dimensional-Latent-Perlin": { + "author_account_age_days": 485, + "last_update": "2024-08-06 19:59:25", + "stars": 34 + }, + "https://github.com/NeuralSamurAI/ComfyUI-FluxPseudoNegativePrompt": { + "author_account_age_days": 485, + "last_update": "2024-08-14 02:16:43", + "stars": 7 + }, + "https://github.com/NeuralSamurAI/ComfyUI-PromptJSON": { + "author_account_age_days": 485, + "last_update": "2024-08-11 18:10:36", + "stars": 3 + }, + "https://github.com/NeuralSamurAI/Comfyui-Superprompt-Unofficial": { + "author_account_age_days": 485, + "last_update": "2024-05-23 00:22:08", + "stars": 68 + }, + "https://github.com/NeuroSenko/ComfyUI_LLM_SDXL_Adapter": { + "author_account_age_days": 998, + "last_update": "2025-07-19 02:44:29", + "stars": 20 + }, + "https://github.com/Nevysha/ComfyUI-nevysha-top-menu": { + "author_account_age_days": 918, + "last_update": "2024-05-23 00:17:31", + "stars": 5 + }, + "https://github.com/NguynHungNguyen/Segment-Bedroom-Interior": { + "author_account_age_days": 1049, + "last_update": "2024-10-17 13:22:19", + "stars": 8 + }, + "https://github.com/NicholasMcCarthy/ComfyUI_TravelSuite": { + "author_account_age_days": 5541, + "last_update": "2024-05-22 20:34:46", + "stars": 15 + }, + "https://github.com/Nikosis/ComfyUI-Nikosis-Nodes": { + "author_account_age_days": 2667, + "last_update": "2025-04-10 00:32:13", + "stars": 1 + }, + "https://github.com/Nikosis/ComfyUI-Nikosis-Preprocessors": { + "author_account_age_days": 2667, + "last_update": "2025-04-08 12:28:17", + "stars": 2 + }, + "https://github.com/NimaNzrii/comfyui-photoshop": { + "author_account_age_days": 636, + "last_update": "2025-05-17 18:02:00", + "stars": 1164 + }, + "https://github.com/NimaNzrii/comfyui-popup_preview": { + "author_account_age_days": 636, + "last_update": "2024-05-22 22:12:04", + "stars": 35 + }, + "https://github.com/Niutonian/ComfyUi-NoodleWebcam": { + "author_account_age_days": 1433, + "last_update": "2024-05-22 21:30:40", + "stars": 32 + }, + "https://github.com/Njbx/ComfyUI-LTX13B-Blockswap": { + "author_account_age_days": 1595, + "last_update": "2025-05-07 18:47:45", + "stars": 6 + }, + "https://github.com/Nlar/ComfyUI_CartoonSegmentation": { + "author_account_age_days": 4222, + "last_update": "2024-05-22 23:15:37", + "stars": 16 + }, + "https://github.com/Nojahhh/ComfyUI_GLM4_Wrapper": { + "author_account_age_days": 3211, + "last_update": "2025-07-20 12:17:01", + "stars": 20 + }, + "https://github.com/NotHarroweD/Harronode": { + "author_account_age_days": 2375, + "last_update": "2024-05-22 22:18:29", + "stars": 5 + }, + "https://github.com/Nourepide/ComfyUI-Allor": { + "author_account_age_days": 3237, + "last_update": "2024-05-22 18:11:17", + "stars": 263 + }, + "https://github.com/Nuked88/ComfyUI-N-Nodes": { + "author_account_age_days": 4871, + "last_update": "2024-08-15 21:07:32", + "stars": 225 + }, + "https://github.com/Nuked88/ComfyUI-N-Sidebar": { + "author_account_age_days": 4871, + "last_update": "2025-07-06 11:37:45", + "stars": 556 + }, + "https://github.com/NyaFuP/ComfyUI_Preview_Selector": { + "author_account_age_days": 1704, + "last_update": "2025-07-19 11:29:41", + "stars": 0 + }, + "https://github.com/NyaamZ/ComfyUI-ImageGallery-ED": { + "author_account_age_days": 2508, + "last_update": "2025-06-27 12:15:32", + "stars": 6 + }, + "https://github.com/NyaamZ/efficiency-nodes-ED": { + "author_account_age_days": 2508, + "last_update": "2025-06-29 03:22:25", + "stars": 28 + }, + "https://github.com/Off-Live/ComfyUI-off-suite": { + "author_account_age_days": 1563, + "last_update": "2024-06-14 12:02:25", + "stars": 0 + }, + "https://github.com/OgreLemonSoup/ComfyUI-Load-Image-Gallery": { + "author_account_age_days": 344, + "last_update": "2025-06-07 02:47:12", + "stars": 37 + }, + "https://github.com/OliverCrosby/Comfyui-Minimap": { + "author_account_age_days": 2517, + "last_update": "2024-08-24 14:10:43", + "stars": 97 + }, + "https://github.com/OneThingAI/ComfyUI_Onething_CV": { + "author_account_age_days": 346, + "last_update": "2025-07-09 11:35:22", + "stars": 0 + }, + "https://github.com/OneThingAI/ComfyUI_Onething_Image": { + "author_account_age_days": 346, + "last_update": "2025-07-15 06:42:23", + "stars": 0 + }, + "https://github.com/OpalSky-AI/OpalSky_Nodes": { + "author_account_age_days": 2127, + "last_update": "2024-10-27 20:13:40", + "stars": 2 + }, + "https://github.com/OpenArt-AI/ComfyUI-Assistant": { + "author_account_age_days": 1166, + "last_update": "2024-05-22 22:16:57", + "stars": 21 + }, + "https://github.com/OuticNZ/ComfyUI-Simple-Of-Complex": { + "author_account_age_days": 2924, + "last_update": "2024-08-14 04:00:49", + "stars": 0 + }, + "https://github.com/PCMonsterx/ComfyUI-CSV-Loader": { + "author_account_age_days": 2056, + "last_update": "2025-03-14 12:21:40", + "stars": 16 + }, + "https://github.com/PD19Anime/ComfyUI-PD19Anime-Nodes": { + "author_account_age_days": 1253, + "last_update": "2025-07-12 14:16:44", + "stars": 0 + }, + "https://github.com/Pablerdo/ComfyUI-MultiCutAndDrag": { + "author_account_age_days": 3192, + "last_update": "2025-03-22 01:25:55", + "stars": 3 + }, + "https://github.com/Pablerdo/ComfyUI-ResizeZeptaPayload": { + "author_account_age_days": 3192, + "last_update": "2025-03-29 00:39:01", + "stars": 1 + }, + "https://github.com/Pablerdo/ComfyUI-StableVirtualCameraWrapper": { + "author_account_age_days": 3192, + "last_update": "2025-04-19 09:40:38", + "stars": 1 + }, + "https://github.com/Pablerdo/ComfyUI-ZeptaframePromptMerger": { + "author_account_age_days": 3192, + "last_update": "2025-03-21 17:42:55", + "stars": 1 + }, + "https://github.com/PanicTitan/ComfyUI-Fooocus-V2-Expansion": { + "author_account_age_days": 1876, + "last_update": "2025-05-09 22:51:17", + "stars": 9 + }, + "https://github.com/PanicTitan/ComfyUI-Gallery": { + "author_account_age_days": 1876, + "last_update": "2025-07-10 23:49:50", + "stars": 46 + }, + "https://github.com/Parameshvadivel/ComfyUI-SVGview": { + "author_account_age_days": 3219, + "last_update": "2024-07-31 13:40:33", + "stars": 1 + }, + "https://github.com/ParisNeo/lollms_nodes_suite": { + "author_account_age_days": 5161, + "last_update": "2025-03-12 07:36:41", + "stars": 11 + }, + "https://github.com/ParmanBabra/ComfyUI-Malefish-Custom-Scripts": { + "author_account_age_days": 4034, + "last_update": "2024-05-22 21:26:35", + "stars": 0 + }, + "https://github.com/PauldeLavallaz/comfyui_claude_prompt_generator": { + "author_account_age_days": 2234, + "last_update": "2025-03-18 17:38:28", + "stars": 0 + }, + "https://github.com/PenguinTeo/Comfyui-TextEditor-Penguin": { + "author_account_age_days": 366, + "last_update": "2025-06-04 14:38:13", + "stars": 1 + }, + "https://github.com/Pfaeff/pfaeff-comfyui": { + "author_account_age_days": 3599, + "last_update": "2024-05-22 18:21:10", + "stars": 22 + }, + "https://github.com/Phando/ComfyUI-PhandoNodes": { + "author_account_age_days": 5617, + "last_update": "2024-09-05 16:12:24", + "stars": 0 + }, + "https://github.com/Pheat-AI/Remade_nodes": { + "author_account_age_days": 425, + "last_update": "2024-10-18 00:04:58", + "stars": 3 + }, + "https://github.com/PiggyDance/ComfyUI_OpenCV": { + "author_account_age_days": 2778, + "last_update": "2025-03-24 10:02:49", + "stars": 0 + }, + "https://github.com/Pigidiy/ComfyUI-LikeSpiderAI-SaveMP3": { + "author_account_age_days": 280, + "last_update": "2025-06-01 16:35:20", + "stars": 0 + }, + "https://github.com/Pigidiy/ComfyUI-LikeSpiderAI-UI": { + "author_account_age_days": 280, + "last_update": "2025-06-05 19:20:04", + "stars": 0 + }, + "https://github.com/PixelFunAI/ComfyUI_PixelFun": { + "author_account_age_days": 181, + "last_update": "2025-01-20 05:44:54", + "stars": 3 + }, + "https://github.com/PixelML/ComfyUI-PixelML-CustomNodes": { + "author_account_age_days": 502, + "last_update": "2025-01-20 06:40:21", + "stars": 0 + }, + "https://github.com/PnthrLeo/comfyUI-PL-data-tools": { + "author_account_age_days": 2942, + "last_update": "2024-12-03 13:39:28", + "stars": 1 + }, + "https://github.com/Poseidon-fan/ComfyUI-RabbitMQ-Publisher": { + "author_account_age_days": 973, + "last_update": "2024-11-07 08:59:23", + "stars": 2 + }, + "https://github.com/Positliver/comfyui-zegr": { + "author_account_age_days": 3783, + "last_update": "2025-01-26 11:51:59", + "stars": 1 + }, + "https://github.com/PowerHouseMan/ComfyUI-AdvancedLivePortrait": { + "author_account_age_days": 354, + "last_update": "2024-08-21 06:14:24", + "stars": 2443 + }, + "https://github.com/PressWagon/ComfyUI-StringsAndThings": { + "author_account_age_days": 216, + "last_update": "2025-05-18 12:01:37", + "stars": 2 + }, + "https://github.com/ProGamerGov/ComfyUI_preview360panorama": { + "author_account_age_days": 3833, + "last_update": "2025-05-25 19:26:43", + "stars": 62 + }, + "https://github.com/ProGamerGov/ComfyUI_pytorch360convert": { + "author_account_age_days": 3833, + "last_update": "2025-02-27 20:23:27", + "stars": 13 + }, + "https://github.com/PrunaAI/ComfyUI_pruna": { + "author_account_age_days": 1040, + "last_update": "2025-07-10 11:12:37", + "stars": 64 + }, + "https://github.com/Pseudotools/Pseudocomfy": { + "author_account_age_days": 661, + "last_update": "2025-07-17 01:02:43", + "stars": 1 + }, + "https://github.com/Q-Bug4/Comfyui-Qb-DateNodes": { + "author_account_age_days": 2325, + "last_update": "2025-07-14 11:37:31", + "stars": 1 + }, + "https://github.com/Q-Bug4/Comfyui-Simple-Json-Node": { + "author_account_age_days": 2325, + "last_update": "2025-03-27 12:51:03", + "stars": 5 + }, + "https://github.com/Q-Bug4/comfyui-qbug-batch": { + "author_account_age_days": 2325, + "last_update": "2025-04-13 03:05:36", + "stars": 2 + }, + "https://github.com/QaisMalkawi/ComfyUI-QaisHelper": { + "author_account_age_days": 1642, + "last_update": "2024-05-23 20:29:30", + "stars": 2 + }, + "https://github.com/QijiTec/ComfyUI-RED-UNO": { + "author_account_age_days": 855, + "last_update": "2025-04-21 01:07:24", + "stars": 26 + }, + "https://github.com/R5-Revo/llm-node-comfyui": { + "author_account_age_days": 190, + "last_update": "2025-05-24 03:55:35", + "stars": 6 + }, + "https://github.com/Raapys/ComfyUI-LatentGC_Aggressive": { + "author_account_age_days": 4323, + "last_update": "2024-08-12 15:55:42", + "stars": 4 + }, + "https://github.com/RamonGuthrie/ComfyUI-RBG-ImageStitchPlus": { + "author_account_age_days": 552, + "last_update": "2025-07-19 09:56:30", + "stars": 12 + }, + "https://github.com/Ravenmelt/ComfyUI-Rodin": { + "author_account_age_days": 2466, + "last_update": "2025-05-07 13:29:25", + "stars": 29 + }, + "https://github.com/Raykosan/ComfyUI_RS-SaturationNode": { + "author_account_age_days": 1771, + "last_update": "2025-04-12 10:38:46", + "stars": 8 + }, + "https://github.com/Raykosan/ComfyUI_RaykoStudio": { + "author_account_age_days": 1771, + "last_update": "2025-04-12 10:21:00", + "stars": 9 + }, + "https://github.com/RaymondProduction/comfyui-zerna-pack": { + "author_account_age_days": 3317, + "last_update": "2025-03-26 16:10:15", + "stars": 0 + }, + "https://github.com/ReBeating/ComfyUI-Artist-Selector": { + "author_account_age_days": 1769, + "last_update": "2025-02-10 15:39:41", + "stars": 1 + }, + "https://github.com/Reithan/negative_rejection_steering": { + "author_account_age_days": 4096, + "last_update": "2025-07-20 14:20:40", + "stars": 8 + }, + "https://github.com/RenderRift/ComfyUI-RenderRiftNodes": { + "author_account_age_days": 578, + "last_update": "2024-05-22 22:16:41", + "stars": 7 + }, + "https://github.com/RhizoNymph/ComfyUI-CLIPSlider": { + "author_account_age_days": 1558, + "last_update": "2024-09-07 19:47:02", + "stars": 9 + }, + "https://github.com/RhizoNymph/ComfyUI-ColorWheel": { + "author_account_age_days": 1558, + "last_update": "2024-10-13 06:26:51", + "stars": 1 + }, + "https://github.com/RhizoNymph/ComfyUI-Latte": { + "author_account_age_days": 1558, + "last_update": "2024-08-11 07:25:04", + "stars": 3 + }, + "https://github.com/RiceRound/ComfyUI_CryptoCat": { + "author_account_age_days": 295, + "last_update": "2025-06-19 04:14:31", + "stars": 90 + }, + "https://github.com/RiceRound/ComfyUI_RiceRound": { + "author_account_age_days": 295, + "last_update": "2025-03-18 07:31:16", + "stars": 17 + }, + "https://github.com/Rinsanga1/comfyui-florence2xy": { + "author_account_age_days": 542, + "last_update": "2025-06-25 05:42:46", + "stars": 0 + }, + "https://github.com/Rocky-Lee-001/ComfyUI_SZtools": { + "author_account_age_days": 847, + "last_update": "2025-07-17 02:14:52", + "stars": 1 + }, + "https://github.com/RodrigoSKohl/ComfyUI-Panoramic-ImgStitcher": { + "author_account_age_days": 1139, + "last_update": "2025-06-09 23:34:07", + "stars": 6 + }, + "https://github.com/RodrigoSKohl/InteriorDesign-for-ComfyUI": { + "author_account_age_days": 1139, + "last_update": "2025-07-20 01:27:18", + "stars": 8 + }, + "https://github.com/RodrigoSKohl/comfyui-tryoff-anyone": { + "author_account_age_days": 1139, + "last_update": "2025-04-14 03:36:22", + "stars": 22 + }, + "https://github.com/RomanKuschanow/ComfyUI-Advanced-Latent-Control": { + "author_account_age_days": 1773, + "last_update": "2025-03-27 17:57:44", + "stars": 21 + }, + "https://github.com/Ron-Digital/ComfyUI-SceneGenerator": { + "author_account_age_days": 1320, + "last_update": "2024-06-28 19:36:30", + "stars": 3 + }, + "https://github.com/Runware/ComfyUI-Runware": { + "author_account_age_days": 591, + "last_update": "2025-06-18 12:05:09", + "stars": 97 + }, + "https://github.com/Ryuukeisyou/ComfyUI-SyncTalk": { + "author_account_age_days": 2804, + "last_update": "2024-09-12 11:54:59", + "stars": 39 + }, + "https://github.com/Ryuukeisyou/comfyui_face_parsing": { + "author_account_age_days": 2804, + "last_update": "2025-02-18 09:22:52", + "stars": 171 + }, + "https://github.com/Ryuukeisyou/comfyui_io_helpers": { + "author_account_age_days": 2804, + "last_update": "2024-07-13 13:10:10", + "stars": 2 + }, + "https://github.com/S4MUEL-404/ComfyUI-S4Tool-Image": { + "author_account_age_days": 3478, + "last_update": "2025-06-29 13:15:08", + "stars": 1 + }, + "https://github.com/SEkINVR/ComfyUI-SaveAs": { + "author_account_age_days": 1048, + "last_update": "2024-08-19 01:06:16", + "stars": 6 + }, + "https://github.com/SKBv0/ComfyUI_SKBundle": { + "author_account_age_days": 1947, + "last_update": "2025-06-28 20:35:53", + "stars": 71 + }, + "https://github.com/SLAPaper/ComfyUI-Image-Selector": { + "author_account_age_days": 4089, + "last_update": "2025-03-16 12:13:46", + "stars": 96 + }, + "https://github.com/SLAPaper/StableDiffusion-dpmpp_2m_alt-Sampler": { + "author_account_age_days": 4089, + "last_update": "2025-03-16 12:13:59", + "stars": 13 + }, + "https://github.com/SOELexicon/ComfyUI-LexMSDBNodes": { + "author_account_age_days": 4475, + "last_update": "2025-03-12 00:17:50", + "stars": 4 + }, + "https://github.com/SOELexicon/ComfyUI-LexTools": { + "author_account_age_days": 4475, + "last_update": "2025-03-28 10:50:35", + "stars": 30 + }, + "https://github.com/SS-snap/ComfyUI-Ad_scheduler": { + "author_account_age_days": 691, + "last_update": "2025-04-25 04:53:31", + "stars": 6 + }, + "https://github.com/SS-snap/ComfyUI-LBW_flux": { + "author_account_age_days": 691, + "last_update": "2025-04-25 04:47:47", + "stars": 4 + }, + "https://github.com/SS-snap/ComfyUI-Snap_Processing": { + "author_account_age_days": 691, + "last_update": "2025-04-25 04:54:44", + "stars": 61 + }, + "https://github.com/SS-snap/Comfyui_SSsnap_pose-Remapping": { + "author_account_age_days": 691, + "last_update": "2025-06-18 07:25:25", + "stars": 23 + }, + "https://github.com/SXQBW/ComfyUI-Qwen": { + "author_account_age_days": 3183, + "last_update": "2025-05-26 05:01:41", + "stars": 6 + }, + "https://github.com/SXQBW/ComfyUI-Qwen-Omni": { + "author_account_age_days": 3183, + "last_update": "2025-06-08 07:53:11", + "stars": 22 + }, + "https://github.com/SXQBW/ComfyUI-Qwen-VL": { + "author_account_age_days": 3183, + "last_update": "2025-05-26 06:11:20", + "stars": 7 + }, + "https://github.com/SamKhoze/ComfyUI-DeepFuze": { + "author_account_age_days": 1834, + "last_update": "2024-11-22 19:28:20", + "stars": 413 + }, + "https://github.com/SamTyurenkov/comfyui_chatgpt": { + "author_account_age_days": 3353, + "last_update": "2025-06-16 12:18:20", + "stars": 0 + }, + "https://github.com/San4itos/ComfyUI-Save-Images-as-Video": { + "author_account_age_days": 1972, + "last_update": "2025-05-18 12:37:15", + "stars": 1 + }, + "https://github.com/SanDiegoDude/ComfyUI-DeepStereo": { + "author_account_age_days": 1023, + "last_update": "2025-05-26 22:46:39", + "stars": 2 + }, + "https://github.com/SanDiegoDude/ComfyUI-Kontext-API": { + "author_account_age_days": 1023, + "last_update": "2025-06-18 16:41:48", + "stars": 7 + }, + "https://github.com/SanDiegoDude/ComfyUI-SaveAudioMP3": { + "author_account_age_days": 1023, + "last_update": "2025-05-07 23:48:49", + "stars": 3 + }, + "https://github.com/Santodan/santodan-custom-nodes-comfyui": { + "author_account_age_days": 3086, + "last_update": "2025-07-15 09:17:42", + "stars": 2 + }, + "https://github.com/SayanoAI/Comfy-RVC": { + "author_account_age_days": 2995, + "last_update": "2024-10-09 04:08:31", + "stars": 23 + }, + "https://github.com/Sayene/comfyui-base64-to-image-size": { + "author_account_age_days": 4072, + "last_update": "2025-05-15 12:33:33", + "stars": 0 + }, + "https://github.com/Scholar01/ComfyUI-Keyframe": { + "author_account_age_days": 3587, + "last_update": "2025-01-22 04:09:29", + "stars": 16 + }, + "https://github.com/Scorpinaus/ComfyUI-DiffusersLoader": { + "author_account_age_days": 1501, + "last_update": "2024-08-26 14:51:47", + "stars": 17 + }, + "https://github.com/ScreamingHawk/comfyui-ollama-prompt-encode": { + "author_account_age_days": 4897, + "last_update": "2024-11-29 21:51:05", + "stars": 13 + }, + "https://github.com/SeaArtLab/ComfyUI-Long-CLIP": { + "author_account_age_days": 468, + "last_update": "2025-03-08 04:16:32", + "stars": 155 + }, + "https://github.com/SeanScripts/ComfyUI-PixtralLlamaMolmoVision": { + "author_account_age_days": 1911, + "last_update": "2025-01-31 09:01:23", + "stars": 75 + }, + "https://github.com/SeanScripts/ComfyUI-Unload-Model": { + "author_account_age_days": 1911, + "last_update": "2025-06-13 04:22:23", + "stars": 51 + }, + "https://github.com/SeargeDP/ComfyUI_Searge_LLM": { + "author_account_age_days": 4563, + "last_update": "2024-09-04 09:04:18", + "stars": 110 + }, + "https://github.com/SeargeDP/SeargeSDXL": { + "author_account_age_days": 4563, + "last_update": "2024-05-22 00:28:26", + "stars": 852 + }, + "https://github.com/Seedsa/Fooocus_Nodes": { + "author_account_age_days": 2999, + "last_update": "2025-01-08 07:57:28", + "stars": 100 + }, + "https://github.com/Sekiun/ComfyUI-WebpToPNGSequence": { + "author_account_age_days": 1863, + "last_update": "2025-04-15 12:40:47", + "stars": 3 + }, + "https://github.com/Semper-Sursum/HF-Flux-ComfyUI": { + "author_account_age_days": 181, + "last_update": "2025-03-29 17:35:11", + "stars": 2 + }, + "https://github.com/ServiceStack/comfy-asset-downloader": { + "author_account_age_days": 5276, + "last_update": "2025-05-08 16:21:02", + "stars": 7 + }, + "https://github.com/Shadetail/ComfyUI_Eagleshadow": { + "author_account_age_days": 3788, + "last_update": "2025-03-08 20:09:28", + "stars": 4 + }, + "https://github.com/Shakker-Labs/ComfyUI-IPAdapter-Flux": { + "author_account_age_days": 240, + "last_update": "2025-06-22 08:50:25", + "stars": 414 + }, + "https://github.com/Shannooty/ComfyUI-Timer-Nodes": { + "author_account_age_days": 1688, + "last_update": "2024-12-17 09:20:49", + "stars": 3 + }, + "https://github.com/SherryXieYuchen/ComfyUI-Image-Inpainting": { + "author_account_age_days": 506, + "last_update": "2024-07-03 03:39:49", + "stars": 4 + }, + "https://github.com/Shiba-2-shiba/ComfyUI-Magcache-for-SDXL": { + "author_account_age_days": 777, + "last_update": "2025-06-29 14:25:52", + "stars": 6 + }, + "https://github.com/Shiba-2-shiba/ComfyUI_DiffusionModel_fp8_converter": { + "author_account_age_days": 777, + "last_update": "2025-02-18 07:36:09", + "stars": 24 + }, + "https://github.com/Shiba-2-shiba/ComfyUI_FreeU_V2_timestepadd": { + "author_account_age_days": 777, + "last_update": "2025-03-02 00:15:45", + "stars": 0 + }, + "https://github.com/Shiba-2-shiba/comfyui-color-ascii-art-node": { + "author_account_age_days": 777, + "last_update": "2025-06-13 08:51:55", + "stars": 3 + }, + "https://github.com/Shibiko-AI/ShibikoAI-ComfyUI-Tools": { + "author_account_age_days": 793, + "last_update": "2025-04-23 04:49:00", + "stars": 10 + }, + "https://github.com/ShinChven/sc-comfy-nodes": { + "author_account_age_days": 4561, + "last_update": "2025-05-21 03:07:18", + "stars": 1 + }, + "https://github.com/ShmuelRonen/ComfyUI-Apply_Style_Model_Adjust": { + "author_account_age_days": 1596, + "last_update": "2024-11-23 03:57:20", + "stars": 9 + }, + "https://github.com/ShmuelRonen/ComfyUI-AstralAnimator": { + "author_account_age_days": 1596, + "last_update": "2024-07-18 12:41:22", + "stars": 18 + }, + "https://github.com/ShmuelRonen/ComfyUI-Audio_Quality_Enhancer": { + "author_account_age_days": 1596, + "last_update": "2025-05-11 20:53:31", + "stars": 13 + }, + "https://github.com/ShmuelRonen/ComfyUI-CohernetVideoSampler": { + "author_account_age_days": 1596, + "last_update": "2024-12-23 10:54:08", + "stars": 17 + }, + "https://github.com/ShmuelRonen/ComfyUI-DeepSeek_R1-Chat": { + "author_account_age_days": 1596, + "last_update": "2025-01-27 17:14:24", + "stars": 20 + }, + "https://github.com/ShmuelRonen/ComfyUI-EmptyHunyuanLatent": { + "author_account_age_days": 1596, + "last_update": "2024-12-29 05:30:57", + "stars": 8 + }, + "https://github.com/ShmuelRonen/ComfyUI-FramePackWrapper_Plus": { + "author_account_age_days": 1596, + "last_update": "2025-05-19 21:10:06", + "stars": 100 + }, + "https://github.com/ShmuelRonen/ComfyUI-FreeMemory": { + "author_account_age_days": 1596, + "last_update": "2025-03-20 11:25:12", + "stars": 109 + }, + "https://github.com/ShmuelRonen/ComfyUI-FreeVC_wrapper": { + "author_account_age_days": 1596, + "last_update": "2025-04-03 13:49:04", + "stars": 63 + }, + "https://github.com/ShmuelRonen/ComfyUI-Gemini_Flash_2.0_Exp": { + "author_account_age_days": 1596, + "last_update": "2025-04-22 17:30:51", + "stars": 307 + }, + "https://github.com/ShmuelRonen/ComfyUI-Gemini_TTS": { + "author_account_age_days": 1596, + "last_update": "2025-05-23 14:21:58", + "stars": 15 + }, + "https://github.com/ShmuelRonen/ComfyUI-HunyuanVideoSamplerSave": { + "author_account_age_days": 1596, + "last_update": "2025-02-05 19:26:18", + "stars": 19 + }, + "https://github.com/ShmuelRonen/ComfyUI-HunyuanVideoStyler": { + "author_account_age_days": 1596, + "last_update": "2024-12-31 19:19:42", + "stars": 43 + }, + "https://github.com/ShmuelRonen/ComfyUI-ImageMotionGuider": { + "author_account_age_days": 1596, + "last_update": "2024-12-27 11:19:59", + "stars": 42 + }, + "https://github.com/ShmuelRonen/ComfyUI-Janus_pro_vision": { + "author_account_age_days": 1596, + "last_update": "2025-03-20 11:20:56", + "stars": 27 + }, + "https://github.com/ShmuelRonen/ComfyUI-JoyHallo_wrapper": { + "author_account_age_days": 1596, + "last_update": "2025-03-20 11:24:21", + "stars": 8 + }, + "https://github.com/ShmuelRonen/ComfyUI-LatentSyncWrapper": { + "author_account_age_days": 1596, + "last_update": "2025-06-14 12:30:27", + "stars": 860 + }, + "https://github.com/ShmuelRonen/ComfyUI-Orpheus-TTS": { + "author_account_age_days": 1596, + "last_update": "2025-05-03 22:06:22", + "stars": 6 + }, + "https://github.com/ShmuelRonen/ComfyUI-PS_Flatten_Image": { + "author_account_age_days": 1596, + "last_update": "2025-04-02 10:58:27", + "stars": 7 + }, + "https://github.com/ShmuelRonen/ComfyUI-PixArt_XL": { + "author_account_age_days": 1596, + "last_update": "2025-03-20 11:23:20", + "stars": 2 + }, + "https://github.com/ShmuelRonen/ComfyUI-SVDResizer": { + "author_account_age_days": 1596, + "last_update": "2025-03-09 04:33:26", + "stars": 3 + }, + "https://github.com/ShmuelRonen/ComfyUI-ThinkSound_Wrapper": { + "author_account_age_days": 1596, + "last_update": "2025-07-14 15:38:03", + "stars": 7 + }, + "https://github.com/ShmuelRonen/ComfyUI-Veo2-Experimental": { + "author_account_age_days": 1596, + "last_update": "2025-04-12 04:25:55", + "stars": 27 + }, + "https://github.com/ShmuelRonen/ComfyUI-VideoUpscale_WithModel": { + "author_account_age_days": 1596, + "last_update": "2025-05-02 20:13:08", + "stars": 73 + }, + "https://github.com/ShmuelRonen/ComfyUI-WanVideoKsampler": { + "author_account_age_days": 1596, + "last_update": "2025-02-27 13:48:05", + "stars": 35 + }, + "https://github.com/ShmuelRonen/ComfyUI_ChatterBox_Voice": { + "author_account_age_days": 1596, + "last_update": "2025-06-04 18:50:40", + "stars": 16 + }, + "https://github.com/ShmuelRonen/ComfyUI_Flux_1.1_RAW_API": { + "author_account_age_days": 1596, + "last_update": "2025-03-20 11:21:27", + "stars": 58 + }, + "https://github.com/ShmuelRonen/ComfyUI_Gemini_Flash": { + "author_account_age_days": 1596, + "last_update": "2025-03-20 04:42:59", + "stars": 31 + }, + "https://github.com/ShmuelRonen/ComfyUI_Hedra": { + "author_account_age_days": 1596, + "last_update": "2025-05-04 16:41:02", + "stars": 2 + }, + "https://github.com/ShmuelRonen/ComfyUI_pixtral_large": { + "author_account_age_days": 1596, + "last_update": "2025-01-08 10:59:35", + "stars": 16 + }, + "https://github.com/ShmuelRonen/ComfyUI_pixtral_vision": { + "author_account_age_days": 1596, + "last_update": "2024-11-20 12:58:30", + "stars": 16 + }, + "https://github.com/ShmuelRonen/ComfyUI_wav2lip": { + "author_account_age_days": 1596, + "last_update": "2024-09-18 13:17:42", + "stars": 137 + }, + "https://github.com/ShmuelRonen/DJ_VideoAudioMixer": { + "author_account_age_days": 1596, + "last_update": "2025-04-04 16:06:49", + "stars": 2 + }, + "https://github.com/ShmuelRonen/FluxKontextCreator": { + "author_account_age_days": 1596, + "last_update": "2025-06-10 17:07:05", + "stars": 50 + }, + "https://github.com/ShmuelRonen/comfyui-openai_fm": { + "author_account_age_days": 1596, + "last_update": "2025-04-03 14:25:24", + "stars": 2 + }, + "https://github.com/ShmuelRonen/google_moogle": { + "author_account_age_days": 1596, + "last_update": "2025-03-27 19:59:35", + "stars": 5 + }, + "https://github.com/Shraknard/ComfyUI-Remover": { + "author_account_age_days": 2708, + "last_update": "2024-07-24 08:42:48", + "stars": 5 + }, + "https://github.com/ShunL12324/comfy-portal-endpoint": { + "author_account_age_days": 2929, + "last_update": "2025-05-17 05:43:21", + "stars": 0 + }, + "https://github.com/Siberpone/lazy-pony-prompter": { + "author_account_age_days": 844, + "last_update": "2025-03-28 05:54:45", + "stars": 40 + }, + "https://github.com/Siempreflaco/ComfyUI-NCNodes": { + "author_account_age_days": 1047, + "last_update": "2025-05-02 20:04:43", + "stars": 0 + }, + "https://github.com/Sieyalixnet/ComfyUI_Textarea_Loaders": { + "author_account_age_days": 2074, + "last_update": "2024-08-30 01:19:54", + "stars": 3 + }, + "https://github.com/SignalCha1n/comfyui-ComfySnap": { + "author_account_age_days": 101, + "last_update": "2025-04-27 15:24:25", + "stars": 1 + }, + "https://github.com/SijieMei/ComfyUI-promptHistory": { + "author_account_age_days": 2303, + "last_update": "2025-03-24 03:32:05", + "stars": 0 + }, + "https://github.com/Sinphaltimus/comfyui_fedcoms_node_pack": { + "author_account_age_days": 2670, + "last_update": "2025-05-10 15:54:59", + "stars": 0 + }, + "https://github.com/SipherAGI/comfyui-animatediff": { + "author_account_age_days": 796, + "last_update": "2024-05-22 18:16:43", + "stars": 740 + }, + "https://github.com/SirWillance/FoW_Suite_LIGHT": { + "author_account_age_days": 169, + "last_update": "2025-04-15 08:48:46", + "stars": 2 + }, + "https://github.com/SlackinJack/asyncdiff_comfyui": { + "author_account_age_days": 2567, + "last_update": "2025-04-03 03:17:56", + "stars": 0 + }, + "https://github.com/SlackinJack/distrifuser_comfyui": { + "author_account_age_days": 2567, + "last_update": "2025-04-03 03:18:17", + "stars": 0 + }, + "https://github.com/SleeeepyZhou/ComfyUI-CNtranslator": { + "author_account_age_days": 1589, + "last_update": "2025-03-29 04:35:17", + "stars": 5 + }, + "https://github.com/Slickytail/ComfyUI-InstantX-IPAdapter-SD3": { + "author_account_age_days": 3953, + "last_update": "2025-03-27 12:47:27", + "stars": 63 + }, + "https://github.com/Slickytail/ComfyUI-RegionalAdaptiveSampling": { + "author_account_age_days": 3953, + "last_update": "2025-04-07 09:20:23", + "stars": 20 + }, + "https://github.com/Smirnov75/ComfyUI-mxToolkit": { + "author_account_age_days": 1903, + "last_update": "2025-05-07 11:44:27", + "stars": 235 + }, + "https://github.com/Smuzzies/comfyui_meme_maker": { + "author_account_age_days": 1083, + "last_update": "2024-07-05 22:01:41", + "stars": 1 + }, + "https://github.com/SoftMeng/ComfyUI-DeepCache-Fix": { + "author_account_age_days": 3915, + "last_update": "2024-07-25 13:09:00", + "stars": 14 + }, + "https://github.com/SoftMeng/ComfyUI-PIL": { + "author_account_age_days": 3915, + "last_update": "2024-10-13 10:02:17", + "stars": 7 + }, + "https://github.com/SoftMeng/ComfyUI_ImageToText": { + "author_account_age_days": 3915, + "last_update": "2024-06-14 08:08:36", + "stars": 14 + }, + "https://github.com/SoftMeng/ComfyUI_Mexx_Poster": { + "author_account_age_days": 3915, + "last_update": "2024-06-14 07:06:27", + "stars": 26 + }, + "https://github.com/SoftMeng/ComfyUI_Mexx_Styler": { + "author_account_age_days": 3915, + "last_update": "2024-06-14 07:09:03", + "stars": 24 + }, + "https://github.com/SongGuo11/ComfyUI-SaveAnything-SG11": { + "author_account_age_days": 228, + "last_update": "2025-03-18 08:59:39", + "stars": 0 + }, + "https://github.com/Sorcerio/MBM-Music-Visualizer": { + "author_account_age_days": 4638, + "last_update": "2024-05-23 01:09:18", + "stars": 23 + }, + "https://github.com/SozeInc/ComfyUI-Mobile": { + "author_account_age_days": 471, + "last_update": "2024-08-22 03:12:11", + "stars": 0 + }, + "https://github.com/SozeInc/ComfyUI_Soze": { + "author_account_age_days": 471, + "last_update": "2025-07-07 15:54:47", + "stars": 5 + }, + "https://github.com/SparknightLLC/ComfyUI-ConditionalInterrupt": { + "author_account_age_days": 343, + "last_update": "2025-04-15 20:36:37", + "stars": 3 + }, + "https://github.com/SparknightLLC/ComfyUI-GPENO": { + "author_account_age_days": 343, + "last_update": "2025-04-15 20:29:05", + "stars": 68 + }, + "https://github.com/SparknightLLC/ComfyUI-ImageAutosize": { + "author_account_age_days": 343, + "last_update": "2025-05-23 19:44:54", + "stars": 0 + }, + "https://github.com/SparknightLLC/ComfyUI-ImageAutotone": { + "author_account_age_days": 343, + "last_update": "2025-04-15 20:35:55", + "stars": 14 + }, + "https://github.com/SparknightLLC/ComfyUI-LatentClamp": { + "author_account_age_days": 343, + "last_update": "2025-04-15 20:36:15", + "stars": 2 + }, + "https://github.com/SparknightLLC/ComfyUI-MaskArbiter": { + "author_account_age_days": 343, + "last_update": "2025-04-15 20:35:34", + "stars": 4 + }, + "https://github.com/SparknightLLC/ComfyUI-WeightedRandomChoice": { + "author_account_age_days": 343, + "last_update": "2025-04-22 00:31:50", + "stars": 0 + }, + "https://github.com/SpenserCai/ComfyUI-FunAudioLLM": { + "author_account_age_days": 3106, + "last_update": "2024-11-27 09:22:05", + "stars": 84 + }, + "https://github.com/SshunWang/ComfyUI_CosyVoice": { + "author_account_age_days": 2333, + "last_update": "2025-02-05 23:48:10", + "stars": 14 + }, + "https://github.com/Stability-AI/ComfyUI-SAI_API": { + "author_account_age_days": 1234, + "last_update": "2025-03-04 12:11:12", + "stars": 61 + }, + "https://github.com/Stability-AI/stability-ComfyUI-nodes": { + "author_account_age_days": 1234, + "last_update": "2024-05-22 15:30:47", + "stars": 228 + }, + "https://github.com/StableLlama/ComfyUI-basic_data_handling": { + "author_account_age_days": 570, + "last_update": "2025-07-17 20:12:49", + "stars": 10 + }, + "https://github.com/StarAsh042/ComfyUI_RollingArtist": { + "author_account_age_days": 3400, + "last_update": "2025-05-05 21:26:43", + "stars": 0 + }, + "https://github.com/StarMagicAI/comfyui_tagger": { + "author_account_age_days": 3937, + "last_update": "2024-09-03 02:01:59", + "stars": 5 + }, + "https://github.com/Starnodes2024/ComfyUI_StarNodes": { + "author_account_age_days": 394, + "last_update": "2025-07-07 06:43:54", + "stars": 41 + }, + "https://github.com/StartHua/ComfyUI_OOTDiffusion_CXH": { + "author_account_age_days": 3226, + "last_update": "2024-06-14 08:12:12", + "stars": 123 + }, + "https://github.com/StartHua/ComfyUI_PCDMs": { + "author_account_age_days": 3226, + "last_update": "2024-05-22 23:21:14", + "stars": 7 + }, + "https://github.com/StartHua/ComfyUI_Seg_VITON": { + "author_account_age_days": 3226, + "last_update": "2024-05-22 23:20:17", + "stars": 216 + }, + "https://github.com/StartHua/Comfyui_CXH_DeepLX": { + "author_account_age_days": 3226, + "last_update": "2024-09-21 02:38:08", + "stars": 8 + }, + "https://github.com/StartHua/Comfyui_CXH_FluxLoraMerge": { + "author_account_age_days": 3226, + "last_update": "2024-12-26 06:56:07", + "stars": 24 + }, + "https://github.com/StartHua/Comfyui_CXH_Phi_3.5": { + "author_account_age_days": 3226, + "last_update": "2024-08-22 04:45:39", + "stars": 16 + }, + "https://github.com/StartHua/Comfyui_Gemini2": { + "author_account_age_days": 3226, + "last_update": "2024-12-12 09:42:42", + "stars": 16 + }, + "https://github.com/StartHua/Comfyui_joytag": { + "author_account_age_days": 3226, + "last_update": "2024-05-22 23:20:28", + "stars": 57 + }, + "https://github.com/StartHua/Comfyui_segformer_b2_clothes": { + "author_account_age_days": 3226, + "last_update": "2024-07-24 14:45:58", + "stars": 91 + }, + "https://github.com/Steudio/ComfyUI_Steudio": { + "author_account_age_days": 527, + "last_update": "2025-07-13 18:57:26", + "stars": 72 + }, + "https://github.com/Style-Mosaic/dino-x-comfyui-node": { + "author_account_age_days": 259, + "last_update": "2025-01-28 21:40:18", + "stars": 1 + }, + "https://github.com/SuperBeastsAI/ComfyUI-SuperBeasts": { + "author_account_age_days": 480, + "last_update": "2025-07-20 12:24:00", + "stars": 167 + }, + "https://github.com/SuperMasterBlasterLaser/ComfyUI_YOLO_Classifiers": { + "author_account_age_days": 3969, + "last_update": "2025-03-29 13:16:05", + "stars": 1 + }, + "https://github.com/Suzie1/ComfyUI_Comfyroll_CustomNodes": { + "author_account_age_days": 2541, + "last_update": "2024-07-24 11:16:13", + "stars": 935 + }, + "https://github.com/SwissCore92/comfyui-telegram-suite": { + "author_account_age_days": 2430, + "last_update": "2025-07-12 22:01:38", + "stars": 0 + }, + "https://github.com/Sxela/ComfyWarp": { + "author_account_age_days": 3763, + "last_update": "2025-04-01 22:18:02", + "stars": 47 + }, + "https://github.com/SykkoAtHome/ComfyUI_FaceProcessor": { + "author_account_age_days": 787, + "last_update": "2025-07-07 09:20:21", + "stars": 8 + }, + "https://github.com/T-Ph525/ComfyUI-Underage-Filter": { + "author_account_age_days": 1327, + "last_update": "2025-05-30 12:10:57", + "stars": 0 + }, + "https://github.com/TFL-TFL/ComfyUI_Text_Translation": { + "author_account_age_days": 1933, + "last_update": "2025-05-25 02:27:01", + "stars": 75 + }, + "https://github.com/THtianhao/ComfyUI-FaceChain": { + "author_account_age_days": 4082, + "last_update": "2025-04-28 07:00:45", + "stars": 135 + }, + "https://github.com/THtianhao/ComfyUI-Portrait-Maker": { + "author_account_age_days": 4082, + "last_update": "2024-05-22 21:18:05", + "stars": 194 + }, + "https://github.com/TJ16th/comfyUI_TJ_NormalLighting": { + "author_account_age_days": 2926, + "last_update": "2024-05-23 00:25:37", + "stars": 151 + }, + "https://github.com/TKRLAB/ComfyUI_Prompt_List_JSON": { + "author_account_age_days": 511, + "last_update": "2024-12-23 05:26:14", + "stars": 2 + }, + "https://github.com/TMElyralab/Comfyui-MusePose": { + "author_account_age_days": 488, + "last_update": "2024-07-31 06:21:52", + "stars": 417 + }, + "https://github.com/TRI3D-LC/ComfyUI-MiroBoard": { + "author_account_age_days": 830, + "last_update": "2024-11-21 07:15:20", + "stars": 4 + }, + "https://github.com/TRI3D-LC/tri3d-comfyui-nodes": { + "author_account_age_days": 830, + "last_update": "2025-06-19 08:44:57", + "stars": 27 + }, + "https://github.com/TTPlanetPig/Comfyui_Hunyuan3D": { + "author_account_age_days": 594, + "last_update": "2024-11-10 16:59:42", + "stars": 28 + }, + "https://github.com/TTPlanetPig/Comfyui_JC2": { + "author_account_age_days": 594, + "last_update": "2025-05-21 16:25:36", + "stars": 200 + }, + "https://github.com/TTPlanetPig/Comfyui_Object_Detect_QWen_VL": { + "author_account_age_days": 594, + "last_update": "2025-06-24 15:16:20", + "stars": 108 + }, + "https://github.com/TTPlanetPig/Comfyui_Object_Migration": { + "author_account_age_days": 594, + "last_update": "2024-11-20 16:51:57", + "stars": 752 + }, + "https://github.com/TTPlanetPig/Comfyui_TTP_CN_Preprocessor": { + "author_account_age_days": 594, + "last_update": "2024-08-21 17:52:56", + "stars": 29 + }, + "https://github.com/TTPlanetPig/Comfyui_TTP_Toolset": { + "author_account_age_days": 594, + "last_update": "2025-06-15 11:21:35", + "stars": 709 + }, + "https://github.com/TTPlanetPig/TTP_Comfyui_FramePack_SE": { + "author_account_age_days": 594, + "last_update": "2025-04-25 11:36:15", + "stars": 44 + }, + "https://github.com/TW-CUI/TW-CUI-Util": { + "author_account_age_days": 422, + "last_update": "2024-08-14 01:49:13", + "stars": 1 + }, + "https://github.com/TZOOTZ/ComfyUI-TZOOTZ_VHS": { + "author_account_age_days": 3440, + "last_update": "2025-06-04 10:19:49", + "stars": 2 + }, + "https://github.com/TaiTair/comfyui-simswap": { + "author_account_age_days": 3958, + "last_update": "2024-07-31 18:28:38", + "stars": 14 + }, + "https://github.com/Taithrah/ComfyUI_Fens_Simple_Nodes": { + "author_account_age_days": 4897, + "last_update": "2025-06-20 22:03:36", + "stars": 1 + }, + "https://github.com/Taremin/comfyui-keep-multiple-tabs": { + "author_account_age_days": 2606, + "last_update": "2025-02-25 15:53:35", + "stars": 5 + }, + "https://github.com/Taremin/comfyui-prompt-config": { + "author_account_age_days": 2606, + "last_update": "2025-02-28 03:53:16", + "stars": 0 + }, + "https://github.com/Taremin/comfyui-prompt-extranetworks": { + "author_account_age_days": 2606, + "last_update": "2025-03-04 07:49:21", + "stars": 7 + }, + "https://github.com/Taremin/comfyui-string-tools": { + "author_account_age_days": 2606, + "last_update": "2025-02-26 13:22:39", + "stars": 1 + }, + "https://github.com/Taremin/webui-monaco-prompt": { + "author_account_age_days": 2606, + "last_update": "2025-03-06 08:57:58", + "stars": 27 + }, + "https://github.com/TashaSkyUp/EternalKernelPytorchNodes": { + "author_account_age_days": 3556, + "last_update": "2025-06-22 19:16:21", + "stars": 1 + }, + "https://github.com/TeaCrab/ComfyUI-TeaNodes": { + "author_account_age_days": 3609, + "last_update": "2024-05-22 20:44:05", + "stars": 5 + }, + "https://github.com/TemryL/ComfyS3": { + "author_account_age_days": 1260, + "last_update": "2024-11-05 14:56:04", + "stars": 48 + }, + "https://github.com/TemryL/ComfyUI-IDM-VTON": { + "author_account_age_days": 1260, + "last_update": "2024-08-20 02:44:02", + "stars": 530 + }, + "https://github.com/Temult/TWanSigmaGraph": { + "author_account_age_days": 657, + "last_update": "2025-04-17 09:39:00", + "stars": 8 + }, + "https://github.com/TencentQQGYLab/ComfyUI-ELLA": { + "author_account_age_days": 489, + "last_update": "2024-08-16 11:21:10", + "stars": 382 + }, + "https://github.com/Tenney95/ComfyUI-NodeAligner": { + "author_account_age_days": 317, + "last_update": "2025-05-09 07:48:08", + "stars": 132 + }, + "https://github.com/Tensor-Art/ComfyUI_TENSOR_ART": { + "author_account_age_days": 791, + "last_update": "2025-04-02 08:31:41", + "stars": 9 + }, + "https://github.com/TensorKaze/ComfyUI-TkNodes": { + "author_account_age_days": 128, + "last_update": "2025-05-26 01:36:34", + "stars": 0 + }, + "https://github.com/TheBarret/ZSuite": { + "author_account_age_days": 3104, + "last_update": "2024-08-10 13:31:03", + "stars": 9 + }, + "https://github.com/TheBill2001/ComfyUI-Save-Image-Caption": { + "author_account_age_days": 1833, + "last_update": "2025-04-04 12:21:18", + "stars": 8 + }, + "https://github.com/TheBill2001/comfyui-upscale-by-model": { + "author_account_age_days": 1833, + "last_update": "2024-06-18 17:57:06", + "stars": 9 + }, + "https://github.com/TheLustriVA/ComfyUI-Image-Size-Tools": { + "author_account_age_days": 1471, + "last_update": "2025-06-21 15:09:46", + "stars": 1 + }, + "https://github.com/TheMistoAI/ComfyUI-Anyline": { + "author_account_age_days": 556, + "last_update": "2024-08-30 09:50:34", + "stars": 470 + }, + "https://github.com/TheWhykiki/Whykiki-ComfyUIToolset": { + "author_account_age_days": 3708, + "last_update": "2025-03-02 22:17:54", + "stars": 0 + }, + "https://github.com/ThepExcel/aiangelgallery-comfyui": { + "author_account_age_days": 1952, + "last_update": "2025-01-15 07:53:09", + "stars": 2 + }, + "https://github.com/ThereforeGames/ComfyUI-Unprompted": { + "author_account_age_days": 1326, + "last_update": "2024-11-13 20:46:08", + "stars": 10 + }, + "https://github.com/TiamaTiramisu/risutools": { + "author_account_age_days": 392, + "last_update": "2025-04-20 22:51:50", + "stars": 1 + }, + "https://github.com/TinyTerra/ComfyUI_tinyterraNodes": { + "author_account_age_days": 1012, + "last_update": "2025-03-14 08:21:19", + "stars": 533 + }, + "https://github.com/Tlant/ComfyUI-OllamaPromptsGeneratorTlant": { + "author_account_age_days": 3061, + "last_update": "2025-07-18 11:45:29", + "stars": 2 + }, + "https://github.com/ToTheBeginning/ComfyUI-DreamO": { + "author_account_age_days": 3781, + "last_update": "2025-06-24 14:59:29", + "stars": 159 + }, + "https://github.com/Tr1dae/ComfyUI-Dequality": { + "author_account_age_days": 930, + "last_update": "2025-02-13 16:41:59", + "stars": 1 + }, + "https://github.com/Trgtuan10/ComfyUI_YoloSegment_Mask": { + "author_account_age_days": 963, + "last_update": "2024-09-26 01:46:02", + "stars": 1 + }, + "https://github.com/TripleHeadedMonkey/ComfyUI_MileHighStyler": { + "author_account_age_days": 1252, + "last_update": "2025-06-18 09:32:23", + "stars": 58 + }, + "https://github.com/Tropfchen/ComfyUI-Embedding_Picker": { + "author_account_age_days": 4245, + "last_update": "2024-08-26 16:33:49", + "stars": 45 + }, + "https://github.com/Tropfchen/ComfyUI-yaResolutionSelector": { + "author_account_age_days": 4245, + "last_update": "2024-11-10 20:44:23", + "stars": 14 + }, + "https://github.com/TrophiHunter/ComfyUI_Photography_Nodes": { + "author_account_age_days": 1110, + "last_update": "2025-05-22 07:41:32", + "stars": 2 + }, + "https://github.com/Trung0246/ComfyUI-0246": { + "author_account_age_days": 3771, + "last_update": "2025-03-15 03:39:33", + "stars": 128 + }, + "https://github.com/Ttl/ComfyUi_NNLatentUpscale": { + "author_account_age_days": 5313, + "last_update": "2024-12-01 16:34:24", + "stars": 242 + }, + "https://github.com/TylerZoro/SD3-Scaling": { + "author_account_age_days": 1677, + "last_update": "2024-06-15 16:59:22", + "stars": 1 + }, + "https://github.com/Umikaze-job/select_folder_path_easy": { + "author_account_age_days": 610, + "last_update": "2024-05-22 21:30:13", + "stars": 6 + }, + "https://github.com/VAST-AI-Research/ComfyUI-Tripo": { + "author_account_age_days": 633, + "last_update": "2025-06-26 07:50:36", + "stars": 289 + }, + "https://github.com/VK/vk-nodes": { + "author_account_age_days": 5737, + "last_update": "2025-05-07 19:59:57", + "stars": 0 + }, + "https://github.com/Vaibhavs10/ComfyUI-DDUF": { + "author_account_age_days": 3372, + "last_update": "2025-01-03 15:10:44", + "stars": 5 + }, + "https://github.com/VangengLab/ComfyUI-LivePortrait_v2": { + "author_account_age_days": 670, + "last_update": "2024-11-09 08:00:22", + "stars": 6 + }, + "https://github.com/VangengLab/ComfyUI-LivePortrait_v3": { + "author_account_age_days": 670, + "last_update": "2024-11-09 07:59:42", + "stars": 22 + }, + "https://github.com/Vaporbook/ComfyUI-SaveImage-PP": { + "author_account_age_days": 5230, + "last_update": "2025-05-08 15:04:17", + "stars": 0 + }, + "https://github.com/VertexAnomaly/ComfyUI_ImageSentinel": { + "author_account_age_days": 1047, + "last_update": "2025-04-04 13:50:16", + "stars": 2 + }, + "https://github.com/VertexStudio/roblox-comfyui-nodes": { + "author_account_age_days": 3370, + "last_update": "2024-10-08 16:35:54", + "stars": 0 + }, + "https://github.com/VikramxD/VEnhancer-ComfyUI-Wrapper": { + "author_account_age_days": 1747, + "last_update": "2025-01-14 07:35:00", + "stars": 12 + }, + "https://github.com/Visionatrix/ComfyUI-Gemini": { + "author_account_age_days": 508, + "last_update": "2025-07-14 19:44:01", + "stars": 12 + }, + "https://github.com/Visionatrix/ComfyUI-RemoteVAE": { + "author_account_age_days": 508, + "last_update": "2025-07-05 18:20:05", + "stars": 2 + }, + "https://github.com/Visionatrix/ComfyUI-Visionatrix": { + "author_account_age_days": 508, + "last_update": "2025-07-06 10:53:01", + "stars": 1 + }, + "https://github.com/VrchStudio/comfyui-web-viewer": { + "author_account_age_days": 1311, + "last_update": "2025-07-19 19:50:48", + "stars": 228 + }, + "https://github.com/VykosX/ControlFlowUtils": { + "author_account_age_days": 2301, + "last_update": "2024-12-09 17:24:48", + "stars": 123 + }, + "https://github.com/WASasquatch/ComfyUI_Preset_Merger": { + "author_account_age_days": 5017, + "last_update": "2025-03-27 14:52:46", + "stars": 33 + }, + "https://github.com/WASasquatch/FreeU_Advanced": { + "author_account_age_days": 5017, + "last_update": "2024-10-27 01:49:14", + "stars": 119 + }, + "https://github.com/WASasquatch/PPF_Noise_ComfyUI": { + "author_account_age_days": 5017, + "last_update": "2024-06-14 10:27:23", + "stars": 24 + }, + "https://github.com/WASasquatch/PowerNoiseSuite": { + "author_account_age_days": 5017, + "last_update": "2024-07-31 13:48:33", + "stars": 76 + }, + "https://github.com/WASasquatch/WAS_Extras": { + "author_account_age_days": 5017, + "last_update": "2025-07-18 17:18:44", + "stars": 35 + }, + "https://github.com/WASasquatch/face-upscaling-and-seamless-embedding": { + "author_account_age_days": 5017, + "last_update": "2025-07-20 02:04:50", + "stars": 2 + }, + "https://github.com/WUYUDING2583/ComfyUI-Save-Image-Callback": { + "author_account_age_days": 2603, + "last_update": "2025-01-21 08:19:52", + "stars": 2 + }, + "https://github.com/WX-NPS1598/ComfyUI-Auto_Crop_By_NPS": { + "author_account_age_days": 367, + "last_update": "2024-07-30 04:43:14", + "stars": 5 + }, + "https://github.com/WaddingtonHoldings/ComfyUI-InstaSD": { + "author_account_age_days": 1014, + "last_update": "2025-07-03 19:44:52", + "stars": 3 + }, + "https://github.com/WainWong/ComfyUI-Loop-image": { + "author_account_age_days": 3014, + "last_update": "2025-03-28 03:09:27", + "stars": 34 + }, + "https://github.com/Wakfull33/ComfyUI-SaveImageCivitAI": { + "author_account_age_days": 3351, + "last_update": "2024-10-29 11:03:23", + "stars": 1 + }, + "https://github.com/WangPengxing/ComfyUI_WPX_Node": { + "author_account_age_days": 718, + "last_update": "2025-01-20 08:31:55", + "stars": 0 + }, + "https://github.com/WarpedAnimation/ComfyUI-WarpedToolset": { + "author_account_age_days": 132, + "last_update": "2025-07-16 14:45:44", + "stars": 3 + }, + "https://github.com/WaveSpeedAI/wavespeed-comfyui": { + "author_account_age_days": 180, + "last_update": "2025-07-15 10:04:28", + "stars": 17 + }, + "https://github.com/WebDev9000/WebDev9000-Nodes": { + "author_account_age_days": 4143, + "last_update": "2024-06-14 10:28:22", + "stars": 1 + }, + "https://github.com/Wenaka2004/ComfyUI-TagClassifier": { + "author_account_age_days": 929, + "last_update": "2025-01-31 04:28:34", + "stars": 24 + }, + "https://github.com/Wicloz/ComfyUI-Simply-Nodes": { + "author_account_age_days": 4035, + "last_update": "2025-01-05 01:44:38", + "stars": 1 + }, + "https://github.com/Windecay/ComfyUI-ReservedVRAM": { + "author_account_age_days": 417, + "last_update": "2025-06-29 13:42:36", + "stars": 18 + }, + "https://github.com/X-School-Academy/X-FluxAgent": { + "author_account_age_days": 109, + "last_update": "2025-06-05 08:28:11", + "stars": 26 + }, + "https://github.com/X-T-E-R/ComfyUI-EasyCivitai-XTNodes": { + "author_account_age_days": 1554, + "last_update": "2024-09-04 11:37:04", + "stars": 45 + }, + "https://github.com/XLabs-AI/x-flux-comfyui": { + "author_account_age_days": 349, + "last_update": "2024-10-30 12:51:21", + "stars": 1600 + }, + "https://github.com/XWAVEart/comfyui-xwave-xlitch-nodes": { + "author_account_age_days": 628, + "last_update": "2025-06-04 20:33:17", + "stars": 2 + }, + "https://github.com/XchanBik/ComfyUI_SimpleBridgeNode": { + "author_account_age_days": 73, + "last_update": "2025-05-15 22:10:43", + "stars": 0 + }, + "https://github.com/Xclbr7/ComfyUI-Merlin": { + "author_account_age_days": 328, + "last_update": "2024-09-02 19:36:05", + "stars": 29 + }, + "https://github.com/Xiangyu-CAS/HandFixer": { + "author_account_age_days": 3779, + "last_update": "2025-02-10 02:02:01", + "stars": 190 + }, + "https://github.com/XieJunchen/comfyUI_LLM": { + "author_account_age_days": 2165, + "last_update": "2025-07-06 14:15:54", + "stars": 2 + }, + "https://github.com/Xkipper/ComfyUI_SkipperNodes": { + "author_account_age_days": 3870, + "last_update": "2025-04-26 20:13:45", + "stars": 0 + }, + "https://github.com/XmYx/ComfyUI-SmolLM3": { + "author_account_age_days": 2997, + "last_update": "2025-07-10 06:25:43", + "stars": 3 + }, + "https://github.com/XmYx/deforum-comfy-nodes": { + "author_account_age_days": 2997, + "last_update": "2025-05-26 19:50:55", + "stars": 191 + }, + "https://github.com/Xyem/Xycuno-Oobabooga": { + "author_account_age_days": 4716, + "last_update": "2024-05-23 00:14:14", + "stars": 4 + }, + "https://github.com/YMC-GitHub/comfyui_node_ymc_effect_shatter": { + "author_account_age_days": 3086, + "last_update": "2025-04-12 15:00:21", + "stars": 0 + }, + "https://github.com/YMC-GitHub/ymc-node-as-x-type": { + "author_account_age_days": 3086, + "last_update": "2025-06-06 12:23:11", + "stars": 0 + }, + "https://github.com/YMC-GitHub/ymc-node-suite-comfyui": { + "author_account_age_days": 3086, + "last_update": "2025-06-09 08:07:23", + "stars": 20 + }, + "https://github.com/YMC-GitHub/ymc_node_joy": { + "author_account_age_days": 3086, + "last_update": "2025-06-19 07:24:28", + "stars": 0 + }, + "https://github.com/YOUR-WORST-TACO/ComfyUI-TacoNodes": { + "author_account_age_days": 4147, + "last_update": "2024-05-22 20:48:23", + "stars": 15 + }, + "https://github.com/YRIKKA/ComfyUI-InferenceTimeScaling": { + "author_account_age_days": 390, + "last_update": "2025-02-27 21:13:18", + "stars": 21 + }, + "https://github.com/Yahweasel/ComfyUI-MinDalle": { + "author_account_age_days": 3041, + "last_update": "2025-05-26 20:42:34", + "stars": 0 + }, + "https://github.com/Yanick112/ComfyUI-ToSVG": { + "author_account_age_days": 1205, + "last_update": "2025-06-20 14:10:06", + "stars": 210 + }, + "https://github.com/YaroslavIv/comfyui_swd": { + "author_account_age_days": 1968, + "last_update": "2025-06-23 04:10:43", + "stars": 2 + }, + "https://github.com/YarvixPA/ComfyUI-NeuralMedia": { + "author_account_age_days": 598, + "last_update": "2025-07-16 08:15:03", + "stars": 5 + }, + "https://github.com/YinBailiang/MergeBlockWeighted_fo_ComfyUI": { + "author_account_age_days": 1177, + "last_update": "2025-01-03 03:58:20", + "stars": 16 + }, + "https://github.com/Yo1up/Diffusion-Model-Detailer": { + "author_account_age_days": 932, + "last_update": "2025-06-30 06:46:20", + "stars": 2 + }, + "https://github.com/Yuan-ManX/ComfyUI-AniSora": { + "author_account_age_days": 1831, + "last_update": "2025-05-27 04:11:59", + "stars": 37 + }, + "https://github.com/Yuan-ManX/ComfyUI-AudioX": { + "author_account_age_days": 1831, + "last_update": "2025-05-27 04:14:59", + "stars": 10 + }, + "https://github.com/Yuan-ManX/ComfyUI-Bagel": { + "author_account_age_days": 1831, + "last_update": "2025-05-28 03:00:53", + "stars": 29 + }, + "https://github.com/Yuan-ManX/ComfyUI-ChatterboxTTS": { + "author_account_age_days": 1831, + "last_update": "2025-05-30 08:13:06", + "stars": 9 + }, + "https://github.com/Yuan-ManX/ComfyUI-Cobra": { + "author_account_age_days": 1831, + "last_update": "2025-04-18 02:06:26", + "stars": 5 + }, + "https://github.com/Yuan-ManX/ComfyUI-Dia": { + "author_account_age_days": 1831, + "last_update": "2025-04-24 06:58:05", + "stars": 4 + }, + "https://github.com/Yuan-ManX/ComfyUI-Direct3D-S2": { + "author_account_age_days": 1831, + "last_update": "2025-06-10 03:24:25", + "stars": 8 + }, + "https://github.com/Yuan-ManX/ComfyUI-HiDream-I1": { + "author_account_age_days": 1831, + "last_update": "2025-04-14 02:56:22", + "stars": 8 + }, + "https://github.com/Yuan-ManX/ComfyUI-Hunyuan3D-2.1": { + "author_account_age_days": 1831, + "last_update": "2025-06-16 07:03:54", + "stars": 20 + }, + "https://github.com/Yuan-ManX/ComfyUI-HunyuanPortrait": { + "author_account_age_days": 1831, + "last_update": "2025-05-28 09:47:34", + "stars": 8 + }, + "https://github.com/Yuan-ManX/ComfyUI-HunyuanVideo-Avatar": { + "author_account_age_days": 1831, + "last_update": "2025-05-29 07:49:15", + "stars": 24 + }, + "https://github.com/Yuan-ManX/ComfyUI-Kimi-VL": { + "author_account_age_days": 1831, + "last_update": "2025-04-17 06:55:14", + "stars": 1 + }, + "https://github.com/Yuan-ManX/ComfyUI-LLaMA-Mesh": { + "author_account_age_days": 1831, + "last_update": "2024-11-29 09:52:04", + "stars": 5 + }, + "https://github.com/Yuan-ManX/ComfyUI-LayerAnimate": { + "author_account_age_days": 1831, + "last_update": "2025-04-01 03:16:53", + "stars": 4 + }, + "https://github.com/Yuan-ManX/ComfyUI-LiveCC": { + "author_account_age_days": 1831, + "last_update": "2025-05-27 04:14:30", + "stars": 4 + }, + "https://github.com/Yuan-ManX/ComfyUI-Matrix-Game": { + "author_account_age_days": 1831, + "last_update": "2025-05-13 08:05:00", + "stars": 4 + }, + "https://github.com/Yuan-ManX/ComfyUI-MoviiGen": { + "author_account_age_days": 1831, + "last_update": "2025-05-27 04:12:30", + "stars": 10 + }, + "https://github.com/Yuan-ManX/ComfyUI-Multiverse": { + "author_account_age_days": 1831, + "last_update": "2025-05-09 06:51:35", + "stars": 1 + }, + "https://github.com/Yuan-ManX/ComfyUI-Muyan-TTS": { + "author_account_age_days": 1831, + "last_update": "2025-05-08 08:21:24", + "stars": 2 + }, + "https://github.com/Yuan-ManX/ComfyUI-OmniGen2": { + "author_account_age_days": 1831, + "last_update": "2025-06-26 02:46:07", + "stars": 118 + }, + "https://github.com/Yuan-ManX/ComfyUI-OrpheusTTS": { + "author_account_age_days": 1831, + "last_update": "2025-03-24 02:47:23", + "stars": 6 + }, + "https://github.com/Yuan-ManX/ComfyUI-PhotoDoodle": { + "author_account_age_days": 1831, + "last_update": "2025-02-28 03:47:54", + "stars": 3 + }, + "https://github.com/Yuan-ManX/ComfyUI-PosterCraft": { + "author_account_age_days": 1831, + "last_update": "2025-06-26 10:00:28", + "stars": 17 + }, + "https://github.com/Yuan-ManX/ComfyUI-SkyReels-A2": { + "author_account_age_days": 1831, + "last_update": "2025-05-27 04:14:03", + "stars": 28 + }, + "https://github.com/Yuan-ManX/ComfyUI-SoundHub": { + "author_account_age_days": 1831, + "last_update": "2024-11-27 08:00:48", + "stars": 1 + }, + "https://github.com/Yuan-ManX/ComfyUI-Step1X-3D": { + "author_account_age_days": 1831, + "last_update": "2025-05-16 02:36:06", + "stars": 13 + }, + "https://github.com/Yuan-ManX/ComfyUI-Step1X-Edit": { + "author_account_age_days": 1831, + "last_update": "2025-04-29 07:36:52", + "stars": 11 + }, + "https://github.com/Yuan-ManX/ComfyUI-StyleStudio": { + "author_account_age_days": 1831, + "last_update": "2025-03-10 09:38:08", + "stars": 4 + }, + "https://github.com/Yuan-ManX/ComfyUI-ThinkSound": { + "author_account_age_days": 1831, + "last_update": "2025-07-12 03:48:32", + "stars": 15 + }, + "https://github.com/Yuan-ManX/ComfyUI-UNO": { + "author_account_age_days": 1831, + "last_update": "2025-04-11 07:37:33", + "stars": 10 + }, + "https://github.com/Yuan-ManX/ComfyUI-Vui": { + "author_account_age_days": 1831, + "last_update": "2025-06-12 03:55:32", + "stars": 3 + }, + "https://github.com/Yukinoshita-Yukinoe/ComfyUI-Qwen-Node": { + "author_account_age_days": 1798, + "last_update": "2025-07-15 00:58:42", + "stars": 1 + }, + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-APISR": { + "author_account_age_days": 731, + "last_update": "2024-05-22 14:14:46", + "stars": 376 + }, + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-Animated-optical-illusions": { + "author_account_age_days": 731, + "last_update": "2024-06-14 07:06:15", + "stars": 21 + }, + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-ArtGallery": { + "author_account_age_days": 731, + "last_update": "2024-06-12 04:40:50", + "stars": 509 + }, + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-BRIA_AI-RMBG": { + "author_account_age_days": 731, + "last_update": "2024-05-22 14:14:18", + "stars": 812 + }, + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-DeepSeek-JanusPro": { + "author_account_age_days": 731, + "last_update": "2025-02-21 09:45:54", + "stars": 103 + }, + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-DepthFM": { + "author_account_age_days": 731, + "last_update": "2024-05-22 14:14:03", + "stars": 75 + }, + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-InstantID": { + "author_account_age_days": 731, + "last_update": "2024-05-22 13:57:55", + "stars": 1425 + }, + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-Phi-3-mini": { + "author_account_age_days": 731, + "last_update": "2024-06-30 08:41:40", + "stars": 205 + }, + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-PhotoMaker-ZHO": { + "author_account_age_days": 731, + "last_update": "2024-05-22 14:13:49", + "stars": 817 + }, + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-PixArt-alpha-Diffusers": { + "author_account_age_days": 731, + "last_update": "2024-05-22 13:40:58", + "stars": 50 + }, + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-Q-Align": { + "author_account_age_days": 731, + "last_update": "2024-05-22 14:15:52", + "stars": 4 + }, + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-Qwen-VL-API": { + "author_account_age_days": 731, + "last_update": "2024-05-22 14:14:57", + "stars": 212 + }, + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-SVD-ZHO": { + "author_account_age_days": 731, + "last_update": "2024-05-22 13:40:44", + "stars": 107 + }, + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-SegMoE": { + "author_account_age_days": 731, + "last_update": "2024-05-22 13:41:14", + "stars": 79 + }, + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-Text_Image-Composite": { + "author_account_age_days": 731, + "last_update": "2024-05-31 12:03:55", + "stars": 112 + }, + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-UltraEdit-ZHO": { + "author_account_age_days": 731, + "last_update": "2024-07-11 14:59:07", + "stars": 147 + }, + "https://github.com/ZHO-ZHO-ZHO/ComfyUI-YoloWorld-EfficientSAM": { + "author_account_age_days": 731, + "last_update": "2024-05-22 13:01:07", + "stars": 753 + }, + "https://github.com/ZHO-ZHO-ZHO/comfyui-portrait-master-zh-cn": { + "author_account_age_days": 731, + "last_update": "2024-06-14 09:00:04", + "stars": 1750 + }, + "https://github.com/ZXL-Xinram/ComfyUI-AutoFlow": { + "author_account_age_days": 1674, + "last_update": "2025-07-16 17:17:01", + "stars": 2 + }, + "https://github.com/ZZXYWQ/ComfyUI-ZZXYWQ": { + "author_account_age_days": 1664, + "last_update": "2024-07-19 06:38:39", + "stars": 23 + }, + "https://github.com/Zachary116699/ComfyUI-LoadImageWithMetaDataEx": { + "author_account_age_days": 1752, + "last_update": "2025-06-10 07:10:28", + "stars": 1 + }, + "https://github.com/ZaneA/ComfyUI-ImageReward": { + "author_account_age_days": 5931, + "last_update": "2025-02-24 19:55:45", + "stars": 31 + }, + "https://github.com/Zar4X/ComfyUI-Batch-Process": { + "author_account_age_days": 822, + "last_update": "2025-07-03 10:56:16", + "stars": 2 + }, + "https://github.com/Zar4X/ComfyUI-Image-Resizing": { + "author_account_age_days": 822, + "last_update": "2025-06-25 14:43:35", + "stars": 1 + }, + "https://github.com/Zch6111/AI_Text_Comfyui": { + "author_account_age_days": 464, + "last_update": "2025-06-05 03:22:47", + "stars": 1 + }, + "https://github.com/ZeDarkAdam/ComfyUI-Embeddings-Tools": { + "author_account_age_days": 1585, + "last_update": "2024-06-23 19:19:40", + "stars": 2 + }, + "https://github.com/Zehong-Ma/ComfyUI-MagCache": { + "author_account_age_days": 1594, + "last_update": "2025-06-30 08:47:16", + "stars": 194 + }, + "https://github.com/Zeks/comfyui-rapidfire": { + "author_account_age_days": 5012, + "last_update": "2025-07-09 16:21:07", + "stars": 0 + }, + "https://github.com/Zuellni/ComfyUI-Custom-Nodes": { + "author_account_age_days": 914, + "last_update": "2023-09-19 12:11:26", + "stars": 44 + }, + "https://github.com/Zuellni/ComfyUI-ExLlama-Nodes": { + "author_account_age_days": 914, + "last_update": "2024-12-06 14:22:11", + "stars": 119 + }, + "https://github.com/Zuellni/ComfyUI-PickScore-Nodes": { + "author_account_age_days": 914, + "last_update": "2024-09-08 09:17:04", + "stars": 38 + }, + "https://github.com/a-und-b/ComfyUI_Delay": { + "author_account_age_days": 831, + "last_update": "2025-01-10 11:20:35", + "stars": 4 + }, + "https://github.com/a-und-b/ComfyUI_IC-Light-v2_fal": { + "author_account_age_days": 831, + "last_update": "2025-05-05 08:34:47", + "stars": 38 + }, + "https://github.com/a-und-b/ComfyUI_JSON_Helper": { + "author_account_age_days": 831, + "last_update": "2025-01-09 15:54:55", + "stars": 4 + }, + "https://github.com/a-und-b/ComfyUI_LoRA_from_URL": { + "author_account_age_days": 831, + "last_update": "2025-01-16 13:40:26", + "stars": 3 + }, + "https://github.com/a-und-b/ComfyUI_MaskAreaCondition": { + "author_account_age_days": 831, + "last_update": "2025-04-28 08:23:36", + "stars": 3 + }, + "https://github.com/a1lazydog/ComfyUI-AudioScheduler": { + "author_account_age_days": 5193, + "last_update": "2024-08-08 03:04:19", + "stars": 102 + }, + "https://github.com/abdozmantar/ComfyUI-DeepExtract": { + "author_account_age_days": 544, + "last_update": "2025-04-26 15:13:57", + "stars": 39 + }, + "https://github.com/aburahamu/ComfyUI-IsNiceParts": { + "author_account_age_days": 464, + "last_update": "2024-06-14 12:01:40", + "stars": 3 + }, + "https://github.com/aburahamu/ComfyUI-RequestsPoster": { + "author_account_age_days": 464, + "last_update": "2024-06-14 13:59:24", + "stars": 2 + }, + "https://github.com/abyz22/image_control": { + "author_account_age_days": 554, + "last_update": "2024-08-31 08:39:44", + "stars": 16 + }, + "https://github.com/acorderob/sd-webui-prompt-postprocessor": { + "author_account_age_days": 4219, + "last_update": "2025-05-31 10:32:11", + "stars": 36 + }, + "https://github.com/adbrasi/ComfyUI-TrashNodes-DownloadHuggingface": { + "author_account_age_days": 1095, + "last_update": "2024-05-22 23:24:45", + "stars": 6 + }, + "https://github.com/adieyal/comfyui-dynamicprompts": { + "author_account_age_days": 5408, + "last_update": "2024-07-09 14:21:09", + "stars": 329 + }, + "https://github.com/adigayung/ComfyUI-Translator": { + "author_account_age_days": 604, + "last_update": "2024-09-09 03:36:52", + "stars": 13 + }, + "https://github.com/adriflex/ComfyUI_Blender_Texdiff": { + "author_account_age_days": 2613, + "last_update": "2024-05-22 23:14:18", + "stars": 2 + }, + "https://github.com/aegis72/aegisflow_utility_nodes": { + "author_account_age_days": 975, + "last_update": "2024-10-03 11:11:39", + "stars": 33 + }, + "https://github.com/aegis72/comfyui-styles-all": { + "author_account_age_days": 975, + "last_update": "2024-05-22 22:10:41", + "stars": 52 + }, + "https://github.com/agilly1989/ComfyUI_agilly1989_motorway": { + "author_account_age_days": 2275, + "last_update": "2025-05-02 22:23:32", + "stars": 7 + }, + "https://github.com/ahernandezmiro/ComfyUI-GCP_Storage_tools": { + "author_account_age_days": 4387, + "last_update": "2025-01-03 18:48:03", + "stars": 2 + }, + "https://github.com/ai-liam/comfyui-liam": { + "author_account_age_days": 1912, + "last_update": "2024-06-22 03:27:52", + "stars": 2 + }, + "https://github.com/ai-liam/comfyui_liam_util": { + "author_account_age_days": 1912, + "last_update": "2024-05-22 22:21:23", + "stars": 1 + }, + "https://github.com/ai-shizuka/ComfyUI-tbox": { + "author_account_age_days": 403, + "last_update": "2025-04-22 10:21:03", + "stars": 15 + }, + "https://github.com/aiaiaikkk/ComfyUI-Curve": { + "author_account_age_days": 295, + "last_update": "2025-07-03 08:07:19", + "stars": 122 + }, + "https://github.com/aiaiaikkk/kontext-super-prompt": { + "author_account_age_days": 295, + "last_update": "2025-07-19 23:06:30", + "stars": 90 + }, + "https://github.com/aianimation55/ComfyUI-FatLabels": { + "author_account_age_days": 665, + "last_update": "2024-05-22 21:26:01", + "stars": 5 + }, + "https://github.com/aiartvn/A2V_Multi_Image_Composite": { + "author_account_age_days": 176, + "last_update": "2025-02-02 04:14:06", + "stars": 1 + }, + "https://github.com/aicoder-max/Pillar_For_ComfyUI": { + "author_account_age_days": 61, + "last_update": "2025-06-05 09:40:09", + "stars": 2 + }, + "https://github.com/aicuai/aicu-comfyui-stability-ai-api": { + "author_account_age_days": 734, + "last_update": "2025-02-21 13:31:14", + "stars": 1 + }, + "https://github.com/aidec/Comfyui_TextBatch_aidec": { + "author_account_age_days": 4294, + "last_update": "2025-04-09 20:26:38", + "stars": 9 + }, + "https://github.com/aidenli/ComfyUI_NYJY": { + "author_account_age_days": 4939, + "last_update": "2025-06-16 06:06:12", + "stars": 125 + }, + "https://github.com/aigc-apps/EasyAnimate": { + "author_account_age_days": 709, + "last_update": "2025-03-06 11:41:28", + "stars": 2181 + }, + "https://github.com/aigc-apps/VideoX-Fun": { + "author_account_age_days": 709, + "last_update": "2025-07-18 07:06:03", + "stars": 1213 + }, + "https://github.com/aimerib/ComfyUI_HigherBitDepthSaveImage": { + "author_account_age_days": 3062, + "last_update": "2024-09-14 03:03:01", + "stars": 2 + }, + "https://github.com/ainewsto/Comfyui-chatgpt-api": { + "author_account_age_days": 1045, + "last_update": "2025-04-30 04:08:25", + "stars": 51 + }, + "https://github.com/ainewsto/Comfyui-google-veo2-api": { + "author_account_age_days": 1045, + "last_update": "2025-05-06 06:43:48", + "stars": 5 + }, + "https://github.com/ainewsto/Comfyui_Comfly_v2": { + "author_account_age_days": 1045, + "last_update": "2025-07-16 04:23:46", + "stars": 43 + }, + "https://github.com/ainewsto/comfyui-labs-google": { + "author_account_age_days": 1045, + "last_update": "2025-06-18 02:12:39", + "stars": 82 + }, + "https://github.com/aisabervisionlab/ComfyUI_merge_ASVL": { + "author_account_age_days": 380, + "last_update": "2024-07-31 13:39:36", + "stars": 2 + }, + "https://github.com/ajbergh/comfyui-ethnicity_hairstyle_clip_encoder": { + "author_account_age_days": 2174, + "last_update": "2025-02-28 22:07:11", + "stars": 2 + }, + "https://github.com/akatz-ai/ComfyUI-AKatz-Nodes": { + "author_account_age_days": 426, + "last_update": "2025-04-05 00:47:00", + "stars": 26 + }, + "https://github.com/akatz-ai/ComfyUI-Basic-Math": { + "author_account_age_days": 426, + "last_update": "2025-07-05 18:51:55", + "stars": 0 + }, + "https://github.com/akatz-ai/ComfyUI-DepthCrafter-Nodes": { + "author_account_age_days": 426, + "last_update": "2025-05-05 04:23:55", + "stars": 225 + }, + "https://github.com/akatz-ai/ComfyUI-Depthflow-Nodes": { + "author_account_age_days": 426, + "last_update": "2025-07-09 22:44:36", + "stars": 299 + }, + "https://github.com/akatz-ai/ComfyUI-X-Portrait-Nodes": { + "author_account_age_days": 426, + "last_update": "2025-04-20 05:29:13", + "stars": 86 + }, + "https://github.com/akierson/ComfyUI-textnodes": { + "author_account_age_days": 2725, + "last_update": "2024-10-20 20:12:15", + "stars": 0 + }, + "https://github.com/akierson/comfyui-colornodes": { + "author_account_age_days": 2725, + "last_update": "2024-10-20 20:14:09", + "stars": 1 + }, + "https://github.com/al-swaiti/All-IN-ONE-style": { + "author_account_age_days": 1321, + "last_update": "2024-07-30 05:59:49", + "stars": 5 + }, + "https://github.com/al-swaiti/ComfyUI-CascadeResolutions": { + "author_account_age_days": 1321, + "last_update": "2024-07-31 13:48:47", + "stars": 6 + }, + "https://github.com/al-swaiti/ComfyUI-OllamaGemini": { + "author_account_age_days": 1321, + "last_update": "2025-07-07 23:42:51", + "stars": 108 + }, + "https://github.com/alanhuang67/ComfyUI-FAI-Node": { + "author_account_age_days": 3881, + "last_update": "2024-08-02 03:35:41", + "stars": 14 + }, + "https://github.com/alastor-666-1933/caching_to_not_waste": { + "author_account_age_days": 4441, + "last_update": "2025-07-18 14:34:09", + "stars": 5 + }, + "https://github.com/alchemine/comfyui-alchemine-pack": { + "author_account_age_days": 2216, + "last_update": "2025-07-16 02:29:07", + "stars": 0 + }, + "https://github.com/aleolidev/comfy_kaizen_package": { + "author_account_age_days": 2969, + "last_update": "2025-06-21 11:10:52", + "stars": 0 + }, + "https://github.com/alessandroperilli/APW_Nodes": { + "author_account_age_days": 3899, + "last_update": "2025-06-19 14:34:41", + "stars": 4 + }, + "https://github.com/alessandroperilli/OCS_Nodes": { + "author_account_age_days": 3899, + "last_update": "2025-07-06 11:07:34", + "stars": 0 + }, + "https://github.com/alessandrozonta/ComfyUI-CenterNode": { + "author_account_age_days": 1588, + "last_update": "2024-11-14 12:20:40", + "stars": 7 + }, + "https://github.com/alessandrozonta/ComfyUI-Layers": { + "author_account_age_days": 1588, + "last_update": "2024-07-31 13:46:32", + "stars": 54 + }, + "https://github.com/alessandrozonta/ComfyUI-OpenPose": { + "author_account_age_days": 1588, + "last_update": "2024-07-31 13:51:14", + "stars": 28 + }, + "https://github.com/alessandrozonta/ComfyUI-PoseDirection": { + "author_account_age_days": 1588, + "last_update": "2025-06-03 10:12:26", + "stars": 1 + }, + "https://github.com/alessandrozonta/Comfyui-LoopLoader": { + "author_account_age_days": 1588, + "last_update": "2025-02-21 13:28:39", + "stars": 2 + }, + "https://github.com/alexcong/ComfyUI_QwenVL": { + "author_account_age_days": 3978, + "last_update": "2025-06-07 21:58:57", + "stars": 73 + }, + "https://github.com/alexgenovese/ComfyUI-UNO-Flux": { + "author_account_age_days": 5406, + "last_update": "2025-06-16 17:27:27", + "stars": 0 + }, + "https://github.com/alexgenovese/ComfyUI_HF_Servelress_Inference": { + "author_account_age_days": 5406, + "last_update": "2024-09-01 13:04:48", + "stars": 13 + }, + "https://github.com/alexisrolland/ComfyUI-Blender": { + "author_account_age_days": 3677, + "last_update": "2025-07-21 02:58:17", + "stars": 5 + }, + "https://github.com/alexisrolland/ComfyUI-Phi": { + "author_account_age_days": 3677, + "last_update": "2025-06-02 16:03:13", + "stars": 9 + }, + "https://github.com/alexopus/ComfyUI-Image-Saver": { + "author_account_age_days": 3071, + "last_update": "2025-07-16 20:18:08", + "stars": 105 + }, + "https://github.com/ali-vilab/ACE_plus": { + "author_account_age_days": 880, + "last_update": "2025-04-21 06:36:02", + "stars": 1232 + }, + "https://github.com/ali1234/comfyui-job-iterator": { + "author_account_age_days": 5251, + "last_update": "2024-11-16 07:51:07", + "stars": 116 + }, + "https://github.com/alisson-anjos/ComfyUI-Ollama-Describer": { + "author_account_age_days": 992, + "last_update": "2025-06-09 05:43:18", + "stars": 76 + }, + "https://github.com/alpertunga-bile/image-caption-comfyui": { + "author_account_age_days": 1664, + "last_update": "2025-05-21 20:09:00", + "stars": 9 + }, + "https://github.com/alpertunga-bile/prompt-generator-comfyui": { + "author_account_age_days": 1664, + "last_update": "2025-05-21 20:05:48", + "stars": 102 + }, + "https://github.com/alsritter/asymmetric-tiling-comfyui": { + "author_account_age_days": 2385, + "last_update": "2024-05-22 20:43:07", + "stars": 17 + }, + "https://github.com/alt-key-project/comfyui-dream-project": { + "author_account_age_days": 1051, + "last_update": "2025-02-16 14:45:43", + "stars": 103 + }, + "https://github.com/alt-key-project/comfyui-dream-video-batches": { + "author_account_age_days": 1051, + "last_update": "2025-02-23 10:28:40", + "stars": 72 + }, + "https://github.com/an90ray/ComfyUI_RErouter_CustomNodes": { + "author_account_age_days": 580, + "last_update": "2024-05-22 22:21:00", + "stars": 0 + }, + "https://github.com/andersxa/comfyui-PromptAttention": { + "author_account_age_days": 3344, + "last_update": "2024-06-20 11:09:25", + "stars": 22 + }, + "https://github.com/andygill/comfyui-sunflower-nodes": { + "author_account_age_days": 6184, + "last_update": "2025-01-02 04:23:22", + "stars": 1 + }, + "https://github.com/angeloshredder/StableCascadeResizer": { + "author_account_age_days": 2220, + "last_update": "2024-05-23 00:12:55", + "stars": 2 + }, + "https://github.com/angree/ComfyUI-Q_GLB_Material_Modifier": { + "author_account_age_days": 3113, + "last_update": "2025-05-30 22:51:59", + "stars": 1 + }, + "https://github.com/angree/ComfyUI-Q_find-mask-size": { + "author_account_age_days": 3113, + "last_update": "2025-05-30 22:53:04", + "stars": 0 + }, + "https://github.com/anhkhoatranle30/Handy-Nodes-ComfyUI": { + "author_account_age_days": 2141, + "last_update": "2025-03-27 14:09:26", + "stars": 1 + }, + "https://github.com/antrobot1234/antrobots-comfyUI-nodepack": { + "author_account_age_days": 3254, + "last_update": "2025-04-02 21:40:49", + "stars": 23 + }, + "https://github.com/arcum42/ComfyUI_SageUtils": { + "author_account_age_days": 6139, + "last_update": "2025-07-20 04:13:35", + "stars": 6 + }, + "https://github.com/aria1th/ComfyUI-LogicUtils": { + "author_account_age_days": 2736, + "last_update": "2025-05-22 16:16:37", + "stars": 60 + }, + "https://github.com/asaddi/ComfyUI-YALLM-node": { + "author_account_age_days": 3925, + "last_update": "2025-03-27 14:39:38", + "stars": 3 + }, + "https://github.com/asaddi/YALLM-LlamaVision": { + "author_account_age_days": 3925, + "last_update": "2025-03-27 14:42:04", + "stars": 5 + }, + "https://github.com/asagi4/ComfyUI-Adaptive-Guidance": { + "author_account_age_days": 832, + "last_update": "2025-05-03 18:12:38", + "stars": 59 + }, + "https://github.com/asagi4/ComfyUI-CADS": { + "author_account_age_days": 832, + "last_update": "2025-06-23 17:58:56", + "stars": 42 + }, + "https://github.com/asagi4/ComfyUI-NPNet": { + "author_account_age_days": 832, + "last_update": "2024-12-10 17:20:10", + "stars": 17 + }, + "https://github.com/asagi4/comfyui-prompt-control": { + "author_account_age_days": 832, + "last_update": "2025-06-21 10:17:42", + "stars": 308 + }, + "https://github.com/asagi4/comfyui-utility-nodes": { + "author_account_age_days": 832, + "last_update": "2025-01-30 23:01:52", + "stars": 8 + }, + "https://github.com/asdrabael/Hunyuan-Multi-Lora-Loader": { + "author_account_age_days": 405, + "last_update": "2025-02-09 02:50:51", + "stars": 4 + }, + "https://github.com/asutermo/ComfyUI-Flux-TryOff": { + "author_account_age_days": 5303, + "last_update": "2025-03-10 21:05:14", + "stars": 43 + }, + "https://github.com/aszc-dev/ComfyUI-CoreMLSuite": { + "author_account_age_days": 3118, + "last_update": "2025-04-01 21:45:31", + "stars": 162 + }, + "https://github.com/atluslin/comfyui_arcane_style_trans": { + "author_account_age_days": 3418, + "last_update": "2025-03-14 01:25:41", + "stars": 0 + }, + "https://github.com/atmaranto/ComfyUI-SaveAsScript": { + "author_account_age_days": 2740, + "last_update": "2024-10-09 08:44:54", + "stars": 145 + }, + "https://github.com/attashe/ComfyUI-FluxRegionAttention": { + "author_account_age_days": 4015, + "last_update": "2025-03-02 16:37:39", + "stars": 133 + }, + "https://github.com/audioscavenger/ComfyUI-Thumbnails": { + "author_account_age_days": 4512, + "last_update": "2025-01-06 23:41:08", + "stars": 32 + }, + "https://github.com/audioscavenger/save-image-extended-comfyui": { + "author_account_age_days": 4512, + "last_update": "2025-06-30 23:52:10", + "stars": 102 + }, + "https://github.com/austinbrown34/ComfyUI-IO-Helpers": { + "author_account_age_days": 4489, + "last_update": "2025-02-13 14:29:22", + "stars": 1 + }, + "https://github.com/avatechai/avatar-graph-comfyui": { + "author_account_age_days": 1245, + "last_update": "2024-05-22 21:14:14", + "stars": 264 + }, + "https://github.com/avenstack/ComfyUI-AV-FunASR": { + "author_account_age_days": 95, + "last_update": "2025-06-13 05:53:11", + "stars": 10 + }, + "https://github.com/avenstack/ComfyUI-AV-LatentSync": { + "author_account_age_days": 95, + "last_update": "2025-05-28 14:27:42", + "stars": 2 + }, + "https://github.com/avenstack/ComfyUI-AV-MegaTTS3": { + "author_account_age_days": 95, + "last_update": "2025-05-25 13:35:03", + "stars": 0 + }, + "https://github.com/avocadori/ComfyUI-load-image-prompt-lora": { + "author_account_age_days": 464, + "last_update": "2025-06-02 20:35:37", + "stars": 0 + }, + "https://github.com/aws-samples/comfyui-llm-node-for-amazon-bedrock": { + "author_account_age_days": 3950, + "last_update": "2025-03-07 08:09:46", + "stars": 26 + }, + "https://github.com/azazeal04/Azazeal_Anime_Characters_ComfyUI": { + "author_account_age_days": 809, + "last_update": "2025-06-21 18:26:40", + "stars": 1 + }, + "https://github.com/azure-dragon-ai/ComfyUI-ClipScore-Nodes": { + "author_account_age_days": 692, + "last_update": "2024-05-22 23:16:28", + "stars": 4 + }, + "https://github.com/azure-dragon-ai/ComfyUI-HPSv2-Nodes": { + "author_account_age_days": 692, + "last_update": "2025-05-11 05:18:07", + "stars": 6 + }, + "https://github.com/babe-and-spencer-enterprises/base-comfyui-node": { + "author_account_age_days": 69, + "last_update": "2025-06-23 16:12:19", + "stars": 4 + }, + "https://github.com/bablueza/ComfyUI-Vaja-Ai4thai": { + "author_account_age_days": 2136, + "last_update": "2025-04-23 04:14:55", + "stars": 0 + }, + "https://github.com/babydjac/comfyui-grok-prompts": { + "author_account_age_days": 797, + "last_update": "2025-06-06 09:47:19", + "stars": 1 + }, + "https://github.com/babydjac/comfyui-smart-scaler": { + "author_account_age_days": 797, + "last_update": "2025-05-16 07:28:19", + "stars": 0 + }, + "https://github.com/badayvedat/ComfyUI-fal-Connector": { + "author_account_age_days": 2162, + "last_update": "2025-06-20 15:50:56", + "stars": 43 + }, + "https://github.com/badjeff/comfyui_lora_tag_loader": { + "author_account_age_days": 5754, + "last_update": "2024-05-22 20:40:03", + "stars": 83 + }, + "https://github.com/badxprogramm/ComfyUI-GradientBlur": { + "author_account_age_days": 663, + "last_update": "2025-04-10 03:47:51", + "stars": 1 + }, + "https://github.com/baicai99/ComfyUI-FrameSkipping": { + "author_account_age_days": 1222, + "last_update": "2025-06-23 02:50:12", + "stars": 12 + }, + "https://github.com/bananasss00/ComfyUI-SP-Nodes": { + "author_account_age_days": 2925, + "last_update": "2025-02-22 18:17:31", + "stars": 15 + }, + "https://github.com/bananasss00/ComfyUI-flux_fill_patcher": { + "author_account_age_days": 2925, + "last_update": "2024-11-25 20:04:20", + "stars": 7 + }, + "https://github.com/banodoco/steerable-motion": { + "author_account_age_days": 793, + "last_update": "2025-06-27 15:56:48", + "stars": 922 + }, + "https://github.com/banqingyuan/ComfyUI-text-replace": { + "author_account_age_days": 2690, + "last_update": "2024-09-22 16:14:22", + "stars": 0 + }, + "https://github.com/bartly/Comfyui_babel_removebg_api": { + "author_account_age_days": 4518, + "last_update": "2024-10-14 00:48:34", + "stars": 6 + }, + "https://github.com/bash-j/mikey_nodes": { + "author_account_age_days": 4578, + "last_update": "2025-03-22 01:52:20", + "stars": 157 + }, + "https://github.com/bbaudio-2025/ComfyUI-SuperUltimateVaceTools": { + "author_account_age_days": 16, + "last_update": "2025-07-20 07:15:26", + "stars": 49 + }, + "https://github.com/bbtaivi/ComfyUI-Aiv-Param": { + "author_account_age_days": 845, + "last_update": "2025-02-16 03:01:20", + "stars": 1 + }, + "https://github.com/bear2b/comfyui-argo-nodes": { + "author_account_age_days": 3356, + "last_update": "2025-01-16 11:11:38", + "stars": 0 + }, + "https://github.com/bedovyy/ComfyUI_NAIDGenerator": { + "author_account_age_days": 754, + "last_update": "2025-05-30 14:03:50", + "stars": 69 + }, + "https://github.com/bemoregt/ComfyUI_CustomNode_Image2Spectrum": { + "author_account_age_days": 3351, + "last_update": "2025-03-28 12:13:20", + "stars": 1 + }, + "https://github.com/benda1989/CosyVoice2_ComfyUI": { + "author_account_age_days": 2504, + "last_update": "2025-04-16 08:39:57", + "stars": 19 + }, + "https://github.com/benda1989/Sonic_ComfyUI": { + "author_account_age_days": 2504, + "last_update": "2025-02-24 10:04:56", + "stars": 3 + }, + "https://github.com/benjamin-bertram/Comfyui_OIDN_Denoiser": { + "author_account_age_days": 2158, + "last_update": "2025-06-12 22:37:05", + "stars": 0 + }, + "https://github.com/benjiyaya/ComfyUI-HunyuanVideoImagesGuider": { + "author_account_age_days": 504, + "last_update": "2025-01-14 10:42:44", + "stars": 29 + }, + "https://github.com/benjiyaya/ComfyUI-KokoroTTS": { + "author_account_age_days": 504, + "last_update": "2025-03-18 20:13:52", + "stars": 56 + }, + "https://github.com/benstaniford/comfy-contact-sheet-image-loader": { + "author_account_age_days": 4859, + "last_update": "2025-07-08 21:37:25", + "stars": 10 + }, + "https://github.com/benstaniford/comfy-load-last-image": { + "author_account_age_days": 4859, + "last_update": "2025-07-08 07:19:46", + "stars": 0 + }, + "https://github.com/benstaniford/comfy-lora-loader-with-triggerdb": { + "author_account_age_days": 4859, + "last_update": "2025-07-14 19:10:28", + "stars": 26 + }, + "https://github.com/benstaniford/comfy-prompt-db": { + "author_account_age_days": 4859, + "last_update": "2025-07-12 10:30:33", + "stars": 1 + }, + "https://github.com/bentoml/comfy-pack": { + "author_account_age_days": 2301, + "last_update": "2025-06-23 08:13:37", + "stars": 167 + }, + "https://github.com/big-mon/ComfyUI-ResolutionPresets": { + "author_account_age_days": 3067, + "last_update": "2025-04-12 17:05:21", + "stars": 1 + }, + "https://github.com/bikiam/ComfyUI_WhisperSRT": { + "author_account_age_days": 541, + "last_update": "2025-06-01 13:56:23", + "stars": 1 + }, + "https://github.com/bilal-arikan/ComfyUI_TextAssets": { + "author_account_age_days": 3899, + "last_update": "2024-05-22 23:23:50", + "stars": 2 + }, + "https://github.com/billwuhao/ComfyUI_ACE-Step": { + "author_account_age_days": 2327, + "last_update": "2025-05-28 08:39:13", + "stars": 155 + }, + "https://github.com/billwuhao/ComfyUI_AudioTools": { + "author_account_age_days": 2327, + "last_update": "2025-07-07 05:08:44", + "stars": 54 + }, + "https://github.com/billwuhao/ComfyUI_CSM": { + "author_account_age_days": 2327, + "last_update": "2025-06-02 14:00:17", + "stars": 5 + }, + "https://github.com/billwuhao/ComfyUI_DiffRhythm": { + "author_account_age_days": 2327, + "last_update": "2025-05-30 12:12:57", + "stars": 116 + }, + "https://github.com/billwuhao/ComfyUI_EraX-WoW-Turbo": { + "author_account_age_days": 2327, + "last_update": "2025-05-23 09:41:43", + "stars": 15 + }, + "https://github.com/billwuhao/ComfyUI_IndexTTS": { + "author_account_age_days": 2327, + "last_update": "2025-06-02 13:54:19", + "stars": 95 + }, + "https://github.com/billwuhao/ComfyUI_KokoroTTS_MW": { + "author_account_age_days": 2327, + "last_update": "2025-06-02 14:03:36", + "stars": 26 + }, + "https://github.com/billwuhao/ComfyUI_MegaTTS3": { + "author_account_age_days": 2327, + "last_update": "2025-06-11 01:01:40", + "stars": 107 + }, + "https://github.com/billwuhao/ComfyUI_NotaGen": { + "author_account_age_days": 2327, + "last_update": "2025-06-06 02:58:28", + "stars": 49 + }, + "https://github.com/billwuhao/ComfyUI_OneButtonPrompt": { + "author_account_age_days": 2327, + "last_update": "2025-07-07 10:55:15", + "stars": 21 + }, + "https://github.com/billwuhao/ComfyUI_OuteTTS": { + "author_account_age_days": 2327, + "last_update": "2025-06-11 06:14:07", + "stars": 9 + }, + "https://github.com/billwuhao/ComfyUI_PortraitTools": { + "author_account_age_days": 2327, + "last_update": "2025-06-15 13:31:45", + "stars": 17 + }, + "https://github.com/billwuhao/ComfyUI_SOME": { + "author_account_age_days": 2327, + "last_update": "2025-06-10 08:08:17", + "stars": 5 + }, + "https://github.com/billwuhao/ComfyUI_SparkTTS": { + "author_account_age_days": 2327, + "last_update": "2025-05-23 09:45:08", + "stars": 45 + }, + "https://github.com/billwuhao/ComfyUI_StepAudioTTS": { + "author_account_age_days": 2327, + "last_update": "2025-05-23 09:45:26", + "stars": 132 + }, + "https://github.com/billwuhao/ComfyUI_gemmax": { + "author_account_age_days": 2327, + "last_update": "2025-05-30 12:17:42", + "stars": 23 + }, + "https://github.com/billwuhao/ComfyUI_parakeet-tdt": { + "author_account_age_days": 2327, + "last_update": "2025-06-15 13:24:58", + "stars": 3 + }, + "https://github.com/billwuhao/Comfyui_HeyGem": { + "author_account_age_days": 2327, + "last_update": "2025-06-02 14:14:35", + "stars": 86 + }, + "https://github.com/bitaffinity/ComfyUI_HF_Inference": { + "author_account_age_days": 448, + "last_update": "2024-06-14 10:23:29", + "stars": 5 + }, + "https://github.com/black-forest-labs/bfl-comfy-nodes": { + "author_account_age_days": 488, + "last_update": "2025-02-07 22:13:26", + "stars": 81 + }, + "https://github.com/blackcodetavern/ComfyUI-Benripack": { + "author_account_age_days": 3265, + "last_update": "2024-09-07 09:06:00", + "stars": 3 + }, + "https://github.com/blepping/ComfyUI-ApplyResAdapterUnet": { + "author_account_age_days": 545, + "last_update": "2025-02-27 16:14:46", + "stars": 31 + }, + "https://github.com/blepping/ComfyUI-bleh": { + "author_account_age_days": 545, + "last_update": "2025-06-27 20:46:15", + "stars": 110 + }, + "https://github.com/blepping/ComfyUI-sonar": { + "author_account_age_days": 545, + "last_update": "2025-07-05 10:12:06", + "stars": 44 + }, + "https://github.com/blepping/comfyui_jankdiffusehigh": { + "author_account_age_days": 545, + "last_update": "2025-05-06 10:28:37", + "stars": 36 + }, + "https://github.com/blepping/comfyui_jankhidiffusion": { + "author_account_age_days": 545, + "last_update": "2025-05-06 10:34:03", + "stars": 122 + }, + "https://github.com/blepping/comfyui_overly_complicated_sampling": { + "author_account_age_days": 545, + "last_update": "2025-06-27 20:54:42", + "stars": 26 + }, + "https://github.com/blib-la/blibla-comfyui-extensions": { + "author_account_age_days": 665, + "last_update": "2025-04-29 06:49:03", + "stars": 174 + }, + "https://github.com/blird/ComfyUI-Wanify": { + "author_account_age_days": 2728, + "last_update": "2025-07-18 13:48:00", + "stars": 0 + }, + "https://github.com/blob8/ComfyUI_sloppy-comic": { + "author_account_age_days": 459, + "last_update": "2024-09-20 18:53:34", + "stars": 9 + }, + "https://github.com/blovett80/ComfyUI-PixelDojo": { + "author_account_age_days": 594, + "last_update": "2025-03-27 10:30:18", + "stars": 0 + }, + "https://github.com/blueraincoatli/comfyUI_SillyNodes": { + "author_account_age_days": 704, + "last_update": "2025-01-17 09:17:48", + "stars": 3 + }, + "https://github.com/bluevisor/ComfyUI_PS_Blend_Node": { + "author_account_age_days": 4958, + "last_update": "2025-03-31 08:48:48", + "stars": 2 + }, + "https://github.com/bmad4ever/ComfyUI-Bmad-DirtyUndoRedo": { + "author_account_age_days": 3928, + "last_update": "2024-05-22 18:11:51", + "stars": 47 + }, + "https://github.com/bmad4ever/comfyui_ab_samplercustom": { + "author_account_age_days": 3928, + "last_update": "2024-09-17 20:18:46", + "stars": 9 + }, + "https://github.com/bmad4ever/comfyui_lists_cartesian_product": { + "author_account_age_days": 3928, + "last_update": "2025-03-17 14:49:40", + "stars": 4 + }, + "https://github.com/bmad4ever/comfyui_quilting": { + "author_account_age_days": 3928, + "last_update": "2025-03-17 14:50:15", + "stars": 10 + }, + "https://github.com/bmad4ever/comfyui_wfc_like": { + "author_account_age_days": 3928, + "last_update": "2025-03-17 14:51:47", + "stars": 5 + }, + "https://github.com/bobmagicii/comfykit-custom-nodes": { + "author_account_age_days": 5136, + "last_update": "2024-08-22 22:28:30", + "stars": 1 + }, + "https://github.com/bollerdominik/ComfyUI-load-lora-from-url": { + "author_account_age_days": 3805, + "last_update": "2025-06-05 16:21:55", + "stars": 0 + }, + "https://github.com/bombax-xiaoice/ComfyUI-Allegro": { + "author_account_age_days": 299, + "last_update": "2025-05-13 04:00:11", + "stars": 4 + }, + "https://github.com/bombax-xiaoice/ComfyUI-DisPose": { + "author_account_age_days": 299, + "last_update": "2025-03-03 06:49:40", + "stars": 0 + }, + "https://github.com/bombax-xiaoice/ComfyUI-MagicDance": { + "author_account_age_days": 299, + "last_update": "2024-12-26 04:43:40", + "stars": 2 + }, + "https://github.com/bombax-xiaoice/ComfyUI-Open-Sora-I2V": { + "author_account_age_days": 299, + "last_update": "2025-01-21 07:58:50", + "stars": 1 + }, + "https://github.com/bombax-xiaoice/ComfyUI-OpenSoraPlan": { + "author_account_age_days": 299, + "last_update": "2025-01-22 05:38:11", + "stars": 1 + }, + "https://github.com/bombless/comfyUI-RememberingUtils": { + "author_account_age_days": 4950, + "last_update": "2024-12-25 01:31:05", + "stars": 0 + }, + "https://github.com/bongsang/ComfyUI-Bongsang": { + "author_account_age_days": 3994, + "last_update": "2025-01-05 05:42:30", + "stars": 0 + }, + "https://github.com/boredofnames/ComfyUI-ntfy": { + "author_account_age_days": 4489, + "last_update": "2025-03-28 00:54:54", + "stars": 0 + }, + "https://github.com/boricuapab/ComfyUI-Bori-JsonSetGetConverter": { + "author_account_age_days": 1961, + "last_update": "2025-06-02 06:52:21", + "stars": 0 + }, + "https://github.com/bradsec/ComfyUI_ResolutionSelector": { + "author_account_age_days": 4047, + "last_update": "2024-07-07 12:15:49", + "stars": 12 + }, + "https://github.com/bradsec/ComfyUI_StringEssentials": { + "author_account_age_days": 4047, + "last_update": "2025-06-09 06:17:09", + "stars": 16 + }, + "https://github.com/braintacles/braintacles-comfyui-nodes": { + "author_account_age_days": 822, + "last_update": "2024-07-31 15:01:52", + "stars": 1 + }, + "https://github.com/brantje/ComfyUI-api-tools": { + "author_account_age_days": 4636, + "last_update": "2025-05-28 11:37:29", + "stars": 4 + }, + "https://github.com/brantje/ComfyUI_MagicQuill": { + "author_account_age_days": 4636, + "last_update": "2025-05-20 19:32:21", + "stars": 3 + }, + "https://github.com/brayevalerien/ComfyUI-resynthesizer": { + "author_account_age_days": 1985, + "last_update": "2025-02-19 10:33:17", + "stars": 20 + }, + "https://github.com/brianfitzgerald/style_aligned_comfy": { + "author_account_age_days": 4631, + "last_update": "2025-03-24 20:04:44", + "stars": 301 + }, + "https://github.com/bronkula/comfyui-fitsize": { + "author_account_age_days": 5546, + "last_update": "2024-05-22 21:32:34", + "stars": 49 + }, + "https://github.com/brucew4yn3rp/ComfyUI_SelectiveMetadata": { + "author_account_age_days": 775, + "last_update": "2025-07-20 04:08:09", + "stars": 0 + }, + "https://github.com/bruefire/ComfyUI-SeqImageLoader": { + "author_account_age_days": 2757, + "last_update": "2025-06-29 12:48:28", + "stars": 44 + }, + "https://github.com/budihartono/comfyui-aspect-ratio-presets": { + "author_account_age_days": 5077, + "last_update": "2025-06-12 10:55:46", + "stars": 1 + }, + "https://github.com/budihartono/comfyui_otonx_nodes": { + "author_account_age_days": 5077, + "last_update": "2024-07-31 16:01:47", + "stars": 1 + }, + "https://github.com/bugltd/ComfyLab-Pack": { + "author_account_age_days": 191, + "last_update": "2025-05-13 17:35:50", + "stars": 5 + }, + "https://github.com/burnsbert/ComfyUI-EBU-LMStudio": { + "author_account_age_days": 5036, + "last_update": "2025-07-17 02:50:40", + "stars": 15 + }, + "https://github.com/burnsbert/ComfyUI-EBU-PromptHelper": { + "author_account_age_days": 5036, + "last_update": "2025-07-07 22:56:05", + "stars": 2 + }, + "https://github.com/burnsbert/ComfyUI-EBU-Workflow": { + "author_account_age_days": 5036, + "last_update": "2025-07-07 22:42:11", + "stars": 0 + }, + "https://github.com/bvhari/ComfyUI_CFGStar": { + "author_account_age_days": 1566, + "last_update": "2025-04-10 17:53:08", + "stars": 1 + }, + "https://github.com/bvhari/ComfyUI_ImageProcessing": { + "author_account_age_days": 1566, + "last_update": "2025-03-30 18:55:42", + "stars": 23 + }, + "https://github.com/bvhari/ComfyUI_PerpCFG": { + "author_account_age_days": 1566, + "last_update": "2025-03-30 18:53:54", + "stars": 1 + }, + "https://github.com/bvhari/ComfyUI_PerpWeight": { + "author_account_age_days": 1566, + "last_update": "2025-03-30 18:55:52", + "stars": 12 + }, + "https://github.com/bvhari/ComfyUI_SUNoise": { + "author_account_age_days": 1566, + "last_update": "2025-03-30 18:55:16", + "stars": 13 + }, + "https://github.com/bytedance/ComfyUI-HyperLoRA": { + "author_account_age_days": 4479, + "last_update": "2025-06-25 08:47:51", + "stars": 370 + }, + "https://github.com/bytedance/ComfyUI_InfiniteYou": { + "author_account_age_days": 4479, + "last_update": "2025-06-28 20:40:46", + "stars": 206 + }, + "https://github.com/bytedance/comfyui-lumi-batcher": { + "author_account_age_days": 4479, + "last_update": "2025-07-16 03:47:38", + "stars": 320 + }, + "https://github.com/c0ffymachyne/ComfyUI_BeatByte": { + "author_account_age_days": 4906, + "last_update": "2025-04-03 03:08:15", + "stars": 5 + }, + "https://github.com/c0ffymachyne/ComfyUI_SignalProcessing": { + "author_account_age_days": 4906, + "last_update": "2025-05-14 01:41:00", + "stars": 13 + }, + "https://github.com/cake-ml/tiny-sana-preview": { + "author_account_age_days": 273, + "last_update": "2025-02-08 00:36:49", + "stars": 2 + }, + "https://github.com/calcuis/gguf": { + "author_account_age_days": 1038, + "last_update": "2025-07-20 20:46:15", + "stars": 80 + }, + "https://github.com/caleboleary/ComfyUI-Arc2Face": { + "author_account_age_days": 3694, + "last_update": "2024-09-02 23:00:00", + "stars": 45 + }, + "https://github.com/caleboleary/Comfyui-calbenodes": { + "author_account_age_days": 3694, + "last_update": "2024-09-16 19:27:58", + "stars": 1 + }, + "https://github.com/camenduru/ComfyUI-TostAI": { + "author_account_age_days": 2160, + "last_update": "2024-08-22 04:04:06", + "stars": 1 + }, + "https://github.com/cardenluo/ComfyUI-Apt_Preset": { + "author_account_age_days": 795, + "last_update": "2025-07-20 09:13:51", + "stars": 100 + }, + "https://github.com/casterpollux/MiniMax-bmo": { + "author_account_age_days": 65, + "last_update": "2025-06-24 19:22:18", + "stars": 42 + }, + "https://github.com/catboxanon/comfyui_stealth_pnginfo": { + "author_account_age_days": 922, + "last_update": "2025-04-09 03:39:29", + "stars": 3 + }, + "https://github.com/cathodeDreams/comfyui-azul-scripts": { + "author_account_age_days": 860, + "last_update": "2025-04-30 17:03:38", + "stars": 0 + }, + "https://github.com/cdb-boop/ComfyUI-Bringing-Old-Photos-Back-to-Life": { + "author_account_age_days": 1596, + "last_update": "2024-09-12 06:55:50", + "stars": 470 + }, + "https://github.com/cdb-boop/comfyui-image-round": { + "author_account_age_days": 1596, + "last_update": "2025-05-10 13:32:13", + "stars": 10 + }, + "https://github.com/cdxOo/comfyui-text-node-with-comments": { + "author_account_age_days": 3687, + "last_update": "2024-08-03 00:54:38", + "stars": 2 + }, + "https://github.com/cedarconnor/comfyui-LatLong": { + "author_account_age_days": 4687, + "last_update": "2025-07-20 18:58:20", + "stars": 0 + }, + "https://github.com/celoron/ComfyUI-VisualQueryTemplate": { + "author_account_age_days": 5403, + "last_update": "2025-04-01 20:35:56", + "stars": 12 + }, + "https://github.com/celsojr2013/comfyui_jamworks_client": { + "author_account_age_days": 3790, + "last_update": "2024-06-23 12:35:44", + "stars": 0 + }, + "https://github.com/celsojr2013/comfyui_simpletools": { + "author_account_age_days": 3790, + "last_update": "2024-06-22 11:35:40", + "stars": 2 + }, + "https://github.com/cenzijing/ComfyUI-Markmap": { + "author_account_age_days": 1856, + "last_update": "2025-01-04 21:00:08", + "stars": 1 + }, + "https://github.com/cerspense/ComfyUI_cspnodes": { + "author_account_age_days": 3073, + "last_update": "2024-12-17 04:07:09", + "stars": 33 + }, + "https://github.com/ceruleandeep/ComfyUI-LLaVA-Captioner": { + "author_account_age_days": 1544, + "last_update": "2024-08-03 16:22:31", + "stars": 134 + }, + "https://github.com/cganimitta/ComfyUI_CGAnimittaTools": { + "author_account_age_days": 967, + "last_update": "2025-04-11 05:29:55", + "stars": 42 + }, + "https://github.com/chakib-belgaid/ComfyUI-autosize": { + "author_account_age_days": 4227, + "last_update": "2024-06-14 07:13:20", + "stars": 0 + }, + "https://github.com/chakib-belgaid/Comfyui_Prompt_styler": { + "author_account_age_days": 4227, + "last_update": "2024-07-01 12:40:52", + "stars": 0 + }, + "https://github.com/chandlergis/ComfyUI-IMG_Query": { + "author_account_age_days": 747, + "last_update": "2024-05-23 01:25:57", + "stars": 1 + }, + "https://github.com/chandlergis/ComfyUI_EmojiOverlay": { + "author_account_age_days": 747, + "last_update": "2024-06-14 09:05:03", + "stars": 0 + }, + "https://github.com/changwook987/ComfyUI-Small-Utility": { + "author_account_age_days": 1584, + "last_update": "2025-01-25 17:18:32", + "stars": 0 + }, + "https://github.com/chaojie/ComfyUI-AniPortrait": { + "author_account_age_days": 5225, + "last_update": "2024-05-22 22:26:03", + "stars": 252 + }, + "https://github.com/chaojie/ComfyUI-CameraCtrl-Wrapper": { + "author_account_age_days": 5225, + "last_update": "2024-06-14 09:07:23", + "stars": 21 + }, + "https://github.com/chaojie/ComfyUI-Champ": { + "author_account_age_days": 5225, + "last_update": "2024-05-22 22:26:47", + "stars": 24 + }, + "https://github.com/chaojie/ComfyUI-DragAnything": { + "author_account_age_days": 5225, + "last_update": "2024-06-14 10:23:53", + "stars": 70 + }, + "https://github.com/chaojie/ComfyUI-DragNUWA": { + "author_account_age_days": 5225, + "last_update": "2024-06-14 10:25:01", + "stars": 410 + }, + "https://github.com/chaojie/ComfyUI-DynamiCrafter": { + "author_account_age_days": 5225, + "last_update": "2024-06-14 10:23:59", + "stars": 130 + }, + "https://github.com/chaojie/ComfyUI-EasyAnimate": { + "author_account_age_days": 5225, + "last_update": "2024-05-22 22:24:00", + "stars": 54 + }, + "https://github.com/chaojie/ComfyUI-Gemma": { + "author_account_age_days": 5225, + "last_update": "2024-05-22 22:27:47", + "stars": 6 + }, + "https://github.com/chaojie/ComfyUI-I2VGEN-XL": { + "author_account_age_days": 5225, + "last_update": "2024-06-14 09:06:10", + "stars": 28 + }, + "https://github.com/chaojie/ComfyUI-Img2Img-Turbo": { + "author_account_age_days": 5225, + "last_update": "2024-05-22 22:26:30", + "stars": 37 + }, + "https://github.com/chaojie/ComfyUI-LaVIT": { + "author_account_age_days": 5225, + "last_update": "2024-06-14 10:27:44", + "stars": 12 + }, + "https://github.com/chaojie/ComfyUI-LightGlue": { + "author_account_age_days": 5225, + "last_update": "2024-01-20 16:53:51", + "stars": 48 + }, + "https://github.com/chaojie/ComfyUI-Moore-AnimateAnyone": { + "author_account_age_days": 5225, + "last_update": "2024-06-10 20:16:06", + "stars": 213 + }, + "https://github.com/chaojie/ComfyUI-Motion-Vector-Extractor": { + "author_account_age_days": 5225, + "last_update": "2024-06-14 10:26:15", + "stars": 1 + }, + "https://github.com/chaojie/ComfyUI-MotionCtrl": { + "author_account_age_days": 5225, + "last_update": "2024-06-14 10:26:02", + "stars": 138 + }, + "https://github.com/chaojie/ComfyUI-MotionCtrl-SVD": { + "author_account_age_days": 5225, + "last_update": "2024-06-14 10:26:30", + "stars": 86 + }, + "https://github.com/chaojie/ComfyUI-MuseTalk": { + "author_account_age_days": 5225, + "last_update": "2024-05-22 22:25:07", + "stars": 269 + }, + "https://github.com/chaojie/ComfyUI-MuseV": { + "author_account_age_days": 5225, + "last_update": "2024-05-22 22:25:31", + "stars": 159 + }, + "https://github.com/chaojie/ComfyUI-Open-Sora": { + "author_account_age_days": 5225, + "last_update": "2024-07-19 05:13:25", + "stars": 104 + }, + "https://github.com/chaojie/ComfyUI-Open-Sora-Plan": { + "author_account_age_days": 5225, + "last_update": "2024-05-29 16:15:10", + "stars": 50 + }, + "https://github.com/chaojie/ComfyUI-Panda3d": { + "author_account_age_days": 5225, + "last_update": "2024-06-14 10:28:47", + "stars": 16 + }, + "https://github.com/chaojie/ComfyUI-Pymunk": { + "author_account_age_days": 5225, + "last_update": "2024-06-14 12:02:32", + "stars": 16 + }, + "https://github.com/chaojie/ComfyUI-RAFT": { + "author_account_age_days": 5225, + "last_update": "2024-06-14 11:02:00", + "stars": 26 + }, + "https://github.com/chaojie/ComfyUI-SimDA": { + "author_account_age_days": 5225, + "last_update": "2024-06-14 12:02:39", + "stars": 13 + }, + "https://github.com/chaojie/ComfyUI-Trajectory": { + "author_account_age_days": 5225, + "last_update": "2024-05-22 22:27:12", + "stars": 6 + }, + "https://github.com/chaojie/ComfyUI-Video-Editing-X-Attention": { + "author_account_age_days": 5225, + "last_update": "2024-06-14 10:28:16", + "stars": 17 + }, + "https://github.com/chaojie/ComfyUI-dust3r": { + "author_account_age_days": 5225, + "last_update": "2024-05-22 22:27:33", + "stars": 22 + }, + "https://github.com/chaojie/ComfyUI_StreamingT2V": { + "author_account_age_days": 5225, + "last_update": "2024-06-14 10:26:21", + "stars": 37 + }, + "https://github.com/chaosaiart/Chaosaiart-Nodes": { + "author_account_age_days": 725, + "last_update": "2025-05-06 07:15:41", + "stars": 103 + }, + "https://github.com/charlyad142/ComfyUI_bfl_api_pro_nodes": { + "author_account_age_days": 3007, + "last_update": "2025-07-18 19:21:57", + "stars": 0 + }, + "https://github.com/chaunceyyann/comfyui-image-processing-nodes": { + "author_account_age_days": 4258, + "last_update": "2025-06-20 02:01:53", + "stars": 0 + }, + "https://github.com/checkbins/checkbin-comfy": { + "author_account_age_days": 275, + "last_update": "2025-01-31 18:05:33", + "stars": 0 + }, + "https://github.com/chenbaiyujason/ComfyUI_StepFun": { + "author_account_age_days": 2126, + "last_update": "2024-12-05 14:45:27", + "stars": 6 + }, + "https://github.com/chenlongming/ComfyUI_Spectral": { + "author_account_age_days": 3569, + "last_update": "2025-02-22 17:20:35", + "stars": 1 + }, + "https://github.com/chenpipi0807/ComfyUI-Index-TTS": { + "author_account_age_days": 678, + "last_update": "2025-06-25 14:30:23", + "stars": 219 + }, + "https://github.com/chenpipi0807/ComfyUI_NSFW_Godie": { + "author_account_age_days": 678, + "last_update": "2025-03-20 11:48:28", + "stars": 2 + }, + "https://github.com/chenpipi0807/PIP_ArtisticWords": { + "author_account_age_days": 678, + "last_update": "2025-03-21 07:29:20", + "stars": 26 + }, + "https://github.com/chenpx976/ComfyUI-RunRunRun": { + "author_account_age_days": 3806, + "last_update": "2024-05-23 01:19:37", + "stars": 0 + }, + "https://github.com/cherninlab/logo-generator-comfyui": { + "author_account_age_days": 488, + "last_update": "2024-12-22 15:45:31", + "stars": 2 + }, + "https://github.com/chesnokovivan/ComfyUI-Novakid": { + "author_account_age_days": 1921, + "last_update": "2024-06-10 20:15:56", + "stars": 0 + }, + "https://github.com/chflame163/ComfyUI_CatVTON_Wrapper": { + "author_account_age_days": 835, + "last_update": "2025-01-01 12:55:16", + "stars": 343 + }, + "https://github.com/chflame163/ComfyUI_CogView4_Wrapper": { + "author_account_age_days": 835, + "last_update": "2025-03-06 09:27:25", + "stars": 53 + }, + "https://github.com/chflame163/ComfyUI_FaceSimilarity": { + "author_account_age_days": 835, + "last_update": "2025-03-31 13:12:01", + "stars": 33 + }, + "https://github.com/chflame163/ComfyUI_Janus_Wrapper": { + "author_account_age_days": 835, + "last_update": "2025-03-12 02:00:43", + "stars": 17 + }, + "https://github.com/chflame163/ComfyUI_LayerStyle": { + "author_account_age_days": 835, + "last_update": "2025-06-20 00:45:04", + "stars": 2421 + }, + "https://github.com/chflame163/ComfyUI_LayerStyle_Advance": { + "author_account_age_days": 835, + "last_update": "2025-06-28 02:36:02", + "stars": 405 + }, + "https://github.com/chflame163/ComfyUI_MSSpeech_TTS": { + "author_account_age_days": 835, + "last_update": "2025-03-31 13:11:24", + "stars": 29 + }, + "https://github.com/chflame163/ComfyUI_OmniGen_Wrapper": { + "author_account_age_days": 835, + "last_update": "2025-03-12 01:58:47", + "stars": 142 + }, + "https://github.com/chflame163/ComfyUI_WordCloud": { + "author_account_age_days": 835, + "last_update": "2025-03-31 13:11:39", + "stars": 110 + }, + "https://github.com/chibiace/ComfyUI-Chibi-Nodes": { + "author_account_age_days": 3240, + "last_update": "2025-03-18 11:13:16", + "stars": 75 + }, + "https://github.com/choey/Comfy-Topaz": { + "author_account_age_days": 5914, + "last_update": "2024-09-28 08:02:47", + "stars": 190 + }, + "https://github.com/chou18194766xx/comfyui-EncryptSave": { + "author_account_age_days": 617, + "last_update": "2025-05-18 07:55:45", + "stars": 4 + }, + "https://github.com/chou18194766xx/comfyui_EncryptPreview": { + "author_account_age_days": 617, + "last_update": "2025-04-26 12:29:43", + "stars": 2 + }, + "https://github.com/chri002/ComfyUI_depthMapOperation": { + "author_account_age_days": 2111, + "last_update": "2025-05-27 06:19:56", + "stars": 10 + }, + "https://github.com/chris-arsenault/ComfyUI-AharaNodes": { + "author_account_age_days": 4364, + "last_update": "2024-12-25 16:45:58", + "stars": 0 + }, + "https://github.com/chris-the-wiz/EmbeddingsCurveEditor_ComfyUI": { + "author_account_age_days": 2188, + "last_update": "2024-07-31 13:51:59", + "stars": 7 + }, + "https://github.com/chrisfreilich/virtuoso-nodes": { + "author_account_age_days": 1123, + "last_update": "2025-04-19 22:57:17", + "stars": 88 + }, + "https://github.com/chrisgoringe/cg-controller": { + "author_account_age_days": 4456, + "last_update": "2025-04-25 00:43:21", + "stars": 73 + }, + "https://github.com/chrisgoringe/cg-image-filter": { + "author_account_age_days": 4456, + "last_update": "2025-07-18 03:39:23", + "stars": 70 + }, + "https://github.com/chrisgoringe/cg-noisetools": { + "author_account_age_days": 4456, + "last_update": "2024-12-17 04:09:18", + "stars": 17 + }, + "https://github.com/chrisgoringe/cg-prompt-info": { + "author_account_age_days": 4456, + "last_update": "2024-05-22 21:07:33", + "stars": 30 + }, + "https://github.com/chrisgoringe/cg-use-everywhere": { + "author_account_age_days": 4456, + "last_update": "2025-07-14 19:56:46", + "stars": 746 + }, + "https://github.com/chrish-slingshot/CrasHUtils": { + "author_account_age_days": 992, + "last_update": "2024-10-29 22:55:39", + "stars": 13 + }, + "https://github.com/chrissy0/chris-comfyui-nodes": { + "author_account_age_days": 2446, + "last_update": "2024-09-17 16:09:35", + "stars": 1 + }, + "https://github.com/christian-byrne/audio-separation-nodes-comfyui": { + "author_account_age_days": 1740, + "last_update": "2025-06-16 04:01:47", + "stars": 249 + }, + "https://github.com/christian-byrne/claude-code-comfyui-nodes": { + "author_account_age_days": 1740, + "last_update": "2025-06-17 04:43:43", + "stars": 5 + }, + "https://github.com/christian-byrne/comfyui-default-values-manager": { + "author_account_age_days": 1740, + "last_update": "2024-07-28 20:52:51", + "stars": 11 + }, + "https://github.com/christian-byrne/comfyui-search-navigation": { + "author_account_age_days": 1740, + "last_update": "2024-06-26 04:41:12", + "stars": 8 + }, + "https://github.com/christian-byrne/img2colors-comfyui-node": { + "author_account_age_days": 1740, + "last_update": "2025-01-05 18:48:59", + "stars": 13 + }, + "https://github.com/christian-byrne/img2txt-comfyui-nodes": { + "author_account_age_days": 1740, + "last_update": "2025-03-14 10:38:33", + "stars": 91 + }, + "https://github.com/christian-byrne/size-match-compositing-nodes": { + "author_account_age_days": 1740, + "last_update": "2025-01-05 17:45:02", + "stars": 5 + }, + "https://github.com/christian-byrne/youtube-dl-comfyui": { + "author_account_age_days": 1740, + "last_update": "2024-10-01 16:32:14", + "stars": 4 + }, + "https://github.com/chuchu114514/comfyui_proportion_solver": { + "author_account_age_days": 751, + "last_update": "2025-07-06 08:58:20", + "stars": 1 + }, + "https://github.com/ciga2011/ComfyUI-MarkItDown": { + "author_account_age_days": 4590, + "last_update": "2025-02-27 20:16:01", + "stars": 8 + }, + "https://github.com/ciga2011/ComfyUI-Pollinations": { + "author_account_age_days": 4590, + "last_update": "2025-01-14 15:23:14", + "stars": 3 + }, + "https://github.com/ciga2011/ComfyUI-PromptOptimizer": { + "author_account_age_days": 4590, + "last_update": "2025-01-16 02:24:50", + "stars": 7 + }, + "https://github.com/ciri/comfyui-model-downloader": { + "author_account_age_days": 5762, + "last_update": "2025-03-24 14:53:09", + "stars": 75 + }, + "https://github.com/city96/ComfyUI-GGUF": { + "author_account_age_days": 889, + "last_update": "2025-06-14 23:07:45", + "stars": 2226 + }, + "https://github.com/city96/ComfyUI_ColorMod": { + "author_account_age_days": 889, + "last_update": "2024-08-06 22:38:54", + "stars": 97 + }, + "https://github.com/city96/ComfyUI_DiT": { + "author_account_age_days": 889, + "last_update": "2024-08-06 22:44:33", + "stars": 5 + }, + "https://github.com/city96/ComfyUI_ExtraModels": { + "author_account_age_days": 889, + "last_update": "2024-12-17 06:44:05", + "stars": 512 + }, + "https://github.com/city96/ComfyUI_NetDist": { + "author_account_age_days": 889, + "last_update": "2024-05-22 18:05:10", + "stars": 462 + }, + "https://github.com/city96/SD-Latent-Interposer": { + "author_account_age_days": 889, + "last_update": "2024-08-06 22:01:47", + "stars": 296 + }, + "https://github.com/city96/SD-Latent-Upscaler": { + "author_account_age_days": 889, + "last_update": "2024-05-22 18:05:50", + "stars": 160 + }, + "https://github.com/civen-cn/ComfyUI-PaddleOcr": { + "author_account_age_days": 2896, + "last_update": "2024-12-31 19:11:04", + "stars": 7 + }, + "https://github.com/civen-cn/ComfyUI-Whisper-Translator": { + "author_account_age_days": 2896, + "last_update": "2025-01-04 03:37:06", + "stars": 6 + }, + "https://github.com/civitai/civitai_comfy_nodes": { + "author_account_age_days": 990, + "last_update": "2024-08-25 03:32:49", + "stars": 148 + }, + "https://github.com/cjj198909/comfy_openai_image_api_azure": { + "author_account_age_days": 748, + "last_update": "2025-07-16 05:37:48", + "stars": 0 + }, + "https://github.com/claptrap0/ComfyUI_LLM_Hub": { + "author_account_age_days": 7, + "last_update": "2025-07-13 11:51:08", + "stars": 0 + }, + "https://github.com/claussteinmassl/ComfyUI-CS-CustomNodes": { + "author_account_age_days": 3092, + "last_update": "2024-06-14 09:03:10", + "stars": 1 + }, + "https://github.com/cleanlii/comfyui-dalle-integration": { + "author_account_age_days": 2494, + "last_update": "2025-04-02 08:29:56", + "stars": 1 + }, + "https://github.com/clhui/ComfyUi-clh-Tool": { + "author_account_age_days": 3220, + "last_update": "2024-12-28 10:22:00", + "stars": 6 + }, + "https://github.com/clouddreamfly/ComfyUI-PromptWrapper": { + "author_account_age_days": 1984, + "last_update": "2025-06-02 16:16:12", + "stars": 2 + }, + "https://github.com/cloudkoala/comfyui-koala": { + "author_account_age_days": 305, + "last_update": "2025-06-06 00:17:19", + "stars": 0 + }, + "https://github.com/cluny85/ComfyUI-Scripting-Tools": { + "author_account_age_days": 4937, + "last_update": "2025-06-16 12:28:27", + "stars": 0 + }, + "https://github.com/cmdicely/simple_image_to_palette": { + "author_account_age_days": 5875, + "last_update": "2025-06-22 03:20:08", + "stars": 0 + }, + "https://github.com/cnbjjj/ComfyUI-Jtils": { + "author_account_age_days": 565, + "last_update": "2025-05-10 23:25:19", + "stars": 3 + }, + "https://github.com/codecringebinge/ComfyUI-Arrow-Key-Canvas-Navigation": { + "author_account_age_days": 3189, + "last_update": "2024-09-29 22:35:01", + "stars": 2 + }, + "https://github.com/codeprimate/ComfyUI-MaskContourProcessor": { + "author_account_age_days": 6240, + "last_update": "2024-12-16 06:53:08", + "stars": 2 + }, + "https://github.com/comfy-deploy/comfyui-llm-toolkit": { + "author_account_age_days": 558, + "last_update": "2025-07-15 22:25:10", + "stars": 27 + }, + "https://github.com/comfyanonymous/ComfyUI": { + "author_account_age_days": 940, + "last_update": "2025-07-21 00:52:25", + "stars": 83100 + }, + "https://github.com/comfyanonymous/ComfyUI_TensorRT": { + "author_account_age_days": 940, + "last_update": "2024-10-10 00:23:55", + "stars": 628 + }, + "https://github.com/comfyanonymous/ComfyUI_experiments": { + "author_account_age_days": 940, + "last_update": "2024-05-22 15:29:49", + "stars": 183 + }, + "https://github.com/concarne000/ConCarneNode": { + "author_account_age_days": 2292, + "last_update": "2024-05-22 22:10:18", + "stars": 4 + }, + "https://github.com/conquestace/ComfyUI-ImageUploader": { + "author_account_age_days": 5000, + "last_update": "2024-05-23 01:25:49", + "stars": 3 + }, + "https://github.com/coolzilj/ComfyUI-LJNodes": { + "author_account_age_days": 5054, + "last_update": "2024-06-15 01:57:32", + "stars": 86 + }, + "https://github.com/coolzilj/ComfyUI-Photopea": { + "author_account_age_days": 5054, + "last_update": "2024-06-14 08:10:57", + "stars": 156 + }, + "https://github.com/coreyryanhanson/ComfyQR": { + "author_account_age_days": 3447, + "last_update": "2025-01-26 16:25:19", + "stars": 78 + }, + "https://github.com/coreyryanhanson/ComfyQR-scanning-nodes": { + "author_account_age_days": 3447, + "last_update": "2025-01-26 16:26:36", + "stars": 12 + }, + "https://github.com/coulterj/comfyui-svg-visual-normalize": { + "author_account_age_days": 3333, + "last_update": "2025-05-26 11:45:44", + "stars": 0 + }, + "https://github.com/cozy-comfyui/cozy_comm": { + "author_account_age_days": 457, + "last_update": "2025-04-03 17:02:54", + "stars": 2 + }, + "https://github.com/cozymantis/cozy-utils-comfyui-nodes": { + "author_account_age_days": 500, + "last_update": "2025-04-07 09:53:31", + "stars": 5 + }, + "https://github.com/cozymantis/human-parser-comfyui-node": { + "author_account_age_days": 500, + "last_update": "2025-04-19 14:09:03", + "stars": 107 + }, + "https://github.com/cozymantis/pose-generator-comfyui-node": { + "author_account_age_days": 500, + "last_update": "2025-04-07 09:53:17", + "stars": 83 + }, + "https://github.com/cr7Por/ComfyUI_DepthFlow": { + "author_account_age_days": 1516, + "last_update": "2024-09-16 09:10:08", + "stars": 5 + }, + "https://github.com/craig-tanaka/comfyui_animeseg": { + "author_account_age_days": 3001, + "last_update": "2025-05-20 18:59:45", + "stars": 0 + }, + "https://github.com/crave33/RenesStuffDanbooruTagGet": { + "author_account_age_days": 158, + "last_update": "2025-02-23 15:48:48", + "stars": 0 + }, + "https://github.com/crystian/ComfyUI-Crystools": { + "author_account_age_days": 4508, + "last_update": "2025-07-13 23:31:42", + "stars": 1294 + }, + "https://github.com/crystian/ComfyUI-Crystools-save": { + "author_account_age_days": 4508, + "last_update": "2025-06-01 20:17:39", + "stars": 45 + }, + "https://github.com/cubiq/Block_Patcher_ComfyUI": { + "author_account_age_days": 5402, + "last_update": "2024-09-22 09:49:06", + "stars": 83 + }, + "https://github.com/cubiq/ComfyUI_FaceAnalysis": { + "author_account_age_days": 5402, + "last_update": "2025-05-20 05:18:36", + "stars": 460 + }, + "https://github.com/cubiq/ComfyUI_IPAdapter_plus": { + "author_account_age_days": 5402, + "last_update": "2025-04-14 07:29:17", + "stars": 5309 + }, + "https://github.com/cubiq/ComfyUI_InstantID": { + "author_account_age_days": 5402, + "last_update": "2025-04-14 07:50:01", + "stars": 1672 + }, + "https://github.com/cubiq/ComfyUI_essentials": { + "author_account_age_days": 5402, + "last_update": "2025-04-14 07:33:29", + "stars": 888 + }, + "https://github.com/cubiq/PuLID_ComfyUI": { + "author_account_age_days": 5402, + "last_update": "2025-04-14 07:47:23", + "stars": 873 + }, + "https://github.com/cuongloveit/comfy_http_request": { + "author_account_age_days": 3643, + "last_update": "2024-06-14 11:00:11", + "stars": 5 + }, + "https://github.com/curiousjp/ComfyUI-MaskBatchPermutations": { + "author_account_age_days": 2321, + "last_update": "2024-05-28 13:09:32", + "stars": 5 + }, + "https://github.com/cyberhirsch/seb_nodes": { + "author_account_age_days": 2258, + "last_update": "2025-07-12 12:45:36", + "stars": 1 + }, + "https://github.com/czcz1024/Comfyui-FaceCompare": { + "author_account_age_days": 4625, + "last_update": "2024-06-14 07:13:32", + "stars": 0 + }, + "https://github.com/da2el-ai/ComfyUI-d2-send-eagle": { + "author_account_age_days": 781, + "last_update": "2025-03-10 14:31:22", + "stars": 16 + }, + "https://github.com/da2el-ai/ComfyUI-d2-size-selector": { + "author_account_age_days": 781, + "last_update": "2024-10-02 14:04:20", + "stars": 4 + }, + "https://github.com/da2el-ai/ComfyUI-d2-steps": { + "author_account_age_days": 781, + "last_update": "2024-10-02 14:03:14", + "stars": 5 + }, + "https://github.com/da2el-ai/ComfyUI-d2-xyplot-utils": { + "author_account_age_days": 781, + "last_update": "2024-10-02 14:00:58", + "stars": 5 + }, + "https://github.com/da2el-ai/D2-PromptSelector-comfyUI": { + "author_account_age_days": 781, + "last_update": "2025-04-05 03:00:34", + "stars": 3 + }, + "https://github.com/da2el-ai/D2-SavePSD-ComfyUI": { + "author_account_age_days": 781, + "last_update": "2025-04-08 15:28:06", + "stars": 3 + }, + "https://github.com/da2el-ai/D2-nodes-ComfyUI": { + "author_account_age_days": 781, + "last_update": "2025-07-19 07:20:36", + "stars": 36 + }, + "https://github.com/dadoirie/ComfyUI_Dados_Nodes": { + "author_account_age_days": 1981, + "last_update": "2025-06-09 10:35:26", + "stars": 1 + }, + "https://github.com/dafeng012/comfyui-imgmake": { + "author_account_age_days": 1067, + "last_update": "2024-11-03 17:38:47", + "stars": 15 + }, + "https://github.com/dagthomas/comfyui_dagthomas": { + "author_account_age_days": 4463, + "last_update": "2025-04-23 14:00:14", + "stars": 257 + }, + "https://github.com/danTheMonk/comfyui-int-and-float": { + "author_account_age_days": 3778, + "last_update": "2025-07-04 16:07:42", + "stars": 0 + }, + "https://github.com/danger-electrodes/ComfyUI_Fawfluencer_Nodes": { + "author_account_age_days": 781, + "last_update": "2025-04-15 10:31:38", + "stars": 0 + }, + "https://github.com/daniabib/ComfyUI_ProPainter_Nodes": { + "author_account_age_days": 2796, + "last_update": "2024-12-22 13:50:25", + "stars": 320 + }, + "https://github.com/daniel-lewis-ab/ComfyUI-Llama": { + "author_account_age_days": 3743, + "last_update": "2024-06-29 19:55:42", + "stars": 60 + }, + "https://github.com/daniel-lewis-ab/ComfyUI-TTS": { + "author_account_age_days": 3743, + "last_update": "2024-06-14 08:09:49", + "stars": 28 + }, + "https://github.com/darkpixel/darkprompts": { + "author_account_age_days": 5715, + "last_update": "2025-06-09 16:39:38", + "stars": 8 + }, + "https://github.com/darth-veitcher/comfydv": { + "author_account_age_days": 4820, + "last_update": "2025-05-13 07:24:56", + "stars": 1 + }, + "https://github.com/daryltucker/ComfyUI-LoadFiles": { + "author_account_age_days": 4856, + "last_update": "2024-08-31 23:59:44", + "stars": 2 + }, + "https://github.com/dasilva333/ComfyUI_ContrastingColor": { + "author_account_age_days": 5104, + "last_update": "2025-02-22 04:49:59", + "stars": 1 + }, + "https://github.com/dasilva333/ComfyUI_MarkdownImage": { + "author_account_age_days": 5104, + "last_update": "2025-04-12 03:11:13", + "stars": 0 + }, + "https://github.com/dave-palt/comfyui_DSP_imagehelpers": { + "author_account_age_days": 549, + "last_update": "2024-05-22 23:12:11", + "stars": 0 + }, + "https://github.com/davidgressett/comfyui-systemlevel": { + "author_account_age_days": 3022, + "last_update": "2025-01-22 23:51:40", + "stars": 0 + }, + "https://github.com/daxcay/ComfyUI-DataSet": { + "author_account_age_days": 486, + "last_update": "2025-03-01 05:24:50", + "stars": 52 + }, + "https://github.com/daxcay/ComfyUI-JDCN": { + "author_account_age_days": 486, + "last_update": "2025-04-14 09:20:22", + "stars": 120 + }, + "https://github.com/daxcay/ComfyUI-NODEJS": { + "author_account_age_days": 486, + "last_update": "2024-11-28 09:46:29", + "stars": 14 + }, + "https://github.com/daxcay/ComfyUI-Nexus": { + "author_account_age_days": 486, + "last_update": "2025-03-01 15:40:05", + "stars": 86 + }, + "https://github.com/daxcay/ComfyUI-TG": { + "author_account_age_days": 486, + "last_update": "2024-11-28 09:45:12", + "stars": 20 + }, + "https://github.com/daxcay/ComfyUI-WA": { + "author_account_age_days": 486, + "last_update": "2024-11-28 09:44:50", + "stars": 48 + }, + "https://github.com/daxcay/ComfyUI-YouTubeVideoPlayer": { + "author_account_age_days": 486, + "last_update": "2024-11-28 09:45:30", + "stars": 6 + }, + "https://github.com/dchatel/comfyui_davcha": { + "author_account_age_days": 4927, + "last_update": "2025-04-03 06:39:42", + "stars": 1 + }, + "https://github.com/dchatel/comfyui_facetools": { + "author_account_age_days": 4927, + "last_update": "2025-05-18 12:30:50", + "stars": 143 + }, + "https://github.com/denfrost/Den_ComfyUI_Workflow": { + "author_account_age_days": 3888, + "last_update": "2025-05-07 07:15:01", + "stars": 4 + }, + "https://github.com/deroberon/StableZero123-comfyui": { + "author_account_age_days": 5687, + "last_update": "2024-05-22 22:09:53", + "stars": 172 + }, + "https://github.com/deroberon/demofusion-comfyui": { + "author_account_age_days": 5687, + "last_update": "2024-05-22 22:09:42", + "stars": 88 + }, + "https://github.com/dfghsdh/ComfyUI_FluxPromptGen": { + "author_account_age_days": 301, + "last_update": "2024-09-23 07:51:56", + "stars": 14 + }, + "https://github.com/dfl/comfyui-clip-with-break": { + "author_account_age_days": 6365, + "last_update": "2025-03-04 20:16:06", + "stars": 13 + }, + "https://github.com/dfl/comfyui-tcd-scheduler": { + "author_account_age_days": 6365, + "last_update": "2024-05-22 23:23:28", + "stars": 83 + }, + "https://github.com/diStyApps/ComfyUI-disty-Flow": { + "author_account_age_days": 4595, + "last_update": "2025-01-04 18:03:37", + "stars": 551 + }, + "https://github.com/diStyApps/ComfyUI_FrameMaker": { + "author_account_age_days": 4595, + "last_update": "2024-05-23 00:11:33", + "stars": 22 + }, + "https://github.com/dicksensei69/comfyui_loops": { + "author_account_age_days": 1026, + "last_update": "2025-05-03 22:22:55", + "stars": 1 + }, + "https://github.com/dicksondickson/ComfyUI-Dickson-Nodes": { + "author_account_age_days": 4382, + "last_update": "2024-09-18 04:30:33", + "stars": 10 + }, + "https://github.com/digitaljohn/comfyui-propost": { + "author_account_age_days": 4909, + "last_update": "2025-02-10 23:25:24", + "stars": 178 + }, + "https://github.com/dimtion/comfyui-raw-image": { + "author_account_age_days": 4756, + "last_update": "2025-07-19 22:22:37", + "stars": 1 + }, + "https://github.com/dimtoneff/ComfyUI-PixelArt-Detector": { + "author_account_age_days": 3806, + "last_update": "2025-04-01 15:43:07", + "stars": 307 + }, + "https://github.com/dionren/ComfyUI-Pro-Export-Tool": { + "author_account_age_days": 4277, + "last_update": "2024-10-11 08:26:18", + "stars": 2 + }, + "https://github.com/diontimmer/ComfyUI-Vextra-Nodes": { + "author_account_age_days": 5162, + "last_update": "2024-06-20 16:48:44", + "stars": 77 + }, + "https://github.com/discopixel-studio/comfyui-discopixel": { + "author_account_age_days": 737, + "last_update": "2024-09-30 00:46:13", + "stars": 12 + }, + "https://github.com/discus0434/comfyui-aesthetic-predictor-v2-5": { + "author_account_age_days": 1861, + "last_update": "2024-06-14 08:12:05", + "stars": 13 + }, + "https://github.com/discus0434/comfyui-caching-embeddings": { + "author_account_age_days": 1861, + "last_update": "2024-06-14 08:59:36", + "stars": 2 + }, + "https://github.com/discus0434/comfyui-flux-accelerator": { + "author_account_age_days": 1861, + "last_update": "2024-12-19 14:39:39", + "stars": 137 + }, + "https://github.com/djbielejeski/a-person-mask-generator": { + "author_account_age_days": 4675, + "last_update": "2025-07-07 19:02:24", + "stars": 362 + }, + "https://github.com/dmMaze/sketch2manga": { + "author_account_age_days": 2241, + "last_update": "2025-03-31 08:51:09", + "stars": 41 + }, + "https://github.com/dmarx/ComfyUI-AudioReactive": { + "author_account_age_days": 4896, + "last_update": "2024-05-22 22:12:53", + "stars": 11 + }, + "https://github.com/dmarx/ComfyUI-Keyframed": { + "author_account_age_days": 4896, + "last_update": "2024-07-01 01:41:23", + "stars": 88 + }, + "https://github.com/domenecmiralles/obobo_nodes": { + "author_account_age_days": 998, + "last_update": "2025-06-12 22:44:13", + "stars": 0 + }, + "https://github.com/dorpxam/ComfyUI-FramePack-F1-T2V": { + "author_account_age_days": 651, + "last_update": "2025-05-29 06:33:54", + "stars": 2 + }, + "https://github.com/dorpxam/ComfyUI-LTXVideoLoRA": { + "author_account_age_days": 651, + "last_update": "2025-05-10 16:42:44", + "stars": 17 + }, + "https://github.com/doubletwisted/ComfyUI-Deadline-Plugin": { + "author_account_age_days": 982, + "last_update": "2025-05-25 22:47:23", + "stars": 6 + }, + "https://github.com/drago87/ComfyUI_Dragos_Nodes": { + "author_account_age_days": 4161, + "last_update": "2024-05-22 21:32:15", + "stars": 3 + }, + "https://github.com/dreamhartley/ComfyUI_show_seed": { + "author_account_age_days": 875, + "last_update": "2025-01-14 16:15:12", + "stars": 1 + }, + "https://github.com/drmbt/comfyui-dreambait-nodes": { + "author_account_age_days": 4169, + "last_update": "2025-06-23 04:17:05", + "stars": 4 + }, + "https://github.com/drphero/comfyui_prompttester": { + "author_account_age_days": 3603, + "last_update": "2025-06-19 01:06:51", + "stars": 1 + }, + "https://github.com/drustan-hawk/primitive-types": { + "author_account_age_days": 680, + "last_update": "2024-08-01 17:44:51", + "stars": 6 + }, + "https://github.com/dseditor/ComfyUI-ListHelper": { + "author_account_age_days": 1395, + "last_update": "2025-07-07 00:13:55", + "stars": 2 + }, + "https://github.com/dseditor/ComfyUI-ScheduledTask": { + "author_account_age_days": 1395, + "last_update": "2025-07-15 12:08:18", + "stars": 7 + }, + "https://github.com/dseditor/ComfyUI-Thread": { + "author_account_age_days": 1395, + "last_update": "2025-06-17 02:38:00", + "stars": 3 + }, + "https://github.com/duchamps0305/comfyui-white-extractor": { + "author_account_age_days": 1013, + "last_update": "2025-01-23 08:09:12", + "stars": 0 + }, + "https://github.com/ducido/ObjectFusion_ComfyUI_nodes": { + "author_account_age_days": 920, + "last_update": "2025-05-02 08:31:46", + "stars": 1 + }, + "https://github.com/dymokomi/comfyui_dygen": { + "author_account_age_days": 963, + "last_update": "2024-11-28 20:08:13", + "stars": 1 + }, + "https://github.com/dzqdzq/ComfyUI-crop-alpha": { + "author_account_age_days": 3406, + "last_update": "2025-02-17 14:46:11", + "stars": 2 + }, + "https://github.com/e-tier-newbie/ComfyUI-E-Tier-TextSaver": { + "author_account_age_days": 73, + "last_update": "2025-06-06 21:59:50", + "stars": 0 + }, + "https://github.com/e7mac/ComfyUI-ShadertoyGL": { + "author_account_age_days": 5195, + "last_update": "2024-06-20 14:52:42", + "stars": 4 + }, + "https://github.com/ealkanat/comfyui-easy-padding": { + "author_account_age_days": 2854, + "last_update": "2024-12-31 02:38:22", + "stars": 17 + }, + "https://github.com/eastoc/ComfyUI_SemanticSAM": { + "author_account_age_days": 3109, + "last_update": "2024-08-13 19:24:33", + "stars": 4 + }, + "https://github.com/edelvarden/ComfyUI-Display-Value": { + "author_account_age_days": 2524, + "last_update": "2025-05-25 23:02:40", + "stars": 0 + }, + "https://github.com/edelvarden/comfyui_image_metadata_extension": { + "author_account_age_days": 2524, + "last_update": "2025-07-20 08:17:24", + "stars": 50 + }, + "https://github.com/edenartlab/eden_comfy_pipelines": { + "author_account_age_days": 664, + "last_update": "2025-07-11 13:20:33", + "stars": 94 + }, + "https://github.com/edenartlab/sd-lora-trainer": { + "author_account_age_days": 664, + "last_update": "2025-02-24 16:18:16", + "stars": 56 + }, + "https://github.com/edoardocarmignani/extralinks": { + "author_account_age_days": 2844, + "last_update": "2025-07-19 22:01:09", + "stars": 0 + }, + "https://github.com/educator-art/ComfyUI-Load-DirectoryFiles": { + "author_account_age_days": 593, + "last_update": "2025-04-22 08:51:32", + "stars": 3 + }, + "https://github.com/eg0pr0xy/comfyui_noisegen": { + "author_account_age_days": 2465, + "last_update": "2025-06-29 13:58:28", + "stars": 0 + }, + "https://github.com/emojiiii/ComfyUI_Emojiiii_Custom_Nodes": { + "author_account_age_days": 2914, + "last_update": "2024-09-03 06:55:04", + "stars": 0 + }, + "https://github.com/envy-ai/ComfyUI-ConDelta": { + "author_account_age_days": 347, + "last_update": "2025-04-24 00:16:02", + "stars": 202 + }, + "https://github.com/erosDiffusion/ComfyUI-enricos-nodes": { + "author_account_age_days": 388, + "last_update": "2025-05-05 22:53:42", + "stars": 496 + }, + "https://github.com/evanspearman/ComfyMath": { + "author_account_age_days": 4630, + "last_update": "2025-03-08 18:14:34", + "stars": 130 + }, + "https://github.com/excelwong/ComfyUI-PromptComposer": { + "author_account_age_days": 3757, + "last_update": "2025-04-30 10:33:43", + "stars": 0 + }, + "https://github.com/exdysa/comfyui-selector": { + "author_account_age_days": 1387, + "last_update": "2025-03-14 12:21:29", + "stars": 4 + }, + "https://github.com/exectails/comfyui-et_dynamicprompts": { + "author_account_age_days": 4309, + "last_update": "2024-11-29 22:37:19", + "stars": 4 + }, + "https://github.com/exectails/comfyui-et_infoutils": { + "author_account_age_days": 4309, + "last_update": "2024-11-29 17:27:49", + "stars": 2 + }, + "https://github.com/exectails/comfyui-et_stringutils": { + "author_account_age_days": 4309, + "last_update": "2024-11-26 20:26:14", + "stars": 1 + }, + "https://github.com/ez-af/ComfyUI-EZ-AF-Nodes": { + "author_account_age_days": 325, + "last_update": "2025-07-07 11:40:48", + "stars": 19 + }, + "https://github.com/fablestudio/ComfyUI-Showrunner-Utils": { + "author_account_age_days": 2440, + "last_update": "2025-06-04 04:34:09", + "stars": 0 + }, + "https://github.com/facefusion/facefusion-comfyui": { + "author_account_age_days": 703, + "last_update": "2025-07-03 14:54:43", + "stars": 5 + }, + "https://github.com/facok/ComfyUI-HunyuanVideoMultiLora": { + "author_account_age_days": 849, + "last_update": "2025-05-13 18:35:00", + "stars": 115 + }, + "https://github.com/facok/ComfyUI-TeaCacheHunyuanVideo": { + "author_account_age_days": 849, + "last_update": "2025-04-05 05:24:59", + "stars": 92 + }, + "https://github.com/fairy-root/ComfyUI-GLHF": { + "author_account_age_days": 2325, + "last_update": "2025-04-03 13:47:20", + "stars": 4 + }, + "https://github.com/fairy-root/ComfyUI-OpenAI-FM": { + "author_account_age_days": 2325, + "last_update": "2025-05-09 00:12:06", + "stars": 32 + }, + "https://github.com/fairy-root/ComfyUI-Show-Text": { + "author_account_age_days": 2325, + "last_update": "2025-04-08 14:21:57", + "stars": 12 + }, + "https://github.com/fairy-root/Flux-Prompt-Generator": { + "author_account_age_days": 2325, + "last_update": "2025-04-22 02:20:47", + "stars": 214 + }, + "https://github.com/fairy-root/comfyui-ollama-llms": { + "author_account_age_days": 2325, + "last_update": "2025-03-27 20:47:17", + "stars": 17 + }, + "https://github.com/fallingmeteorite/nsfw-image-check-comfyui": { + "author_account_age_days": 1480, + "last_update": "2025-06-02 03:59:25", + "stars": 7 + }, + "https://github.com/fashn-AI/ComfyUI-FASHN": { + "author_account_age_days": 747, + "last_update": "2025-06-30 12:16:05", + "stars": 25 + }, + "https://github.com/fat-tire/comfyui-unified-media-suite": { + "author_account_age_days": 5328, + "last_update": "2025-07-07 08:57:09", + "stars": 4 + }, + "https://github.com/fblissjr/ComfyUI-DatasetHelper": { + "author_account_age_days": 3755, + "last_update": "2025-01-27 18:58:33", + "stars": 6 + }, + "https://github.com/fblissjr/ComfyUI-EmbeddingPipelineAnalytics": { + "author_account_age_days": 3755, + "last_update": "2025-01-24 18:51:53", + "stars": 2 + }, + "https://github.com/fblissjr/ComfyUI-WanActivationEditor": { + "author_account_age_days": 3755, + "last_update": "2025-07-19 13:52:34", + "stars": 0 + }, + "https://github.com/fblissjr/ComfyUI-WanSeamlessFlow": { + "author_account_age_days": 3755, + "last_update": "2025-03-17 22:36:22", + "stars": 4 + }, + "https://github.com/fblissjr/shrug-prompter": { + "author_account_age_days": 3755, + "last_update": "2025-07-20 19:23:03", + "stars": 3 + }, + "https://github.com/fchangjun/Comfyui_MultiSaveImage": { + "author_account_age_days": 3916, + "last_update": "2025-07-03 07:23:45", + "stars": 1 + }, + "https://github.com/fearnworks/ComfyUI_FearnworksNodes": { + "author_account_age_days": 953, + "last_update": "2024-08-05 01:50:04", + "stars": 19 + }, + "https://github.com/feixuetuba/Spleeter": { + "author_account_age_days": 4354, + "last_update": "2025-01-19 10:39:17", + "stars": 0 + }, + "https://github.com/felixszeto/ComfyUI-RequestNodes": { + "author_account_age_days": 1440, + "last_update": "2025-04-19 18:59:35", + "stars": 90 + }, + "https://github.com/fexli/fexli-util-node-comfyui": { + "author_account_age_days": 1950, + "last_update": "2025-06-18 06:07:31", + "stars": 3 + }, + "https://github.com/fexploit/ComfyUI-AutoLabel": { + "author_account_age_days": 5435, + "last_update": "2025-03-18 13:07:46", + "stars": 7 + }, + "https://github.com/fexploit/ComfyUI-AutoTrimBG": { + "author_account_age_days": 5435, + "last_update": "2025-03-10 12:59:42", + "stars": 3 + }, + "https://github.com/fexploit/ComfyUI-Classifier": { + "author_account_age_days": 5435, + "last_update": "2025-03-10 20:33:42", + "stars": 1 + }, + "https://github.com/filipemeneses/comfy_pixelization": { + "author_account_age_days": 3867, + "last_update": "2025-06-12 07:07:01", + "stars": 65 + }, + "https://github.com/filliptm/ComfyUI_FL-Trainer": { + "author_account_age_days": 2127, + "last_update": "2024-10-18 00:20:18", + "stars": 166 + }, + "https://github.com/filliptm/ComfyUI_Fill-ChatterBox": { + "author_account_age_days": 2127, + "last_update": "2025-06-25 01:45:29", + "stars": 142 + }, + "https://github.com/filliptm/ComfyUI_Fill-Nodes": { + "author_account_age_days": 2127, + "last_update": "2025-07-08 18:05:47", + "stars": 420 + }, + "https://github.com/finegrain-ai/comfyui-finegrain": { + "author_account_age_days": 894, + "last_update": "2025-05-16 07:44:57", + "stars": 12 + }, + "https://github.com/flamacore/ComfyUI-YouTubeUploader": { + "author_account_age_days": 3700, + "last_update": "2025-06-14 22:11:33", + "stars": 1 + }, + "https://github.com/florestefano1975/ComfyUI-Advanced-Sequence-Seed": { + "author_account_age_days": 585, + "last_update": "2025-04-09 12:40:05", + "stars": 1 + }, + "https://github.com/florestefano1975/ComfyUI-CogVideoX": { + "author_account_age_days": 585, + "last_update": "2025-04-09 12:39:53", + "stars": 15 + }, + "https://github.com/florestefano1975/ComfyUI-HiDiffusion": { + "author_account_age_days": 585, + "last_update": "2025-04-09 12:40:58", + "stars": 141 + }, + "https://github.com/florestefano1975/ComfyUI-StabilityAI-Suite": { + "author_account_age_days": 585, + "last_update": "2025-04-09 12:40:36", + "stars": 4 + }, + "https://github.com/florestefano1975/comfyui-portrait-master": { + "author_account_age_days": 585, + "last_update": "2025-06-24 09:25:13", + "stars": 1084 + }, + "https://github.com/florestefano1975/comfyui-prompt-composer": { + "author_account_age_days": 585, + "last_update": "2025-04-27 15:00:00", + "stars": 277 + }, + "https://github.com/flowtyone/ComfyUI-Flowty-CRM": { + "author_account_age_days": 665, + "last_update": "2024-06-14 10:23:09", + "stars": 156 + }, + "https://github.com/flowtyone/ComfyUI-Flowty-LDSR": { + "author_account_age_days": 665, + "last_update": "2024-06-14 09:04:51", + "stars": 246 + }, + "https://github.com/flowtyone/ComfyUI-Flowty-TripoSR": { + "author_account_age_days": 665, + "last_update": "2024-06-16 00:53:22", + "stars": 509 + }, + "https://github.com/fluffydiveX/ComfyUI-hvBlockswap": { + "author_account_age_days": 224, + "last_update": "2025-03-30 03:30:40", + "stars": 8 + }, + "https://github.com/flycarl/ComfyUI-Pixelate": { + "author_account_age_days": 5251, + "last_update": "2024-11-26 13:31:56", + "stars": 1 + }, + "https://github.com/flyingshutter/As_ComfyUI_CustomNodes": { + "author_account_age_days": 3886, + "last_update": "2025-05-23 17:29:13", + "stars": 7 + }, + "https://github.com/fmatray/ComfyUI_BattlemapGrid": { + "author_account_age_days": 4013, + "last_update": "2024-06-05 22:35:06", + "stars": 0 + }, + "https://github.com/fofr/ComfyUI-HyperSDXL1StepUnetScheduler": { + "author_account_age_days": 5499, + "last_update": "2024-06-20 11:51:50", + "stars": 11 + }, + "https://github.com/fofr/ComfyUI-Prompter-fofrAI": { + "author_account_age_days": 5499, + "last_update": "2025-02-10 16:39:49", + "stars": 75 + }, + "https://github.com/fofr/comfyui-basic-auth": { + "author_account_age_days": 5499, + "last_update": "2025-03-17 09:38:05", + "stars": 1 + }, + "https://github.com/fofr/comfyui-fofr-toolkit": { + "author_account_age_days": 5499, + "last_update": "2024-08-09 11:36:38", + "stars": 4 + }, + "https://github.com/forever22777/comfyui-self-guidance": { + "author_account_age_days": 716, + "last_update": "2025-04-17 08:13:40", + "stars": 10 + }, + "https://github.com/fotobudka-team/comfyui-ai-faces": { + "author_account_age_days": 247, + "last_update": "2025-06-25 19:54:59", + "stars": 2 + }, + "https://github.com/foxtrot-roger/comfyui-rf-nodes": { + "author_account_age_days": 2712, + "last_update": "2024-08-13 22:01:40", + "stars": 2 + }, + "https://github.com/fpgaminer/joycaption_comfyui": { + "author_account_age_days": 4861, + "last_update": "2025-05-15 23:30:13", + "stars": 79 + }, + "https://github.com/fplu/comfyui_lama_with_refiner": { + "author_account_age_days": 2475, + "last_update": "2025-06-22 16:38:15", + "stars": 1 + }, + "https://github.com/frankchieng/ComfyUI_Aniportrait": { + "author_account_age_days": 832, + "last_update": "2024-09-13 10:41:16", + "stars": 55 + }, + "https://github.com/frankchieng/ComfyUI_MagicClothing": { + "author_account_age_days": 832, + "last_update": "2024-09-04 04:57:15", + "stars": 575 + }, + "https://github.com/frankchieng/ComfyUI_llm_easyanimiate": { + "author_account_age_days": 832, + "last_update": "2024-06-26 03:13:32", + "stars": 12 + }, + "https://github.com/fredconex/ComfyUI-SongBloom": { + "author_account_age_days": 1093, + "last_update": "2025-07-10 14:05:14", + "stars": 52 + }, + "https://github.com/fredconex/ComfyUI-SoundFlow": { + "author_account_age_days": 1093, + "last_update": "2025-06-16 14:18:04", + "stars": 40 + }, + "https://github.com/fredconex/ComfyUI-SyncEdit": { + "author_account_age_days": 1093, + "last_update": "2025-06-16 21:52:36", + "stars": 0 + }, + "https://github.com/freelifehacker/ComfyUI-ImgMask2PNG": { + "author_account_age_days": 2549, + "last_update": "2024-08-28 08:32:23", + "stars": 0 + }, + "https://github.com/fsdymy1024/ComfyUI_fsdymy": { + "author_account_age_days": 2597, + "last_update": "2024-07-01 17:58:52", + "stars": 9 + }, + "https://github.com/fssorc/ComfyUI_FFT": { + "author_account_age_days": 4978, + "last_update": "2024-09-30 01:27:21", + "stars": 13 + }, + "https://github.com/fssorc/ComfyUI_FaceShaper": { + "author_account_age_days": 4978, + "last_update": "2024-09-20 06:15:46", + "stars": 172 + }, + "https://github.com/fssorc/ComfyUI_RopeWrapper": { + "author_account_age_days": 4978, + "last_update": "2025-01-07 04:55:59", + "stars": 17 + }, + "https://github.com/fssorc/ComfyUI_pose_inter": { + "author_account_age_days": 4978, + "last_update": "2025-05-27 07:05:00", + "stars": 81 + }, + "https://github.com/fuselayer/comfyui-mosaic-blur": { + "author_account_age_days": 669, + "last_update": "2025-04-05 00:57:07", + "stars": 1 + }, + "https://github.com/gabe-init/ComfyUI-11labs": { + "author_account_age_days": 56, + "last_update": "2025-05-27 00:27:28", + "stars": 2 + }, + "https://github.com/gabe-init/ComfyUI-Google-Image-Search": { + "author_account_age_days": 56, + "last_update": "2025-05-27 00:54:00", + "stars": 3 + }, + "https://github.com/gabe-init/ComfyUI-Openrouter_node": { + "author_account_age_days": 56, + "last_update": "2025-06-13 01:42:28", + "stars": 9 + }, + "https://github.com/gabe-init/ComfyUI-String-Similarity": { + "author_account_age_days": 56, + "last_update": "2025-05-27 00:59:21", + "stars": 0 + }, + "https://github.com/game4d/ComfyUI-BDsInfiniteYou": { + "author_account_age_days": 4095, + "last_update": "2025-04-01 03:12:04", + "stars": 7 + }, + "https://github.com/gasparuff/CustomSelector": { + "author_account_age_days": 4385, + "last_update": "2025-05-09 06:17:31", + "stars": 1 + }, + "https://github.com/gelasdev/ComfyUI-FLUX-BFL-API": { + "author_account_age_days": 2372, + "last_update": "2025-06-08 01:01:01", + "stars": 46 + }, + "https://github.com/gemell1/ComfyUI_GMIC": { + "author_account_age_days": 2348, + "last_update": "2024-05-22 21:28:51", + "stars": 8 + }, + "https://github.com/geocine/geocine-comfyui": { + "author_account_age_days": 5343, + "last_update": "2025-03-08 15:46:56", + "stars": 0 + }, + "https://github.com/georgitsenov/ComfyUI-R2": { + "author_account_age_days": 3939, + "last_update": "2025-07-03 11:51:13", + "stars": 1 + }, + "https://github.com/ggarra13/ComfyUI-mrv2": { + "author_account_age_days": 4250, + "last_update": "2025-03-27 17:24:38", + "stars": 4 + }, + "https://github.com/giriss/comfy-image-saver": { + "author_account_age_days": 4629, + "last_update": "2024-05-22 20:40:55", + "stars": 281 + }, + "https://github.com/gisu/comfyui-foxpack": { + "author_account_age_days": 5390, + "last_update": "2024-08-20 06:43:22", + "stars": 2 + }, + "https://github.com/gitadmini/comfyui_extractstoryboards": { + "author_account_age_days": 3433, + "last_update": "2025-06-11 02:01:24", + "stars": 2 + }, + "https://github.com/githubYiheng/ComfyUI_Change_IMAGE_BOREDER": { + "author_account_age_days": 4294, + "last_update": "2024-05-23 01:20:09", + "stars": 0 + }, + "https://github.com/githubYiheng/ComfyUI_GetFileNameFromURL": { + "author_account_age_days": 4294, + "last_update": "2024-05-23 01:19:47", + "stars": 1 + }, + "https://github.com/githubYiheng/comfyui_kmeans_filter": { + "author_account_age_days": 4294, + "last_update": "2024-06-14 09:01:24", + "stars": 0 + }, + "https://github.com/githubYiheng/comfyui_meanshift_filter": { + "author_account_age_days": 4294, + "last_update": "2024-06-14 10:59:43", + "stars": 0 + }, + "https://github.com/githubYiheng/comfyui_private_postprocessor": { + "author_account_age_days": 4294, + "last_update": "2024-06-14 08:09:39", + "stars": 1 + }, + "https://github.com/gitmylo/ComfyUI-audio-nodes": { + "author_account_age_days": 2699, + "last_update": "2025-04-07 07:24:06", + "stars": 9 + }, + "https://github.com/glibsonoran/Plush-for-ComfyUI": { + "author_account_age_days": 2889, + "last_update": "2025-07-10 14:15:13", + "stars": 176 + }, + "https://github.com/glifxyz/ComfyUI-GlifNodes": { + "author_account_age_days": 965, + "last_update": "2024-11-25 12:37:14", + "stars": 56 + }, + "https://github.com/glitchinthemetrix16/ComfyUI-Roop": { + "author_account_age_days": 362, + "last_update": "2025-07-10 14:51:00", + "stars": 0 + }, + "https://github.com/glowcone/comfyui-base64-to-image": { + "author_account_age_days": 4137, + "last_update": "2024-07-08 22:53:25", + "stars": 16 + }, + "https://github.com/glowcone/comfyui-string-converter": { + "author_account_age_days": 4137, + "last_update": "2024-07-31 13:40:48", + "stars": 2 + }, + "https://github.com/gmorks/ComfyUI-Animagine-Prompt": { + "author_account_age_days": 2686, + "last_update": "2025-07-20 03:42:06", + "stars": 11 + }, + "https://github.com/gmorks/ComfyUI-SendToDiscord": { + "author_account_age_days": 2686, + "last_update": "2025-07-14 03:00:24", + "stars": 0 + }, + "https://github.com/goburiin/nsfwrecog-comfyui": { + "author_account_age_days": 345, + "last_update": "2024-08-14 02:17:15", + "stars": 0 + }, + "https://github.com/godmt/ComfyUI-IP-Composer": { + "author_account_age_days": 2121, + "last_update": "2025-05-18 09:52:01", + "stars": 5 + }, + "https://github.com/godmt/ComfyUI-List-Utils": { + "author_account_age_days": 2121, + "last_update": "2025-05-26 21:41:06", + "stars": 8 + }, + "https://github.com/godspede/ComfyUI_Substring": { + "author_account_age_days": 3504, + "last_update": "2025-03-27 15:33:12", + "stars": 0 + }, + "https://github.com/gokayfem/ComfyUI-Depth-Visualization": { + "author_account_age_days": 1449, + "last_update": "2024-10-31 23:50:57", + "stars": 64 + }, + "https://github.com/gokayfem/ComfyUI-Dream-Interpreter": { + "author_account_age_days": 1449, + "last_update": "2024-07-31 16:11:04", + "stars": 80 + }, + "https://github.com/gokayfem/ComfyUI-Texture-Simple": { + "author_account_age_days": 1449, + "last_update": "2024-07-31 16:14:23", + "stars": 50 + }, + "https://github.com/gokayfem/ComfyUI-fal-API": { + "author_account_age_days": 1449, + "last_update": "2025-07-20 15:40:57", + "stars": 138 + }, + "https://github.com/gokayfem/ComfyUI_VLM_nodes": { + "author_account_age_days": 1449, + "last_update": "2025-02-13 10:37:34", + "stars": 503 + }, + "https://github.com/goldwins520/Comfyui_saveimg2webdav": { + "author_account_age_days": 1967, + "last_update": "2025-05-25 06:15:38", + "stars": 0 + }, + "https://github.com/gonzalu/ComfyUI_YFG_Comical": { + "author_account_age_days": 2852, + "last_update": "2025-05-03 20:30:02", + "stars": 25 + }, + "https://github.com/googincheng/ComfyUX": { + "author_account_age_days": 3180, + "last_update": "2024-08-22 09:47:17", + "stars": 148 + }, + "https://github.com/gorillaframeai/GF_nodes": { + "author_account_age_days": 625, + "last_update": "2025-04-19 15:49:54", + "stars": 30 + }, + "https://github.com/gorillaframeai/GF_translate": { + "author_account_age_days": 625, + "last_update": "2025-02-04 19:26:53", + "stars": 4 + }, + "https://github.com/greengerong/ComfyUI-JanusPro-PL": { + "author_account_age_days": 4660, + "last_update": "2025-02-08 03:32:59", + "stars": 11 + }, + "https://github.com/greengerong/ComfyUI-Lumina-Video": { + "author_account_age_days": 4660, + "last_update": "2025-02-23 03:01:18", + "stars": 7 + }, + "https://github.com/gremlation/ComfyUI-ImageLabel": { + "author_account_age_days": 214, + "last_update": "2025-04-03 09:49:57", + "stars": 4 + }, + "https://github.com/gremlation/ComfyUI-JMESPath": { + "author_account_age_days": 214, + "last_update": "2025-04-03 09:50:11", + "stars": 1 + }, + "https://github.com/gremlation/ComfyUI-TrackAndWheel": { + "author_account_age_days": 214, + "last_update": "2025-04-03 09:50:20", + "stars": 2 + }, + "https://github.com/gremlation/ComfyUI-ViewData": { + "author_account_age_days": 214, + "last_update": "2025-04-03 09:50:28", + "stars": 1 + }, + "https://github.com/gremlation/ComfyUI-jq": { + "author_account_age_days": 214, + "last_update": "2025-04-03 09:50:39", + "stars": 1 + }, + "https://github.com/griptape-ai/ComfyUI-Griptape": { + "author_account_age_days": 912, + "last_update": "2025-05-29 03:24:58", + "stars": 198 + }, + "https://github.com/gseth/ControlAltAI-Nodes": { + "author_account_age_days": 4238, + "last_update": "2025-06-05 04:21:56", + "stars": 143 + }, + "https://github.com/gt732/ComfyUI-DreamWaltz-G": { + "author_account_age_days": 1547, + "last_update": "2024-10-27 03:15:13", + "stars": 2 + }, + "https://github.com/guerreiro/comfyg-switch": { + "author_account_age_days": 5432, + "last_update": "2025-07-13 13:39:00", + "stars": 3 + }, + "https://github.com/guill/abracadabra-comfyui": { + "author_account_age_days": 4584, + "last_update": "2024-12-23 09:46:10", + "stars": 1 + }, + "https://github.com/guyaton/guy-nodes-comfyui": { + "author_account_age_days": 293, + "last_update": "2024-10-02 13:15:26", + "stars": 0 + }, + "https://github.com/hackkhai/ComfyUI-Image-Matting": { + "author_account_age_days": 2242, + "last_update": "2024-07-31 15:02:56", + "stars": 18 + }, + "https://github.com/hanoixan/ComfyUI-DataBeast": { + "author_account_age_days": 5228, + "last_update": "2024-11-05 17:47:30", + "stars": 2 + }, + "https://github.com/haohaocreates/ComfyUI-HH-Image-Selector": { + "author_account_age_days": 497, + "last_update": "2024-07-28 21:08:27", + "stars": 0 + }, + "https://github.com/hassan-sd/comfyui-image-prompt-loader": { + "author_account_age_days": 961, + "last_update": "2025-06-11 21:10:47", + "stars": 2 + }, + "https://github.com/havvk/ComfyUI_AIIA": { + "author_account_age_days": 4029, + "last_update": "2025-07-07 14:53:42", + "stars": 7 + }, + "https://github.com/hay86/ComfyUI_DDColor": { + "author_account_age_days": 5058, + "last_update": "2024-06-14 08:12:13", + "stars": 7 + }, + "https://github.com/hay86/ComfyUI_Dreamtalk": { + "author_account_age_days": 5058, + "last_update": "2024-08-15 03:37:37", + "stars": 12 + }, + "https://github.com/hay86/ComfyUI_Hallo": { + "author_account_age_days": 5058, + "last_update": "2024-07-30 09:55:03", + "stars": 21 + }, + "https://github.com/hay86/ComfyUI_LatentSync": { + "author_account_age_days": 5058, + "last_update": "2025-01-06 07:47:40", + "stars": 16 + }, + "https://github.com/hay86/ComfyUI_MiniCPM-V": { + "author_account_age_days": 5058, + "last_update": "2024-08-09 07:52:59", + "stars": 40 + }, + "https://github.com/hay86/ComfyUI_OpenVoice": { + "author_account_age_days": 5058, + "last_update": "2024-07-02 08:16:20", + "stars": 18 + }, + "https://github.com/hayd-zju/ICEdit-ComfyUI-official": { + "author_account_age_days": 2308, + "last_update": "2025-07-11 01:56:09", + "stars": 194 + }, + "https://github.com/hayde0096/Comfyui-EasySettingpipes": { + "author_account_age_days": 3117, + "last_update": "2025-05-31 03:51:08", + "stars": 0 + }, + "https://github.com/hayden-fr/ComfyUI-Model-Manager": { + "author_account_age_days": 2328, + "last_update": "2025-05-16 15:14:43", + "stars": 135 + }, + "https://github.com/hben35096/ComfyUI-ReplenishNodes": { + "author_account_age_days": 739, + "last_update": "2025-05-24 17:06:41", + "stars": 6 + }, + "https://github.com/hben35096/ComfyUI-ToolBox": { + "author_account_age_days": 739, + "last_update": "2024-09-02 14:49:43", + "stars": 6 + }, + "https://github.com/heheok/comfyui_wan2.1_vace_infinite_helpers": { + "author_account_age_days": 4322, + "last_update": "2025-07-01 16:10:19", + "stars": 0 + }, + "https://github.com/hekmon/comfyui-checkpoint-extract": { + "author_account_age_days": 4555, + "last_update": "2025-03-31 13:30:54", + "stars": 1 + }, + "https://github.com/hekmon/comfyui-openai-api": { + "author_account_age_days": 4555, + "last_update": "2025-04-08 09:40:51", + "stars": 5 + }, + "https://github.com/heshengtao/comfyui_LLM_party": { + "author_account_age_days": 3286, + "last_update": "2025-06-22 08:42:11", + "stars": 1793 + }, + "https://github.com/heshengtao/comfyui_LLM_schools": { + "author_account_age_days": 3286, + "last_update": "2024-08-24 15:08:14", + "stars": 7 + }, + "https://github.com/hexxacubic/ComfyUI-Prompt_Library": { + "author_account_age_days": 59, + "last_update": "2025-07-07 04:30:07", + "stars": 3 + }, + "https://github.com/hgabha/WWAA-CustomNodes": { + "author_account_age_days": 546, + "last_update": "2025-07-11 09:04:52", + "stars": 22 + }, + "https://github.com/hhhzzyang/Comfyui_Lama": { + "author_account_age_days": 898, + "last_update": "2024-05-22 21:13:19", + "stars": 55 + }, + "https://github.com/hiderminer/ComfyUI-HM-Utilities": { + "author_account_age_days": 907, + "last_update": "2025-07-18 05:52:20", + "stars": 0 + }, + "https://github.com/hieuck/ComfyUI-BiRefNet": { + "author_account_age_days": 2916, + "last_update": "2024-12-04 16:20:00", + "stars": 1 + }, + "https://github.com/hiforce/comfyui-hiforce-plugin": { + "author_account_age_days": 2193, + "last_update": "2024-06-14 08:13:24", + "stars": 9 + }, + "https://github.com/hinablue/ComfyUI_3dPoseEditor": { + "author_account_age_days": 5503, + "last_update": "2024-06-21 17:38:40", + "stars": 204 + }, + "https://github.com/hmwl/ComfyUI-TaskMonitor": { + "author_account_age_days": 3005, + "last_update": "2025-05-25 15:41:14", + "stars": 5 + }, + "https://github.com/hmwl/ComfyUI_zip": { + "author_account_age_days": 3005, + "last_update": "2025-05-25 16:21:35", + "stars": 2 + }, + "https://github.com/hnmr293/ComfyUI-latent-ops": { + "author_account_age_days": 946, + "last_update": "2025-04-16 08:04:59", + "stars": 2 + }, + "https://github.com/hnmr293/comfyui-savemem": { + "author_account_age_days": 946, + "last_update": "2025-04-15 02:10:14", + "stars": 0 + }, + "https://github.com/hodanajan/optimal-crop-resolution": { + "author_account_age_days": 2720, + "last_update": "2025-01-21 10:46:26", + "stars": 1 + }, + "https://github.com/hoveychen/ComfyUI-MusePose-Remaster": { + "author_account_age_days": 5034, + "last_update": "2024-10-22 09:40:04", + "stars": 7 + }, + "https://github.com/huagetai/ComfyUI-Gaffer": { + "author_account_age_days": 5023, + "last_update": "2024-06-19 00:58:38", + "stars": 51 + }, + "https://github.com/huagetai/ComfyUI_LightGradient": { + "author_account_age_days": 5023, + "last_update": "2024-05-23 01:21:27", + "stars": 9 + }, + "https://github.com/huanngzh/ComfyUI-MVAdapter": { + "author_account_age_days": 1629, + "last_update": "2025-06-26 07:01:15", + "stars": 422 + }, + "https://github.com/hubentu/ComfyUI-loras-loader": { + "author_account_age_days": 3895, + "last_update": "2025-06-04 19:02:35", + "stars": 3 + }, + "https://github.com/huchenlei/ComfyUI-IC-Light-Native": { + "author_account_age_days": 3267, + "last_update": "2025-02-25 16:35:36", + "stars": 622 + }, + "https://github.com/huchenlei/ComfyUI-layerdiffuse": { + "author_account_age_days": 3267, + "last_update": "2025-02-25 16:35:50", + "stars": 1699 + }, + "https://github.com/huchenlei/ComfyUI-openpose-editor": { + "author_account_age_days": 3267, + "last_update": "2024-07-31 13:44:16", + "stars": 102 + }, + "https://github.com/huchenlei/ComfyUI_DanTagGen": { + "author_account_age_days": 3267, + "last_update": "2024-08-01 01:42:14", + "stars": 65 + }, + "https://github.com/huchenlei/ComfyUI_densediffusion": { + "author_account_age_days": 3267, + "last_update": "2025-02-25 16:34:32", + "stars": 136 + }, + "https://github.com/huchenlei/ComfyUI_omost": { + "author_account_age_days": 3267, + "last_update": "2025-02-25 16:35:18", + "stars": 447 + }, + "https://github.com/hughescr/ComfyUI-OpenPose-Keypoint-Extractor": { + "author_account_age_days": 6032, + "last_update": "2025-04-08 18:48:00", + "stars": 33 + }, + "https://github.com/hugobb/FastGAN-ComfyUI-Node": { + "author_account_age_days": 3227, + "last_update": "2025-04-25 20:24:20", + "stars": 1 + }, + "https://github.com/huixingyun/ComfyUI-HX-Captioner": { + "author_account_age_days": 226, + "last_update": "2025-01-25 06:48:18", + "stars": 0 + }, + "https://github.com/huixingyun/ComfyUI-HX-Pimg": { + "author_account_age_days": 226, + "last_update": "2025-03-04 09:30:50", + "stars": 0 + }, + "https://github.com/humgate/simplecomfy": { + "author_account_age_days": 1757, + "last_update": "2024-06-14 08:58:21", + "stars": 0 + }, + "https://github.com/hunzmusic/ComfyUI-IG2MV": { + "author_account_age_days": 119, + "last_update": "2025-05-09 10:46:42", + "stars": 30 + }, + "https://github.com/hustille/ComfyUI_Fooocus_KSampler": { + "author_account_age_days": 831, + "last_update": "2024-05-22 20:39:48", + "stars": 63 + }, + "https://github.com/hustille/ComfyUI_hus_utils": { + "author_account_age_days": 831, + "last_update": "2024-05-22 20:39:34", + "stars": 5 + }, + "https://github.com/hvppycoding/comfyui-random-sampler-scheduler-steps": { + "author_account_age_days": 997, + "last_update": "2025-06-04 15:41:16", + "stars": 0 + }, + "https://github.com/hwhaocool/ComfyUI-Select-Any": { + "author_account_age_days": 3279, + "last_update": "2024-07-31 13:52:47", + "stars": 2 + }, + "https://github.com/hybskgks28275/ComfyUI-hybs-nodes": { + "author_account_age_days": 1318, + "last_update": "2025-05-28 07:15:21", + "stars": 1 + }, + "https://github.com/hyunamy/comfy-ui-on-complete-email-me": { + "author_account_age_days": 3502, + "last_update": "2025-04-10 01:38:49", + "stars": 3 + }, + "https://github.com/iDAPPA/ComfyUI-AMDGPUMonitor": { + "author_account_age_days": 131, + "last_update": "2025-03-13 18:16:21", + "stars": 3 + }, + "https://github.com/iFREEGROUP/comfyui-undistort": { + "author_account_age_days": 1948, + "last_update": "2024-06-14 08:59:52", + "stars": 2 + }, + "https://github.com/iSuneast/ComfyUI-WebhookNotifier": { + "author_account_age_days": 4563, + "last_update": "2025-04-06 03:53:13", + "stars": 1 + }, + "https://github.com/iacoposk8/ComfyUI-Fooocus-Inpaint-Wrapper": { + "author_account_age_days": 4545, + "last_update": "2025-07-05 07:17:09", + "stars": 1 + }, + "https://github.com/ialhabbal/OcclusionMask": { + "author_account_age_days": 3411, + "last_update": "2025-06-24 14:38:58", + "stars": 22 + }, + "https://github.com/iamandeepsandhu/ComfyUI-NSFW-Check": { + "author_account_age_days": 2597, + "last_update": "2024-11-26 07:32:18", + "stars": 10 + }, + "https://github.com/icesun963/ComfyUI_HFDownLoad": { + "author_account_age_days": 4497, + "last_update": "2024-07-18 12:13:23", + "stars": 0 + }, + "https://github.com/ichabodcole/ComfyUI-Ichis-Pack": { + "author_account_age_days": 4787, + "last_update": "2025-04-20 08:05:27", + "stars": 2 + }, + "https://github.com/idrirap/ComfyUI-Lora-Auto-Trigger-Words": { + "author_account_age_days": 3441, + "last_update": "2025-01-16 08:38:21", + "stars": 210 + }, + "https://github.com/iemesowum/ComfyUI_IsaacNodes": { + "author_account_age_days": 5683, + "last_update": "2025-03-27 13:28:10", + "stars": 1 + }, + "https://github.com/if-ai/ComfyUI-IF_AI_Dreamtalk": { + "author_account_age_days": 3253, + "last_update": "2025-03-14 13:19:03", + "stars": 25 + }, + "https://github.com/if-ai/ComfyUI-IF_AI_HFDownloaderNode": { + "author_account_age_days": 3253, + "last_update": "2025-07-14 11:50:02", + "stars": 19 + }, + "https://github.com/if-ai/ComfyUI-IF_AI_ParlerTTSNode": { + "author_account_age_days": 3253, + "last_update": "2025-03-14 13:27:47", + "stars": 17 + }, + "https://github.com/if-ai/ComfyUI-IF_AI_WishperSpeechNode": { + "author_account_age_days": 3253, + "last_update": "2025-03-09 09:17:01", + "stars": 44 + }, + "https://github.com/if-ai/ComfyUI-IF_AI_tools": { + "author_account_age_days": 3253, + "last_update": "2025-03-09 09:11:32", + "stars": 657 + }, + "https://github.com/if-ai/ComfyUI-IF_DatasetMkr": { + "author_account_age_days": 3253, + "last_update": "2025-03-17 08:14:01", + "stars": 20 + }, + "https://github.com/if-ai/ComfyUI-IF_Gemini": { + "author_account_age_days": 3253, + "last_update": "2025-07-06 02:33:34", + "stars": 31 + }, + "https://github.com/if-ai/ComfyUI-IF_LLM": { + "author_account_age_days": 3253, + "last_update": "2025-04-09 09:23:21", + "stars": 129 + }, + "https://github.com/if-ai/ComfyUI-IF_MemoAvatar": { + "author_account_age_days": 3253, + "last_update": "2025-03-09 09:28:07", + "stars": 168 + }, + "https://github.com/if-ai/ComfyUI-IF_Trellis": { + "author_account_age_days": 3253, + "last_update": "2025-03-09 09:31:12", + "stars": 430 + }, + "https://github.com/if-ai/ComfyUI-IF_VideoPrompts": { + "author_account_age_days": 3253, + "last_update": "2025-04-02 17:19:28", + "stars": 48 + }, + "https://github.com/if-ai/ComfyUI-WanResolutionSelector": { + "author_account_age_days": 3253, + "last_update": "2025-06-20 19:40:37", + "stars": 1 + }, + "https://github.com/if-ai/ComfyUI_IF_AI_LoadImages": { + "author_account_age_days": 3253, + "last_update": "2025-03-14 13:24:31", + "stars": 9 + }, + "https://github.com/ifmylove2011/comfyui-missed-tool": { + "author_account_age_days": 3562, + "last_update": "2025-04-10 09:15:08", + "stars": 2 + }, + "https://github.com/ihmily/ComfyUI-Light-Tool": { + "author_account_age_days": 1020, + "last_update": "2025-07-10 10:32:23", + "stars": 11 + }, + "https://github.com/illuminatianon/comfyui-csvwildcards": { + "author_account_age_days": 135, + "last_update": "2025-05-02 21:45:53", + "stars": 0 + }, + "https://github.com/imb101/ComfyUI-FaceSwap": { + "author_account_age_days": 1280, + "last_update": "2024-05-22 18:22:29", + "stars": 35 + }, + "https://github.com/infinigence/ComfyUI_Model_Cache": { + "author_account_age_days": 535, + "last_update": "2025-03-28 02:35:14", + "stars": 8 + }, + "https://github.com/inflamously/comfyui-prompt-enhancer": { + "author_account_age_days": 4171, + "last_update": "2025-06-02 22:49:50", + "stars": 0 + }, + "https://github.com/injet-zhou/comfyui_extra_api": { + "author_account_age_days": 2618, + "last_update": "2025-06-06 02:35:34", + "stars": 10 + }, + "https://github.com/inventorado/ComfyUI_NNT": { + "author_account_age_days": 3277, + "last_update": "2025-01-08 17:22:46", + "stars": 69 + }, + "https://github.com/irreveloper/ComfyUI-DSD": { + "author_account_age_days": 4109, + "last_update": "2025-03-15 16:55:07", + "stars": 41 + }, + "https://github.com/iwanders/ComfyUI_nodes": { + "author_account_age_days": 4817, + "last_update": "2024-07-11 01:06:26", + "stars": 1 + }, + "https://github.com/jacklukai/ComfyUI_DeployCash": { + "author_account_age_days": 374, + "last_update": "2025-04-25 09:46:49", + "stars": 0 + }, + "https://github.com/jags111/ComfyUI_Jags_Audiotools": { + "author_account_age_days": 4262, + "last_update": "2025-03-20 16:23:33", + "stars": 79 + }, + "https://github.com/jags111/ComfyUI_Jags_VectorMagic": { + "author_account_age_days": 4262, + "last_update": "2025-04-02 08:46:34", + "stars": 80 + }, + "https://github.com/jags111/efficiency-nodes-comfyui": { + "author_account_age_days": 4262, + "last_update": "2025-07-10 01:46:42", + "stars": 1296 + }, + "https://github.com/jaimitoes/ComfyUI_Wan2_1_lora_trainer": { + "author_account_age_days": 4151, + "last_update": "2025-07-18 19:16:40", + "stars": 39 + }, + "https://github.com/jakechai/ComfyUI-JakeUpgrade": { + "author_account_age_days": 1963, + "last_update": "2025-06-22 02:42:41", + "stars": 96 + }, + "https://github.com/jamal-alkharrat/ComfyUI_rotate_image": { + "author_account_age_days": 1368, + "last_update": "2024-05-22 23:19:02", + "stars": 2 + }, + "https://github.com/jamesWalker55/comfyui-p2ldgan": { + "author_account_age_days": 2918, + "last_update": "2024-05-22 18:19:04", + "stars": 17 + }, + "https://github.com/jamesWalker55/comfyui-various": { + "author_account_age_days": 2918, + "last_update": "2025-02-27 11:01:51", + "stars": 109 + }, + "https://github.com/jammyfu/ComfyUI_PaintingCoderUtils": { + "author_account_age_days": 4869, + "last_update": "2025-02-26 05:03:05", + "stars": 12 + }, + "https://github.com/jasonjgardner/comfui-substance-designer-integration": { + "author_account_age_days": 4770, + "last_update": "2025-06-08 20:40:11", + "stars": 1 + }, + "https://github.com/jax-explorer/ComfyUI-InstantCharacter": { + "author_account_age_days": 968, + "last_update": "2025-05-13 15:04:58", + "stars": 182 + }, + "https://github.com/jax-explorer/ComfyUI-VideoBasic": { + "author_account_age_days": 968, + "last_update": "2025-06-22 14:53:19", + "stars": 16 + }, + "https://github.com/jax-explorer/ComfyUI-VideoBasicLatentSync": { + "author_account_age_days": 968, + "last_update": "2025-04-07 10:07:44", + "stars": 0 + }, + "https://github.com/jax-explorer/ComfyUI-easycontrol": { + "author_account_age_days": 968, + "last_update": "2025-04-17 15:39:33", + "stars": 187 + }, + "https://github.com/jax-explorer/comfyui-model-dynamic-loader": { + "author_account_age_days": 968, + "last_update": "2025-06-01 07:58:16", + "stars": 1 + }, + "https://github.com/jax-explorer/fast_video_comfyui": { + "author_account_age_days": 968, + "last_update": "2024-05-23 01:17:35", + "stars": 0 + }, + "https://github.com/jeffrey2212/ComfyUI-PonyCharacterPrompt": { + "author_account_age_days": 4862, + "last_update": "2024-10-26 05:38:07", + "stars": 2 + }, + "https://github.com/jeffy5/comfyui-faceless-node": { + "author_account_age_days": 3322, + "last_update": "2025-04-07 02:19:38", + "stars": 52 + }, + "https://github.com/jerome7562/ComfyUI-XenoFlow": { + "author_account_age_days": 158, + "last_update": "2025-03-10 16:33:16", + "stars": 4 + }, + "https://github.com/jerrylongyan/ComfyUI-My-Mask": { + "author_account_age_days": 4323, + "last_update": "2025-01-08 08:39:19", + "stars": 2 + }, + "https://github.com/jerrywap/ComfyUI_LoadImageFromHttpURL": { + "author_account_age_days": 2725, + "last_update": "2025-04-09 19:31:50", + "stars": 1 + }, + "https://github.com/jerrywap/ComfyUI_UploadToWebhookHTTP": { + "author_account_age_days": 2725, + "last_update": "2025-04-07 15:01:04", + "stars": 1 + }, + "https://github.com/jesenzhang/ComfyUI_StreamDiffusion": { + "author_account_age_days": 4043, + "last_update": "2025-03-18 04:47:24", + "stars": 149 + }, + "https://github.com/jhj0517/ComfyUI-Moondream-Gaze-Detection": { + "author_account_age_days": 1290, + "last_update": "2025-02-03 04:53:25", + "stars": 55 + }, + "https://github.com/jhj0517/ComfyUI-jhj-Kokoro-Onnx": { + "author_account_age_days": 1290, + "last_update": "2025-02-04 14:15:08", + "stars": 4 + }, + "https://github.com/jianzhichun/ComfyUI-Easyai": { + "author_account_age_days": 3428, + "last_update": "2024-10-27 03:29:53", + "stars": 21 + }, + "https://github.com/jiaqianjing/ComfyUI-MidjourneyHub": { + "author_account_age_days": 3521, + "last_update": "2025-07-03 08:39:45", + "stars": 13 + }, + "https://github.com/jiaxiangc/ComfyUI-ResAdapter": { + "author_account_age_days": 1677, + "last_update": "2024-05-23 00:22:23", + "stars": 289 + }, + "https://github.com/jinanlongen/ComfyUI-Prompt-Expander": { + "author_account_age_days": 4968, + "last_update": "2025-01-28 08:04:24", + "stars": 0 + }, + "https://github.com/jinchanz/ComfyUI-ADIC": { + "author_account_age_days": 2457, + "last_update": "2025-07-01 11:35:14", + "stars": 2 + }, + "https://github.com/jitcoder/lora-info": { + "author_account_age_days": 4432, + "last_update": "2025-05-15 07:25:46", + "stars": 104 + }, + "https://github.com/jjkramhoeft/ComfyUI-Jjk-Nodes": { + "author_account_age_days": 4040, + "last_update": "2024-05-22 20:44:56", + "stars": 27 + }, + "https://github.com/jkrauss82/ultools-comfyui": { + "author_account_age_days": 4603, + "last_update": "2025-04-09 20:17:27", + "stars": 7 + }, + "https://github.com/jmkl/ComfyUI-ricing": { + "author_account_age_days": 4988, + "last_update": "2024-10-16 15:38:08", + "stars": 10 + }, + "https://github.com/jn-jairo/jn_comfyui": { + "author_account_age_days": 4375, + "last_update": "2024-08-16 18:09:12", + "stars": 5 + }, + "https://github.com/jnxmx/ComfyUI_HuggingFace_Downloader": { + "author_account_age_days": 730, + "last_update": "2025-04-27 12:08:27", + "stars": 5 + }, + "https://github.com/joeriben/ai4artsed_comfyui_nodes": { + "author_account_age_days": 4138, + "last_update": "2025-07-16 22:22:32", + "stars": 0 + }, + "https://github.com/john-mnz/ComfyUI-Inspyrenet-Rembg": { + "author_account_age_days": 599, + "last_update": "2024-07-31 13:54:32", + "stars": 602 + }, + "https://github.com/jojkaart/ComfyUI-sampler-lcm-alternative": { + "author_account_age_days": 5189, + "last_update": "2025-07-10 14:02:42", + "stars": 135 + }, + "https://github.com/jordoh/ComfyUI-Deepface": { + "author_account_age_days": 5385, + "last_update": "2025-05-27 18:09:06", + "stars": 29 + }, + "https://github.com/joreyaesh/comfyui_scroll_over_textarea": { + "author_account_age_days": 4505, + "last_update": "2025-03-09 18:58:09", + "stars": 0 + }, + "https://github.com/joreyaesh/comfyui_touchpad_scroll_controller.enableTouchpadScroll": { + "author_account_age_days": 4505, + "last_update": "2025-03-18 03:15:42", + "stars": 0 + }, + "https://github.com/jqy-yo/Comfyui-BBoxLowerMask2": { + "author_account_age_days": 432, + "last_update": "2025-05-19 02:28:44", + "stars": 0 + }, + "https://github.com/jroc22/ComfyUI-CSV-prompt-builder": { + "author_account_age_days": 1080, + "last_update": "2024-08-01 19:39:30", + "stars": 10 + }, + "https://github.com/jstit/comfyui_custom_node_image": { + "author_account_age_days": 2255, + "last_update": "2024-08-27 05:10:12", + "stars": 0 + }, + "https://github.com/jtrue/ComfyUI-JaRue": { + "author_account_age_days": 4321, + "last_update": "2024-06-14 09:01:12", + "stars": 7 + }, + "https://github.com/jtydhr88/ComfyUI-Hunyuan3D-1-wrapper": { + "author_account_age_days": 5144, + "last_update": "2024-11-13 11:50:46", + "stars": 28 + }, + "https://github.com/jtydhr88/ComfyUI-LayerDivider": { + "author_account_age_days": 5144, + "last_update": "2025-04-25 11:21:00", + "stars": 97 + }, + "https://github.com/jtydhr88/ComfyUI-Workflow-Encrypt": { + "author_account_age_days": 5144, + "last_update": "2024-07-31 13:45:53", + "stars": 34 + }, + "https://github.com/judian17/ComfyUI-Extract_Flux_Lora": { + "author_account_age_days": 2237, + "last_update": "2025-05-05 02:46:31", + "stars": 17 + }, + "https://github.com/judian17/ComfyUI-UniWorld-jd17": { + "author_account_age_days": 2237, + "last_update": "2025-06-10 14:12:16", + "stars": 22 + }, + "https://github.com/judian17/ComfyUI-joycaption-beta-one-GGUF": { + "author_account_age_days": 2237, + "last_update": "2025-05-26 02:28:33", + "stars": 40 + }, + "https://github.com/judian17/ComfyUI_ZIM": { + "author_account_age_days": 2237, + "last_update": "2025-05-14 11:32:06", + "stars": 4 + }, + "https://github.com/juehackr/comfyui_fk_server": { + "author_account_age_days": 1503, + "last_update": "2025-07-18 01:11:54", + "stars": 429 + }, + "https://github.com/jupo-ai/comfy-ex-tagcomplete": { + "author_account_age_days": 141, + "last_update": "2025-05-24 07:58:32", + "stars": 14 + }, + "https://github.com/jurdnf/ComfyUI-JurdnsIterativeNoiseKSampler": { + "author_account_age_days": 58, + "last_update": "2025-06-23 03:58:50", + "stars": 3 + }, + "https://github.com/jurdnf/ComfyUI-JurdnsModelSculptor": { + "author_account_age_days": 58, + "last_update": "2025-06-23 14:03:22", + "stars": 3 + }, + "https://github.com/jurdnisglobby/ComfyUI-Jurdns-Groq-Node": { + "author_account_age_days": 303, + "last_update": "2025-01-18 06:20:23", + "stars": 2 + }, + "https://github.com/justUmen/Bjornulf_custom_nodes": { + "author_account_age_days": 3180, + "last_update": "2025-06-11 12:32:38", + "stars": 398 + }, + "https://github.com/justin-vt/ComfyUI-brushstrokes": { + "author_account_age_days": 3098, + "last_update": "2025-03-05 18:27:37", + "stars": 1 + }, + "https://github.com/k-komarov/comfyui-bunny-cdn-storage": { + "author_account_age_days": 3866, + "last_update": "2024-08-31 20:59:08", + "stars": 0 + }, + "https://github.com/ka-puna/comfyui-yanc": { + "author_account_age_days": 2598, + "last_update": "2025-05-25 20:41:57", + "stars": 10 + }, + "https://github.com/kaanyalova/ComfyUI_ExtendedImageFormats": { + "author_account_age_days": 1658, + "last_update": "2025-01-25 10:57:38", + "stars": 5 + }, + "https://github.com/kaaskoek232/ComfyUI-MemoryManagement": { + "author_account_age_days": 118, + "last_update": "2025-07-03 21:07:05", + "stars": 1 + }, + "https://github.com/kadirnar/ComfyUI-Transformers": { + "author_account_age_days": 2721, + "last_update": "2024-06-22 22:44:39", + "stars": 21 + }, + "https://github.com/kadirnar/ComfyUI-YOLO": { + "author_account_age_days": 2721, + "last_update": "2025-07-10 23:18:08", + "stars": 90 + }, + "https://github.com/kael558/ComfyUI-GGUF-FantasyTalking": { + "author_account_age_days": 3039, + "last_update": "2025-06-18 02:19:28", + "stars": 1 + }, + "https://github.com/kaibioinfo/ComfyUI_AdvancedRefluxControl": { + "author_account_age_days": 5073, + "last_update": "2025-04-19 10:24:42", + "stars": 610 + }, + "https://github.com/kaipard/comfyui-auto-latent-size": { + "author_account_age_days": 2820, + "last_update": "2025-07-04 10:06:08", + "stars": 0 + }, + "https://github.com/kale4eat/ComfyUI-path-util": { + "author_account_age_days": 2003, + "last_update": "2024-05-25 05:44:11", + "stars": 0 + }, + "https://github.com/kale4eat/ComfyUI-speech-dataset-toolkit": { + "author_account_age_days": 2003, + "last_update": "2025-06-17 01:58:03", + "stars": 19 + }, + "https://github.com/kale4eat/ComfyUI-string-util": { + "author_account_age_days": 2003, + "last_update": "2024-05-23 00:24:40", + "stars": 4 + }, + "https://github.com/kale4eat/ComfyUI-text-file-util": { + "author_account_age_days": 2003, + "last_update": "2024-05-23 00:24:51", + "stars": 0 + }, + "https://github.com/kambara/ComfyUI-PromptPalette": { + "author_account_age_days": 5926, + "last_update": "2025-06-27 14:20:13", + "stars": 5 + }, + "https://github.com/kantsche/ComfyUI-MixMod": { + "author_account_age_days": 4277, + "last_update": "2025-07-17 17:24:19", + "stars": 26 + }, + "https://github.com/kappa54m/ComfyUI_Usability": { + "author_account_age_days": 1902, + "last_update": "2024-08-08 15:31:47", + "stars": 0 + }, + "https://github.com/karthikg-09/ComfyUI-Vton-Mask": { + "author_account_age_days": 587, + "last_update": "2025-05-24 18:37:41", + "stars": 0 + }, + "https://github.com/kasukanra/ComfyUI_StringToHex": { + "author_account_age_days": 3053, + "last_update": "2024-08-20 04:52:06", + "stars": 1 + }, + "https://github.com/katalist-ai/comfyUI-nsfw-detection": { + "author_account_age_days": 1145, + "last_update": "2024-05-23 01:23:32", + "stars": 2 + }, + "https://github.com/kazeyori/ComfyUI-QuickImageSequenceProcess": { + "author_account_age_days": 1119, + "last_update": "2025-04-05 12:52:40", + "stars": 0 + }, + "https://github.com/kealiu/ComfyUI-S3-Tools": { + "author_account_age_days": 4519, + "last_update": "2024-07-04 10:13:07", + "stars": 7 + }, + "https://github.com/kealiu/ComfyUI-Zero123-Porting": { + "author_account_age_days": 4519, + "last_update": "2024-08-22 07:07:57", + "stars": 22 + }, + "https://github.com/kealiu/ComfyUI-ZeroShot-MTrans": { + "author_account_age_days": 4519, + "last_update": "2024-07-04 10:12:32", + "stars": 174 + }, + "https://github.com/keit0728/ComfyUI-Image-Toolkit": { + "author_account_age_days": 3380, + "last_update": "2025-05-30 06:46:47", + "stars": 1 + }, + "https://github.com/keit0728/ComfyUI-keitNodes": { + "author_account_age_days": 3380, + "last_update": "2025-06-20 09:34:46", + "stars": 3 + }, + "https://github.com/kenjiqq/qq-nodes-comfyui": { + "author_account_age_days": 5280, + "last_update": "2025-06-24 22:38:01", + "stars": 48 + }, + "https://github.com/kevin314/ComfyUI-FastVideo": { + "author_account_age_days": 2524, + "last_update": "2025-07-03 05:21:54", + "stars": 3 + }, + "https://github.com/kevinmcmahondev/comfyui-kmcdev-image-filter-adjustments": { + "author_account_age_days": 1145, + "last_update": "2025-02-19 06:55:25", + "stars": 0 + }, + "https://github.com/kevinmcmahondev/comfyui-skin-tone-detector": { + "author_account_age_days": 1145, + "last_update": "2024-12-22 06:44:20", + "stars": 1 + }, + "https://github.com/kft334/Knodes": { + "author_account_age_days": 1350, + "last_update": "2024-06-14 08:12:06", + "stars": 4 + }, + "https://github.com/kijai/ComfyUI-ADMotionDirector": { + "author_account_age_days": 2574, + "last_update": "2024-11-07 07:20:23", + "stars": 176 + }, + "https://github.com/kijai/ComfyUI-APISR-KJ": { + "author_account_age_days": 2574, + "last_update": "2024-05-21 16:30:21", + "stars": 71 + }, + "https://github.com/kijai/ComfyUI-BrushNet-Wrapper": { + "author_account_age_days": 2574, + "last_update": "2024-06-20 12:15:16", + "stars": 147 + }, + "https://github.com/kijai/ComfyUI-CCSR": { + "author_account_age_days": 2574, + "last_update": "2024-06-28 11:13:33", + "stars": 233 + }, + "https://github.com/kijai/ComfyUI-CogVideoXWrapper": { + "author_account_age_days": 2574, + "last_update": "2025-06-19 21:10:27", + "stars": 1515 + }, + "https://github.com/kijai/ComfyUI-ControlNeXt-SVD": { + "author_account_age_days": 2574, + "last_update": "2024-08-15 08:26:15", + "stars": 187 + }, + "https://github.com/kijai/ComfyUI-DDColor": { + "author_account_age_days": 2574, + "last_update": "2024-05-21 16:04:26", + "stars": 153 + }, + "https://github.com/kijai/ComfyUI-DepthAnythingV2": { + "author_account_age_days": 2574, + "last_update": "2025-06-16 13:16:52", + "stars": 337 + }, + "https://github.com/kijai/ComfyUI-DiffusionLight": { + "author_account_age_days": 2574, + "last_update": "2024-05-21 16:16:52", + "stars": 73 + }, + "https://github.com/kijai/ComfyUI-DynamiCrafterWrapper": { + "author_account_age_days": 2574, + "last_update": "2025-06-02 11:49:00", + "stars": 677 + }, + "https://github.com/kijai/ComfyUI-ELLA-wrapper": { + "author_account_age_days": 2574, + "last_update": "2024-05-21 16:47:28", + "stars": 116 + }, + "https://github.com/kijai/ComfyUI-Florence2": { + "author_account_age_days": 2574, + "last_update": "2025-05-21 14:46:50", + "stars": 1339 + }, + "https://github.com/kijai/ComfyUI-FluxTrainer": { + "author_account_age_days": 2574, + "last_update": "2025-04-02 07:35:46", + "stars": 958 + }, + "https://github.com/kijai/ComfyUI-GIMM-VFI": { + "author_account_age_days": 2574, + "last_update": "2025-05-10 18:09:40", + "stars": 332 + }, + "https://github.com/kijai/ComfyUI-Geowizard": { + "author_account_age_days": 2574, + "last_update": "2024-12-16 19:33:54", + "stars": 122 + }, + "https://github.com/kijai/ComfyUI-HFRemoteVae": { + "author_account_age_days": 2574, + "last_update": "2025-03-01 18:22:59", + "stars": 51 + }, + "https://github.com/kijai/ComfyUI-HunyuanVideoWrapper": { + "author_account_age_days": 2574, + "last_update": "2025-05-12 13:31:36", + "stars": 2505 + }, + "https://github.com/kijai/ComfyUI-IC-Light": { + "author_account_age_days": 2574, + "last_update": "2025-05-30 19:21:20", + "stars": 1069 + }, + "https://github.com/kijai/ComfyUI-KJNodes": { + "author_account_age_days": 2574, + "last_update": "2025-07-18 20:03:46", + "stars": 1547 + }, + "https://github.com/kijai/ComfyUI-KwaiKolorsWrapper": { + "author_account_age_days": 2574, + "last_update": "2024-10-18 08:47:45", + "stars": 596 + }, + "https://github.com/kijai/ComfyUI-LBMWrapper": { + "author_account_age_days": 2574, + "last_update": "2025-05-14 09:25:13", + "stars": 227 + }, + "https://github.com/kijai/ComfyUI-LLaVA-OneVision": { + "author_account_age_days": 2574, + "last_update": "2024-08-25 14:04:22", + "stars": 85 + }, + "https://github.com/kijai/ComfyUI-LVCDWrapper": { + "author_account_age_days": 2574, + "last_update": "2024-09-30 11:49:12", + "stars": 62 + }, + "https://github.com/kijai/ComfyUI-LaVi-Bridge-Wrapper": { + "author_account_age_days": 2574, + "last_update": "2024-05-21 16:41:18", + "stars": 22 + }, + "https://github.com/kijai/ComfyUI-LivePortraitKJ": { + "author_account_age_days": 2574, + "last_update": "2024-08-05 21:39:49", + "stars": 2018 + }, + "https://github.com/kijai/ComfyUI-Lotus": { + "author_account_age_days": 2574, + "last_update": "2024-10-13 12:33:24", + "stars": 139 + }, + "https://github.com/kijai/ComfyUI-LuminaWrapper": { + "author_account_age_days": 2574, + "last_update": "2024-07-31 13:52:06", + "stars": 195 + }, + "https://github.com/kijai/ComfyUI-Marigold": { + "author_account_age_days": 2574, + "last_update": "2025-05-16 10:22:16", + "stars": 541 + }, + "https://github.com/kijai/ComfyUI-MimicMotionWrapper": { + "author_account_age_days": 2574, + "last_update": "2025-01-12 17:34:34", + "stars": 492 + }, + "https://github.com/kijai/ComfyUI-MoGe": { + "author_account_age_days": 2574, + "last_update": "2025-02-07 18:42:39", + "stars": 49 + }, + "https://github.com/kijai/ComfyUI-OpenDiTWrapper": { + "author_account_age_days": 2574, + "last_update": "2024-07-03 14:59:13", + "stars": 43 + }, + "https://github.com/kijai/ComfyUI-PyramidFlowWrapper": { + "author_account_age_days": 2574, + "last_update": "2024-11-15 13:28:18", + "stars": 369 + }, + "https://github.com/kijai/ComfyUI-SUPIR": { + "author_account_age_days": 2574, + "last_update": "2025-06-07 09:17:40", + "stars": 2027 + }, + "https://github.com/kijai/ComfyUI-SVD": { + "author_account_age_days": 2574, + "last_update": "2024-05-22 21:09:54", + "stars": 163 + }, + "https://github.com/kijai/ComfyUI-StableXWrapper": { + "author_account_age_days": 2574, + "last_update": "2025-01-31 11:59:01", + "stars": 59 + }, + "https://github.com/kijai/ComfyUI-WanVideoWrapper": { + "author_account_age_days": 2574, + "last_update": "2025-07-20 22:57:28", + "stars": 3365 + }, + "https://github.com/kijai/ComfyUI-depth-fm": { + "author_account_age_days": 2574, + "last_update": "2024-05-22 21:10:15", + "stars": 76 + }, + "https://github.com/kijai/ComfyUI-moondream": { + "author_account_age_days": 2574, + "last_update": "2024-08-12 16:30:11", + "stars": 106 + }, + "https://github.com/kijai/ComfyUI-segment-anything-2": { + "author_account_age_days": 2574, + "last_update": "2025-03-19 09:40:37", + "stars": 992 + }, + "https://github.com/kimara-ai/ComfyUI-Kimara-AI-Advanced-Watermarks": { + "author_account_age_days": 248, + "last_update": "2025-04-03 17:22:59", + "stars": 17 + }, + "https://github.com/kinfolk0117/ComfyUI_GradientDeepShrink": { + "author_account_age_days": 860, + "last_update": "2024-05-22 21:25:13", + "stars": 28 + }, + "https://github.com/kinfolk0117/ComfyUI_GridSwapper": { + "author_account_age_days": 860, + "last_update": "2024-10-27 09:04:20", + "stars": 30 + }, + "https://github.com/kinfolk0117/ComfyUI_Pilgram": { + "author_account_age_days": 860, + "last_update": "2024-05-22 21:25:24", + "stars": 7 + }, + "https://github.com/kinfolk0117/ComfyUI_SimpleTiles": { + "author_account_age_days": 860, + "last_update": "2024-05-22 21:25:01", + "stars": 56 + }, + "https://github.com/kk8bit/KayTool": { + "author_account_age_days": 748, + "last_update": "2025-07-01 03:47:14", + "stars": 165 + }, + "https://github.com/klinter007/klinter_nodes": { + "author_account_age_days": 817, + "last_update": "2025-03-30 14:45:57", + "stars": 18 + }, + "https://github.com/knuknX/ComfyUI-Image-Tools": { + "author_account_age_days": 591, + "last_update": "2024-06-14 09:05:58", + "stars": 3 + }, + "https://github.com/kohs100/comfyui-ppwc": { + "author_account_age_days": 3283, + "last_update": "2025-06-26 15:37:57", + "stars": 0 + }, + "https://github.com/kohya-ss/ControlNet-LLLite-ComfyUI": { + "author_account_age_days": 2200, + "last_update": "2024-05-22 20:44:44", + "stars": 195 + }, + "https://github.com/komojini/ComfyUI_SDXL_DreamBooth_LoRA_CustomNodes": { + "author_account_age_days": 974, + "last_update": "2024-05-22 21:34:27", + "stars": 3 + }, + "https://github.com/komojini/komojini-comfyui-nodes": { + "author_account_age_days": 974, + "last_update": "2024-05-22 21:34:39", + "stars": 75 + }, + "https://github.com/kostenickj/jk-comfyui-helpers": { + "author_account_age_days": 3440, + "last_update": "2024-12-19 10:22:42", + "stars": 5 + }, + "https://github.com/kpsss34/ComfyUI-kpsss34-Sana": { + "author_account_age_days": 34, + "last_update": "2025-06-25 07:38:11", + "stars": 0 + }, + "https://github.com/kraglik/prompt_collapse": { + "author_account_age_days": 2849, + "last_update": "2024-12-15 08:39:51", + "stars": 5 + }, + "https://github.com/krmahil/comfyui-hollow-preserve": { + "author_account_age_days": 2670, + "last_update": "2025-05-15 09:55:46", + "stars": 1 + }, + "https://github.com/kukuo6666/ComfyUI-Equirect": { + "author_account_age_days": 1958, + "last_update": "2025-03-29 18:28:47", + "stars": 1 + }, + "https://github.com/kungful/ComfyUI_to_webui": { + "author_account_age_days": 1514, + "last_update": "2025-07-02 09:38:43", + "stars": 15 + }, + "https://github.com/kunieone/ComfyUI_alkaid": { + "author_account_age_days": 2911, + "last_update": "2024-05-23 01:10:21", + "stars": 0 + }, + "https://github.com/kwaroran/abg-comfyui": { + "author_account_age_days": 999, + "last_update": "2024-05-22 18:19:51", + "stars": 25 + }, + "https://github.com/kycg/comfyui-Lora-auto-downloader": { + "author_account_age_days": 1332, + "last_update": "2024-11-08 19:57:23", + "stars": 1 + }, + "https://github.com/l-comm/WatermarkRemoval": { + "author_account_age_days": 202, + "last_update": "2025-01-13 05:33:32", + "stars": 4 + }, + "https://github.com/l20richo/ComfyUI-Azure-Blob-Storage": { + "author_account_age_days": 1558, + "last_update": "2024-06-22 16:53:47", + "stars": 2 + }, + "https://github.com/l3ony2k/comfyui-leon-nodes": { + "author_account_age_days": 2048, + "last_update": "2025-06-25 09:18:17", + "stars": 0 + }, + "https://github.com/laksjdjf/Batch-Condition-ComfyUI": { + "author_account_age_days": 3222, + "last_update": "2024-05-22 20:42:42", + "stars": 7 + }, + "https://github.com/laksjdjf/ComfyUI-Imatrix": { + "author_account_age_days": 3222, + "last_update": "2025-06-07 00:17:26", + "stars": 3 + }, + "https://github.com/laksjdjf/LCMSampler-ComfyUI": { + "author_account_age_days": 3222, + "last_update": "2024-05-22 20:42:17", + "stars": 16 + }, + "https://github.com/laksjdjf/LoRTnoC-ComfyUI": { + "author_account_age_days": 3222, + "last_update": "2024-05-22 20:42:29", + "stars": 13 + }, + "https://github.com/laksjdjf/cd-tuner_negpip-ComfyUI": { + "author_account_age_days": 3222, + "last_update": "2024-05-22 20:42:04", + "stars": 23 + }, + "https://github.com/laksjdjf/cgem156-ComfyUI": { + "author_account_age_days": 3222, + "last_update": "2025-04-30 14:52:29", + "stars": 73 + }, + "https://github.com/laksjdjf/pfg-ComfyUI": { + "author_account_age_days": 3222, + "last_update": "2024-05-22 20:41:41", + "stars": 12 + }, + "https://github.com/larsupb/LoRA-Merger-ComfyUI": { + "author_account_age_days": 3467, + "last_update": "2024-10-24 11:28:08", + "stars": 48 + }, + "https://github.com/latenightlabs/ComfyUI-LNL": { + "author_account_age_days": 542, + "last_update": "2024-10-07 20:09:43", + "stars": 26 + }, + "https://github.com/lazniak/Head-Orientation-Node-for-ComfyUI---by-PabloGFX": { + "author_account_age_days": 2673, + "last_update": "2024-09-25 15:02:14", + "stars": 10 + }, + "https://github.com/lazniak/LiquidTime-Interpolation": { + "author_account_age_days": 2673, + "last_update": "2025-04-03 11:42:12", + "stars": 12 + }, + "https://github.com/lazniak/comfyui-google-photos-loader": { + "author_account_age_days": 2673, + "last_update": "2025-04-03 11:46:29", + "stars": 3 + }, + "https://github.com/lc03lc/Comfyui_OmniConsistency": { + "author_account_age_days": 1367, + "last_update": "2025-06-01 02:56:02", + "stars": 62 + }, + "https://github.com/lceric/comfyui-gpt-image": { + "author_account_age_days": 3101, + "last_update": "2025-05-19 10:49:30", + "stars": 8 + }, + "https://github.com/lebrosoft/ComfyUI-VideoChatWrapper": { + "author_account_age_days": 3908, + "last_update": "2025-06-06 04:07:48", + "stars": 2 + }, + "https://github.com/leeguandong/ComfyUI_1Prompt1Story": { + "author_account_age_days": 3185, + "last_update": "2025-03-13 16:11:50", + "stars": 5 + }, + "https://github.com/leeguandong/ComfyUI_ChatGen": { + "author_account_age_days": 3185, + "last_update": "2025-03-13 16:24:46", + "stars": 2 + }, + "https://github.com/leeguandong/ComfyUI_Cogview4": { + "author_account_age_days": 3185, + "last_update": "2025-03-13 15:58:44", + "stars": 2 + }, + "https://github.com/leeguandong/ComfyUI_CompareModelWeights": { + "author_account_age_days": 3185, + "last_update": "2025-01-09 02:43:41", + "stars": 3 + }, + "https://github.com/leeguandong/ComfyUI_CrossImageAttention": { + "author_account_age_days": 3185, + "last_update": "2024-08-16 11:59:42", + "stars": 3 + }, + "https://github.com/leeguandong/ComfyUI_DeepSeekVL2": { + "author_account_age_days": 3185, + "last_update": "2025-03-13 16:32:16", + "stars": 0 + }, + "https://github.com/leeguandong/ComfyUI_FluxAttentionMask": { + "author_account_age_days": 3185, + "last_update": "2025-03-15 07:37:50", + "stars": 4 + }, + "https://github.com/leeguandong/ComfyUI_FluxClipWeight": { + "author_account_age_days": 3185, + "last_update": "2025-03-02 07:32:55", + "stars": 3 + }, + "https://github.com/leeguandong/ComfyUI_FluxCustomId": { + "author_account_age_days": 3185, + "last_update": "2025-01-06 01:12:44", + "stars": 7 + }, + "https://github.com/leeguandong/ComfyUI_FluxLayerDiffuse": { + "author_account_age_days": 3185, + "last_update": "2025-03-17 01:07:01", + "stars": 15 + }, + "https://github.com/leeguandong/ComfyUI_Gemma3": { + "author_account_age_days": 3185, + "last_update": "2025-03-25 14:45:01", + "stars": 7 + }, + "https://github.com/leeguandong/ComfyUI_InternVL2": { + "author_account_age_days": 3185, + "last_update": "2024-08-10 11:00:11", + "stars": 13 + }, + "https://github.com/leeguandong/ComfyUI_LLaSM": { + "author_account_age_days": 3185, + "last_update": "2024-08-10 10:58:17", + "stars": 4 + }, + "https://github.com/leeguandong/ComfyUI_M3Net": { + "author_account_age_days": 3185, + "last_update": "2024-08-16 00:03:21", + "stars": 12 + }, + "https://github.com/leeguandong/ComfyUI_MasaCtrl": { + "author_account_age_days": 3185, + "last_update": "2024-09-01 03:47:35", + "stars": 3 + }, + "https://github.com/leeguandong/ComfyUI_QWQ32B": { + "author_account_age_days": 3185, + "last_update": "2025-03-15 17:19:23", + "stars": 2 + }, + "https://github.com/leeguandong/ComfyUI_Style_Aligned": { + "author_account_age_days": 3185, + "last_update": "2024-08-16 11:59:33", + "stars": 5 + }, + "https://github.com/leeguandong/ComfyUI_VideoEditing": { + "author_account_age_days": 3185, + "last_update": "2024-08-14 16:59:49", + "stars": 4 + }, + "https://github.com/leeguandong/ComfyUI_VisualAttentionMap": { + "author_account_age_days": 3185, + "last_update": "2024-08-26 05:15:14", + "stars": 8 + }, + "https://github.com/leestuartx/ComfyUI-GG": { + "author_account_age_days": 4170, + "last_update": "2025-03-10 16:26:37", + "stars": 2 + }, + "https://github.com/lenskikh/ComfyUI-Prompt-Worker": { + "author_account_age_days": 3888, + "last_update": "2025-07-16 21:04:06", + "stars": 14 + }, + "https://github.com/leoleelxh/Comfy-Topaz-Photo": { + "author_account_age_days": 4466, + "last_update": "2025-05-24 05:47:40", + "stars": 14 + }, + "https://github.com/leoleelxh/ComfyUI-LLMs": { + "author_account_age_days": 4466, + "last_update": "2025-06-17 13:52:33", + "stars": 50 + }, + "https://github.com/leonardomiramondi/flux-context-comfyui": { + "author_account_age_days": 811, + "last_update": "2025-06-25 10:18:42", + "stars": 0 + }, + "https://github.com/lepiai/ComfyUI-Minitools": { + "author_account_age_days": 2262, + "last_update": "2025-05-24 16:11:50", + "stars": 8 + }, + "https://github.com/lerignoux/ComfyUI-PechaKucha": { + "author_account_age_days": 4696, + "last_update": "2025-05-12 15:42:19", + "stars": 1 + }, + "https://github.com/lgldlk/ComfyUI-PC-ding-dong": { + "author_account_age_days": 2081, + "last_update": "2024-12-27 03:25:38", + "stars": 77 + }, + "https://github.com/lgldlk/ComfyUI-PSD-Replace": { + "author_account_age_days": 2081, + "last_update": "2025-03-15 07:03:24", + "stars": 4 + }, + "https://github.com/liangt/comfyui-loadimagewithsubfolder": { + "author_account_age_days": 4450, + "last_update": "2025-03-27 16:49:42", + "stars": 3 + }, + "https://github.com/licyk/ComfyUI-HakuImg": { + "author_account_age_days": 1659, + "last_update": "2025-05-04 03:31:32", + "stars": 8 + }, + "https://github.com/licyk/ComfyUI-Restart-Sampler": { + "author_account_age_days": 1659, + "last_update": "2025-02-24 04:53:52", + "stars": 11 + }, + "https://github.com/licyk/ComfyUI-TCD-Sampler": { + "author_account_age_days": 1659, + "last_update": "2025-03-27 16:32:33", + "stars": 5 + }, + "https://github.com/lihaoyun6/ComfyUI-BlindWatermark": { + "author_account_age_days": 3502, + "last_update": "2025-06-28 04:35:03", + "stars": 5 + }, + "https://github.com/lihaoyun6/ComfyUI-CSV-Random-Picker": { + "author_account_age_days": 3502, + "last_update": "2025-05-10 10:41:53", + "stars": 1 + }, + "https://github.com/lilly1987/ComfyUI_node_Lilly": { + "author_account_age_days": 3301, + "last_update": "2024-12-21 01:50:03", + "stars": 55 + }, + "https://github.com/lingha0h/comfyui_kj": { + "author_account_age_days": 165, + "last_update": "2025-03-20 13:24:29", + "stars": 6 + }, + "https://github.com/linjian-ufo/ComfyUI_GLM4V_voltspark": { + "author_account_age_days": 489, + "last_update": "2025-07-09 13:04:58", + "stars": 3 + }, + "https://github.com/linjian-ufo/comfyui_deepseek_lj257_update": { + "author_account_age_days": 489, + "last_update": "2025-06-17 11:26:32", + "stars": 0 + }, + "https://github.com/linksluckytime/comfyui_snacknodes": { + "author_account_age_days": 816, + "last_update": "2025-05-07 01:48:50", + "stars": 0 + }, + "https://github.com/linshier/comfyui-remote-tools": { + "author_account_age_days": 4183, + "last_update": "2024-05-28 07:44:23", + "stars": 4 + }, + "https://github.com/lisaks/comfyui-panelforge": { + "author_account_age_days": 1127, + "last_update": "2025-04-29 00:25:00", + "stars": 1 + }, + "https://github.com/liuqianhonga/ComfyUI-Html2Image": { + "author_account_age_days": 578, + "last_update": "2025-06-22 07:58:49", + "stars": 11 + }, + "https://github.com/liuqianhonga/ComfyUI-Image-Compressor": { + "author_account_age_days": 578, + "last_update": "2025-06-22 08:32:22", + "stars": 20 + }, + "https://github.com/liuqianhonga/ComfyUI-QHNodes": { + "author_account_age_days": 578, + "last_update": "2025-06-22 08:33:17", + "stars": 3 + }, + "https://github.com/liuqianhonga/ComfyUI-String-Helper": { + "author_account_age_days": 578, + "last_update": "2025-06-22 07:56:48", + "stars": 8 + }, + "https://github.com/liushuchun/ComfyUI_Lora_List_With_Url_Loader": { + "author_account_age_days": 4438, + "last_update": "2024-09-26 12:38:32", + "stars": 2 + }, + "https://github.com/liusida/ComfyUI-AutoCropFaces": { + "author_account_age_days": 3599, + "last_update": "2024-08-12 17:38:17", + "stars": 89 + }, + "https://github.com/liusida/ComfyUI-B-LoRA": { + "author_account_age_days": 3599, + "last_update": "2024-06-18 03:17:46", + "stars": 76 + }, + "https://github.com/liusida/ComfyUI-Debug": { + "author_account_age_days": 3599, + "last_update": "2024-06-14 10:25:26", + "stars": 11 + }, + "https://github.com/liusida/ComfyUI-Login": { + "author_account_age_days": 3599, + "last_update": "2024-11-15 01:35:25", + "stars": 176 + }, + "https://github.com/liusida/ComfyUI-SD3-nodes": { + "author_account_age_days": 3599, + "last_update": "2024-06-14 13:01:41", + "stars": 5 + }, + "https://github.com/livepeer/ComfyUI-Stream-Pack": { + "author_account_age_days": 3098, + "last_update": "2025-05-07 12:46:57", + "stars": 9 + }, + "https://github.com/ljleb/comfy-mecha": { + "author_account_age_days": 2855, + "last_update": "2025-06-09 02:40:54", + "stars": 82 + }, + "https://github.com/lks-ai/ComfyUI-StableAudioSampler": { + "author_account_age_days": 491, + "last_update": "2025-01-07 08:33:57", + "stars": 251 + }, + "https://github.com/lks-ai/anynode": { + "author_account_age_days": 491, + "last_update": "2024-07-07 03:45:48", + "stars": 537 + }, + "https://github.com/lldacing/ComfyUI_BEN_ll": { + "author_account_age_days": 2484, + "last_update": "2025-05-22 07:01:42", + "stars": 4 + }, + "https://github.com/lldacing/ComfyUI_BiRefNet_ll": { + "author_account_age_days": 2484, + "last_update": "2025-06-01 16:39:20", + "stars": 232 + }, + "https://github.com/lldacing/ComfyUI_Patches_ll": { + "author_account_age_days": 2484, + "last_update": "2025-04-08 06:22:28", + "stars": 110 + }, + "https://github.com/lldacing/ComfyUI_PuLID_Flux_ll": { + "author_account_age_days": 2484, + "last_update": "2025-04-08 06:21:55", + "stars": 381 + }, + "https://github.com/lldacing/ComfyUI_StableDelight_ll": { + "author_account_age_days": 2484, + "last_update": "2025-04-08 06:22:43", + "stars": 12 + }, + "https://github.com/lldacing/ComfyUI_StableHair_ll": { + "author_account_age_days": 2484, + "last_update": "2025-03-31 09:16:21", + "stars": 68 + }, + "https://github.com/lldacing/comfyui-easyapi-nodes": { + "author_account_age_days": 2484, + "last_update": "2025-07-01 13:11:43", + "stars": 80 + }, + "https://github.com/lo-th/Comfyui_three_js": { + "author_account_age_days": 4871, + "last_update": "2025-06-12 08:18:17", + "stars": 19 + }, + "https://github.com/lodestone-rock/ComfyUI_FluxMod": { + "author_account_age_days": 975, + "last_update": "2025-06-22 09:44:09", + "stars": 112 + }, + "https://github.com/logtd/ComfyUI-4DHumans": { + "author_account_age_days": 513, + "last_update": "2024-08-30 21:12:55", + "stars": 7 + }, + "https://github.com/logtd/ComfyUI-APGScaling": { + "author_account_age_days": 513, + "last_update": "2024-10-06 20:51:27", + "stars": 29 + }, + "https://github.com/logtd/ComfyUI-DiLightNet": { + "author_account_age_days": 513, + "last_update": "2024-10-06 03:48:15", + "stars": 11 + }, + "https://github.com/logtd/ComfyUI-FLATTEN": { + "author_account_age_days": 513, + "last_update": "2024-08-30 21:18:55", + "stars": 109 + }, + "https://github.com/logtd/ComfyUI-Fluxtapoz": { + "author_account_age_days": 513, + "last_update": "2025-01-09 02:38:40", + "stars": 1352 + }, + "https://github.com/logtd/ComfyUI-InstanceDiffusion": { + "author_account_age_days": 513, + "last_update": "2024-08-30 21:17:51", + "stars": 179 + }, + "https://github.com/logtd/ComfyUI-InversedNoise": { + "author_account_age_days": 513, + "last_update": "2024-05-22 00:10:18", + "stars": 16 + }, + "https://github.com/logtd/ComfyUI-MochiEdit": { + "author_account_age_days": 513, + "last_update": "2024-11-03 18:38:16", + "stars": 293 + }, + "https://github.com/logtd/ComfyUI-MotionThiefExperiment": { + "author_account_age_days": 513, + "last_update": "2024-08-30 21:19:48", + "stars": 41 + }, + "https://github.com/logtd/ComfyUI-RAVE_ATTN": { + "author_account_age_days": 513, + "last_update": "2024-05-22 00:20:03", + "stars": 14 + }, + "https://github.com/logtd/ComfyUI-ReNoise": { + "author_account_age_days": 513, + "last_update": "2024-09-01 22:17:49", + "stars": 6 + }, + "https://github.com/logtd/ComfyUI-RefSampling": { + "author_account_age_days": 513, + "last_update": "2024-09-11 20:56:01", + "stars": 5 + }, + "https://github.com/logtd/ComfyUI-RefUNet": { + "author_account_age_days": 513, + "last_update": "2024-08-30 21:20:20", + "stars": 45 + }, + "https://github.com/logtd/ComfyUI-SEGAttention": { + "author_account_age_days": 513, + "last_update": "2024-09-11 20:55:00", + "stars": 39 + }, + "https://github.com/logtd/ComfyUI-SSREncoder": { + "author_account_age_days": 513, + "last_update": "2024-08-24 23:33:09", + "stars": 1 + }, + "https://github.com/logtd/ComfyUI-SeeCoder": { + "author_account_age_days": 513, + "last_update": "2024-08-24 23:31:10", + "stars": 0 + }, + "https://github.com/logtd/ComfyUI-TrackingNodes": { + "author_account_age_days": 513, + "last_update": "2024-05-22 00:03:27", + "stars": 19 + }, + "https://github.com/logtd/ComfyUI-ViewCrafter": { + "author_account_age_days": 513, + "last_update": "2024-09-30 19:32:41", + "stars": 12 + }, + "https://github.com/lonelyowl13/artist_randomizer": { + "author_account_age_days": 280, + "last_update": "2025-07-05 15:44:08", + "stars": 1 + }, + "https://github.com/longgui0318/comfyui-common-util": { + "author_account_age_days": 4556, + "last_update": "2025-04-07 08:19:05", + "stars": 1 + }, + "https://github.com/longgui0318/comfyui-llm-assistant": { + "author_account_age_days": 4556, + "last_update": "2024-09-17 13:12:43", + "stars": 8 + }, + "https://github.com/longgui0318/comfyui-magic-clothing": { + "author_account_age_days": 4556, + "last_update": "2024-08-08 14:42:04", + "stars": 78 + }, + "https://github.com/longgui0318/comfyui-mask-util": { + "author_account_age_days": 4556, + "last_update": "2025-04-07 08:18:11", + "stars": 7 + }, + "https://github.com/lord-lethris/ComfyUI-RPG-Characters": { + "author_account_age_days": 4815, + "last_update": "2025-06-18 23:08:15", + "stars": 1 + }, + "https://github.com/lordgasmic/comfyui_save_image_with_options": { + "author_account_age_days": 5158, + "last_update": "2024-06-20 16:39:23", + "stars": 0 + }, + "https://github.com/lordgasmic/comfyui_wildcards": { + "author_account_age_days": 5158, + "last_update": "2024-06-20 16:52:14", + "stars": 10 + }, + "https://github.com/lquesada/ComfyUI-Inpaint-CropAndStitch": { + "author_account_age_days": 4442, + "last_update": "2025-05-10 07:46:49", + "stars": 751 + }, + "https://github.com/lquesada/ComfyUI-Interactive": { + "author_account_age_days": 4442, + "last_update": "2025-05-01 03:39:47", + "stars": 42 + }, + "https://github.com/lquesada/ComfyUI-Prompt-Combinator": { + "author_account_age_days": 4442, + "last_update": "2025-04-16 20:52:10", + "stars": 39 + }, + "https://github.com/lrzjason/ComfyUI-Watermark-Detection": { + "author_account_age_days": 4054, + "last_update": "2025-05-28 20:46:50", + "stars": 20 + }, + "https://github.com/lrzjason/Comfyui-In-Context-Lora-Utils": { + "author_account_age_days": 4054, + "last_update": "2025-04-03 09:09:43", + "stars": 231 + }, + "https://github.com/lrzjason/Comfyui-Kolors-Utils": { + "author_account_age_days": 4054, + "last_update": "2025-05-05 16:10:11", + "stars": 17 + }, + "https://github.com/lrzjason/Comfyui-ThinkRemover": { + "author_account_age_days": 4054, + "last_update": "2025-02-07 10:57:50", + "stars": 4 + }, + "https://github.com/ltdrdata/ComfyUI-Impact-Pack": { + "author_account_age_days": 853, + "last_update": "2025-07-19 11:04:51", + "stars": 2571 + }, + "https://github.com/ltdrdata/ComfyUI-Impact-Subpack": { + "author_account_age_days": 853, + "last_update": "2025-07-03 03:16:34", + "stars": 229 + }, + "https://github.com/ltdrdata/ComfyUI-Inspire-Pack": { + "author_account_age_days": 853, + "last_update": "2025-07-15 03:29:35", + "stars": 616 + }, + "https://github.com/ltdrdata/ComfyUI-Manager": { + "author_account_age_days": 466, + "last_update": "2025-07-20 10:23:29", + "stars": 10852 + }, + "https://github.com/ltdrdata/comfyui-connection-helper": { + "author_account_age_days": 853, + "last_update": "2025-04-07 13:49:56", + "stars": 28 + }, + "https://github.com/ltdrdata/was-node-suite-comfyui": { + "author_account_age_days": 853, + "last_update": "2025-06-03 09:41:36", + "stars": 49 + }, + "https://github.com/lthero-big/ComfyUI-GaussianShadingWatermark": { + "author_account_age_days": 1785, + "last_update": "2025-03-23 08:18:07", + "stars": 5 + }, + "https://github.com/luandev/ComfyUI-CrewAI": { + "author_account_age_days": 4199, + "last_update": "2025-01-17 18:06:27", + "stars": 53 + }, + "https://github.com/lucak5s/comfyui_gfpgan": { + "author_account_age_days": 539, + "last_update": "2025-06-30 04:42:11", + "stars": 0 + }, + "https://github.com/lucianoambrosini/ComfyUI-ATk-Nodes": { + "author_account_age_days": 3507, + "last_update": "2025-06-25 05:04:14", + "stars": 2 + }, + "https://github.com/lujiazho/ComfyUI-CatvtonFluxWrapper": { + "author_account_age_days": 1828, + "last_update": "2024-12-02 22:10:41", + "stars": 92 + }, + "https://github.com/lum3on/ComfyUI-FrameUtilitys": { + "author_account_age_days": 166, + "last_update": "2025-07-07 17:00:01", + "stars": 8 + }, + "https://github.com/lum3on/ComfyUI-ModelQuantizer": { + "author_account_age_days": 166, + "last_update": "2025-06-14 20:45:21", + "stars": 35 + }, + "https://github.com/lum3on/ComfyUI-StableAudioX": { + "author_account_age_days": 166, + "last_update": "2025-06-24 22:55:28", + "stars": 24 + }, + "https://github.com/lum3on/ComfyUI_MJ-Scraper": { + "author_account_age_days": 166, + "last_update": "2025-07-06 18:35:33", + "stars": 0 + }, + "https://github.com/lum3on/comfyui_EdgeTAM": { + "author_account_age_days": 166, + "last_update": "2025-06-27 15:36:58", + "stars": 2 + }, + "https://github.com/lum3on/comfyui_LLM_Polymath": { + "author_account_age_days": 166, + "last_update": "2025-07-17 10:22:58", + "stars": 64 + }, + "https://github.com/lumalabs/ComfyUI-LumaAI-API": { + "author_account_age_days": 1502, + "last_update": "2025-03-31 22:54:28", + "stars": 200 + }, + "https://github.com/lunarring/bitalino_comfy": { + "author_account_age_days": 1634, + "last_update": "2025-02-21 09:03:54", + "stars": 0 + }, + "https://github.com/lxe/ComfyUI-OpenAI-Compat-LLM-Node": { + "author_account_age_days": 4890, + "last_update": "2025-05-28 05:39:55", + "stars": 0 + }, + "https://github.com/m-sokes/ComfyUI-Sokes-Nodes": { + "author_account_age_days": 707, + "last_update": "2025-06-27 03:40:27", + "stars": 2 + }, + "https://github.com/madtunebk/ComfyUI-ControlnetAux": { + "author_account_age_days": 852, + "last_update": "2024-06-28 16:16:51", + "stars": 15 + }, + "https://github.com/maepopi/Diffusers-in-ComfyUI": { + "author_account_age_days": 2749, + "last_update": "2025-03-28 07:29:38", + "stars": 6 + }, + "https://github.com/magekinnarus/ComfyUI-V-Prediction-Node": { + "author_account_age_days": 1024, + "last_update": "2025-02-04 08:29:24", + "stars": 2 + }, + "https://github.com/magic-eraser-org/ComfyUI-Unwatermark": { + "author_account_age_days": 68, + "last_update": "2025-05-14 06:50:13", + "stars": 1 + }, + "https://github.com/maludwig/basix_image_filters": { + "author_account_age_days": 3897, + "last_update": "2025-05-15 23:29:38", + "stars": 6 + }, + "https://github.com/mang01010/MangoNodePack": { + "author_account_age_days": 142, + "last_update": "2025-07-11 17:10:27", + "stars": 3 + }, + "https://github.com/mango-rgb/ComfyUI-Mango-Random-node": { + "author_account_age_days": 795, + "last_update": "2025-01-21 11:31:10", + "stars": 1 + }, + "https://github.com/manifestations/comfyui-globetrotter": { + "author_account_age_days": 4545, + "last_update": "2025-07-07 08:47:57", + "stars": 3 + }, + "https://github.com/manifestations/comfyui-outfit": { + "author_account_age_days": 4545, + "last_update": "2025-07-12 10:39:16", + "stars": 1 + }, + "https://github.com/mape/ComfyUI-mape-Helpers": { + "author_account_age_days": 6145, + "last_update": "2024-06-27 16:30:32", + "stars": 179 + }, + "https://github.com/maracman/ComfyUI-SubjectStyle-CSV": { + "author_account_age_days": 1558, + "last_update": "2024-06-24 13:53:39", + "stars": 4 + }, + "https://github.com/marawan206/ComfyUI-FaceCropper": { + "author_account_age_days": 561, + "last_update": "2025-03-07 01:44:44", + "stars": 10 + }, + "https://github.com/marcoc2/ComfyUI-AnotherUtils": { + "author_account_age_days": 5575, + "last_update": "2024-12-20 04:34:13", + "stars": 1 + }, + "https://github.com/marcoc2/ComfyUI_CogView4-6B_diffusers": { + "author_account_age_days": 5575, + "last_update": "2025-03-04 17:43:50", + "stars": 2 + }, + "https://github.com/marduk191/ComfyUI-Fluxpromptenhancer": { + "author_account_age_days": 4806, + "last_update": "2025-04-03 17:22:55", + "stars": 109 + }, + "https://github.com/marduk191/comfyui-marnodes": { + "author_account_age_days": 4806, + "last_update": "2025-03-27 13:26:45", + "stars": 3 + }, + "https://github.com/marhensa/sdxl-recommended-res-calc": { + "author_account_age_days": 5166, + "last_update": "2025-04-13 09:33:49", + "stars": 89 + }, + "https://github.com/marklieberman/ComfyUI-Liebs-Picker": { + "author_account_age_days": 4197, + "last_update": "2025-07-20 19:48:49", + "stars": 2 + }, + "https://github.com/marklieberman/ComfyUI-Liebs-Title": { + "author_account_age_days": 4197, + "last_update": "2025-05-12 23:32:28", + "stars": 0 + }, + "https://github.com/marklieberman/ComfyUI-Liebs-Toast": { + "author_account_age_days": 4197, + "last_update": "2025-05-12 23:34:55", + "stars": 0 + }, + "https://github.com/markuryy/ComfyUI-Flux-Prompt-Saver": { + "author_account_age_days": 3269, + "last_update": "2024-10-30 10:25:15", + "stars": 13 + }, + "https://github.com/markuryy/ComfyUI-Simple-Video-XY-Plot": { + "author_account_age_days": 3269, + "last_update": "2025-03-12 18:18:54", + "stars": 3 + }, + "https://github.com/markuryy/ComfyUI-SuperLoader": { + "author_account_age_days": 3269, + "last_update": "2025-03-12 18:23:22", + "stars": 0 + }, + "https://github.com/martijnat/comfyui-previewlatent": { + "author_account_age_days": 3223, + "last_update": "2024-05-22 21:28:39", + "stars": 37 + }, + "https://github.com/martin-rizzo/ComfyUI-TinyBreaker": { + "author_account_age_days": 1988, + "last_update": "2025-05-04 00:02:02", + "stars": 37 + }, + "https://github.com/massao000/ComfyUI_aspect_ratios": { + "author_account_age_days": 1798, + "last_update": "2024-05-22 22:23:10", + "stars": 10 + }, + "https://github.com/matan1905/ComfyUI-Serving-Toolkit": { + "author_account_age_days": 3131, + "last_update": "2025-05-01 10:03:33", + "stars": 67 + }, + "https://github.com/matorzhin/milan-nodes-comfyui": { + "author_account_age_days": 3044, + "last_update": "2025-06-05 16:37:41", + "stars": 0 + }, + "https://github.com/mattjohnpowell/comfyui-lmstudio-image-to-text-node": { + "author_account_age_days": 4941, + "last_update": "2025-07-11 07:27:56", + "stars": 18 + }, + "https://github.com/mav-rik/facerestore_cf": { + "author_account_age_days": 3312, + "last_update": "2025-06-21 08:02:17", + "stars": 282 + }, + "https://github.com/mbrostami/ComfyUI-HF": { + "author_account_age_days": 4713, + "last_update": "2024-05-27 21:45:33", + "stars": 19 + }, + "https://github.com/mbrostami/ComfyUI-TITrain": { + "author_account_age_days": 4713, + "last_update": "2025-03-14 17:39:11", + "stars": 10 + }, + "https://github.com/mcmonkeyprojects/sd-dynamic-thresholding": { + "author_account_age_days": 2493, + "last_update": "2025-03-14 09:33:32", + "stars": 1217 + }, + "https://github.com/meanin2/comfyui-MGnodes": { + "author_account_age_days": 1046, + "last_update": "2025-01-24 07:32:08", + "stars": 2 + }, + "https://github.com/meap158/ComfyUI-Background-Replacement": { + "author_account_age_days": 3594, + "last_update": "2025-01-06 23:45:28", + "stars": 59 + }, + "https://github.com/meap158/ComfyUI-GPU-temperature-protection": { + "author_account_age_days": 3594, + "last_update": "2024-05-22 20:43:21", + "stars": 3 + }, + "https://github.com/meap158/ComfyUI-Prompt-Expansion": { + "author_account_age_days": 3594, + "last_update": "2024-05-22 20:43:37", + "stars": 77 + }, + "https://github.com/mech-tools/comfyui-checkpoint-automatic-config": { + "author_account_age_days": 4831, + "last_update": "2024-09-05 14:23:29", + "stars": 3 + }, + "https://github.com/mediocreatmybest/ComfyUI-Transformers-Pipeline": { + "author_account_age_days": 1593, + "last_update": "2025-07-04 08:14:50", + "stars": 4 + }, + "https://github.com/melMass/comfy_mtb": { + "author_account_age_days": 4136, + "last_update": "2025-07-18 13:27:32", + "stars": 590 + }, + "https://github.com/melMass/comfy_oiio": { + "author_account_age_days": 4136, + "last_update": "2025-04-14 20:24:37", + "stars": 5 + }, + "https://github.com/mephisto83/petty-paint-comfyui-node": { + "author_account_age_days": 4064, + "last_update": "2024-10-23 22:23:03", + "stars": 3 + }, + "https://github.com/meshmesh-io/ComfyUI-MeshMesh": { + "author_account_age_days": 620, + "last_update": "2024-05-23 00:10:09", + "stars": 0 + }, + "https://github.com/meshmesh-io/mm-comfyui-loopback": { + "author_account_age_days": 620, + "last_update": "2024-05-23 00:09:57", + "stars": 1 + }, + "https://github.com/meshmesh-io/mm-comfyui-megamask": { + "author_account_age_days": 620, + "last_update": "2024-05-23 00:09:47", + "stars": 0 + }, + "https://github.com/metal3d/ComfyUI_Human_Parts": { + "author_account_age_days": 5865, + "last_update": "2025-03-07 08:14:46", + "stars": 34 + }, + "https://github.com/metal3d/ComfyUI_M3D_photo_effects": { + "author_account_age_days": 5865, + "last_update": "2025-03-11 12:09:55", + "stars": 3 + }, + "https://github.com/metncelik/comfyui_met_suite": { + "author_account_age_days": 1014, + "last_update": "2025-03-27 12:27:48", + "stars": 2 + }, + "https://github.com/mfg637/ComfyUI-ScheduledGuider-Ext": { + "author_account_age_days": 2709, + "last_update": "2025-07-02 09:36:48", + "stars": 3 + }, + "https://github.com/mgfxer/ComfyUI-FrameFX": { + "author_account_age_days": 393, + "last_update": "2024-07-20 13:58:46", + "stars": 23 + }, + "https://github.com/miaoshouai/ComfyUI-Miaoshouai-Tagger": { + "author_account_age_days": 859, + "last_update": "2025-04-26 02:32:18", + "stars": 430 + }, + "https://github.com/michaelgold/ComfyUI-HF-Model-Downloader": { + "author_account_age_days": 5748, + "last_update": "2025-07-07 17:08:14", + "stars": 2 + }, + "https://github.com/microbote/ComfyUI-StyledCLIPTextEncode": { + "author_account_age_days": 2399, + "last_update": "2024-08-27 03:37:29", + "stars": 2 + }, + "https://github.com/mihaiiancu/ComfyUI_Inpaint": { + "author_account_age_days": 3053, + "last_update": "2024-05-22 18:19:38", + "stars": 9 + }, + "https://github.com/mikebilly/Transparent-background-comfyUI": { + "author_account_age_days": 2955, + "last_update": "2025-01-29 16:29:23", + "stars": 2 + }, + "https://github.com/mikkel/ComfyUI-text-overlay": { + "author_account_age_days": 6308, + "last_update": "2024-08-17 16:09:41", + "stars": 58 + }, + "https://github.com/mikkel/comfyui-mask-boundingbox": { + "author_account_age_days": 6308, + "last_update": "2024-05-22 21:26:23", + "stars": 30 + }, + "https://github.com/mingsky-ai/ComfyUI-MingNodes": { + "author_account_age_days": 312, + "last_update": "2024-10-18 16:51:14", + "stars": 413 + }, + "https://github.com/mira-6/comfyui-sasolver": { + "author_account_age_days": 783, + "last_update": "2025-02-23 21:44:23", + "stars": 3 + }, + "https://github.com/mirabarukaso/ComfyUI_Mira": { + "author_account_age_days": 1612, + "last_update": "2025-06-20 14:01:41", + "stars": 134 + }, + "https://github.com/misterjoessef/MLTask_ComfyUI": { + "author_account_age_days": 1129, + "last_update": "2024-08-17 16:45:24", + "stars": 0 + }, + "https://github.com/mit-han-lab/ComfyUI-nunchaku": { + "author_account_age_days": 6, + "last_update": "2025-07-19 02:49:34", + "stars": 1700 + }, + "https://github.com/mittimi/ComfyUI_mittimiLoadPreset2": { + "author_account_age_days": 4401, + "last_update": "2025-06-30 11:17:30", + "stars": 4 + }, + "https://github.com/mittimi/ComfyUI_mittimiRecalculateSize": { + "author_account_age_days": 4401, + "last_update": "2024-09-07 07:43:41", + "stars": 0 + }, + "https://github.com/mittimi/ComfyUI_mittimiWidthHeight": { + "author_account_age_days": 4401, + "last_update": "2024-09-07 07:48:03", + "stars": 1 + }, + "https://github.com/mo230761/InsertAnything-ComfyUI-official": { + "author_account_age_days": 1365, + "last_update": "2025-07-16 11:05:05", + "stars": 20 + }, + "https://github.com/mobilehacker/ComfyUI_format-lora-stack": { + "author_account_age_days": 4200, + "last_update": "2025-04-04 19:45:39", + "stars": 3 + }, + "https://github.com/modelscope/comfyscope": { + "author_account_age_days": 1091, + "last_update": "2024-11-20 08:48:36", + "stars": 4 + }, + "https://github.com/modelscope/scepter": { + "author_account_age_days": 1091, + "last_update": "2025-04-03 06:00:15", + "stars": 530 + }, + "https://github.com/modusCell/ComfyUI-dimension-node-modusCell": { + "author_account_age_days": 4995, + "last_update": "2024-05-22 22:08:50", + "stars": 2 + }, + "https://github.com/mohseni-mr/ComfyUI-Mohseni-Kit": { + "author_account_age_days": 1106, + "last_update": "2025-02-17 07:14:46", + "stars": 1 + }, + "https://github.com/mohsensd1373/comfyui_wordpress": { + "author_account_age_days": 4244, + "last_update": "2025-05-08 02:25:36", + "stars": 0 + }, + "https://github.com/monkeyWie/ComfyUI-FormInput": { + "author_account_age_days": 3670, + "last_update": "2025-05-12 03:47:39", + "stars": 0 + }, + "https://github.com/moon7star9/ComfyUI_BiRefNet_Universal": { + "author_account_age_days": 799, + "last_update": "2025-02-26 03:01:29", + "stars": 19 + }, + "https://github.com/moose-lab/ComfyUI-GPT": { + "author_account_age_days": 177, + "last_update": "2025-04-12 07:59:29", + "stars": 4 + }, + "https://github.com/morgan55555/comfyui-lock-mode": { + "author_account_age_days": 3576, + "last_update": "2025-04-28 16:16:18", + "stars": 0 + }, + "https://github.com/morino-kumasan/comfyui-toml-prompt": { + "author_account_age_days": 1715, + "last_update": "2025-07-15 17:12:56", + "stars": 0 + }, + "https://github.com/motivated3/comfyui-shua-creator": { + "author_account_age_days": 3197, + "last_update": "2024-12-05 10:39:52", + "stars": 6 + }, + "https://github.com/moustafa-nasr/ComfyUI-SimpleLogger": { + "author_account_age_days": 3862, + "last_update": "2025-06-07 08:30:19", + "stars": 4 + }, + "https://github.com/moyi7712/ComfyUI_Seamless_Patten": { + "author_account_age_days": 2692, + "last_update": "2025-03-19 10:35:44", + "stars": 17 + }, + "https://github.com/mozman/ComfyUI_mozman_nodes": { + "author_account_age_days": 4471, + "last_update": "2024-05-22 22:13:32", + "stars": 0 + }, + "https://github.com/mr7thing/circle_pattern_processor": { + "author_account_age_days": 528, + "last_update": "2025-03-02 19:24:26", + "stars": 0 + }, + "https://github.com/mrchipset/ComfyUI-SaveImageS3": { + "author_account_age_days": 2702, + "last_update": "2025-04-07 00:27:45", + "stars": 1 + }, + "https://github.com/mrhan1993/ComfyUI-Fooocus": { + "author_account_age_days": 2258, + "last_update": "2025-01-15 15:18:07", + "stars": 8 + }, + "https://github.com/muhammederem/blip-comfyui": { + "author_account_age_days": 2486, + "last_update": "2025-05-25 14:11:04", + "stars": 1 + }, + "https://github.com/mullakhmetov/comfyui_dynamic_util_nodes": { + "author_account_age_days": 4329, + "last_update": "2024-07-15 14:13:58", + "stars": 0 + }, + "https://github.com/muxueChen/ComfyUI_NTCosyVoice": { + "author_account_age_days": 3352, + "last_update": "2025-05-20 13:36:56", + "stars": 149 + }, + "https://github.com/muzi12888/ComfyUI-PoseKeypoint-Mask": { + "author_account_age_days": 3337, + "last_update": "2025-03-15 00:23:20", + "stars": 11 + }, + "https://github.com/my-opencode/ComfyUI_IndustrialMagick": { + "author_account_age_days": 1771, + "last_update": "2024-07-31 14:04:26", + "stars": 1 + }, + "https://github.com/my-opencode/ComfyUI_KSamplerTimer": { + "author_account_age_days": 1771, + "last_update": "2024-07-31 14:13:17", + "stars": 2 + }, + "https://github.com/myshell-ai/ComfyUI-ShellAgent-Plugin": { + "author_account_age_days": 860, + "last_update": "2025-05-22 06:54:44", + "stars": 22 + }, + "https://github.com/n0neye/A3D-comfyui-integration": { + "author_account_age_days": 1215, + "last_update": "2025-04-28 03:54:34", + "stars": 6 + }, + "https://github.com/nagolinc/ComfyUI_FastVAEDecorder_SDXL": { + "author_account_age_days": 4065, + "last_update": "2024-07-19 14:46:14", + "stars": 4 + }, + "https://github.com/nagolinc/comfyui_openai_node": { + "author_account_age_days": 4065, + "last_update": "2024-06-15 15:59:07", + "stars": 1 + }, + "https://github.com/nako-nakoko/ComfyUI_Mel_Nodes": { + "author_account_age_days": 107, + "last_update": "2025-04-26 22:48:50", + "stars": 0 + }, + "https://github.com/namtb96/OmniGen2-Simple-Node": { + "author_account_age_days": 37, + "last_update": "2025-07-04 08:38:27", + "stars": 1 + }, + "https://github.com/narusas/Comfyui-Logic-Support": { + "author_account_age_days": 5025, + "last_update": "2025-05-30 04:44:16", + "stars": 0 + }, + "https://github.com/nat-chan/ComfyUI-graphToPrompt": { + "author_account_age_days": 3384, + "last_update": "2024-05-23 01:16:40", + "stars": 2 + }, + "https://github.com/nat-chan/comfyui-transceiver": { + "author_account_age_days": 3384, + "last_update": "2024-05-23 01:16:28", + "stars": 5 + }, + "https://github.com/nathannlu/ComfyUI-Cloud": { + "author_account_age_days": 3117, + "last_update": "2024-07-31 18:05:55", + "stars": 200 + }, + "https://github.com/nathannlu/ComfyUI-Pets": { + "author_account_age_days": 3117, + "last_update": "2024-06-14 11:00:42", + "stars": 47 + }, + "https://github.com/natto-maki/ComfyUI-NegiTools": { + "author_account_age_days": 669, + "last_update": "2024-09-15 05:11:18", + "stars": 31 + }, + "https://github.com/nchenevey1/comfyui-gimp-nodes": { + "author_account_age_days": 1041, + "last_update": "2024-10-26 09:11:34", + "stars": 9 + }, + "https://github.com/negaga53/comfyui-imgloader": { + "author_account_age_days": 176, + "last_update": "2025-07-07 21:27:00", + "stars": 0 + }, + "https://github.com/neggo/comfyui-sambanova": { + "author_account_age_days": 4326, + "last_update": "2025-05-15 01:49:53", + "stars": 0 + }, + "https://github.com/neocrz/comfyui-usetaesd": { + "author_account_age_days": 1711, + "last_update": "2025-06-14 18:58:39", + "stars": 1 + }, + "https://github.com/neph1/comfyui-smooth-step-lora-loader": { + "author_account_age_days": 4043, + "last_update": "2025-04-06 10:43:14", + "stars": 6 + }, + "https://github.com/neverbiasu/ComfyUI-BAGEL": { + "author_account_age_days": 1410, + "last_update": "2025-06-19 18:12:50", + "stars": 164 + }, + "https://github.com/neverbiasu/ComfyUI-ChatTTS": { + "author_account_age_days": 1410, + "last_update": "2025-05-12 08:15:13", + "stars": 3 + }, + "https://github.com/neverbiasu/ComfyUI-Dashscope": { + "author_account_age_days": 1410, + "last_update": "2025-04-05 02:19:36", + "stars": 2 + }, + "https://github.com/neverbiasu/ComfyUI-Image-Captioner": { + "author_account_age_days": 1410, + "last_update": "2025-05-12 16:09:03", + "stars": 15 + }, + "https://github.com/neverbiasu/ComfyUI-SAM2": { + "author_account_age_days": 1410, + "last_update": "2025-05-13 12:38:09", + "stars": 195 + }, + "https://github.com/neverbiasu/ComfyUI-StyleShot": { + "author_account_age_days": 1410, + "last_update": "2025-04-23 08:01:32", + "stars": 12 + }, + "https://github.com/newtextdoc1111/ComfyUI-Autocomplete-Plus": { + "author_account_age_days": 127, + "last_update": "2025-07-19 00:32:30", + "stars": 25 + }, + "https://github.com/ngosset/ComfyUI-ImageSimilarity": { + "author_account_age_days": 4713, + "last_update": "2025-01-18 18:17:50", + "stars": 7 + }, + "https://github.com/nicehero/comfyui-SegGPT": { + "author_account_age_days": 4401, + "last_update": "2024-08-26 06:05:35", + "stars": 6 + }, + "https://github.com/nickve28/ComfyUI-Nich-Utils": { + "author_account_age_days": 4420, + "last_update": "2025-06-19 10:15:26", + "stars": 8 + }, + "https://github.com/nicofdga/DZ-FaceDetailer": { + "author_account_age_days": 1622, + "last_update": "2024-06-17 10:00:30", + "stars": 208 + }, + "https://github.com/niknah/ComfyUI-F5-TTS": { + "author_account_age_days": 5111, + "last_update": "2025-06-13 12:27:03", + "stars": 210 + }, + "https://github.com/niknah/ComfyUI-Hunyuan-3D-2": { + "author_account_age_days": 5111, + "last_update": "2025-07-12 11:34:46", + "stars": 53 + }, + "https://github.com/niknah/ComfyUI-InfiniteYou": { + "author_account_age_days": 5111, + "last_update": "2025-04-16 08:44:22", + "stars": 11 + }, + "https://github.com/niknah/audio-general-ComfyUI": { + "author_account_age_days": 5111, + "last_update": "2025-05-28 02:51:53", + "stars": 0 + }, + "https://github.com/niknah/quick-connections": { + "author_account_age_days": 5111, + "last_update": "2025-07-15 11:50:24", + "stars": 306 + }, + "https://github.com/nilor-corp/nilor-nodes": { + "author_account_age_days": 606, + "last_update": "2025-07-17 13:43:36", + "stars": 3 + }, + "https://github.com/ningxiaoxiao/comfyui-NDI": { + "author_account_age_days": 3379, + "last_update": "2025-04-11 03:55:37", + "stars": 59 + }, + "https://github.com/nirbhay-faaya/ImgProcessing_ComfyUI": { + "author_account_age_days": 727, + "last_update": "2024-07-31 08:34:48", + "stars": 0 + }, + "https://github.com/nirex0/ComfyUI_pytorch_openpose": { + "author_account_age_days": 3894, + "last_update": "2024-06-14 12:01:07", + "stars": 2 + }, + "https://github.com/nisaruj/comfyui-daam": { + "author_account_age_days": 3599, + "last_update": "2025-06-08 12:41:49", + "stars": 23 + }, + "https://github.com/nisimjoseph/ComfyUI_OpenAI-Prompter": { + "author_account_age_days": 4698, + "last_update": "2025-01-18 19:57:31", + "stars": 4 + }, + "https://github.com/nkchocoai/ComfyUI-DanbooruPromptQuiz": { + "author_account_age_days": 551, + "last_update": "2025-03-30 08:30:33", + "stars": 0 + }, + "https://github.com/nkchocoai/ComfyUI-Dart": { + "author_account_age_days": 551, + "last_update": "2025-03-30 08:19:01", + "stars": 28 + }, + "https://github.com/nkchocoai/ComfyUI-PromptUtilities": { + "author_account_age_days": 551, + "last_update": "2025-03-30 08:19:25", + "stars": 19 + }, + "https://github.com/nkchocoai/ComfyUI-SaveImageWithMetaData": { + "author_account_age_days": 551, + "last_update": "2025-03-30 08:19:20", + "stars": 88 + }, + "https://github.com/nkchocoai/ComfyUI-SizeFromPresets": { + "author_account_age_days": 551, + "last_update": "2025-03-30 08:19:30", + "stars": 7 + }, + "https://github.com/nkchocoai/ComfyUI-TextOnSegs": { + "author_account_age_days": 551, + "last_update": "2025-03-30 08:19:45", + "stars": 12 + }, + "https://github.com/nobrainX2/comfyUI-customDia": { + "author_account_age_days": 2178, + "last_update": "2025-05-29 18:32:25", + "stars": 13 + }, + "https://github.com/noembryo/ComfyUI-noEmbryo": { + "author_account_age_days": 3134, + "last_update": "2025-05-11 19:04:36", + "stars": 26 + }, + "https://github.com/nofunstudio/Node_Fun_ComfyUI": { + "author_account_age_days": 1604, + "last_update": "2025-07-12 04:22:58", + "stars": 3 + }, + "https://github.com/nonnonstop/comfyui-faster-loading": { + "author_account_age_days": 2513, + "last_update": "2024-06-13 15:37:45", + "stars": 10 + }, + "https://github.com/northumber/ComfyUI-northTools": { + "author_account_age_days": 3450, + "last_update": "2025-05-22 18:08:04", + "stars": 2 + }, + "https://github.com/nosiu/comfyui-instantId-faceswap": { + "author_account_age_days": 4296, + "last_update": "2025-06-27 11:36:33", + "stars": 241 + }, + "https://github.com/nosiu/comfyui-text-randomizer": { + "author_account_age_days": 4296, + "last_update": "2025-03-03 01:40:12", + "stars": 0 + }, + "https://github.com/noxinias/ComfyUI_NoxinNodes": { + "author_account_age_days": 2952, + "last_update": "2024-05-22 21:24:24", + "stars": 11 + }, + "https://github.com/nsdtcloud3d/ComfyUI-3D-Convert": { + "author_account_age_days": 466, + "last_update": "2024-12-23 07:46:17", + "stars": 14 + }, + "https://github.com/ntc-ai/ComfyUI-DARE-LoRA-Merge": { + "author_account_age_days": 2109, + "last_update": "2024-05-22 22:22:14", + "stars": 34 + }, + "https://github.com/nuanarchy/ComfyUI-NuA-BIRD": { + "author_account_age_days": 1483, + "last_update": "2024-06-18 05:35:49", + "stars": 8 + }, + "https://github.com/nuanarchy/ComfyUI-NuA-FlashFace": { + "author_account_age_days": 1483, + "last_update": "2024-07-31 13:54:00", + "stars": 24 + }, + "https://github.com/nullquant/ComfyUI-BrushNet": { + "author_account_age_days": 1568, + "last_update": "2025-03-31 08:45:34", + "stars": 897 + }, + "https://github.com/numz/ComfyUI-FlowChain": { + "author_account_age_days": 5175, + "last_update": "2025-05-19 01:51:02", + "stars": 154 + }, + "https://github.com/numz/ComfyUI-SeedVR2_VideoUpscaler": { + "author_account_age_days": 5175, + "last_update": "2025-07-17 15:33:38", + "stars": 206 + }, + "https://github.com/numz/Comfyui-Orpheus": { + "author_account_age_days": 5175, + "last_update": "2025-04-16 19:20:21", + "stars": 8 + }, + "https://github.com/nux1111/ComfyUI_NetDist_Plus": { + "author_account_age_days": 944, + "last_update": "2024-08-27 23:15:18", + "stars": 31 + }, + "https://github.com/o-l-l-i/ComfyUI-Olm-CurveEditor": { + "author_account_age_days": 2864, + "last_update": "2025-06-24 17:41:52", + "stars": 29 + }, + "https://github.com/o-l-l-i/ComfyUI-Olm-DragCrop": { + "author_account_age_days": 2864, + "last_update": "2025-07-09 10:50:32", + "stars": 30 + }, + "https://github.com/o-l-l-i/ComfyUI-Olm-ImageAdjust": { + "author_account_age_days": 2864, + "last_update": "2025-07-14 17:50:01", + "stars": 28 + }, + "https://github.com/o-l-l-i/ComfyUI-Olm-Resolution-Picker": { + "author_account_age_days": 2864, + "last_update": "2025-06-24 18:05:33", + "stars": 12 + }, + "https://github.com/o-l-l-i/ComfyUI-Olm-Sketch": { + "author_account_age_days": 2864, + "last_update": "2025-06-29 18:25:51", + "stars": 32 + }, + "https://github.com/o-l-l-i/ComfyUI-OlmLUT": { + "author_account_age_days": 2864, + "last_update": "2025-06-09 18:55:46", + "stars": 10 + }, + "https://github.com/okgo4/ComfyUI-Mosaic-Mask": { + "author_account_age_days": 3078, + "last_update": "2025-04-03 09:41:53", + "stars": 6 + }, + "https://github.com/olduvai-jp/ComfyUI-CloudArchive": { + "author_account_age_days": 1267, + "last_update": "2025-04-15 07:18:38", + "stars": 2 + }, + "https://github.com/olduvai-jp/ComfyUI-HfLoader": { + "author_account_age_days": 1267, + "last_update": "2025-02-13 17:05:40", + "stars": 4 + }, + "https://github.com/oleksandr612/ComfyUI-Counter": { + "author_account_age_days": 353, + "last_update": "2024-08-05 16:18:48", + "stars": 0 + }, + "https://github.com/olivv-cs/ComfyUI-FunPack": { + "author_account_age_days": 803, + "last_update": "2025-06-13 19:02:21", + "stars": 1 + }, + "https://github.com/omar92/ComfyUI-QualityOfLifeSuit_Omar92": { + "author_account_age_days": 4898, + "last_update": "2024-09-10 14:16:30", + "stars": 157 + }, + "https://github.com/openvino-dev-samples/comfyui_openvino": { + "author_account_age_days": 1396, + "last_update": "2025-07-10 01:18:19", + "stars": 19 + }, + "https://github.com/opvelll/ComfyUI_TextListProduct": { + "author_account_age_days": 1945, + "last_update": "2024-10-30 16:00:09", + "stars": 1 + }, + "https://github.com/orange90/ComfyUI-Regex-Runner": { + "author_account_age_days": 4487, + "last_update": "2025-02-26 03:48:27", + "stars": 3 + }, + "https://github.com/orex2121/comfyui-OreX": { + "author_account_age_days": 1898, + "last_update": "2025-04-21 04:40:56", + "stars": 5 + }, + "https://github.com/orion4d/Calculator_Pro": { + "author_account_age_days": 973, + "last_update": "2025-06-29 15:47:04", + "stars": 0 + }, + "https://github.com/orion4d/ComfyUI-Image-Effects": { + "author_account_age_days": 973, + "last_update": "2025-05-28 00:37:16", + "stars": 20 + }, + "https://github.com/orion4d/ComfyUI_colormaster": { + "author_account_age_days": 973, + "last_update": "2025-07-06 11:30:01", + "stars": 1 + }, + "https://github.com/orion4d/ComfyUI_extract_imag": { + "author_account_age_days": 973, + "last_update": "2025-06-11 13:37:18", + "stars": 0 + }, + "https://github.com/orion4d/ComfyUI_image-display": { + "author_account_age_days": 973, + "last_update": "2025-07-07 14:39:55", + "stars": 0 + }, + "https://github.com/orion4d/ComfyUI_pdf_nodes": { + "author_account_age_days": 973, + "last_update": "2025-06-10 15:51:53", + "stars": 0 + }, + "https://github.com/orion4d/illusion_node": { + "author_account_age_days": 973, + "last_update": "2025-06-22 08:57:01", + "stars": 2 + }, + "https://github.com/orssorbit/ComfyUI-wanBlockswap": { + "author_account_age_days": 3420, + "last_update": "2025-03-19 12:56:23", + "stars": 46 + }, + "https://github.com/oshtz/ComfyUI-oshtz-nodes": { + "author_account_age_days": 817, + "last_update": "2025-05-22 09:55:47", + "stars": 6 + }, + "https://github.com/osi1880vr/prompt_quill_comfyui": { + "author_account_age_days": 1468, + "last_update": "2025-01-27 10:43:16", + "stars": 19 + }, + "https://github.com/ostris/ComfyUI-FlexTools": { + "author_account_age_days": 2794, + "last_update": "2025-04-21 23:12:58", + "stars": 69 + }, + "https://github.com/ostris/ostris_nodes_comfyui": { + "author_account_age_days": 2794, + "last_update": "2025-04-16 17:03:53", + "stars": 30 + }, + "https://github.com/otacoo/comfyui_otacoo": { + "author_account_age_days": 88, + "last_update": "2025-06-05 23:09:32", + "stars": 2 + }, + "https://github.com/ownimage/ComfyUI-ownimage": { + "author_account_age_days": 3174, + "last_update": "2024-05-22 22:22:37", + "stars": 0 + }, + "https://github.com/oxysoft/ComfyUI-gowiththeflow": { + "author_account_age_days": 4503, + "last_update": "2025-04-09 03:55:00", + "stars": 3 + }, + "https://github.com/oyvindg/ComfyUI-TrollSuite": { + "author_account_age_days": 2721, + "last_update": "2024-08-15 10:37:43", + "stars": 4 + }, + "https://github.com/oztrkoguz/ComfyUI_StoryCreator": { + "author_account_age_days": 1233, + "last_update": "2025-04-07 08:30:38", + "stars": 29 + }, + "https://github.com/p1atdev/comfyui-timm-backbone": { + "author_account_age_days": 2006, + "last_update": "2025-05-31 04:03:07", + "stars": 1 + }, + "https://github.com/palant/image-resize-comfyui": { + "author_account_age_days": 5444, + "last_update": "2024-01-18 20:59:55", + "stars": 96 + }, + "https://github.com/palant/integrated-nodes-comfyui": { + "author_account_age_days": 5444, + "last_update": "2023-12-27 22:52:00", + "stars": 39 + }, + "https://github.com/pamparamm/ComfyUI-ppm": { + "author_account_age_days": 2522, + "last_update": "2025-06-13 16:23:47", + "stars": 201 + }, + "https://github.com/pamparamm/ComfyUI-vectorscope-cc": { + "author_account_age_days": 2522, + "last_update": "2025-02-24 21:59:04", + "stars": 19 + }, + "https://github.com/pamparamm/sd-perturbed-attention": { + "author_account_age_days": 2522, + "last_update": "2025-06-24 00:09:09", + "stars": 266 + }, + "https://github.com/pants007/comfy-pants": { + "author_account_age_days": 2708, + "last_update": "2024-05-22 18:16:04", + "stars": 2 + }, + "https://github.com/papcorns/ComfyUI-Papcorns-Node-LoadImageFromUrl": { + "author_account_age_days": 1904, + "last_update": "2025-05-26 12:33:08", + "stars": 1 + }, + "https://github.com/papcorns/Papcorns-Comfyui-Custom-Nodes": { + "author_account_age_days": 1904, + "last_update": "2025-07-17 14:53:00", + "stars": 0 + }, + "https://github.com/pathway8-sudo/ComfyUI-Pathway-CutPNG-Node": { + "author_account_age_days": 229, + "last_update": "2025-03-03 07:47:31", + "stars": 0 + }, + "https://github.com/patriciogonzalezvivo/comfyui_glslnodes": { + "author_account_age_days": 5471, + "last_update": "2025-05-05 15:00:47", + "stars": 221 + }, + "https://github.com/paulh4x/ComfyUI_PHRenderFormerWrapper": { + "author_account_age_days": 243, + "last_update": "2025-07-16 13:53:28", + "stars": 23 + }, + "https://github.com/paulo-coronado/comfy_clip_blip_node": { + "author_account_age_days": 3078, + "last_update": "2024-05-22 17:39:09", + "stars": 29 + }, + "https://github.com/pawelmal0101/ComfyUI-Webhook": { + "author_account_age_days": 1053, + "last_update": "2025-06-11 10:36:58", + "stars": 0 + }, + "https://github.com/pbpbpb2705/ComfyUI-LyraVSIH": { + "author_account_age_days": 1621, + "last_update": "2024-08-30 07:52:11", + "stars": 0 + }, + "https://github.com/penposs/ComfyUI_Gemini_Pro": { + "author_account_age_days": 2149, + "last_update": "2025-07-05 06:16:10", + "stars": 7 + }, + "https://github.com/penposs/Comfyui_wan_api": { + "author_account_age_days": 2149, + "last_update": "2025-04-02 16:02:44", + "stars": 1 + }, + "https://github.com/pharmapsychotic/comfy-cliption": { + "author_account_age_days": 1306, + "last_update": "2025-01-04 05:06:11", + "stars": 54 + }, + "https://github.com/phazei/ComfyUI-Prompt-Stash": { + "author_account_age_days": 5400, + "last_update": "2025-05-16 02:13:34", + "stars": 18 + }, + "https://github.com/philiprodriguez/ComfyUI-HunyuanImageLatentToVideoLatent": { + "author_account_age_days": 3390, + "last_update": "2025-01-12 16:43:09", + "stars": 1 + }, + "https://github.com/philipy1219/ComfyUI-CloudStorage": { + "author_account_age_days": 3649, + "last_update": "2025-07-01 13:40:29", + "stars": 0 + }, + "https://github.com/philipy1219/ComfyUI-TaylorSeer": { + "author_account_age_days": 3649, + "last_update": "2025-06-27 07:29:26", + "stars": 31 + }, + "https://github.com/philz1337x/ComfyUI-ClarityAI": { + "author_account_age_days": 1055, + "last_update": "2025-04-24 09:51:25", + "stars": 184 + }, + "https://github.com/phineas-pta/comfyui-auto-nodes-layout": { + "author_account_age_days": 2680, + "last_update": "2024-08-02 17:31:24", + "stars": 47 + }, + "https://github.com/phuvinh010701/ComfyUI-Nudenet": { + "author_account_age_days": 2065, + "last_update": "2025-05-01 01:46:07", + "stars": 24 + }, + "https://github.com/phyblas/paint-by-example_comfyui": { + "author_account_age_days": 3444, + "last_update": "2025-03-28 22:27:45", + "stars": 9 + }, + "https://github.com/pictorialink/ComfyUI-Custom-Node-Config": { + "author_account_age_days": 67, + "last_update": "2025-07-15 11:19:09", + "stars": 0 + }, + "https://github.com/pictorialink/ComfyUI-Qwen3-llama.cpp": { + "author_account_age_days": 67, + "last_update": "2025-07-15 03:04:43", + "stars": 0 + }, + "https://github.com/pictorialink/ComfyUI-Text-Translation": { + "author_account_age_days": 67, + "last_update": "2025-07-15 07:51:51", + "stars": 2 + }, + "https://github.com/picturesonpictures/comfy_PoP": { + "author_account_age_days": 978, + "last_update": "2025-06-05 03:53:18", + "stars": 21 + }, + "https://github.com/pikenrover/ComfyUI_PRNodes": { + "author_account_age_days": 361, + "last_update": "2025-04-03 13:31:42", + "stars": 2 + }, + "https://github.com/pixelworldai/ComfyUI-AlphaFlatten": { + "author_account_age_days": 362, + "last_update": "2025-03-13 23:07:04", + "stars": 1 + }, + "https://github.com/pkpkTech/ComfyUI-SaveAVIF": { + "author_account_age_days": 1894, + "last_update": "2025-02-01 16:29:22", + "stars": 2 + }, + "https://github.com/pkpkTech/ComfyUI-SaveQueues": { + "author_account_age_days": 1894, + "last_update": "2024-05-22 22:19:54", + "stars": 6 + }, + "https://github.com/pkpkTech/ComfyUI-TemporaryLoader": { + "author_account_age_days": 1894, + "last_update": "2024-05-22 22:19:44", + "stars": 2 + }, + "https://github.com/pkpkTech/ComfyUI-ngrok": { + "author_account_age_days": 1894, + "last_update": "2024-05-22 22:19:32", + "stars": 5 + }, + "https://github.com/playbook3d/playbook3d-comfyui-nodes": { + "author_account_age_days": 1891, + "last_update": "2025-03-25 19:50:08", + "stars": 21 + }, + "https://github.com/plugcrypt/CRT-Nodes": { + "author_account_age_days": 1453, + "last_update": "2025-07-20 22:13:35", + "stars": 6 + }, + "https://github.com/pmarmotte2/ComfyUI-Speaker-Isolation": { + "author_account_age_days": 455, + "last_update": "2025-06-30 20:23:13", + "stars": 3 + }, + "https://github.com/pnikolic-amd/ComfyUI_MIGraphX": { + "author_account_age_days": 192, + "last_update": "2025-07-14 12:58:10", + "stars": 6 + }, + "https://github.com/pollockjj/ComfyUI-MultiGPU": { + "author_account_age_days": 3898, + "last_update": "2025-04-17 23:43:02", + "stars": 356 + }, + "https://github.com/portu-sim/comfyui_bmab": { + "author_account_age_days": 713, + "last_update": "2025-02-23 12:32:27", + "stars": 110 + }, + "https://github.com/prodogape/ComfyUI-EasyOCR": { + "author_account_age_days": 1421, + "last_update": "2024-08-05 07:03:20", + "stars": 36 + }, + "https://github.com/prodogape/ComfyUI-Minio": { + "author_account_age_days": 1421, + "last_update": "2024-05-23 00:13:38", + "stars": 6 + }, + "https://github.com/prodogape/ComfyUI-OmDet": { + "author_account_age_days": 1421, + "last_update": "2024-06-14 13:01:34", + "stars": 3 + }, + "https://github.com/prodogape/Comfyui-Yolov8-JSON": { + "author_account_age_days": 1421, + "last_update": "2024-08-28 02:10:39", + "stars": 24 + }, + "https://github.com/prozacgod/comfyui-pzc-multiworkspace": { + "author_account_age_days": 5959, + "last_update": "2024-05-22 23:11:46", + "stars": 7 + }, + "https://github.com/pschroedl/ComfyUI-SAM2-Realtime": { + "author_account_age_days": 4379, + "last_update": "2025-01-21 05:29:03", + "stars": 14 + }, + "https://github.com/ptmaster/Comfyui-PT-Keyframe-Camera": { + "author_account_age_days": 4271, + "last_update": "2025-07-06 04:41:46", + "stars": 20 + }, + "https://github.com/ptmaster/comfyui-audio-speed": { + "author_account_age_days": 4271, + "last_update": "2025-06-24 15:23:03", + "stars": 10 + }, + "https://github.com/puke3615/ComfyUI-OneAPI": { + "author_account_age_days": 3906, + "last_update": "2025-07-02 03:19:48", + "stars": 3 + }, + "https://github.com/pupba/Comfy_ForEach": { + "author_account_age_days": 2192, + "last_update": "2025-05-12 07:08:54", + "stars": 2 + }, + "https://github.com/purewater2011/comfyui_color_detection": { + "author_account_age_days": 4219, + "last_update": "2025-05-19 09:59:44", + "stars": 1 + }, + "https://github.com/purpen/ComfyUI-AIRedoon": { + "author_account_age_days": 5329, + "last_update": "2024-12-11 09:38:42", + "stars": 2 + }, + "https://github.com/purpen/ComfyUI-ImageTagger": { + "author_account_age_days": 5329, + "last_update": "2024-11-27 17:20:49", + "stars": 2 + }, + "https://github.com/pvlprk/comfyui-pvl-api-nodes": { + "author_account_age_days": 433, + "last_update": "2025-07-17 15:59:45", + "stars": 0 + }, + "https://github.com/pxl-pshr/GlitchNodes": { + "author_account_age_days": 277, + "last_update": "2025-06-29 19:16:40", + "stars": 52 + }, + "https://github.com/pydn/ComfyUI-to-Python-Extension": { + "author_account_age_days": 3088, + "last_update": "2025-01-14 17:03:18", + "stars": 1903 + }, + "https://github.com/pythongosssss/ComfyUI-Custom-Scripts": { + "author_account_age_days": 889, + "last_update": "2025-04-30 12:00:10", + "stars": 2544 + }, + "https://github.com/pythongosssss/ComfyUI-WD14-Tagger": { + "author_account_age_days": 889, + "last_update": "2025-07-11 09:59:23", + "stars": 907 + }, + "https://github.com/pzc163/Comfyui-CatVTON": { + "author_account_age_days": 1168, + "last_update": "2024-10-03 12:50:42", + "stars": 166 + }, + "https://github.com/pzc163/Comfyui_MiniCPMv2_6-prompt-generator": { + "author_account_age_days": 1168, + "last_update": "2024-08-30 08:37:48", + "stars": 80 + }, + "https://github.com/quank123wip/ComfyUI-Step1X-Edit": { + "author_account_age_days": 2895, + "last_update": "2025-04-30 11:03:51", + "stars": 76 + }, + "https://github.com/quasiblob/ComfyUI-EsesCompositionGuides": { + "author_account_age_days": 3679, + "last_update": "2025-07-10 12:33:14", + "stars": 10 + }, + "https://github.com/quasiblob/ComfyUI-EsesImageAdjustments": { + "author_account_age_days": 3679, + "last_update": "2025-07-10 12:26:02", + "stars": 35 + }, + "https://github.com/quasiblob/ComfyUI-EsesImageCompare": { + "author_account_age_days": 3679, + "last_update": "2025-07-12 16:37:13", + "stars": 17 + }, + "https://github.com/quasiblob/ComfyUI-EsesImageEffectBloom": { + "author_account_age_days": 3679, + "last_update": "2025-07-10 12:41:40", + "stars": 51 + }, + "https://github.com/quasiblob/ComfyUI-EsesImageEffectCurves": { + "author_account_age_days": 3679, + "last_update": "2025-07-12 13:50:35", + "stars": 26 + }, + "https://github.com/quasiblob/ComfyUI-EsesImageEffectLevels": { + "author_account_age_days": 3679, + "last_update": "2025-07-12 13:46:00", + "stars": 13 + }, + "https://github.com/quasiblob/ComfyUI-EsesImageLensEffects": { + "author_account_age_days": 3679, + "last_update": "2025-07-10 12:46:20", + "stars": 19 + }, + "https://github.com/quasiblob/ComfyUI-EsesImageOffset": { + "author_account_age_days": 3679, + "last_update": "2025-07-10 12:51:34", + "stars": 5 + }, + "https://github.com/quasiblob/ComfyUI-EsesImageResize": { + "author_account_age_days": 3679, + "last_update": "2025-07-10 13:00:29", + "stars": 32 + }, + "https://github.com/quasiblob/ComfyUI-EsesImageTransform": { + "author_account_age_days": 3679, + "last_update": "2025-07-02 13:29:30", + "stars": 8 + }, + "https://github.com/quasiblob/EsesCompositionGoldenRatio": { + "author_account_age_days": 3679, + "last_update": "2025-06-30 10:15:22", + "stars": 12 + }, + "https://github.com/qwixiwp/queuetools": { + "author_account_age_days": 1002, + "last_update": "2024-06-14 10:27:57", + "stars": 0 + }, + "https://github.com/r-vage/ComfyUI-RvTools_v2": { + "author_account_age_days": 63, + "last_update": "2025-07-17 16:01:51", + "stars": 5 + }, + "https://github.com/r3dial/redial-discomphy": { + "author_account_age_days": 823, + "last_update": "2025-01-09 19:59:31", + "stars": 1 + }, + "https://github.com/r3dsd/comfyui-template-loader": { + "author_account_age_days": 532, + "last_update": "2025-01-12 08:55:49", + "stars": 0 + }, + "https://github.com/raindrop313/ComfyUI-WanVideoStartEndFrames": { + "author_account_age_days": 1457, + "last_update": "2025-03-22 09:59:11", + "stars": 362 + }, + "https://github.com/raindrop313/ComfyUI_SD3_Flowedit": { + "author_account_age_days": 1457, + "last_update": "2025-02-06 19:02:52", + "stars": 6 + }, + "https://github.com/rainlizard/ComfyUI-Raffle": { + "author_account_age_days": 3554, + "last_update": "2025-06-30 02:29:42", + "stars": 5 + }, + "https://github.com/rakki194/ComfyUI-ImageCompare": { + "author_account_age_days": 169, + "last_update": "2025-05-05 21:00:58", + "stars": 0 + }, + "https://github.com/ramesh-x90/ComfyUI_pyannote": { + "author_account_age_days": 1713, + "last_update": "2024-11-23 09:42:16", + "stars": 3 + }, + "https://github.com/ramyma/A8R8_ComfyUI_nodes": { + "author_account_age_days": 3608, + "last_update": "2024-12-09 16:06:25", + "stars": 63 + }, + "https://github.com/randjtw/advance-aesthetic-score": { + "author_account_age_days": 1152, + "last_update": "2024-05-23 01:14:47", + "stars": 0 + }, + "https://github.com/randomnoner11/ComfyUI-MistralAI-API": { + "author_account_age_days": 210, + "last_update": "2025-04-07 17:34:06", + "stars": 1 + }, + "https://github.com/ratulrafsan/Comfyui-SAL-VTON": { + "author_account_age_days": 4885, + "last_update": "2024-08-26 09:52:06", + "stars": 86 + }, + "https://github.com/raykindle/ComfyUI_Step1X-Edit": { + "author_account_age_days": 2314, + "last_update": "2025-05-06 02:01:37", + "stars": 48 + }, + "https://github.com/raysers/Mflux-ComfyUI": { + "author_account_age_days": 2396, + "last_update": "2025-03-09 21:14:27", + "stars": 100 + }, + "https://github.com/rcfcu2000/zhihuige-nodes-comfyui": { + "author_account_age_days": 3816, + "last_update": "2024-05-22 22:13:55", + "stars": 1 + }, + "https://github.com/rcsaquino/comfyui-custom-nodes": { + "author_account_age_days": 1902, + "last_update": "2024-08-26 10:08:29", + "stars": 1 + }, + "https://github.com/rdancer/ComfyUI_Florence2SAM2": { + "author_account_age_days": 6012, + "last_update": "2025-06-30 19:02:35", + "stars": 40 + }, + "https://github.com/rdomunky/comfyui-subfolderimageloader": { + "author_account_age_days": 3715, + "last_update": "2025-07-20 04:21:48", + "stars": 0 + }, + "https://github.com/reallusion/ComfyUI-Reallusion": { + "author_account_age_days": 2452, + "last_update": "2025-07-10 09:19:10", + "stars": 0 + }, + "https://github.com/receyuki/comfyui-prompt-reader-node": { + "author_account_age_days": 2984, + "last_update": "2025-02-01 15:56:44", + "stars": 370 + }, + "https://github.com/recraft-ai/ComfyUI-RecraftAI": { + "author_account_age_days": 1114, + "last_update": "2025-06-04 11:33:13", + "stars": 62 + }, + "https://github.com/redhottensors/ComfyUI-Prediction": { + "author_account_age_days": 530, + "last_update": "2024-07-14 21:19:01", + "stars": 14 + }, + "https://github.com/regiellis/ComfyUI-EasyColorCorrector": { + "author_account_age_days": 5018, + "last_update": "2025-06-30 16:50:28", + "stars": 79 + }, + "https://github.com/regiellis/ComfyUI-EasyNoobai": { + "author_account_age_days": 5018, + "last_update": "2025-05-12 14:17:10", + "stars": 30 + }, + "https://github.com/regiellis/ComfyUI-EasyPony": { + "author_account_age_days": 5018, + "last_update": "2025-04-05 15:15:29", + "stars": 9 + }, + "https://github.com/replicate/comfyui-replicate": { + "author_account_age_days": 1999, + "last_update": "2024-11-05 15:26:20", + "stars": 187 + }, + "https://github.com/revirevy/Comfyui_saveimage_imgbb": { + "author_account_age_days": 4876, + "last_update": "2025-04-23 10:49:48", + "stars": 1 + }, + "https://github.com/rgthree/rgthree-comfy": { + "author_account_age_days": 5366, + "last_update": "2025-07-12 03:03:33", + "stars": 2054 + }, + "https://github.com/rhdunn/comfyui-audio-processing": { + "author_account_age_days": 6028, + "last_update": "2024-08-22 19:11:01", + "stars": 10 + }, + "https://github.com/rhdunn/comfyui-bus-plugin": { + "author_account_age_days": 6028, + "last_update": "2024-08-22 19:00:56", + "stars": 2 + }, + "https://github.com/rhplus0831/ComfyMepi": { + "author_account_age_days": 544, + "last_update": "2025-04-12 22:59:21", + "stars": 0 + }, + "https://github.com/richinsley/Comfy-LFO": { + "author_account_age_days": 3072, + "last_update": "2024-05-22 20:46:30", + "stars": 5 + }, + "https://github.com/ricklove/comfyui-ricklove": { + "author_account_age_days": 5224, + "last_update": "2024-10-05 03:12:28", + "stars": 1 + }, + "https://github.com/rickyars/comfyui-llm-tile": { + "author_account_age_days": 4595, + "last_update": "2025-06-25 11:56:15", + "stars": 1 + }, + "https://github.com/risunobushi/ComfyUI-Similarity-Score": { + "author_account_age_days": 1038, + "last_update": "2025-01-03 15:27:06", + "stars": 4 + }, + "https://github.com/risunobushi/ComfyUI_DisplacementMapTools": { + "author_account_age_days": 1038, + "last_update": "2025-01-29 18:06:41", + "stars": 3 + }, + "https://github.com/risunobushi/ComfyUI_sm4ll-Wrapper": { + "author_account_age_days": 1038, + "last_update": "2025-07-04 08:52:22", + "stars": 11 + }, + "https://github.com/risunobushi/comfyUI_FrequencySeparation_RGB-HSV": { + "author_account_age_days": 1038, + "last_update": "2024-06-14 10:28:04", + "stars": 35 + }, + "https://github.com/rkfg/ComfyUI-Dia_tts": { + "author_account_age_days": 5663, + "last_update": "2025-04-27 15:58:21", + "stars": 0 + }, + "https://github.com/rnbwdsh/ComfyUI-LatentWalk": { + "author_account_age_days": 3938, + "last_update": "2024-08-20 22:39:19", + "stars": 13 + }, + "https://github.com/robertvoy/ComfyUI-Distributed": { + "author_account_age_days": 4496, + "last_update": "2025-07-19 11:47:49", + "stars": 169 + }, + "https://github.com/robertvoy/ComfyUI-Flux-Continuum": { + "author_account_age_days": 4496, + "last_update": "2025-07-09 21:52:11", + "stars": 210 + }, + "https://github.com/robin-collins/ComfyUI-TechsToolz": { + "author_account_age_days": 1515, + "last_update": "2025-06-20 00:25:39", + "stars": 0 + }, + "https://github.com/robtl2/ComfyUI-ComfyBridge": { + "author_account_age_days": 843, + "last_update": "2024-11-18 23:28:13", + "stars": 0 + }, + "https://github.com/rohitsainier/ComfyUI-InstagramDownloader": { + "author_account_age_days": 3545, + "last_update": "2025-01-02 08:47:22", + "stars": 18 + }, + "https://github.com/romeobuilderotti/ComfyUI-PNG-Metadata": { + "author_account_age_days": 682, + "last_update": "2024-05-22 21:29:25", + "stars": 7 + }, + "https://github.com/ronaldzgithub/ComfyUI_Appstore": { + "author_account_age_days": 2701, + "last_update": "2024-12-04 15:02:42", + "stars": 5 + }, + "https://github.com/ronniebasak/ComfyUI-Tara-LLM-Integration": { + "author_account_age_days": 4546, + "last_update": "2024-11-18 05:08:11", + "stars": 107 + }, + "https://github.com/ronsantash/Comfyui-flexi-lora-loader": { + "author_account_age_days": 1409, + "last_update": "2025-01-12 11:57:27", + "stars": 8 + }, + "https://github.com/rookiepsi/comfypsi_blur_mask": { + "author_account_age_days": 148, + "last_update": "2025-06-25 15:13:33", + "stars": 0 + }, + "https://github.com/rookiepsi/comfyui-extended": { + "author_account_age_days": 148, + "last_update": "2025-06-22 13:42:26", + "stars": 2 + }, + "https://github.com/roundyyy/ComfyUI-mesh-simplifier": { + "author_account_age_days": 1319, + "last_update": "2025-03-09 23:39:24", + "stars": 6 + }, + "https://github.com/royceschultz/ComfyUI-Notifications": { + "author_account_age_days": 2921, + "last_update": "2025-07-07 23:30:54", + "stars": 15 + }, + "https://github.com/royceschultz/ComfyUI-TranscriptionTools": { + "author_account_age_days": 2921, + "last_update": "2025-04-23 00:52:31", + "stars": 22 + }, + "https://github.com/rubi-du/ComfyUI-BiRefNet-Super": { + "author_account_age_days": 573, + "last_update": "2025-05-21 02:21:09", + "stars": 10 + }, + "https://github.com/rubi-du/ComfyUI-Flux-Inpainting": { + "author_account_age_days": 573, + "last_update": "2025-05-14 06:09:10", + "stars": 37 + }, + "https://github.com/rubi-du/ComfyUI-ICC-nodes": { + "author_account_age_days": 573, + "last_update": "2025-05-14 06:10:11", + "stars": 2 + }, + "https://github.com/rubi-du/ComfyUI-MaskEditor-Extension": { + "author_account_age_days": 573, + "last_update": "2025-05-14 06:09:43", + "stars": 8 + }, + "https://github.com/rui40000/RUI-Nodes": { + "author_account_age_days": 865, + "last_update": "2024-05-22 22:12:26", + "stars": 16 + }, + "https://github.com/ruiqutech/ComfyUI-RuiquNodes": { + "author_account_age_days": 461, + "last_update": "2024-05-23 01:21:50", + "stars": 0 + }, + "https://github.com/runtime44/comfyui_r44_nodes": { + "author_account_age_days": 559, + "last_update": "2024-07-01 08:02:04", + "stars": 41 + }, + "https://github.com/ruucm/ruucm-comfy": { + "author_account_age_days": 2812, + "last_update": "2025-04-21 15:20:57", + "stars": 2 + }, + "https://github.com/ryanontheinside/ComfyUI-DeepLiveCam": { + "author_account_age_days": 4081, + "last_update": "2025-05-26 14:26:57", + "stars": 10 + }, + "https://github.com/ryanontheinside/ComfyUI_ControlFreak": { + "author_account_age_days": 4081, + "last_update": "2025-04-13 23:18:36", + "stars": 16 + }, + "https://github.com/ryanontheinside/ComfyUI_Doom": { + "author_account_age_days": 4081, + "last_update": "2024-11-08 17:58:21", + "stars": 5 + }, + "https://github.com/ryanontheinside/ComfyUI_EfficientTAM": { + "author_account_age_days": 4081, + "last_update": "2024-12-21 20:25:05", + "stars": 3 + }, + "https://github.com/ryanontheinside/ComfyUI_ProfilerX": { + "author_account_age_days": 4081, + "last_update": "2025-05-27 22:10:23", + "stars": 60 + }, + "https://github.com/ryanontheinside/ComfyUI_RealtimeNodes": { + "author_account_age_days": 4081, + "last_update": "2025-06-19 14:20:29", + "stars": 59 + }, + "https://github.com/ryanontheinside/ComfyUI_RyanOnTheInside": { + "author_account_age_days": 4081, + "last_update": "2025-06-01 22:34:26", + "stars": 535 + }, + "https://github.com/ryanontheinside/ComfyUI_SuperResolution": { + "author_account_age_days": 4081, + "last_update": "2025-04-07 17:53:16", + "stars": 8 + }, + "https://github.com/s9roll7/comfyui_cotracker_node": { + "author_account_age_days": 976, + "last_update": "2025-06-24 11:30:06", + "stars": 14 + }, + "https://github.com/saftle/uber_comfy_nodes": { + "author_account_age_days": 5149, + "last_update": "2024-08-24 02:42:40", + "stars": 1 + }, + "https://github.com/sakura1bgx/ComfyUI_FlipStreamViewer": { + "author_account_age_days": 329, + "last_update": "2025-07-05 01:32:50", + "stars": 5 + }, + "https://github.com/sanbuphy/ComfyUI-AudioLDM": { + "author_account_age_days": 1313, + "last_update": "2025-01-02 02:01:12", + "stars": 0 + }, + "https://github.com/santiagosamuel3455/ComfyUI-GeminiImageToPrompt": { + "author_account_age_days": 342, + "last_update": "2025-05-04 04:58:56", + "stars": 1 + }, + "https://github.com/scraed/LanPaint": { + "author_account_age_days": 3854, + "last_update": "2025-06-21 06:19:09", + "stars": 385 + }, + "https://github.com/sdfxai/SDFXBridgeForComfyUI": { + "author_account_age_days": 626, + "last_update": "2024-06-14 10:26:56", + "stars": 11 + }, + "https://github.com/sdtana/ComfyUI-FDG": { + "author_account_age_days": 1596, + "last_update": "2025-06-28 06:48:07", + "stars": 4 + }, + "https://github.com/seanjang990/comfyui-document-auto-crop": { + "author_account_age_days": 725, + "last_update": "2025-07-16 03:59:22", + "stars": 0 + }, + "https://github.com/seanlynch/comfyui-optical-flow": { + "author_account_age_days": 5696, + "last_update": "2024-05-22 20:52:17", + "stars": 32 + }, + "https://github.com/seanlynch/srl-nodes": { + "author_account_age_days": 5696, + "last_update": "2024-06-30 13:47:38", + "stars": 8 + }, + "https://github.com/sebord/ComfyUI-LMCQ": { + "author_account_age_days": 1178, + "last_update": "2025-07-03 13:05:08", + "stars": 73 + }, + "https://github.com/sergekatzmann/ComfyUI_Nimbus-Pack": { + "author_account_age_days": 3724, + "last_update": "2024-05-22 21:34:15", + "stars": 4 + }, + "https://github.com/set-soft/AudioSeparation": { + "author_account_age_days": 3202, + "last_update": "2025-07-20 22:18:08", + "stars": 4 + }, + "https://github.com/set-soft/ComfyUI-AudioBatch": { + "author_account_age_days": 3202, + "last_update": "2025-07-20 21:14:57", + "stars": 1 + }, + "https://github.com/sh570655308/ComfyUI-GigapixelAI": { + "author_account_age_days": 2893, + "last_update": "2025-01-15 05:16:31", + "stars": 152 + }, + "https://github.com/sh570655308/ComfyUI-TopazVideoAI": { + "author_account_age_days": 2893, + "last_update": "2025-04-23 08:54:20", + "stars": 220 + }, + "https://github.com/shabri-arrahim/ComfyUI-Safety-Checker": { + "author_account_age_days": 2161, + "last_update": "2025-01-23 05:46:33", + "stars": 1 + }, + "https://github.com/shadowcz007/comfyui-Image-reward": { + "author_account_age_days": 3706, + "last_update": "2024-06-14 10:24:49", + "stars": 31 + }, + "https://github.com/shadowcz007/comfyui-consistency-decoder": { + "author_account_age_days": 3706, + "last_update": "2024-06-14 10:23:35", + "stars": 2 + }, + "https://github.com/shadowcz007/comfyui-edit-mask": { + "author_account_age_days": 3706, + "last_update": "2024-06-20 01:42:48", + "stars": 6 + }, + "https://github.com/shadowcz007/comfyui-liveportrait": { + "author_account_age_days": 2434, + "last_update": "2024-09-01 10:34:41", + "stars": 461 + }, + "https://github.com/shadowcz007/comfyui-mixlab-nodes": { + "author_account_age_days": 2434, + "last_update": "2025-02-05 10:24:45", + "stars": 1662 + }, + "https://github.com/shadowcz007/comfyui-sound-lab": { + "author_account_age_days": 2434, + "last_update": "2024-07-04 12:53:38", + "stars": 122 + }, + "https://github.com/shadowcz007/comfyui-try-on": { + "author_account_age_days": 2434, + "last_update": "2024-08-15 10:50:22", + "stars": 13 + }, + "https://github.com/shadowcz007/comfyui-ultralytics-yolo": { + "author_account_age_days": 3706, + "last_update": "2024-06-22 09:06:04", + "stars": 34 + }, + "https://github.com/shahkoorosh/ComfyUI-KGnodes": { + "author_account_age_days": 584, + "last_update": "2025-05-23 17:41:55", + "stars": 4 + }, + "https://github.com/shahkoorosh/ComfyUI-PersianText": { + "author_account_age_days": 584, + "last_update": "2025-05-23 17:43:33", + "stars": 19 + }, + "https://github.com/shenduldh/ComfyUI-Lightning": { + "author_account_age_days": 2509, + "last_update": "2025-03-13 05:58:04", + "stars": 209 + }, + "https://github.com/shi3z/ComfyUI_Memeplex_DALLE": { + "author_account_age_days": 5484, + "last_update": "2024-05-23 00:14:25", + "stars": 2 + }, + "https://github.com/shiertier/ComfyUI-TeaCache-lumina2": { + "author_account_age_days": 1412, + "last_update": "2025-06-03 10:09:06", + "stars": 1 + }, + "https://github.com/shiimizu/ComfyUI-PhotoMaker-Plus": { + "author_account_age_days": 2156, + "last_update": "2024-12-01 18:40:16", + "stars": 286 + }, + "https://github.com/shiimizu/ComfyUI-TiledDiffusion": { + "author_account_age_days": 2156, + "last_update": "2025-03-18 19:50:35", + "stars": 462 + }, + "https://github.com/shiimizu/ComfyUI-semantic-aware-guidance": { + "author_account_age_days": 2156, + "last_update": "2024-08-08 19:59:57", + "stars": 12 + }, + "https://github.com/shiimizu/ComfyUI_smZNodes": { + "author_account_age_days": 2156, + "last_update": "2025-06-04 15:26:05", + "stars": 282 + }, + "https://github.com/shingo1228/ComfyUI-SDXL-EmptyLatentImage": { + "author_account_age_days": 2614, + "last_update": "2024-05-22 20:41:29", + "stars": 36 + }, + "https://github.com/shingo1228/ComfyUI-send-eagle-slim": { + "author_account_age_days": 2614, + "last_update": "2024-07-30 22:28:41", + "stars": 36 + }, + "https://github.com/shinich39/comfyui-break-workflow": { + "author_account_age_days": 704, + "last_update": "2025-05-25 10:20:20", + "stars": 1 + }, + "https://github.com/shinich39/comfyui-civitai-workflow": { + "author_account_age_days": 704, + "last_update": "2025-06-11 16:47:58", + "stars": 0 + }, + "https://github.com/shinich39/comfyui-dynamic-routes": { + "author_account_age_days": 704, + "last_update": "2025-05-25 10:17:05", + "stars": 5 + }, + "https://github.com/shinich39/comfyui-get-meta": { + "author_account_age_days": 704, + "last_update": "2025-05-25 10:17:48", + "stars": 7 + }, + "https://github.com/shinich39/comfyui-innnnnpaint": { + "author_account_age_days": 704, + "last_update": "2025-05-25 10:18:06", + "stars": 0 + }, + "https://github.com/shinich39/comfyui-no-one-above-me": { + "author_account_age_days": 704, + "last_update": "2025-05-25 10:19:33", + "stars": 0 + }, + "https://github.com/shinich39/comfyui-prevent-sleep": { + "author_account_age_days": 704, + "last_update": "2025-05-25 10:18:45", + "stars": 1 + }, + "https://github.com/shobhitic/ComfyUI-PlusMinusTextClip": { + "author_account_age_days": 4699, + "last_update": "2024-06-20 13:57:29", + "stars": 3 + }, + "https://github.com/shockz0rz/comfy-easy-grids": { + "author_account_age_days": 2017, + "last_update": "2024-05-22 18:14:05", + "stars": 24 + }, + "https://github.com/siliconflow/BizyAir": { + "author_account_age_days": 697, + "last_update": "2025-07-07 07:09:57", + "stars": 732 + }, + "https://github.com/siliconflow/onediff_comfy_nodes": { + "author_account_age_days": 697, + "last_update": "2024-06-24 10:08:11", + "stars": 23 + }, + "https://github.com/silveroxides/ComfyUI-ModelUtils": { + "author_account_age_days": 1892, + "last_update": "2025-05-20 15:08:21", + "stars": 1 + }, + "https://github.com/silveroxides/ComfyUI-RR-JointTagger": { + "author_account_age_days": 1892, + "last_update": "2025-07-20 16:27:07", + "stars": 2 + }, + "https://github.com/silveroxides/ComfyUI_EmbeddingToolkit": { + "author_account_age_days": 1892, + "last_update": "2025-06-16 14:18:31", + "stars": 7 + }, + "https://github.com/silveroxides/ComfyUI_FDGuidance": { + "author_account_age_days": 1893, + "last_update": "2025-07-18 06:44:41", + "stars": 1 + }, + "https://github.com/silveroxides/ComfyUI_PowerShiftScheduler": { + "author_account_age_days": 1893, + "last_update": "2025-07-11 19:55:02", + "stars": 5 + }, + "https://github.com/silveroxides/ComfyUI_SigmoidOffsetScheduler": { + "author_account_age_days": 1892, + "last_update": "2025-05-11 19:44:35", + "stars": 9 + }, + "https://github.com/silveroxides/ComfyUI_bnb_nf4_fp4_Loaders": { + "author_account_age_days": 1892, + "last_update": "2025-04-28 01:08:43", + "stars": 37 + }, + "https://github.com/sipherxyz/comfyui-art-venture": { + "author_account_age_days": 1498, + "last_update": "2025-07-14 08:23:24", + "stars": 286 + }, + "https://github.com/sipie800/ComfyUI-PuLID-Flux-Enhanced": { + "author_account_age_days": 2518, + "last_update": "2025-02-07 15:04:47", + "stars": 211 + }, + "https://github.com/sittere/ComfyUI-YK_Line-loading": { + "author_account_age_days": 1269, + "last_update": "2025-03-02 09:10:54", + "stars": 2 + }, + "https://github.com/sjh00/ComfyUI-LoadImageWithInfo": { + "author_account_age_days": 4154, + "last_update": "2025-06-05 15:46:52", + "stars": 2 + }, + "https://github.com/skayka/ComfyUI-DreamFit": { + "author_account_age_days": 4134, + "last_update": "2025-07-17 22:44:31", + "stars": 1 + }, + "https://github.com/skfoo/ComfyUI-Coziness": { + "author_account_age_days": 2473, + "last_update": "2024-08-16 03:10:43", + "stars": 31 + }, + "https://github.com/skycoder182/comfyui-filename-tools": { + "author_account_age_days": 61, + "last_update": "2025-05-20 18:06:04", + "stars": 0 + }, + "https://github.com/skycoder182/comfyui-skycoder-tools": { + "author_account_age_days": 61, + "last_update": "2025-06-08 12:26:41", + "stars": 1 + }, + "https://github.com/slvslvslv/ComfyUI-SmartHelperNodes": { + "author_account_age_days": 369, + "last_update": "2025-05-06 15:48:22", + "stars": 2 + }, + "https://github.com/slvslvslv/ComfyUI-SmartImageTools": { + "author_account_age_days": 369, + "last_update": "2025-05-03 12:46:43", + "stars": 0 + }, + "https://github.com/slyt/comfyui-ollama-nodes": { + "author_account_age_days": 4331, + "last_update": "2024-07-31 13:52:27", + "stars": 0 + }, + "https://github.com/sm079/ComfyUI-Face-Detection": { + "author_account_age_days": 2076, + "last_update": "2025-06-03 14:37:55", + "stars": 0 + }, + "https://github.com/smagnetize/kb-comfyui-nodes": { + "author_account_age_days": 3106, + "last_update": "2024-06-14 12:00:45", + "stars": 0 + }, + "https://github.com/smlbiobot/ComfyUI-Flux-Replicate-API": { + "author_account_age_days": 3113, + "last_update": "2024-12-26 16:21:00", + "stars": 23 + }, + "https://github.com/smlbiobot/sml-comfyui-prompt-expansion": { + "author_account_age_days": 3113, + "last_update": "2025-01-27 13:33:49", + "stars": 13 + }, + "https://github.com/smthemex/ComfyUI_AniCrafter": { + "author_account_age_days": 746, + "last_update": "2025-07-19 14:04:26", + "stars": 20 + }, + "https://github.com/smthemex/ComfyUI_AnyDoor": { + "author_account_age_days": 745, + "last_update": "2025-02-05 04:01:50", + "stars": 64 + }, + "https://github.com/smthemex/ComfyUI_CSD_MT": { + "author_account_age_days": 745, + "last_update": "2025-02-06 04:30:50", + "stars": 18 + }, + "https://github.com/smthemex/ComfyUI_CSGO_Wrapper": { + "author_account_age_days": 745, + "last_update": "2024-09-07 06:13:48", + "stars": 16 + }, + "https://github.com/smthemex/ComfyUI_ChatGLM_API": { + "author_account_age_days": 745, + "last_update": "2024-07-31 13:53:41", + "stars": 23 + }, + "https://github.com/smthemex/ComfyUI_CustomNet": { + "author_account_age_days": 745, + "last_update": "2024-08-11 08:58:37", + "stars": 10 + }, + "https://github.com/smthemex/ComfyUI_DICE_Talk": { + "author_account_age_days": 745, + "last_update": "2025-05-07 07:47:06", + "stars": 25 + }, + "https://github.com/smthemex/ComfyUI_DeepFakeDefenders": { + "author_account_age_days": 745, + "last_update": "2024-09-14 00:17:59", + "stars": 42 + }, + "https://github.com/smthemex/ComfyUI_Demucs": { + "author_account_age_days": 745, + "last_update": "2025-03-12 05:22:24", + "stars": 8 + }, + "https://github.com/smthemex/ComfyUI_Diffree": { + "author_account_age_days": 745, + "last_update": "2025-03-09 01:16:33", + "stars": 32 + }, + "https://github.com/smthemex/ComfyUI_DiffuEraser": { + "author_account_age_days": 745, + "last_update": "2025-07-17 13:14:09", + "stars": 171 + }, + "https://github.com/smthemex/ComfyUI_EchoMimic": { + "author_account_age_days": 745, + "last_update": "2025-04-05 12:23:33", + "stars": 639 + }, + "https://github.com/smthemex/ComfyUI_Face_Anon_Simple": { + "author_account_age_days": 745, + "last_update": "2025-03-12 05:22:03", + "stars": 17 + }, + "https://github.com/smthemex/ComfyUI_FoleyCrafter": { + "author_account_age_days": 745, + "last_update": "2025-05-29 11:42:48", + "stars": 61 + }, + "https://github.com/smthemex/ComfyUI_FollowYourEmoji": { + "author_account_age_days": 745, + "last_update": "2025-04-11 13:45:15", + "stars": 16 + }, + "https://github.com/smthemex/ComfyUI_Hallo2": { + "author_account_age_days": 745, + "last_update": "2025-03-12 05:22:46", + "stars": 74 + }, + "https://github.com/smthemex/ComfyUI_HiDiffusion_Pro": { + "author_account_age_days": 745, + "last_update": "2025-01-13 03:29:50", + "stars": 52 + }, + "https://github.com/smthemex/ComfyUI_HunyuanAvatar_Sm": { + "author_account_age_days": 745, + "last_update": "2025-06-24 13:06:34", + "stars": 73 + }, + "https://github.com/smthemex/ComfyUI_ID_Animator": { + "author_account_age_days": 745, + "last_update": "2024-07-31 13:53:27", + "stars": 24 + }, + "https://github.com/smthemex/ComfyUI_InstantIR_Wrapper": { + "author_account_age_days": 745, + "last_update": "2025-03-12 05:22:14", + "stars": 238 + }, + "https://github.com/smthemex/ComfyUI_KV_Edit": { + "author_account_age_days": 745, + "last_update": "2025-05-24 00:35:59", + "stars": 58 + }, + "https://github.com/smthemex/ComfyUI_Light_A_Video": { + "author_account_age_days": 745, + "last_update": "2025-04-10 01:05:56", + "stars": 83 + }, + "https://github.com/smthemex/ComfyUI_Llama3_8B": { + "author_account_age_days": 745, + "last_update": "2024-06-25 00:49:01", + "stars": 26 + }, + "https://github.com/smthemex/ComfyUI_MS_Diffusion": { + "author_account_age_days": 745, + "last_update": "2024-09-10 09:50:19", + "stars": 58 + }, + "https://github.com/smthemex/ComfyUI_MangaNinjia": { + "author_account_age_days": 745, + "last_update": "2025-04-09 14:21:57", + "stars": 55 + }, + "https://github.com/smthemex/ComfyUI_MooER": { + "author_account_age_days": 745, + "last_update": "2025-03-09 01:15:38", + "stars": 5 + }, + "https://github.com/smthemex/ComfyUI_OmniParser": { + "author_account_age_days": 745, + "last_update": "2025-03-12 05:22:34", + "stars": 39 + }, + "https://github.com/smthemex/ComfyUI_PBR_Maker": { + "author_account_age_days": 745, + "last_update": "2025-03-12 05:21:53", + "stars": 13 + }, + "https://github.com/smthemex/ComfyUI_ParlerTTS": { + "author_account_age_days": 745, + "last_update": "2025-07-02 09:39:48", + "stars": 44 + }, + "https://github.com/smthemex/ComfyUI_PartPacker": { + "author_account_age_days": 745, + "last_update": "2025-06-25 00:44:53", + "stars": 20 + }, + "https://github.com/smthemex/ComfyUI_Personalize_Anything": { + "author_account_age_days": 745, + "last_update": "2025-03-26 00:38:13", + "stars": 43 + }, + "https://github.com/smthemex/ComfyUI_PhotoDoodle": { + "author_account_age_days": 745, + "last_update": "2025-03-20 08:19:21", + "stars": 97 + }, + "https://github.com/smthemex/ComfyUI_Pic2Story": { + "author_account_age_days": 745, + "last_update": "2024-12-06 12:12:19", + "stars": 9 + }, + "https://github.com/smthemex/ComfyUI_Pipeline_Tool": { + "author_account_age_days": 745, + "last_update": "2024-08-05 06:14:57", + "stars": 10 + }, + "https://github.com/smthemex/ComfyUI_Pops": { + "author_account_age_days": 745, + "last_update": "2024-08-12 09:11:49", + "stars": 22 + }, + "https://github.com/smthemex/ComfyUI_SVFR": { + "author_account_age_days": 745, + "last_update": "2025-03-12 05:21:23", + "stars": 93 + }, + "https://github.com/smthemex/ComfyUI_Sapiens": { + "author_account_age_days": 745, + "last_update": "2025-03-12 05:22:59", + "stars": 182 + }, + "https://github.com/smthemex/ComfyUI_SongGeneration": { + "author_account_age_days": 745, + "last_update": "2025-07-19 08:42:59", + "stars": 56 + }, + "https://github.com/smthemex/ComfyUI_Sonic": { + "author_account_age_days": 745, + "last_update": "2025-05-22 00:46:49", + "stars": 1053 + }, + "https://github.com/smthemex/ComfyUI_StableAudio_Open": { + "author_account_age_days": 745, + "last_update": "2024-08-10 03:45:47", + "stars": 30 + }, + "https://github.com/smthemex/ComfyUI_Stable_Makeup": { + "author_account_age_days": 745, + "last_update": "2025-07-03 00:30:45", + "stars": 97 + }, + "https://github.com/smthemex/ComfyUI_StoryDiffusion": { + "author_account_age_days": 745, + "last_update": "2025-06-25 06:23:47", + "stars": 452 + }, + "https://github.com/smthemex/ComfyUI_Streamv2v_Plus": { + "author_account_age_days": 745, + "last_update": "2024-09-06 08:20:59", + "stars": 10 + }, + "https://github.com/smthemex/ComfyUI_TRELLIS": { + "author_account_age_days": 745, + "last_update": "2025-07-08 01:14:45", + "stars": 170 + }, + "https://github.com/smthemex/ComfyUI_VisualCloze": { + "author_account_age_days": 745, + "last_update": "2025-05-21 08:56:45", + "stars": 11 + }, + "https://github.com/smthemex/ComfyUI_YuE": { + "author_account_age_days": 745, + "last_update": "2025-02-24 12:02:41", + "stars": 144 + }, + "https://github.com/sn0w12/ComfyUI-Sn0w-Scripts": { + "author_account_age_days": 1165, + "last_update": "2025-06-30 13:19:32", + "stars": 11 + }, + "https://github.com/sn0w12/ComfyUI-Syntax-Highlighting": { + "author_account_age_days": 1165, + "last_update": "2025-06-30 11:56:55", + "stars": 1 + }, + "https://github.com/sneccc/comfyui-snek-nodes": { + "author_account_age_days": 1959, + "last_update": "2025-06-25 14:25:41", + "stars": 1 + }, + "https://github.com/somesomebody/lorainfo-sidebar": { + "author_account_age_days": 82, + "last_update": "2025-05-31 07:23:03", + "stars": 4 + }, + "https://github.com/souki202/ComfyUI-LoadImage-Advanced": { + "author_account_age_days": 3651, + "last_update": "2025-03-03 03:53:26", + "stars": 1 + }, + "https://github.com/sourceful-official/LoadLoraModelOnlyWithUrl": { + "author_account_age_days": 1874, + "last_update": "2024-12-04 12:14:51", + "stars": 1 + }, + "https://github.com/sousakujikken/ComfyUI-PixydustQuantizer": { + "author_account_age_days": 799, + "last_update": "2025-03-30 15:07:02", + "stars": 29 + }, + "https://github.com/space-nuko/ComfyUI-Disco-Diffusion": { + "author_account_age_days": 3116, + "last_update": "2024-08-07 11:51:17", + "stars": 54 + }, + "https://github.com/space-nuko/ComfyUI-OpenPose-Editor": { + "author_account_age_days": 3116, + "last_update": "2024-05-22 18:10:49", + "stars": 214 + }, + "https://github.com/space-nuko/nui-suite": { + "author_account_age_days": 3116, + "last_update": "2024-05-22 18:11:04", + "stars": 11 + }, + "https://github.com/spacepxl/ComfyUI-Depth-Pro": { + "author_account_age_days": 685, + "last_update": "2024-10-23 20:05:56", + "stars": 187 + }, + "https://github.com/spacepxl/ComfyUI-HQ-Image-Save": { + "author_account_age_days": 685, + "last_update": "2025-01-30 00:12:58", + "stars": 62 + }, + "https://github.com/spacepxl/ComfyUI-Image-Filters": { + "author_account_age_days": 685, + "last_update": "2025-07-20 22:17:11", + "stars": 235 + }, + "https://github.com/spacepxl/ComfyUI-LossTesting": { + "author_account_age_days": 685, + "last_update": "2025-01-26 05:09:57", + "stars": 2 + }, + "https://github.com/spacepxl/ComfyUI-RAVE": { + "author_account_age_days": 685, + "last_update": "2024-05-22 20:56:19", + "stars": 93 + }, + "https://github.com/spacepxl/ComfyUI-StyleGan": { + "author_account_age_days": 685, + "last_update": "2024-06-10 20:16:34", + "stars": 20 + }, + "https://github.com/spawner1145/CUI-Lumina2-TeaCache": { + "author_account_age_days": 329, + "last_update": "2025-07-18 09:15:20", + "stars": 10 + }, + "https://github.com/spawner1145/comfyui-aichat": { + "author_account_age_days": 329, + "last_update": "2025-07-19 17:17:24", + "stars": 2 + }, + "https://github.com/spinagon/ComfyUI-seam-carving": { + "author_account_age_days": 5132, + "last_update": "2025-03-14 08:47:57", + "stars": 23 + }, + "https://github.com/spinagon/ComfyUI-seamless-tiling": { + "author_account_age_days": 5132, + "last_update": "2025-03-14 08:48:11", + "stars": 216 + }, + "https://github.com/spro/comfyui-mirror": { + "author_account_age_days": 5623, + "last_update": "2024-05-22 20:50:25", + "stars": 7 + }, + "https://github.com/ssitu/ComfyUI_UltimateSDUpscale": { + "author_account_age_days": 2080, + "last_update": "2025-07-18 19:54:57", + "stars": 1243 + }, + "https://github.com/ssitu/ComfyUI_fabric": { + "author_account_age_days": 2080, + "last_update": "2024-05-22 18:10:19", + "stars": 93 + }, + "https://github.com/ssitu/ComfyUI_restart_sampling": { + "author_account_age_days": 2080, + "last_update": "2024-05-22 18:09:49", + "stars": 89 + }, + "https://github.com/ssitu/ComfyUI_roop": { + "author_account_age_days": 2080, + "last_update": "2024-05-22 18:10:03", + "stars": 77 + }, + "https://github.com/stavsap/comfyui-downloader": { + "author_account_age_days": 4475, + "last_update": "2025-06-22 20:44:33", + "stars": 0 + }, + "https://github.com/stavsap/comfyui-kokoro": { + "author_account_age_days": 4475, + "last_update": "2025-05-17 13:23:49", + "stars": 53 + }, + "https://github.com/stavsap/comfyui-ollama": { + "author_account_age_days": 4475, + "last_update": "2025-07-14 20:19:16", + "stars": 590 + }, + "https://github.com/stepfun-ai/ComfyUI-StepVideo": { + "author_account_age_days": 344, + "last_update": "2025-03-27 07:52:26", + "stars": 40 + }, + "https://github.com/stevenwg/ComfyUI-VideoGrid": { + "author_account_age_days": 3690, + "last_update": "2025-05-26 06:51:21", + "stars": 0 + }, + "https://github.com/stormcenter/ComfyUI-AutoSplitGridImage": { + "author_account_age_days": 4519, + "last_update": "2025-01-06 12:02:58", + "stars": 33 + }, + "https://github.com/stormcenter/ComfyUI-LivePhotoCreator": { + "author_account_age_days": 4519, + "last_update": "2025-01-06 12:03:42", + "stars": 27 + }, + "https://github.com/stormcenter/ComfyUI-SVGFullfill": { + "author_account_age_days": 4519, + "last_update": "2025-01-06 12:04:18", + "stars": 11 + }, + "https://github.com/storyicon/comfyui_musev_evolved": { + "author_account_age_days": 2943, + "last_update": "2024-06-14 11:02:40", + "stars": 26 + }, + "https://github.com/storyicon/comfyui_segment_anything": { + "author_account_age_days": 2943, + "last_update": "2024-07-12 10:17:33", + "stars": 986 + }, + "https://github.com/strand1/ComfyUI-Autogen": { + "author_account_age_days": 4863, + "last_update": "2025-01-21 05:10:43", + "stars": 3 + }, + "https://github.com/strawberryPunch/vram_optimizer": { + "author_account_age_days": 685, + "last_update": "2025-07-18 13:34:28", + "stars": 2 + }, + "https://github.com/strimmlarn/ComfyUI-Strimmlarns-Aesthetic-Score": { + "author_account_age_days": 3018, + "last_update": "2024-06-17 10:01:44", + "stars": 34 + }, + "https://github.com/styler00dollar/ComfyUI-deepcache": { + "author_account_age_days": 2237, + "last_update": "2024-05-22 22:18:18", + "stars": 11 + }, + "https://github.com/styler00dollar/ComfyUI-sudo-latent-upscale": { + "author_account_age_days": 2237, + "last_update": "2024-05-22 22:18:07", + "stars": 39 + }, + "https://github.com/subtleGradient/TinkerBot-tech-for-ComfyUI-Touchpad": { + "author_account_age_days": 6322, + "last_update": "2024-08-16 01:18:03", + "stars": 40 + }, + "https://github.com/sugarkwork/ComfyUI_AspectRatioToSize": { + "author_account_age_days": 1267, + "last_update": "2025-06-04 00:48:13", + "stars": 2 + }, + "https://github.com/sugarkwork/comfyui-trtupscaler": { + "author_account_age_days": 1267, + "last_update": "2025-06-11 07:43:10", + "stars": 1 + }, + "https://github.com/sugarkwork/comfyui_cohere": { + "author_account_age_days": 1267, + "last_update": "2025-06-11 04:29:08", + "stars": 1 + }, + "https://github.com/sugarkwork/comfyui_tag_fillter": { + "author_account_age_days": 1267, + "last_update": "2025-07-03 14:49:52", + "stars": 58 + }, + "https://github.com/sunra-ai/comfyui-sunra": { + "author_account_age_days": 144, + "last_update": "2025-07-18 14:28:36", + "stars": 6 + }, + "https://github.com/superyoman/comfyui_lumaAPI": { + "author_account_age_days": 840, + "last_update": "2024-06-17 21:00:05", + "stars": 21 + }, + "https://github.com/surinder83singh/ComfyUI-compare-videos": { + "author_account_age_days": 4908, + "last_update": "2025-05-06 01:30:48", + "stars": 2 + }, + "https://github.com/svetozarov/AS_LLM_nodes": { + "author_account_age_days": 876, + "last_update": "2025-03-23 12:05:43", + "stars": 2 + }, + "https://github.com/sweetndata/ComfyUI-Image-Harmonizer": { + "author_account_age_days": 1123, + "last_update": "2024-11-20 06:10:34", + "stars": 2 + }, + "https://github.com/sweetndata/ComfyUI-googletrans": { + "author_account_age_days": 1123, + "last_update": "2024-11-20 04:53:19", + "stars": 3 + }, + "https://github.com/sweetndata/ComfyUI_Sticker_Compositer": { + "author_account_age_days": 1123, + "last_update": "2025-01-02 06:54:51", + "stars": 1 + }, + "https://github.com/swhsiang/comfyui-3d-gs-renderer": { + "author_account_age_days": 3326, + "last_update": "2025-06-09 03:05:11", + "stars": 1 + }, + "https://github.com/syllebra/bilbox-comfyui": { + "author_account_age_days": 3527, + "last_update": "2024-12-06 23:51:55", + "stars": 132 + }, + "https://github.com/sylym/comfy_vid2vid": { + "author_account_age_days": 2289, + "last_update": "2024-05-22 17:53:40", + "stars": 72 + }, + "https://github.com/synthetai/ComfyUI-JM-KLing-API": { + "author_account_age_days": 342, + "last_update": "2025-06-30 05:57:12", + "stars": 1 + }, + "https://github.com/synthetai/ComfyUI-JM-MiniMax-API": { + "author_account_age_days": 342, + "last_update": "2025-06-24 02:00:05", + "stars": 1 + }, + "https://github.com/synthetai/ComfyUI-JM-Volcengine-API": { + "author_account_age_days": 342, + "last_update": "2025-07-04 03:03:13", + "stars": 0 + }, + "https://github.com/synthetai/ComfyUI-ToolBox": { + "author_account_age_days": 342, + "last_update": "2025-07-17 08:38:25", + "stars": 0 + }, + "https://github.com/synthetai/ComfyUI_FaceEnhancer": { + "author_account_age_days": 342, + "last_update": "2025-04-17 00:34:39", + "stars": 2 + }, + "https://github.com/synthetai/ComfyUI_PromptBatcher": { + "author_account_age_days": 342, + "last_update": "2025-04-14 04:42:03", + "stars": 5 + }, + "https://github.com/sysL-padawan/comfyui-elevenlabs-integration": { + "author_account_age_days": 3000, + "last_update": "2025-07-02 18:58:02", + "stars": 2 + }, + "https://github.com/szhublox/ambw_comfyui": { + "author_account_age_days": 1398, + "last_update": "2024-05-22 18:04:57", + "stars": 15 + }, + "https://github.com/taabata/ComfyCanvas": { + "author_account_age_days": 2074, + "last_update": "2025-07-10 00:40:21", + "stars": 89 + }, + "https://github.com/taabata/LCM_Inpaint_Outpaint_Comfy": { + "author_account_age_days": 2074, + "last_update": "2024-11-18 00:45:28", + "stars": 260 + }, + "https://github.com/taabata/SANA_LOWVRAM": { + "author_account_age_days": 2074, + "last_update": "2024-12-28 01:16:29", + "stars": 5 + }, + "https://github.com/taches-ai/comfyui-scene-composer": { + "author_account_age_days": 298, + "last_update": "2025-05-28 07:30:03", + "stars": 55 + }, + "https://github.com/tachyon-beep/comfyui-simplefeed": { + "author_account_age_days": 5312, + "last_update": "2024-10-16 09:19:29", + "stars": 10 + }, + "https://github.com/takemetosiberia/ComfyUI-SAMURAI--SAM2-": { + "author_account_age_days": 776, + "last_update": "2024-12-01 13:06:02", + "stars": 37 + }, + "https://github.com/talesofai/comfyui-browser": { + "author_account_age_days": 947, + "last_update": "2024-11-11 01:42:30", + "stars": 593 + }, + "https://github.com/tanglaoya321/ComfyUI-StoryMaker": { + "author_account_age_days": 4363, + "last_update": "2024-10-01 01:20:00", + "stars": 17 + }, + "https://github.com/tatookan/comfyui_ssl_gemini_EXP": { + "author_account_age_days": 2122, + "last_update": "2025-03-19 15:54:44", + "stars": 88 + }, + "https://github.com/tavyra/ComfyUI_Curves": { + "author_account_age_days": 2491, + "last_update": "2025-05-08 01:48:55", + "stars": 2 + }, + "https://github.com/tetsuoo-online/comfyui-too-xmp-metadata": { + "author_account_age_days": 2411, + "last_update": "2025-06-07 15:59:26", + "stars": 5 + }, + "https://github.com/teward/Comfy-Sentry": { + "author_account_age_days": 5489, + "last_update": "2024-07-31 21:37:42", + "stars": 1 + }, + "https://github.com/teward/ComfyUI-Helper-Nodes": { + "author_account_age_days": 5489, + "last_update": "2024-05-23 01:22:01", + "stars": 6 + }, + "https://github.com/thalismind/ComfyUI-Blend-Nodes": { + "author_account_age_days": 191, + "last_update": "2025-06-30 00:06:21", + "stars": 0 + }, + "https://github.com/thalismind/ComfyUI-LoadImageWithFilename": { + "author_account_age_days": 191, + "last_update": "2025-07-21 02:59:14", + "stars": 0 + }, + "https://github.com/theAdamColton/ComfyUI-texflow-extension": { + "author_account_age_days": 1747, + "last_update": "2025-01-16 19:58:24", + "stars": 1 + }, + "https://github.com/theUpsider/ComfyUI-Styles_CSV_Loader": { + "author_account_age_days": 3114, + "last_update": "2025-05-16 11:01:23", + "stars": 59 + }, + "https://github.com/thecooltechguy/ComfyUI-ComfyWorkflows": { + "author_account_age_days": 2814, + "last_update": "2024-05-22 21:33:47", + "stars": 70 + }, + "https://github.com/thecooltechguy/ComfyUI-MagicAnimate": { + "author_account_age_days": 2814, + "last_update": "2024-05-22 21:33:35", + "stars": 223 + }, + "https://github.com/thecooltechguy/ComfyUI-Stable-Video-Diffusion": { + "author_account_age_days": 2814, + "last_update": "2024-05-24 22:14:42", + "stars": 362 + }, + "https://github.com/thedivergentai/divergent_nodes": { + "author_account_age_days": 851, + "last_update": "2025-07-16 15:04:50", + "stars": 0 + }, + "https://github.com/theshubzworld/ComfyUI-FaceCalloutNode": { + "author_account_age_days": 362, + "last_update": "2025-05-09 14:38:15", + "stars": 0 + }, + "https://github.com/theshubzworld/ComfyUI-SD3.5-Latent-Size-Picker": { + "author_account_age_days": 362, + "last_update": "2024-12-25 14:09:38", + "stars": 0 + }, + "https://github.com/theshubzworld/ComfyUI-TogetherVision": { + "author_account_age_days": 362, + "last_update": "2025-06-26 18:48:25", + "stars": 4 + }, + "https://github.com/theshubzworld/ComfyUI-ollama_killer": { + "author_account_age_days": 362, + "last_update": "2025-06-09 09:14:55", + "stars": 3 + }, + "https://github.com/thezveroboy/ComfyUI-CSM-Nodes": { + "author_account_age_days": 3605, + "last_update": "2025-03-17 10:08:12", + "stars": 35 + }, + "https://github.com/thezveroboy/ComfyUI-WAN-ClipSkip": { + "author_account_age_days": 3605, + "last_update": "2025-03-16 21:12:54", + "stars": 1 + }, + "https://github.com/thezveroboy/ComfyUI-lut": { + "author_account_age_days": 3605, + "last_update": "2025-05-24 21:37:06", + "stars": 2 + }, + "https://github.com/thezveroboy/ComfyUI_ACE-Step-zveroboy": { + "author_account_age_days": 3605, + "last_update": "2025-05-12 11:01:16", + "stars": 2 + }, + "https://github.com/thezveroboy/comfyui-random-image-loader": { + "author_account_age_days": 3605, + "last_update": "2025-05-11 18:04:32", + "stars": 1 + }, + "https://github.com/thoddnn/ComfyUI-MLX": { + "author_account_age_days": 655, + "last_update": "2024-10-22 06:41:22", + "stars": 150 + }, + "https://github.com/tianguanggliu/Utools": { + "author_account_age_days": 2731, + "last_update": "2024-08-29 09:45:03", + "stars": 0 + }, + "https://github.com/tiankuan93/ComfyUI-V-Express": { + "author_account_age_days": 3341, + "last_update": "2024-06-26 02:41:00", + "stars": 112 + }, + "https://github.com/tianlang0704/ComfyUI-StableProjectorzBridge": { + "author_account_age_days": 3716, + "last_update": "2024-12-01 11:46:58", + "stars": 36 + }, + "https://github.com/tianyuw/ComfyUI-LLM-API": { + "author_account_age_days": 3584, + "last_update": "2025-01-25 19:31:47", + "stars": 6 + }, + "https://github.com/tigeryy2/comfyui-structured-outputs": { + "author_account_age_days": 2362, + "last_update": "2025-07-15 09:46:07", + "stars": 1 + }, + "https://github.com/tighug/comfyui-eagle-feeder": { + "author_account_age_days": 2502, + "last_update": "2025-07-11 15:56:24", + "stars": 0 + }, + "https://github.com/tighug/comfyui-rating-checker": { + "author_account_age_days": 2502, + "last_update": "2025-05-09 14:22:51", + "stars": 1 + }, + "https://github.com/tkreuziger/comfyui-claude": { + "author_account_age_days": 927, + "last_update": "2025-04-10 18:23:35", + "stars": 4 + }, + "https://github.com/tmagara/ComfyUI-Prediction-Boost": { + "author_account_age_days": 4766, + "last_update": "2024-07-31 13:51:19", + "stars": 1 + }, + "https://github.com/tocubed/ComfyUI-AudioReactor": { + "author_account_age_days": 4251, + "last_update": "2024-05-22 22:21:57", + "stars": 8 + }, + "https://github.com/tocubed/ComfyUI-EvTexture": { + "author_account_age_days": 4251, + "last_update": "2025-01-05 23:21:23", + "stars": 15 + }, + "https://github.com/tomudo/ComfyUI-ascii-art": { + "author_account_age_days": 3294, + "last_update": "2024-11-21 05:24:12", + "stars": 3 + }, + "https://github.com/tooldigital/ComfyUI-Yolo-Cropper": { + "author_account_age_days": 4709, + "last_update": "2024-06-14 13:59:48", + "stars": 9 + }, + "https://github.com/toxicwind/ComfyUI-TTools": { + "author_account_age_days": 4761, + "last_update": "2024-07-04 20:07:35", + "stars": 1 + }, + "https://github.com/toyxyz/ComfyUI_rgbx_Wrapper": { + "author_account_age_days": 4041, + "last_update": "2025-04-03 08:17:10", + "stars": 91 + }, + "https://github.com/toyxyz/ComfyUI_toyxyz_test_nodes": { + "author_account_age_days": 4041, + "last_update": "2025-06-10 14:20:31", + "stars": 588 + }, + "https://github.com/traugdor/ComfyUI-Riffusion": { + "author_account_age_days": 4211, + "last_update": "2025-05-30 20:15:05", + "stars": 3 + }, + "https://github.com/traugdor/ComfyUI-UltimateSDUpscale-GGUF": { + "author_account_age_days": 4211, + "last_update": "2025-06-21 15:15:07", + "stars": 13 + }, + "https://github.com/traugdor/ComfyUI-quadMoons-nodes": { + "author_account_age_days": 4211, + "last_update": "2025-06-23 15:18:42", + "stars": 14 + }, + "https://github.com/tritant/ComfyUI-Advanced-Photo-Grain": { + "author_account_age_days": 3532, + "last_update": "2025-07-19 10:51:14", + "stars": 1 + }, + "https://github.com/tritant/ComfyUI_CreaPrompt": { + "author_account_age_days": 3532, + "last_update": "2025-07-18 20:47:42", + "stars": 59 + }, + "https://github.com/tritant/ComfyUI_Flux_Block_Lora_Merger": { + "author_account_age_days": 3532, + "last_update": "2025-07-01 15:26:48", + "stars": 3 + }, + "https://github.com/tritant/ComfyUI_Flux_Lora_Merger": { + "author_account_age_days": 3532, + "last_update": "2025-05-09 04:39:16", + "stars": 2 + }, + "https://github.com/tritant/ComfyUI_Remove_Banding_Artifacts": { + "author_account_age_days": 3532, + "last_update": "2025-07-15 13:21:19", + "stars": 3 + }, + "https://github.com/trojblue/trNodes": { + "author_account_age_days": 2649, + "last_update": "2024-05-22 18:04:36", + "stars": 8 + }, + "https://github.com/troyxmccall/ComfyUI-ScaleToTargetMegapixels": { + "author_account_age_days": 5780, + "last_update": "2024-11-11 00:07:25", + "stars": 1 + }, + "https://github.com/trumanwong/ComfyUI-NSFW-Detection": { + "author_account_age_days": 3351, + "last_update": "2025-04-21 05:38:12", + "stars": 37 + }, + "https://github.com/tsogzark/ComfyUI-load-image-from-url": { + "author_account_age_days": 1920, + "last_update": "2024-06-14 13:59:05", + "stars": 20 + }, + "https://github.com/ttulttul/ComfyUI-Iterative-Mixer": { + "author_account_age_days": 5148, + "last_update": "2025-03-10 03:33:02", + "stars": 117 + }, + "https://github.com/ttulttul/ComfyUI-Tensor-Operations": { + "author_account_age_days": 5148, + "last_update": "2025-02-03 16:57:00", + "stars": 6 + }, + "https://github.com/tungdop2/Comfyui_face_restorer": { + "author_account_age_days": 1815, + "last_update": "2024-11-21 15:53:59", + "stars": 1 + }, + "https://github.com/tungdop2/Comfyui_joy-caption-alpha-two": { + "author_account_age_days": 1815, + "last_update": "2025-04-19 06:00:23", + "stars": 6 + }, + "https://github.com/turkyden/ComfyUI-SmartCrop": { + "author_account_age_days": 3140, + "last_update": "2024-10-08 09:36:34", + "stars": 3 + }, + "https://github.com/tusharbhutt/Endless-Buttons": { + "author_account_age_days": 3057, + "last_update": "2025-07-20 20:02:43", + "stars": 1 + }, + "https://github.com/tusharbhutt/Endless-Nodes": { + "author_account_age_days": 3056, + "last_update": "2025-07-20 14:54:28", + "stars": 49 + }, + "https://github.com/twri/sdxl_prompt_styler": { + "author_account_age_days": 4459, + "last_update": "2024-05-22 18:16:58", + "stars": 862 + }, + "https://github.com/txt2any/ComfyUI-PromptOrganizer": { + "author_account_age_days": 476, + "last_update": "2024-05-23 01:10:33", + "stars": 0 + }, + "https://github.com/ty0x2333/ComfyUI-Dev-Utils": { + "author_account_age_days": 4094, + "last_update": "2025-07-15 02:06:55", + "stars": 140 + }, + "https://github.com/tzwm/comfyui-profiler": { + "author_account_age_days": 5160, + "last_update": "2024-08-28 14:27:12", + "stars": 158 + }, + "https://github.com/uarefans/ComfyUI-Fans": { + "author_account_age_days": 1663, + "last_update": "2024-07-14 15:00:38", + "stars": 17 + }, + "https://github.com/uetuluk/comfyui-webcam-node": { + "author_account_age_days": 2705, + "last_update": "2024-06-14 08:25:13", + "stars": 4 + }, + "https://github.com/uihp/ComfyUI-String-Chain": { + "author_account_age_days": 1429, + "last_update": "2025-04-12 12:22:14", + "stars": 0 + }, + "https://github.com/uinodes/ComfyUI-uinodesDOC": { + "author_account_age_days": 25, + "last_update": "2025-06-26 04:07:59", + "stars": 47 + }, + "https://github.com/umiyuki/comfyui-pad-to-eight": { + "author_account_age_days": 4145, + "last_update": "2025-01-07 09:58:36", + "stars": 0 + }, + "https://github.com/un-seen/comfyui-tensorops": { + "author_account_age_days": 1707, + "last_update": "2024-10-26 00:04:07", + "stars": 28 + }, + "https://github.com/un-seen/comfyui_segment_anything_plus": { + "author_account_age_days": 1707, + "last_update": "2024-07-29 06:21:54", + "stars": 8 + }, + "https://github.com/unicough/comfy_openai_image_api": { + "author_account_age_days": 4101, + "last_update": "2025-05-02 04:24:34", + "stars": 0 + }, + "https://github.com/unwdef/unwdef-nodes-comfyui": { + "author_account_age_days": 465, + "last_update": "2025-03-27 10:42:15", + "stars": 5 + }, + "https://github.com/upseem/comfyui_sun_nodes": { + "author_account_age_days": 892, + "last_update": "2025-07-09 03:37:59", + "stars": 0 + }, + "https://github.com/usrname0/comfyui-holdup": { + "author_account_age_days": 2805, + "last_update": "2025-06-12 07:26:10", + "stars": 1 + }, + "https://github.com/vadimcro/VKRiez-Edge": { + "author_account_age_days": 3027, + "last_update": "2025-03-18 11:18:27", + "stars": 7 + }, + "https://github.com/vahidzxc/va-nodes": { + "author_account_age_days": 383, + "last_update": "2025-03-22 01:50:08", + "stars": 2 + }, + "https://github.com/vahlok-alunmid/ComfyUI-ExtendIPAdapterClipVision": { + "author_account_age_days": 2778, + "last_update": "2025-02-09 04:06:34", + "stars": 12 + }, + "https://github.com/valofey/Openrouter-Node": { + "author_account_age_days": 1775, + "last_update": "2025-02-13 21:26:22", + "stars": 5 + }, + "https://github.com/vanche1212/ComfyUI-ZMG-Nodes": { + "author_account_age_days": 3349, + "last_update": "2024-06-25 04:48:19", + "stars": 3 + }, + "https://github.com/vanillacode314/SimpleWildcardsComfyUI": { + "author_account_age_days": 1248, + "last_update": "2025-04-02 04:56:25", + "stars": 5 + }, + "https://github.com/var1ableX/ComfyUI_Accessories": { + "author_account_age_days": 5155, + "last_update": "2025-02-09 14:31:19", + "stars": 1 + }, + "https://github.com/vault-developer/comfyui-image-blender": { + "author_account_age_days": 3005, + "last_update": "2025-04-02 19:37:15", + "stars": 20 + }, + "https://github.com/veighnsche/comfyui_gr85": { + "author_account_age_days": 3491, + "last_update": "2024-11-26 17:26:48", + "stars": 1 + }, + "https://github.com/vekitan55/SimpleFlux1Merger": { + "author_account_age_days": 722, + "last_update": "2025-04-23 12:09:47", + "stars": 1 + }, + "https://github.com/victorchall/comfyui_webcamcapture": { + "author_account_age_days": 3537, + "last_update": "2025-04-16 20:39:32", + "stars": 14 + }, + "https://github.com/vienteck/ComfyUI-Chat-GPT-Integration": { + "author_account_age_days": 3818, + "last_update": "2024-05-22 22:11:14", + "stars": 31 + }, + "https://github.com/vincentfs/ComfyUI-ArchiGraph": { + "author_account_age_days": 4057, + "last_update": "2025-01-23 17:29:09", + "stars": 2 + }, + "https://github.com/violet-chen/comfyui-psd2png": { + "author_account_age_days": 1789, + "last_update": "2025-06-04 11:41:34", + "stars": 20 + }, + "https://github.com/violet0927/ComfyUI-HuggingFaceLoraUploader": { + "author_account_age_days": 172, + "last_update": "2025-06-03 05:46:11", + "stars": 0 + }, + "https://github.com/viperyl/ComfyUI-RGT": { + "author_account_age_days": 2424, + "last_update": "2024-06-20 15:33:50", + "stars": 8 + }, + "https://github.com/vivax3794/ComfyUI-Sub-Nodes": { + "author_account_age_days": 2230, + "last_update": "2025-02-21 07:03:30", + "stars": 163 + }, + "https://github.com/vivax3794/ComfyUI-Vivax-Nodes": { + "author_account_age_days": 2230, + "last_update": "2024-09-07 18:42:27", + "stars": 3 + }, + "https://github.com/vivi-gomez/ComfyUI-fixnodetranslate": { + "author_account_age_days": 4740, + "last_update": "2025-06-01 08:42:50", + "stars": 0 + }, + "https://github.com/vkff5833/ComfyUI-MobileClient": { + "author_account_age_days": 686, + "last_update": "2025-02-11 00:34:36", + "stars": 4 + }, + "https://github.com/vkff5833/ComfyUI-PromptConverter": { + "author_account_age_days": 686, + "last_update": "2025-01-27 18:35:41", + "stars": 3 + }, + "https://github.com/vladpro3/ComfyUI_BishaNodes": { + "author_account_age_days": 2718, + "last_update": "2025-06-08 19:23:23", + "stars": 1 + }, + "https://github.com/vrgamegirl19/comfyui-vrgamedevgirl": { + "author_account_age_days": 801, + "last_update": "2025-07-05 02:26:53", + "stars": 42 + }, + "https://github.com/vsevolod-oparin/comfyui-kandinsky22": { + "author_account_age_days": 5375, + "last_update": "2025-04-02 03:48:05", + "stars": 10 + }, + "https://github.com/vuongminh1907/ComfyUI_ZenID": { + "author_account_age_days": 963, + "last_update": "2025-07-03 02:15:51", + "stars": 187 + }, + "https://github.com/wTechArtist/ComfyUI-CustomNodes": { + "author_account_age_days": 1752, + "last_update": "2024-08-21 03:03:16", + "stars": 2 + }, + "https://github.com/wTechArtist/ComfyUI-StableDelight-weiweiliang": { + "author_account_age_days": 1752, + "last_update": "2025-03-23 07:52:36", + "stars": 2 + }, + "https://github.com/wTechArtist/ComfyUI_VVL_VideoCamera_Advanced": { + "author_account_age_days": 1752, + "last_update": "2025-06-23 10:08:04", + "stars": 1 + }, + "https://github.com/wakattac/ComfyUI-AbstractImaGen": { + "author_account_age_days": 76, + "last_update": "2025-05-09 22:37:03", + "stars": 1 + }, + "https://github.com/wallish77/wlsh_nodes": { + "author_account_age_days": 2611, + "last_update": "2024-06-19 12:01:29", + "stars": 125 + }, + "https://github.com/wandbrandon/comfyui-pixel": { + "author_account_age_days": 3775, + "last_update": "2024-06-14 07:07:09", + "stars": 4 + }, + "https://github.com/wasilone11/comfyui-pvm-node": { + "author_account_age_days": 2597, + "last_update": "2025-07-21 01:36:01", + "stars": 1 + }, + "https://github.com/wasilone11/comfyui-sync-lipsync-node": { + "author_account_age_days": 2597, + "last_update": "2025-07-18 23:16:47", + "stars": 1 + }, + "https://github.com/waterminer/ComfyUI-tagcomplete": { + "author_account_age_days": 2503, + "last_update": "2025-01-06 00:13:57", + "stars": 11 + }, + "https://github.com/web3nomad/ComfyUI_Invisible_Watermark": { + "author_account_age_days": 1359, + "last_update": "2024-05-23 01:16:54", + "stars": 1 + }, + "https://github.com/webfiltered/DebugNode-ComfyUI": { + "author_account_age_days": 365, + "last_update": "2025-05-06 16:15:33", + "stars": 8 + }, + "https://github.com/webuilder/WB-ComfyUI-Utils": { + "author_account_age_days": 4593, + "last_update": "2025-07-19 15:04:04", + "stars": 0 + }, + "https://github.com/weekii/comfyui-save-image-pro": { + "author_account_age_days": 425, + "last_update": "2025-07-06 13:21:30", + "stars": 0 + }, + "https://github.com/wei30172/comfygen": { + "author_account_age_days": 2004, + "last_update": "2024-11-07 22:10:50", + "stars": 7 + }, + "https://github.com/weilin9999/WeiLin-Comfyui-Tools": { + "author_account_age_days": 2299, + "last_update": "2025-07-11 14:31:28", + "stars": 189 + }, + "https://github.com/welltop-cn/ComfyUI-TeaCache": { + "author_account_age_days": 1963, + "last_update": "2025-07-12 04:05:29", + "stars": 896 + }, + "https://github.com/wentao-uw/ComfyUI-template-matching": { + "author_account_age_days": 2171, + "last_update": "2024-11-06 06:52:30", + "stars": 1 + }, + "https://github.com/westNeighbor/ComfyUI-ultimate-openpose-editor": { + "author_account_age_days": 686, + "last_update": "2025-07-04 20:24:22", + "stars": 66 + }, + "https://github.com/westNeighbor/ComfyUI-ultimate-openpose-estimator": { + "author_account_age_days": 686, + "last_update": "2025-06-03 21:06:33", + "stars": 15 + }, + "https://github.com/westNeighbor/ComfyUI-ultimate-openpose-render": { + "author_account_age_days": 686, + "last_update": "2025-01-25 05:54:27", + "stars": 9 + }, + "https://github.com/whatbirdisthat/cyberdolphin": { + "author_account_age_days": 5878, + "last_update": "2024-07-31 13:40:12", + "stars": 14 + }, + "https://github.com/whmc76/ComfyUI-Openpose-Editor-Plus": { + "author_account_age_days": 843, + "last_update": "2024-06-20 13:52:34", + "stars": 38 + }, + "https://github.com/whmc76/ComfyUI-RemoveBackgroundSuite": { + "author_account_age_days": 843, + "last_update": "2025-06-30 13:59:52", + "stars": 3 + }, + "https://github.com/whmc76/ComfyUI-UniversalToolkit": { + "author_account_age_days": 843, + "last_update": "2025-07-18 09:58:01", + "stars": 27 + }, + "https://github.com/wildminder/000_ComfyUI-Optim": { + "author_account_age_days": 4624, + "last_update": "2025-06-02 21:30:04", + "stars": 4 + }, + "https://github.com/wildminder/ComfyUI-Chatterbox": { + "author_account_age_days": 4624, + "last_update": "2025-05-30 06:27:05", + "stars": 29 + }, + "https://github.com/wildminder/ComfyUI-KEEP": { + "author_account_age_days": 4624, + "last_update": "2025-07-04 11:35:38", + "stars": 47 + }, + "https://github.com/willchil/ComfyUI-Environment-Visualizer": { + "author_account_age_days": 3029, + "last_update": "2025-03-29 23:09:07", + "stars": 12 + }, + "https://github.com/willmiao/ComfyUI-Lora-Manager": { + "author_account_age_days": 3749, + "last_update": "2025-07-20 01:45:17", + "stars": 421 + }, + "https://github.com/windfancy/zsq_prompt": { + "author_account_age_days": 1928, + "last_update": "2024-12-15 14:58:52", + "stars": 0 + }, + "https://github.com/wings6407/ComfyUI_HBH-image_overlay": { + "author_account_age_days": 480, + "last_update": "2025-05-12 02:52:38", + "stars": 1 + }, + "https://github.com/wirytiox/ComfyUI-SelectStringFromListWithIndex": { + "author_account_age_days": 1615, + "last_update": "2025-02-16 09:09:34", + "stars": 1 + }, + "https://github.com/withmpx/mpx-comfyui-nodes": { + "author_account_age_days": 121, + "last_update": "2025-04-16 22:08:20", + "stars": 2 + }, + "https://github.com/without-ordinary/openoutpaint_comfyui_interface": { + "author_account_age_days": 3314, + "last_update": "2025-07-09 06:41:49", + "stars": 1 + }, + "https://github.com/wjl0313/ComfyUI_KimNodes": { + "author_account_age_days": 2263, + "last_update": "2025-06-28 09:15:03", + "stars": 34 + }, + "https://github.com/wmatson/easy-comfy-nodes": { + "author_account_age_days": 4509, + "last_update": "2025-04-17 16:26:02", + "stars": 18 + }, + "https://github.com/wmpmiles/comfyui-some-image-processing-stuff": { + "author_account_age_days": 3421, + "last_update": "2025-05-10 05:51:42", + "stars": 4 + }, + "https://github.com/wolfden/ComfyUi_PromptStylers": { + "author_account_age_days": 6112, + "last_update": "2025-02-15 18:38:12", + "stars": 95 + }, + "https://github.com/wolfden/ComfyUi_String_Function_Tree": { + "author_account_age_days": 6112, + "last_update": "2024-05-22 18:29:16", + "stars": 10 + }, + "https://github.com/wootwootwootwoot/ComfyUI-RK-Sampler": { + "author_account_age_days": 1959, + "last_update": "2024-08-17 21:12:43", + "stars": 61 + }, + "https://github.com/wqjuser/ComfyUI-Chat-Image": { + "author_account_age_days": 3325, + "last_update": "2024-12-26 07:00:30", + "stars": 0 + }, + "https://github.com/wu12023/ComfyUI-Image-Evaluation": { + "author_account_age_days": 708, + "last_update": "2024-12-06 06:51:15", + "stars": 9 + }, + "https://github.com/wujm424606/ComfyUi-Ollama-YN": { + "author_account_age_days": 2654, + "last_update": "2024-09-17 13:20:02", + "stars": 82 + }, + "https://github.com/wutipong/ComfyUI-TextUtils": { + "author_account_age_days": 4576, + "last_update": "2024-06-14 09:34:31", + "stars": 1 + }, + "https://github.com/wwwins/ComfyUI-Simple-Aspect-Ratio": { + "author_account_age_days": 5441, + "last_update": "2024-05-22 22:22:25", + "stars": 1 + }, + "https://github.com/wywywywy/ComfyUI-pause": { + "author_account_age_days": 3320, + "last_update": "2025-05-05 21:37:34", + "stars": 16 + }, + "https://github.com/xLegende/ComfyUI-Prompt-Formatter": { + "author_account_age_days": 1824, + "last_update": "2025-06-10 19:29:54", + "stars": 2 + }, + "https://github.com/xXAdonesXx/NodeGPT": { + "author_account_age_days": 1870, + "last_update": "2024-06-20 11:41:30", + "stars": 349 + }, + "https://github.com/xfgexo/EXO-Custom-ComfyUI-Nodes": { + "author_account_age_days": 820, + "last_update": "2024-12-24 14:07:18", + "stars": 2 + }, + "https://github.com/xhiroga/ComfyUI-FramePackWrapper_PlusOne": { + "author_account_age_days": 3655, + "last_update": "2025-06-26 01:39:27", + "stars": 23 + }, + "https://github.com/xiaogui8dangjia/Comfyui-imagetoSTL": { + "author_account_age_days": 2059, + "last_update": "2025-06-06 04:08:30", + "stars": 2 + }, + "https://github.com/xiaowc-lib/comfyui-dynamic-params": { + "author_account_age_days": 3270, + "last_update": "2025-06-09 08:56:11", + "stars": 0 + }, + "https://github.com/xiaoxiaodesha/hd_node": { + "author_account_age_days": 3266, + "last_update": "2024-06-11 02:36:48", + "stars": 16 + }, + "https://github.com/xingBaGan/ComfyUI-connect-ui": { + "author_account_age_days": 2186, + "last_update": "2025-04-07 09:54:46", + "stars": 2 + }, + "https://github.com/xlinx/ComfyUI-decadetw-auto-messaging-realtime": { + "author_account_age_days": 4890, + "last_update": "2024-08-30 17:38:52", + "stars": 8 + }, + "https://github.com/xlinx/ComfyUI-decadetw-auto-prompt-llm": { + "author_account_age_days": 4890, + "last_update": "2025-02-01 18:36:52", + "stars": 24 + }, + "https://github.com/xlinx/ComfyUI-decadetw-spout-syphon-im-vj": { + "author_account_age_days": 4890, + "last_update": "2024-09-03 08:55:08", + "stars": 12 + }, + "https://github.com/xliry/ComfyUI_SendDiscord": { + "author_account_age_days": 1665, + "last_update": "2024-05-23 02:21:38", + "stars": 0 + }, + "https://github.com/xmarre/TorchCompileModel_LoRASafe": { + "author_account_age_days": 2147, + "last_update": "2025-06-06 18:40:09", + "stars": 7 + }, + "https://github.com/xobiomesh/ComfyUI_xObiomesh": { + "author_account_age_days": 2081, + "last_update": "2024-11-08 17:10:40", + "stars": 2 + }, + "https://github.com/xs315431/Comfyui_Get_promptId": { + "author_account_age_days": 1666, + "last_update": "2024-12-02 09:30:53", + "stars": 1 + }, + "https://github.com/xuhongming251/ComfyUI-GPEN": { + "author_account_age_days": 4497, + "last_update": "2025-04-16 21:37:02", + "stars": 4 + }, + "https://github.com/xuhongming251/ComfyUI-Jimeng": { + "author_account_age_days": 4497, + "last_update": "2025-06-11 09:39:59", + "stars": 3 + }, + "https://github.com/xuhongming251/ComfyUI-MuseTalkUtils": { + "author_account_age_days": 4497, + "last_update": "2025-04-16 21:36:46", + "stars": 21 + }, + "https://github.com/xuhongming251/ComfyUI_Camera": { + "author_account_age_days": 4497, + "last_update": "2025-05-05 18:30:40", + "stars": 4 + }, + "https://github.com/yamanacn/comfyui_kontext_Analyze": { + "author_account_age_days": 1711, + "last_update": "2025-07-06 08:40:36", + "stars": 5 + }, + "https://github.com/yanhuifair/comfyui-janus": { + "author_account_age_days": 3953, + "last_update": "2025-04-08 09:13:57", + "stars": 4 + }, + "https://github.com/yanlang0123/ComfyUI_Lam": { + "author_account_age_days": 3199, + "last_update": "2025-07-20 10:45:04", + "stars": 47 + }, + "https://github.com/yasser-baalla/comfyUI-SemanticImageFetch": { + "author_account_age_days": 1788, + "last_update": "2025-03-22 11:04:33", + "stars": 0 + }, + "https://github.com/ycchanau/ComfyUI_Preview_Magnifier": { + "author_account_age_days": 2508, + "last_update": "2024-07-31 13:59:12", + "stars": 2 + }, + "https://github.com/ycyy/ComfyUI-YCYY-LoraInfo": { + "author_account_age_days": 3816, + "last_update": "2024-09-30 02:33:25", + "stars": 6 + }, + "https://github.com/yffyhk/comfyui_auto_danbooru": { + "author_account_age_days": 4113, + "last_update": "2024-05-22 23:23:03", + "stars": 1 + }, + "https://github.com/yhayano-ponotech/ComfyUI-Fal-API-Flux": { + "author_account_age_days": 962, + "last_update": "2025-01-16 08:47:22", + "stars": 56 + }, + "https://github.com/yhayano-ponotech/comfyui-save-image-local": { + "author_account_age_days": 962, + "last_update": "2025-01-15 12:30:50", + "stars": 4 + }, + "https://github.com/yhayano-ponotech/comfyui-stability-ai-api": { + "author_account_age_days": 962, + "last_update": "2025-02-19 00:38:33", + "stars": 0 + }, + "https://github.com/yichengup/ComfyUI-LinearTransition": { + "author_account_age_days": 516, + "last_update": "2025-07-09 01:51:49", + "stars": 1 + }, + "https://github.com/yichengup/ComfyUI-YCNodes": { + "author_account_age_days": 516, + "last_update": "2025-07-10 09:57:03", + "stars": 24 + }, + "https://github.com/yichengup/ComfyUI_Yc_JanusPro": { + "author_account_age_days": 516, + "last_update": "2025-01-29 22:26:38", + "stars": 7 + }, + "https://github.com/yichengup/Comfyui-Deepseek": { + "author_account_age_days": 516, + "last_update": "2025-02-23 19:36:53", + "stars": 32 + }, + "https://github.com/yichengup/Comfyui-Ycanvas": { + "author_account_age_days": 516, + "last_update": "2025-07-02 19:15:04", + "stars": 99 + }, + "https://github.com/yichengup/Comfyui_Flux_Style_Adjust": { + "author_account_age_days": 516, + "last_update": "2025-02-19 05:08:27", + "stars": 297 + }, + "https://github.com/yichengup/Comfyui_Redux_Advanced": { + "author_account_age_days": 516, + "last_update": "2025-04-10 18:36:47", + "stars": 99 + }, + "https://github.com/yichengup/comfyui-face-liquify": { + "author_account_age_days": 516, + "last_update": "2025-05-08 17:59:05", + "stars": 1 + }, + "https://github.com/yiwangsimple/ComfyUI_DW_Chat": { + "author_account_age_days": 943, + "last_update": "2025-02-06 03:34:59", + "stars": 88 + }, + "https://github.com/yiwangsimple/florence_dw": { + "author_account_age_days": 943, + "last_update": "2025-02-13 01:52:15", + "stars": 47 + }, + "https://github.com/yogurt7771/ComfyUI-YogurtNodes": { + "author_account_age_days": 3221, + "last_update": "2025-07-16 06:34:04", + "stars": 0 + }, + "https://github.com/yolain/ComfyUI-Easy-Use": { + "author_account_age_days": 1732, + "last_update": "2025-07-17 06:34:39", + "stars": 1747 + }, + "https://github.com/yolanother/ComfyUI-Save16bitPng": { + "author_account_age_days": 5255, + "last_update": "2024-12-23 01:50:04", + "stars": 3 + }, + "https://github.com/yolanother/DTAIComfyImageSubmit": { + "author_account_age_days": 5255, + "last_update": "2024-09-25 04:40:23", + "stars": 1 + }, + "https://github.com/yolanother/DTAIComfyLoaders": { + "author_account_age_days": 5255, + "last_update": "2024-11-18 09:35:46", + "stars": 1 + }, + "https://github.com/yolanother/DTAIComfyPromptAgent": { + "author_account_age_days": 5255, + "last_update": "2024-05-22 18:14:18", + "stars": 5 + }, + "https://github.com/yolanother/DTAIComfyQRCodes": { + "author_account_age_days": 5255, + "last_update": "2024-05-22 18:15:09", + "stars": 4 + }, + "https://github.com/yolanother/DTAIComfyVariables": { + "author_account_age_days": 5255, + "last_update": "2024-05-22 18:15:21", + "stars": 12 + }, + "https://github.com/yolanother/DTAIImageToTextNode": { + "author_account_age_days": 5255, + "last_update": "2024-05-22 18:14:31", + "stars": 20 + }, + "https://github.com/yondonfu/ComfyUI-Background-Edit": { + "author_account_age_days": 4267, + "last_update": "2024-12-31 23:15:33", + "stars": 22 + }, + "https://github.com/yondonfu/ComfyUI-Torch-Compile": { + "author_account_age_days": 4267, + "last_update": "2025-04-30 18:46:47", + "stars": 5 + }, + "https://github.com/yorkane/ComfyUI-KYNode": { + "author_account_age_days": 3781, + "last_update": "2025-06-12 16:16:02", + "stars": 7 + }, + "https://github.com/younyokel/comfyui_prompt_formatter": { + "author_account_age_days": 2186, + "last_update": "2025-05-16 16:33:11", + "stars": 3 + }, + "https://github.com/youyegit/tdxh_node_comfyui": { + "author_account_age_days": 820, + "last_update": "2025-03-17 08:22:16", + "stars": 2 + }, + "https://github.com/yuan199696/add_text_2_img": { + "author_account_age_days": 2834, + "last_update": "2025-03-27 14:40:27", + "stars": 8 + }, + "https://github.com/yuan199696/chinese_clip_encode": { + "author_account_age_days": 2834, + "last_update": "2025-03-27 14:39:40", + "stars": 9 + }, + "https://github.com/yushan777/ComfyUI-Y7-SBS-2Dto3D": { + "author_account_age_days": 909, + "last_update": "2025-06-13 18:44:06", + "stars": 5 + }, + "https://github.com/yushan777/ComfyUI-Y7Nodes": { + "author_account_age_days": 909, + "last_update": "2025-06-14 19:55:01", + "stars": 3 + }, + "https://github.com/yuvraj108c/ComfyUI-Depth-Anything-Tensorrt": { + "author_account_age_days": 2544, + "last_update": "2025-07-08 11:06:06", + "stars": 108 + }, + "https://github.com/yuvraj108c/ComfyUI-Dwpose-Tensorrt": { + "author_account_age_days": 2544, + "last_update": "2025-05-03 19:32:24", + "stars": 35 + }, + "https://github.com/yuvraj108c/ComfyUI-FLOAT": { + "author_account_age_days": 2544, + "last_update": "2025-07-06 12:15:27", + "stars": 207 + }, + "https://github.com/yuvraj108c/ComfyUI-Facerestore-Tensorrt": { + "author_account_age_days": 2544, + "last_update": "2024-09-22 13:07:19", + "stars": 23 + }, + "https://github.com/yuvraj108c/ComfyUI-PiperTTS": { + "author_account_age_days": 2544, + "last_update": "2024-05-22 23:17:27", + "stars": 28 + }, + "https://github.com/yuvraj108c/ComfyUI-Pronodes": { + "author_account_age_days": 2544, + "last_update": "2025-01-05 10:06:31", + "stars": 3 + }, + "https://github.com/yuvraj108c/ComfyUI-Rife-Tensorrt": { + "author_account_age_days": 2544, + "last_update": "2024-10-04 10:23:26", + "stars": 20 + }, + "https://github.com/yuvraj108c/ComfyUI-Thera": { + "author_account_age_days": 2544, + "last_update": "2025-05-01 07:52:54", + "stars": 35 + }, + "https://github.com/yuvraj108c/ComfyUI-Upscaler-Tensorrt": { + "author_account_age_days": 2544, + "last_update": "2025-07-06 15:49:24", + "stars": 148 + }, + "https://github.com/yuvraj108c/ComfyUI-Video-Depth-Anything": { + "author_account_age_days": 2544, + "last_update": "2025-05-01 09:04:25", + "stars": 30 + }, + "https://github.com/yuvraj108c/ComfyUI-Vsgan": { + "author_account_age_days": 2544, + "last_update": "2024-05-22 23:17:02", + "stars": 3 + }, + "https://github.com/yuvraj108c/ComfyUI-Whisper": { + "author_account_age_days": 2544, + "last_update": "2025-05-02 07:59:15", + "stars": 121 + }, + "https://github.com/yuvraj108c/ComfyUI-YoloNasPose-Tensorrt": { + "author_account_age_days": 2544, + "last_update": "2024-06-28 15:59:14", + "stars": 13 + }, + "https://github.com/yuvraj108c/ComfyUI_InvSR": { + "author_account_age_days": 2544, + "last_update": "2025-07-06 15:46:55", + "stars": 220 + }, + "https://github.com/yvann-ba/ComfyUI_Yvann-Nodes": { + "author_account_age_days": 1291, + "last_update": "2025-06-02 12:11:14", + "stars": 453 + }, + "https://github.com/za-wa-n-go/ComfyUI_Zwng_Nodes": { + "author_account_age_days": 979, + "last_update": "2025-03-27 23:13:16", + "stars": 7 + }, + "https://github.com/zade23/Comfyui-Distill-Any-Depth": { + "author_account_age_days": 2187, + "last_update": "2025-07-20 04:47:00", + "stars": 3 + }, + "https://github.com/zaheenrahman/ComfyUI-ColorCorrection": { + "author_account_age_days": 2751, + "last_update": "2025-03-21 09:52:29", + "stars": 2 + }, + "https://github.com/zakantonio/AvatarGen-experience": { + "author_account_age_days": 4168, + "last_update": "2025-03-26 20:58:18", + "stars": 0 + }, + "https://github.com/zccrs/comfyui-dci": { + "author_account_age_days": 3651, + "last_update": "2025-06-13 07:35:50", + "stars": 1 + }, + "https://github.com/zcfrank1st/Comfyui-Toolbox": { + "author_account_age_days": 4806, + "last_update": "2024-05-22 22:08:07", + "stars": 6 + }, + "https://github.com/zcfrank1st/Comfyui-Yolov8": { + "author_account_age_days": 4806, + "last_update": "2024-06-14 07:08:40", + "stars": 25 + }, + "https://github.com/zcfrank1st/comfyui_visual_anagrams": { + "author_account_age_days": 4806, + "last_update": "2024-06-14 07:07:27", + "stars": 8 + }, + "https://github.com/zeeoale/PromptCreatorNode": { + "author_account_age_days": 2748, + "last_update": "2025-07-14 18:55:25", + "stars": 2 + }, + "https://github.com/zentrocdot/ComfyUI-RealESRGAN_Upscaler": { + "author_account_age_days": 602, + "last_update": "2025-02-09 18:27:16", + "stars": 8 + }, + "https://github.com/zentrocdot/ComfyUI-Simple_Image_To_Prompt": { + "author_account_age_days": 602, + "last_update": "2025-02-20 06:30:19", + "stars": 3 + }, + "https://github.com/zentrocdot/ComfyUI_Circle_Detection": { + "author_account_age_days": 602, + "last_update": "2025-02-07 17:32:46", + "stars": 0 + }, + "https://github.com/zer0TF/cute-comfy": { + "author_account_age_days": 3061, + "last_update": "2024-05-22 21:18:53", + "stars": 34 + }, + "https://github.com/zer0thgear/zer0-comfy-utils": { + "author_account_age_days": 508, + "last_update": "2025-01-26 19:33:59", + "stars": 0 + }, + "https://github.com/zeroxoxo/ComfyUI-Fast-Style-Transfer": { + "author_account_age_days": 2834, + "last_update": "2025-04-07 05:52:19", + "stars": 71 + }, + "https://github.com/zfkun/ComfyUI_zfkun": { + "author_account_age_days": 5254, + "last_update": "2025-06-03 23:57:53", + "stars": 21 + }, + "https://github.com/zhangp365/ComfyUI-utils-nodes": { + "author_account_age_days": 682, + "last_update": "2025-06-27 07:38:36", + "stars": 84 + }, + "https://github.com/zhangp365/ComfyUI_photomakerV2_native": { + "author_account_age_days": 682, + "last_update": "2025-04-07 10:58:52", + "stars": 10 + }, + "https://github.com/zhilemann/ComfyUI-moondream2": { + "author_account_age_days": 685, + "last_update": "2024-12-29 13:17:31", + "stars": 1 + }, + "https://github.com/zhiselfly/ComfyUI-Alimama-ControlNet-compatible": { + "author_account_age_days": 3741, + "last_update": "2024-09-14 13:46:05", + "stars": 18 + }, + "https://github.com/zhongpei/ComfyUI-InstructIR": { + "author_account_age_days": 3850, + "last_update": "2024-05-22 23:19:43", + "stars": 71 + }, + "https://github.com/zhuanqianfish/ComfyUI-EasyNode": { + "author_account_age_days": 4626, + "last_update": "2024-06-14 07:10:18", + "stars": 67 + }, + "https://github.com/zhulu111/ComfyUI_Bxb": { + "author_account_age_days": 430, + "last_update": "2025-02-05 10:33:45", + "stars": 1421 + }, + "https://github.com/zichongc/ComfyUI-Attention-Distillation": { + "author_account_age_days": 888, + "last_update": "2025-03-18 02:48:42", + "stars": 110 + }, + "https://github.com/ziwang-com/comfyui-deepseek-r1": { + "author_account_age_days": 3767, + "last_update": "2025-02-02 14:24:35", + "stars": 62 + }, + "https://github.com/zmwv823/ComfyUI_Anytext": { + "author_account_age_days": 3660, + "last_update": "2025-05-28 01:02:37", + "stars": 88 + }, + "https://github.com/zohac/ComfyUI_ZC_DrawShape": { + "author_account_age_days": 3053, + "last_update": "2024-06-25 15:05:28", + "stars": 3 + }, + "https://github.com/zombieyang/sd-ppp": { + "author_account_age_days": 4309, + "last_update": "2025-07-15 12:20:39", + "stars": 1574 + }, + "https://github.com/zubenelakrab/ComfyUI-ASV-Nodes": { + "author_account_age_days": 5353, + "last_update": "2024-11-04 00:51:29", + "stars": 1 + }, + "https://github.com/zygion/comfyui-zygion-util-nodes": { + "author_account_age_days": 197, + "last_update": "2025-04-26 05:11:35", + "stars": 0 + }, + "https://github.com/zzubnik/TT_TextTools": { + "author_account_age_days": 3117, + "last_update": "2025-04-02 23:40:24", + "stars": 0 + }, + "https://github.com/zzw5516/ComfyUI-zw-tools": { + "author_account_age_days": 4533, + "last_update": "2025-04-16 08:24:48", + "stars": 2 + } +} \ No newline at end of file diff --git a/user/default/ComfyUI-Manager/cache/881334633_nodes.json b/user/default/ComfyUI-Manager/cache/881334633_nodes.json new file mode 100644 index 0000000000000000000000000000000000000000..a30eeb25db3a2139c8d89f0646c2abc33aff1875 --- /dev/null +++ b/user/default/ComfyUI-Manager/cache/881334633_nodes.json @@ -0,0 +1,124509 @@ +{ + "nodes": [ + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-18T10:28:17.000474Z", + "description": "More connection links.", + "downloads": 13, + "github_stars": 0, + "icon": "", + "id": "extralinks", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-18T11:00:22.176296Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "fdbcc339-f8af-4443-b52f-dc7fed51899d", + "node_id": "extralinks", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.0.2" + }, + "license": "{\"text\": \"MIT license\"}", + "name": "ComfyUI-ExtraLinks", + "publisher": { + "createdAt": "2025-07-18T10:00:44.5934Z", + "description": "", + "id": "edoardocarmignani", + "logo": "", + "members": [], + "name": "Edoardo Carmignani", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/edoardocarmignani/extralinks", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "snomiao", + "banner_url": "", + "category": "node", + "created_at": "2025-07-10T09:55:10.39248Z", + "description": "sno-test-unclaimed-node-404", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "sno-test-unclaimed-node-404", + "latest_version": { + "version": "nightly" + }, + "license": "{file=\"LICENSE\"}", + "name": "sno-test-unclaimed-node-404", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/snomiao/js-404", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-18T06:45:03.583936Z", + "description": "An implementation of Frequency-Decoupled Guidance (FDG) in pure Pytorch.", + "downloads": 44, + "github_stars": 1, + "icon": "", + "id": "ComfyUI_FDGuidance", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-18T06:45:03.972444Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "337ab886-752f-4aa7-9a53-cb00ba754e06", + "node_id": "ComfyUI_FDGuidance", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_FDGuidance", + "publisher": { + "createdAt": "2024-09-17T18:22:05.116266Z", + "description": "", + "id": "silveroxides", + "logo": "", + "members": [], + "name": "silveroxides", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/silveroxides/ComfyUI_FDGuidance", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-10T21:35:42.686251Z", + "description": "A suite of nodes that includes: - Prompt enhancers/generators that employ remote AI services and local front-ends like: ChatGPT, Anthropic Claude, Groq, Gemini, LM Studio, Oobabooga, OpenRouter etc. - An Image Generator that uses Dall_e 3. - An image metadata extractor that extracts seed, prompt, cfg, size, denoise, etc from existing AI generated images and photo metadata (from exif data) from jpeg photographs. A tagger that appends text (tags) to the beginning, end and/or middle of a text block. Image and text multiplexer utilility. A text block remover that removes text between two named tags.", + "downloads": 2415, + "github_stars": 176, + "icon": "", + "id": "Plush-for-ComfyUI", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-10T21:35:43.070891Z", + "dependencies": [ + "numpy", + "openai==1.14.0", + "pillow", + "torch", + "requests", + "pyexiv2", + "anthropic==0.25.1" + ], + "deprecated": false, + "downloadUrl": "", + "id": "cdb509dd-da7f-491c-9c59-904b47309c68", + "node_id": "Plush-for-ComfyUI", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.22.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Plush for ComfyUI", + "publisher": { + "createdAt": "2024-06-18T22:55:07.224433Z", + "description": "", + "id": "glibsonoran", + "logo": "", + "members": [], + "name": "glibsonoran", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/glibsonoran/Plush-for-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "MinusZoneAI", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:12.067706Z", + "description": "Quantization tools are from [a/https://github.com/casper-hansen/AutoAWQ](https://github.com/casper-hansen/AutoAWQ) and [a/https://github.com/IST-DASLab/marlin](https://github.com/IST-DASLab/marlin)\nOnly applicable to graphics cards with sm_80 and above (30 series and above)\nNeed to install marlin dependencies first", + "downloads": 0, + "github_stars": 12, + "icon": "", + "id": "ComfyUI-Flux1Quantize-MZ", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Flux1Quantize-MZ", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MinusZoneAI/ComfyUI-Flux1Quantize-MZ", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "guill", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:47.226058Z", + "description": "Nodes:Abracadabra Summary, Abracadabra", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "abracadabra-comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "abracadabra-comfyui", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/guill/abracadabra-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-13T07:28:35.795625Z", + "description": "Combine multiple 3D models into a single Blender file and render in ComfyUI.", + "downloads": 71, + "github_stars": 1, + "icon": "", + "id": "blender-in-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-20T07:39:28.679401Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ff66135a-4ff0-49d1-92fd-71b636504631", + "node_id": "blender-in-comfyui", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "blender-in-comfyui", + "publisher": { + "createdAt": "2024-06-20T14:26:34.480667Z", + "description": "", + "id": "baikong", + "logo": "", + "members": [], + "name": "BaiKong", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/JayLyu/blender-in-comfyui.git", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "Ardenius", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:20.90336Z", + "description": "ARD ComfyUI Ardenius include ARD Control Box, ARD Math nodes and other helper nodes to be added in the future. for more info https://ko-fi.com/ardenius.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI-Ardenius", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Ardenius", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ArdeniusAI/ComfyUI-Ardenius", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-21T08:07:16.74713Z", + "description": "Bulk text series update", + "downloads": 5, + "github_stars": 7, + "icon": "", + "id": "comfyui_video_BC", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-21T08:07:17.115428Z", + "dependencies": [ + "opencv-python", + "numpy", + "torch", + "Pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "8c152e54-4841-4af5-8415-7f914f75c2c3", + "node_id": "comfyui_video_BC", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_video_BC", + "publisher": { + "createdAt": "2025-06-27T06:17:30.554324Z", + "description": "", + "id": "maque", + "logo": "", + "members": [], + "name": "MaQue", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/JioJe/comfyui_video_BC", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "fexploit", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:14.739747Z", + "description": "ComfyUI-Classifier is a custom node for ComfyUI that uses a zero-shot classification model to classify text inputs based on a set of candidate labels. This node leverages the power of Hugging Face Transformers to provide accurate and flexible text classification.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-Classifier", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Classifier", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fexploit/ComfyUI-Classifier", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-16T12:45:57.50118Z", + "description": "A collection of nodes for ComfyUI. ex:A node for batch managing int, float, and string parameters with presets", + "downloads": 32, + "github_stars": 1, + "icon": "", + "id": "comfyui-ns-util", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-16T12:45:57.908317Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "2429d08a-db44-4774-9d7b-1e56e3a091e5", + "node_id": "comfyui-ns-util", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.1.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-NS-Util", + "publisher": { + "createdAt": "2024-08-25T00:48:09.246502Z", + "description": "", + "id": "nakamurashippo", + "logo": "", + "members": [], + "name": "Nakamura Shippo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/NakamuraShippo/ComfyUI-NS-Util", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-20T14:28:10.161287Z", + "description": "This custom node for ComfyUI provides a powerful and flexible dynamic layering system, similar to what you would find in image editing software like Photoshop.", + "downloads": 10, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-Layers-Utility", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-20T22:29:06.767466Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "569e6769-09e2-43f6-904d-77eb7fc01d9e", + "node_id": "ComfyUI-Layers-Utility", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.3" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "Layers System", + "publisher": { + "createdAt": "2024-07-05T00:13:02.855642Z", + "description": "", + "id": "tritant", + "logo": "", + "members": [], + "name": "jice", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tritant/ComfyUI_Layers_Utility", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-12T18:51:04.903971Z", + "description": "WildPromptor simplifies prompt creation, organization, and customization in ComfyUI, turning chaotic workflows into an efficient, intuitive process.", + "downloads": 173, + "github_stars": 38, + "icon": "", + "id": "ComfyUI-WildPromptor", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-12T18:51:05.311045Z", + "dependencies": [ + "google-generativeai", + "requests" + ], + "deprecated": false, + "downloadUrl": "", + "id": "3342bcab-f836-4242-a027-c981a2988d69", + "node_id": "ComfyUI-WildPromptor", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-WildPromptor", + "publisher": { + "createdAt": "2024-07-01T23:11:45.570672Z", + "description": "", + "id": "ailab", + "logo": "", + "members": [], + "name": "AILab", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/1038lab/Comfyui-WildPromptor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-13T08:08:19.024653Z", + "description": "Allows you to pin images to the JSON of your workflow, migrate with JSON, or embed in image's metadata. supports image compression", + "downloads": 60, + "github_stars": 2, + "icon": "https://avatars.githubusercontent.com/u/32773451", + "id": "ComfyUI_Image_Pin", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-13T08:08:19.406683Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "84bd11bf-9bd7-4cb8-bc7a-c833aafb4d6c", + "node_id": "ComfyUI_Image_Pin", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Image_Pin", + "publisher": { + "createdAt": "2025-07-13T07:54:57.405889Z", + "description": "", + "id": "xchenning", + "logo": "", + "members": [], + "name": "xChenNing", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/CheNing233/ComfyUI_Image_Pin", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-14T19:06:42.107593Z", + "description": "Quicker connections, Circuit board connections", + "downloads": 20, + "github_stars": 0, + "icon": "", + "id": "quicker-connections", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-17T13:39:51.11002Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a55c2077-f31c-45da-9b90-a84a7a730aa2", + "node_id": "quicker-connections", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.21" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "quicker-connections", + "publisher": { + "createdAt": "2025-07-14T19:02:41.276213Z", + "description": "", + "id": "phuhl", + "logo": "", + "members": [], + "name": "Philipp Uhl", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/phuhl/quicker-connections", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-17T11:16:57.918142Z", + "description": "A comprehensive set of ComfyUI nodes for using Large Language Models (LLM) as text encoders for SDXL image generation through a trained adapter.", + "downloads": 145, + "github_stars": 19, + "icon": "", + "id": "llm_sdxl_adapter", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-19T02:44:52.787428Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4fd847e7-fee4-45a8-9c0e-12caf039a24f", + "node_id": "llm_sdxl_adapter", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI LLM SDXL Adapter", + "publisher": { + "createdAt": "2025-07-17T10:06:43.83171Z", + "description": "", + "id": "neurosenko", + "logo": "", + "members": [], + "name": "NeuroSenko", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/NeuroSenko/ComfyUI_LLM_SDXL_Adapter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-21T04:36:46.052699Z", + "description": "Build your dictionary of named strings (text chunks), then easily compile different prompt variations from them - with simple string formatting.\nUnlike string-formatting nodes from other popular packs, this one is designed for specifying your sub-strings once, then dragging the entire \"library\" of them across the entire workflow (like a bus), updating it in-place as necessary. This is especially handy for regional prompting aka area composition.", + "downloads": 1, + "github_stars": 0, + "icon": "", + "id": "string-constructor", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-21T04:36:46.465234Z", + "dependencies": [ + "frozendict" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1761190f-e21c-4bcf-ae50-939e6f212646", + "node_id": "string-constructor", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.0.1" + }, + "license": "{\"file\": \"LICENSE.md\"}", + "name": "String Constructor (Text-Formatting)", + "publisher": { + "createdAt": "2025-07-04T23:41:41.538825Z", + "description": "", + "id": "lex-drl", + "logo": "", + "members": [], + "name": "Lex Darlog", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Lex-DRL/ComfyUI-StringConstructor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "ShmuelRonen", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:59.925647Z", + "description": "SVDResizer is a helper for resizing the source image, according to the sizes enabled in Stable Video Diffusion. The rationale behind the possibility of changing the size of the image in steps between the ranges of 576 and 1024, is the use of the greatest common denominator of these two numbers which is 64. SVD is lenient with resizing that adheres to this rule, so the chance of coherent video that is not the standard size of 576X1024 is greater. It is advisable to keep the value 1024 constant and play with the second size to maintain the stability of the result.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-SVDResizer", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-SVDResizer", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShmuelRonen/ComfyUI-SVDResizer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "MinusZoneAI", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:13.806153Z", + "description": "Nodes:MZ_CogVideoXLoader", + "downloads": 0, + "github_stars": 106, + "icon": "", + "id": "ComfyUI-CogVideoX-MZ", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-CogVideoX-MZ", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MinusZoneAI/ComfyUI-CogVideoX-MZ", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-13T22:16:37.710995Z", + "description": "Nodes to create stereoscopic images and movies.", + "downloads": 53, + "github_stars": 3, + "icon": "", + "id": "comfyui_stereoscopic", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-20T10:23:34.729635Z", + "dependencies": [ + "torch", + "opencv-python>=4.11.0.86", + "numpy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7b28bf86-bb91-4804-ac91-58d721e12801", + "node_id": "comfyui_stereoscopic", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": ">=0.3.39", + "supported_os": [], + "version": "1.4.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Stereoscopic", + "publisher": { + "createdAt": "2025-07-13T16:30:37.754944Z", + "description": "", + "id": "fortunacournot", + "logo": "", + "members": [], + "name": "Fortuna Cournot", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/FortunaCournot/comfyui_stereoscopic", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": ">=0.3.39", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-07T09:17:02.268568Z", + "description": "QoL nodes for semi-automatic calculation of the best (most optimal) sampling resolution \n\u2022 compatible with ANY model (from now or the future), \n\u2022 accounting for upscale... \n\u2022 ...and pixel-step.", + "downloads": 100, + "github_stars": 3, + "icon": "", + "id": "best-resolution", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-19T20:15:49.574853Z", + "dependencies": [ + "frozendict" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b689628a-a8cc-4a05-a111-9daa84fc10f0", + "node_id": "best-resolution", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE.md\"}", + "name": "Best Resolution", + "publisher": { + "createdAt": "2025-07-04T23:41:41.538825Z", + "description": "", + "id": "lex-drl", + "logo": "", + "members": [], + "name": "Lex Darlog", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Lex-DRL/ComfyUI-BestResolution", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-06T13:39:33.624469Z", + "description": "Implementation of Normalized Attention Guidance: Universal Negative Guidance for Diffusion Models for ComfyUI.", + "downloads": 588, + "github_stars": 0, + "icon": "", + "id": "comfyui-nag", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-06T13:39:34.009769Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "10193410-bb93-4339-adfb-91a4f15528e8", + "node_id": "comfyui-nag", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-NAG", + "publisher": { + "createdAt": "2025-07-06T09:11:20.963766Z", + "description": "", + "id": "deoxys", + "logo": "", + "members": [], + "name": "Deoxys", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AkshayLaghate/ComfyUI-NAG", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-19T09:05:46.890086Z", + "description": "Various quality of life -nodes for ComfyUI, mostly just visual stuff to improve usability.", + "downloads": 835880, + "github_stars": 1543, + "icon": "https://avatars.githubusercontent.com/u/40791699", + "id": "comfyui-kjnodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-14T06:29:54.991091Z", + "dependencies": [ + "librosa", + "numpy", + "pillow>=10.3.0", + "scipy", + "color-matcher", + "matplotlib", + "huggingface_hub" + ], + "deprecated": false, + "downloadUrl": "", + "id": "47f345bb-9b91-4597-b532-6f638d331151", + "node_id": "comfyui-kjnodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-KJNodes", + "publisher": { + "createdAt": "2024-06-09T11:11:54.62154Z", + "description": "", + "id": "kijai", + "logo": "", + "members": [], + "name": "Kijai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-KJNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-21T11:54:48.318291Z", + "description": "Miscellaneous nodes for image manipulation. Currently just download image with bypass, so you can create workflows including image examples. No extra dependencies.", + "downloads": 1, + "github_stars": 0, + "icon": "", + "id": "image-misc", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-21T11:54:48.702722Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3fb57f48-5db4-46a2-9c93-ab0f435756f0", + "node_id": "image-misc", + "status": "NodeVersionStatusPending", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Image Misc", + "publisher": { + "createdAt": "2024-11-21T16:22:47.52117Z", + "description": "", + "id": "set-soft", + "logo": "", + "members": [], + "name": "Salvador Eduardo Tropea", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/set-soft/ComfyUI-ImageMisc", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-22T20:59:48.254362Z", + "description": "ComfyUI node that pixelizes images.", + "downloads": 2652, + "github_stars": 65, + "icon": "", + "id": "comfy_pixelization", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-12T07:07:23.083186Z", + "dependencies": [ + "torch==2.7.1", + "torchvision==0.22.1", + "numpy==2.3.0", + "pillow==11.2.1" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e7346b71-fec9-433d-afe1-8d00cc7047b4", + "node_id": "comfy_pixelization", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "comfy_pixelization", + "publisher": { + "createdAt": "2024-05-22T20:31:08.469037Z", + "description": "", + "id": "filipemeneses", + "logo": "", + "members": [], + "name": "Filipe Meneses", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/filipemeneses/comfy_pixelization", + "status": "", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-21T10:56:43.686553Z", + "description": "NRS seeks to replace the 'naive' linear interpolation of Classifier Free Guidance with a more nuanced and composable steering of the generation process with better mathematical basis.", + "downloads": 1, + "github_stars": 8, + "icon": "https://raw.githubusercontent.com/Reithan/negative_rejection_steering/main/icon.png", + "id": "negative_rejection_steering", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-21T10:56:44.070066Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "6cf2d031-e607-4d7b-b7a6-a34bfcd8897e", + "node_id": "negative_rejection_steering", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.7.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Negative Rejection Steering", + "publisher": { + "createdAt": "2025-07-21T08:46:23.229971Z", + "description": "", + "id": "reithan", + "logo": "", + "members": [], + "name": "Reithan", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Reithan/negative_rejection_steering", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "zer0TF", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:23.437238Z", + "description": "Adds a configurable folder watcher that auto-converts Comfy metadata into a Civitai-friendly format for automatic resource tagging when you upload images. Oh, and it makes your UI awesome, too. \ud83d\udc9c", + "downloads": 0, + "github_stars": 35, + "icon": "", + "id": "cute-comfy", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Cute Comfy", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zer0TF/cute-comfy", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-14T17:33:51.973994Z", + "description": "Fill-Nodes is a versatile collection of custom nodes for ComfyUI that extends functionality across multiple domains. Features include advanced image processing (pixelation, slicing, masking), visual effects generation (glitch, halftone, pixel art), comprehensive file handling (PDF creation/extraction, Google Drive integration), AI model interfaces (GPT, DALL-E, Hugging Face), utility nodes for workflow enhancement, and specialized tools for video processing, captioning, and batch operations. The pack provides both practical workflow solutions and creative tools within a unified node collection.", + "downloads": 50336, + "github_stars": 419, + "icon": "", + "id": "comfyui_fill-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-08T18:06:07.333516Z", + "dependencies": [ + "diffusers", + "librosa", + "sounddevice", + "glitch_this", + "PyOpenGL", + "glfw", + "scipy>=1.13.1", + "requests", + "aiohttp", + "moviepy", + "matplotlib", + "reportlab", + "openai", + "PyPDF2", + "pdf2image", + "PyMuPDF", + "reportlab", + "PyPDF2", + "ollama", + "kornia", + "opencv-python", + "gdown", + "open_clip_torch", + "google-genai" + ], + "deprecated": false, + "downloadUrl": "", + "id": "3fefac60-6b81-42db-bba7-45fcf6ccdd07", + "node_id": "comfyui_fill-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.6.1" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI_Fill-Nodes", + "publisher": { + "createdAt": "2024-05-22T07:00:05.963716Z", + "description": "", + "id": "machinedelusions", + "logo": "", + "members": [], + "name": "Machine Delusions", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/filliptm/ComfyUI_Fill-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-18T15:38:02.350834Z", + "description": "Nodes for incrementally constructing large, multifaceted images", + "downloads": 13, + "github_stars": 0, + "icon": "", + "id": "canvas", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-18T15:38:02.969637Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "dd59c94b-7b69-4d49-8cb4-ca56133004fc", + "node_id": "canvas", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.0.1" + }, + "license": "{\"text\": \"GNU General Public License v3\"}", + "name": "Canvas", + "publisher": { + "createdAt": "2025-04-13T16:08:54.770491Z", + "description": "", + "id": "pone", + "logo": "", + "members": [], + "name": "Pone", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/leocbehe/canvas", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "ntc-ai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:03.593488Z", + "description": "An experiment about combining multiple LoRAs with [a/DARE](https://arxiv.org/pdf/2311.03099.pdf)", + "downloads": 0, + "github_stars": 34, + "icon": "", + "id": "ComfyUI-DARE-LoRA-Merge", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI - Apply LoRA Stacker with DARE", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ntc-ai/ComfyUI-DARE-LoRA-Merge", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "philiprodriguez", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:17.88655Z", + "description": "A ComfyUI node which copies a given latent's samples tensor along the time axis ((length - 1) // 4) + 1 times to form a longer latent (see EmptyHunyuanLatentVideo's implementation for why this specific number of copies is used) and then prepares a noise_mask tensor of the same shape such that the value of the mask for a given time step is given by the function at https://www.desmos.com/calculator/vhw74mr1vh.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-HunyuanImageLatentToVideoLatent", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-HunyuanImageLatentToVideoLatent", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/philiprodriguez/ComfyUI-HunyuanImageLatentToVideoLatent", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ThepExcel", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:21.929012Z", + "description": "This custom node for ComfyUI allows users to input multiline text and select a specific line by its number. The node processes the input and returns the selected line along with its index.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "aiangelgallery-comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Multiline Text Choice Node for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ThepExcel/aiangelgallery-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "wei30172", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:05.263658Z", + "description": "Setting Up a Web Interface Using ComfyUI.\nNOTE:When installed, you can access it via http://127.0.0.1:8188/comfygen.", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "comfygen", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfygen", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wei30172/comfygen", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kostenickj", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:58.027067Z", + "description": "NODES: EasyHRFix, EasyHRFix_Context, JKAnythingToString, JKBigContext, JKDynamicThresholdingMultiModel, JKEasyCheckpointLoader, JKEasyDetailer, JKEasyDetailer_Context, JKEasyKSampler_Context, JKEasyWatermark, JKInspireSchedulerAdapter, JKLilContext, JKMultiModelSamplerUnpatch, JKStringEmpty, JKStringEquals, JKStringNotEmpty, JKStringNotEquals, JKStringToSamplerAdapter", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "jk-comfyui-helpers", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-jk-easy-nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kostenickj/jk-comfyui-helpers", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "PauldeLavallaz", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:30.992777Z", + "description": "Node that generates prompts using Anthropic Claude API.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui_claude_prompt_generator", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Claude Prompt Generator", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/PauldeLavallaz/comfyui_claude_prompt_generator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-15T04:28:53.973334Z", + "description": "Blender plugin to send requests to a ComfyUI server.", + "downloads": 166, + "github_stars": 3, + "icon": "", + "id": "comfyui-blender", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-21T02:58:39.620436Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "eee8c430-5fd0-4b35-bfe2-5c230fdc943d", + "node_id": "comfyui-blender", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.4.1" + }, + "license": "{\"text\": \"GPL-3.0 license\"}", + "name": "ComfyUI-Blender", + "publisher": { + "createdAt": "2024-06-28T00:35:00.27544Z", + "description": "", + "id": "alexisrolland", + "logo": "", + "members": [], + "name": "alexisrolland", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alexisrolland/ComfyUI-Blender", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:17.683775Z", + "description": "ComfyUI Champ", + "downloads": 0, + "github_stars": 24, + "icon": "", + "id": "ComfyUI-Champ", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Champ", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-Champ", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-11T14:44:49.362344Z", + "description": "A custom node for ComfyUI that intelligently downloads assets from Civitai, Hugging Face, and MEGA.", + "downloads": 33, + "github_stars": 2, + "icon": "", + "id": "comfyui-universal-asset-downloader", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-11T14:44:49.753358Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "2127cf8c-c082-4279-88b2-f562526df32e", + "node_id": "comfyui-universal-asset-downloader", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-universal-asset-downloader", + "publisher": { + "createdAt": "2025-07-11T12:33:04.716837Z", + "description": "", + "id": "thaakeno", + "logo": "", + "members": [], + "name": "thaakeno", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/thaakeno/comfyui-universal-asset-downloader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-20T19:59:33.578018Z", + "description": "A small set of JavaScript files I created for myself. The scripts provide Quality of Life enhancements to the ComfyUI interface, such as changing fonts and font sizes.", + "downloads": 1, + "github_stars": 1, + "icon": "https://raw.githubusercontent.com/tusharbhutt/Endless-Buttons/main/img/icon.png", + "id": "endless-buttons", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-20T20:03:02.751135Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "36fb71e1-fb4e-4aab-a81c-3c5954fd2a91", + "node_id": "endless-buttons", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Endless \ud83c\udf0a\u2728 Buttons", + "publisher": { + "createdAt": "2025-06-15T05:39:08.424044Z", + "description": "", + "id": "tusharbhutt", + "logo": "", + "members": [], + "name": "Tushar Bhutt", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tusharbhutt/Endless-Buttons", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-17T05:03:58.333451Z", + "description": "\ud83d\udeacThis nodes includes video automatic watermarking, multi line text merging, text replacement, GLM4V local image to text inference and text to text inference, and JSON value retrieval based on keys \ud83d\ude0a", + "downloads": 15, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-AlwaysOnline", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-17T05:15:39.073584Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "caff420e-28de-4565-a149-1ca0edd58ac7", + "node_id": "ComfyUI-AlwaysOnline", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-AlwaysOnline", + "publisher": { + "createdAt": "2025-07-11T09:16:50.518453Z", + "description": "", + "id": "always89", + "logo": "", + "members": [], + "name": "always89", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alwaysOnlineYou/ComfyUI-AlwaysOnline", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "kijai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:04.025977Z", + "description": "Original repo: [a/https://github.com/luckyhzt/LVCD](https://github.com/luckyhzt/LVCD)", + "downloads": 0, + "github_stars": 62, + "icon": "", + "id": "ComfyUI-LVCDWrapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI wrapper nodes for LVCD", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-LVCDWrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Zuellni", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:27.653065Z", + "description": "Nodes: DeepFloyd, Filter, Select, Save, Decode, Encode, Repeat, Noise, Noise", + "downloads": 0, + "github_stars": 44, + "icon": "", + "id": "Zuellni_ComfyUI-Custom-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Zuellni/ComfyUI-Custom-Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Zuellni/ComfyUI-Custom-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ShmuelRonen", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:10.557303Z", + "description": "A custom node for ComfyUI that adds cinematic and movie scene styles to video generation prompts. This node helps create more dynamic and professional-looking video outputs by incorporating iconic movie scene aesthetics.", + "downloads": 0, + "github_stars": 43, + "icon": "", + "id": "ComfyUI-HunyuanVideoStyler", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-HunyuanVideoStyler", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShmuelRonen/ComfyUI-HunyuanVideoStyler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "sylym", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:13.269169Z", + "description": "A node suite for ComfyUI that allows you to load image sequence and generate new image sequence with different styles or content.", + "downloads": 0, + "github_stars": 72, + "icon": "", + "id": "comfy_vid2vid", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Vid2vid", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sylym/comfy_vid2vid", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-25T09:33:31.353205Z", + "description": "Nodes for better inpainting with ComfyUI. Adds various ways to pre-process inpaint areas. Supports the Fooocus inpaint model, a small and flexible patch which can be applied to any SDXL checkpoint and will improve consistency when generating masked areas.", + "downloads": 122890, + "github_stars": 1003, + "icon": "", + "id": "comfyui-inpaint-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-24T14:55:53.576936Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "e01e7265-aaf0-48e3-81c7-0201aa84ded8", + "node_id": "comfyui-inpaint-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-inpaint-nodes", + "publisher": { + "createdAt": "2024-05-25T09:27:54.562508Z", + "description": "", + "id": "acly", + "logo": "", + "members": [], + "name": "Acly", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Acly/comfyui-inpaint-nodes", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-12T10:14:20.01542Z", + "description": "\u043d\u0430\u0431\u043e\u0440 \u043d\u043e\u0434: google translate, Concat Images, Flux/SD Latent Image", + "downloads": 1125, + "github_stars": 3, + "icon": "", + "id": "comfyui_gayrat", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-20T13:52:45.333623Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "e9bc897d-124e-4f53-93f5-eea76babe332", + "node_id": "comfyui_gayrat", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Gayrat", + "publisher": { + "createdAt": "2025-07-11T10:11:02.635343Z", + "description": "", + "id": "gayrat", + "logo": "", + "members": [], + "name": "Gayrat Vlasov", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gayratv/ComfyUI_Gayrat", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "ZHO-ZHO-ZHO", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:28.283439Z", + "description": "My Workflows + Auxiliary nodes for Stable Video Diffusion (SVD)", + "downloads": 0, + "github_stars": 107, + "icon": "", + "id": "ComfyUI-SVD-ZHO", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-SVD-ZHO (WIP)", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ZHO-ZHO-ZHO/ComfyUI-SVD-ZHO", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-01T00:26:37.91279Z", + "description": "With this suit, you can see the resources monitor, progress bar & time elapsed, metadata and compare between two images, compare between two JSONs, show any value to console/display, pipes, and more!\nThis provides better nodes to load/save images, previews, etc, and see \"hidden\" data without loading a new workflow.", + "downloads": 251399, + "github_stars": 1291, + "icon": "https://raw.githubusercontent.com/crystian/ComfyUI-Crystools/main/docs/screwdriver.png", + "id": "ComfyUI-Crystools", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-01T23:45:17.439454Z", + "dependencies": [ + "deepdiff", + "torch", + "numpy", + "Pillow", + "pynvml", + "py-cpuinfo" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b29e2759-32e7-4173-b96c-effc5d6ec622", + "node_id": "ComfyUI-Crystools", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.25.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Crystools", + "publisher": { + "createdAt": "2024-06-30T22:36:24.02671Z", + "description": "", + "id": "crystian", + "logo": "", + "members": [], + "name": "Crystian", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/crystian/ComfyUI-Crystools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "marcoc2", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:05.128651Z", + "description": "A collection of specialized image processing nodes for ComfyUI, focused on dataset preparation and pixel art manipulation.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-AnotherUtils", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Image Processing Suite for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/marcoc2/ComfyUI-AnotherUtils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ShmuelRonen", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:13.524241Z", + "description": "A ComfyUI custom node extension that integrates the Janus-Pro-7B vision-language model from DeepSeek AI on your's local computer, enabling powerful image understanding and multi-turn conversation capabilities.", + "downloads": 0, + "github_stars": 27, + "icon": "", + "id": "ComfyUI-Janus_pro_vision", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Janus Pro Vision", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShmuelRonen/ComfyUI-Janus_pro_vision", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:22.967109Z", + "description": "Pymunk is a easy-to-use pythonic 2d physics library that can be used whenever you need 2d rigid body physics from Python", + "downloads": 0, + "github_stars": 16, + "icon": "", + "id": "ComfyUI-Pymunk", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Pymunk", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-Pymunk", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "moustafa-nasr", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:09.521533Z", + "description": "A simple node to save your history in html file. I saves the WorkFlow with all it's input values so you can duplicate it later.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-SimpleLogger", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-SimpleLogger", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/moustafa-nasr/ComfyUI-SimpleLogger", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "pschroedl", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:10:56.182471Z", + "description": "NODES:(Down)Load SAM2-Realtime Model, Sam2RealtimeSegmentation", + "downloads": 0, + "github_stars": 14, + "icon": "", + "id": "ComfyUI-SAM2-Realtime", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-SAM2-Realtime", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pschroedl/ComfyUI-SAM2-Realtime", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ReBeating", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:07.06197Z", + "description": "A useful comfyui node named LoadArtistTag for selecting artist tags, including 1000+ single-artist tags and 300 mixed-artists tags.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-Artist-Selector", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Artist-Selector", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ReBeating/ComfyUI-Artist-Selector", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "iamandeepsandhu", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:10:57.962491Z", + "description": "This project is designed to detect whether images generated by ComfyUI are Not Safe For Work (NSFW). It uses a machine learning model to classify images as either safe or not safe for work and returns a confidence score for the NSFW classification.", + "downloads": 0, + "github_stars": 10, + "icon": "", + "id": "ComfyUI-NSFW-Check", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "NSFW Check for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/iamandeepsandhu/ComfyUI-NSFW-Check", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-24T13:51:09.731867Z", + "description": "Home Buying Decision Factors | \u4e70\u623f\u51b3\u7b56\u56e0\u5b50", + "downloads": 778, + "github_stars": 5, + "icon": "", + "id": "comfyui_baikong_buying", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-27T12:51:58.343551Z", + "dependencies": [ + "seaborn" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a9477314-8c3b-44c0-8c6c-8e6f57022a78", + "node_id": "comfyui_baikong_buying", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Baikong_Buying", + "publisher": { + "createdAt": "2024-06-20T14:26:34.480667Z", + "description": "", + "id": "baikong", + "logo": "", + "members": [], + "name": "BaiKong", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/JayLyu/ComfyUI_Baikong_Buying", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "SSsnap", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:49.961927Z", + "description": "preprocessing images, presented in a visual way. It also calculates the corresponding image area.", + "downloads": 0, + "github_stars": 61, + "icon": "", + "id": "ComfyUI-Snap_Processing", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Snap Processing for Comfyui", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SS-snap/ComfyUI-Snap_Processing", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "KoreTeknology", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:40.022787Z", + "description": "A research Node based project on Artificial Intelligence using ComfyUI visual editor with Stable diffusion Local processing focus in mind. This custom node is intended to serve the purpose to offer a large palette of prompting scenrarios, based on Public Checkpoint Models OR/AND Private custom Models and LoRas. It includes an integrated learning machine process as well as a set of workflows.", + "downloads": 0, + "github_stars": 63, + "icon": "", + "id": "ComfyUI-Universal-Styler", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Universal Styler", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/KoreTeknology/ComfyUI-Universal-Styler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "changwook987", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:43.038927Z", + "description": "Context menu extension for CLIPTextEncode (sort prompt), EmptyLatentImage (sdxl size selector).", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-Small-Utility", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Small-Utility", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/changwook987/ComfyUI-Small-Utility", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-09T22:01:42.999183Z", + "description": "ComfyUI extension that enables multi-GPU processing locally and remotely ", + "downloads": 7767, + "github_stars": 151, + "icon": "", + "id": "ComfyUI-Distributed", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-10T21:23:38.110646Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "0fb8d91e-e934-477a-9ef2-87594170c080", + "node_id": "ComfyUI-Distributed", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Distributed", + "publisher": { + "createdAt": "2024-11-21T06:05:18.377578Z", + "description": "", + "id": "robertvoy", + "logo": "", + "members": [], + "name": "WorldObserver", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/robertvoy/ComfyUI-Distributed", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-23T02:35:01.501828Z", + "description": "3D, ScreenShareNode & FloatingVideoNode, SpeechRecognition & SpeechSynthesis, GPT, LoadImagesFromLocal, Layers, Other Nodes, ...", + "downloads": 189885, + "github_stars": 1660, + "icon": "", + "id": "comfyui-mixlab-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-14T02:45:21.889769Z", + "dependencies": [ + "numpy", + "pyOpenSSL", + "watchdog", + "opencv-python-headless", + "matplotlib", + "openai", + "simple-lama-inpainting", + "clip-interrogator==0.6.0", + "transformers>=4.36.0", + "lark-parser", + "imageio-ffmpeg", + "rembg[gpu]", + "omegaconf==2.3.0", + "Pillow>=9.5.0", + "einops==0.7.0", + "trimesh>=4.0.5", + "huggingface-hub", + "scikit-image" + ], + "deprecated": false, + "downloadUrl": "", + "id": "26dbb61a-f0be-4d60-9446-82602d0dbdf4", + "node_id": "comfyui-mixlab-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.46.0" + }, + "license": "{\"text\": \"MIT\"}", + "name": "comfyui-mixlab-nodes", + "publisher": { + "createdAt": "2024-05-22T23:30:41.165122Z", + "description": "", + "id": "shadow", + "logo": "", + "members": [], + "name": "shadow", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shadowcz007/comfyui-mixlab-nodes", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-03T04:17:10.413714Z", + "description": "Custom ComfyUI nodes by SunX.AI", + "downloads": 204, + "github_stars": 0, + "icon": "https://avatars.githubusercontent.com/u/124853686", + "id": "comfyui_sun_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-09T03:38:15.627472Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "bcaff723-9fd5-4249-83d9-6f293dc64e73", + "node_id": "comfyui_sun_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.0.6" + }, + "license": "{\"text\": \"MIT license\"}", + "name": "ComfyUI Sun Nodes", + "publisher": { + "createdAt": "2025-07-02T10:51:01.041364Z", + "description": "", + "id": "sunxai", + "logo": "", + "members": [], + "name": "sunXAI", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/upseem/comfyui_sun_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-22T16:14:34.460285Z", + "description": "This node pack offers various detector nodes and detailer nodes that allow you to configure a workflow that automatically enhances facial details. And provide iterative upscaler.", + "downloads": 751029, + "github_stars": 2567, + "icon": "", + "id": "comfyui-impact-pack", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-19T11:07:39.658682Z", + "dependencies": [ + "segment-anything", + "scikit-image", + "piexif", + "transformers", + "opencv-python-headless", + "GitPython", + "scipy>=1.11.4" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5ebabfd3-8810-41fe-986f-75311debd0bb", + "node_id": "comfyui-impact-pack", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "8.21.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI Impact Pack", + "publisher": { + "createdAt": "2024-05-22T15:42:00.969348Z", + "description": "", + "id": "drltdata", + "logo": "", + "members": [], + "name": "Dr.Lt.Data", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ltdrdata/ComfyUI-Impact-Pack", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "kijai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:03.333247Z", + "description": "Nodes to use the OneVision LLaVA models: [a/https://github.com/LLaVA-VL/LLaVA-NeXT](https://github.com/LLaVA-VL/LLaVA-NeXT)", + "downloads": 0, + "github_stars": 85, + "icon": "", + "id": "ComfyUI-LLaVA-OneVision", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Llava-OneVision", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-LLaVA-OneVision", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-14T06:45:03.391029Z", + "description": "\u963f\u7ec4\u5c0f\u52a9\u624b\uff08Group Assistant\uff09,solves the problem that the native group function of ComfyUI mistakenly drags irrelevant nodes when dragging. It also realizes the automatic adjustment of group boundaries, making node arrangement neat and orderly. This makes the group function more useful.", + "downloads": 77, + "github_stars": 11, + "icon": "", + "id": "group-assistant", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-20T08:25:20.258998Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1c70648b-2da1-4f7c-a5d5-d51b4a67f870", + "node_id": "group-assistant", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "version": "1.0.4" + }, + "license": "{\"text\": \"GNU General Public License v3\"}", + "name": "Group Assistant", + "publisher": { + "createdAt": "2025-04-21T13:27:49.641984Z", + "description": "", + "id": "yawiii", + "logo": "", + "members": [], + "name": "Yawiii", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yawiii/comfyui_group_assistant", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-10T14:06:06.645924Z", + "description": "This is nodes for SongBloom.", + "downloads": 109, + "github_stars": 51, + "icon": "", + "id": "SongBloom", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-10T14:06:07.019707Z", + "dependencies": [ + "torch", + "torchaudio", + "transformers", + "safetensors", + "einops", + "omegaconf", + "lightning", + "wordsegment", + "g2p-en", + "nltk" + ], + "deprecated": false, + "downloadUrl": "", + "id": "9a3f206e-6c50-4f55-8ed2-4ba7f588cd17", + "node_id": "SongBloom", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-SongBloom", + "publisher": { + "createdAt": "2025-04-18T15:45:18.154914Z", + "description": "", + "id": "conex", + "logo": "", + "members": [], + "name": "Conex", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fredconex/ComfyUI-SongBloom", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "GiusTex", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:23.402005Z", + "description": "ComfyUI nodes for outpainting images with diffusers, based on [a/diffusers-image-outpaint](https://huggingface.co/spaces/fffiloni/diffusers-image-outpaint/tree/main) by fffiloni.", + "downloads": 0, + "github_stars": 88, + "icon": "", + "id": "ComfyUI-DiffusersImageOutpaint", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-DiffusersImageOutpaint", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/GiusTex/ComfyUI-DiffusersImageOutpaint", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Indra's Mirror", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:49.299763Z", + "description": "ComfyUI-Documents is a powerful extension for ComfyUI that enhances workflows with advanced document processing capabilities. It includes nodes for loading and parsing various document types (PDF, TXT, DOC, DOCX), converting PDF pages to images, splitting PDFs into individual pages, and selecting specific images from batches. Features include text extraction, image conversion, and seamless integration with existing ComfyUI projects.", + "downloads": 0, + "github_stars": 54, + "icon": "", + "id": "ComfyUI-Documents", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Documents", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Excidos/ComfyUI-Documents", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-23T05:39:15.197603Z", + "description": "To enhance the usability of ComfyUI, optimizations and integrations have been implemented for several commonly used nodes.", + "downloads": 736840, + "github_stars": 1737, + "icon": "", + "id": "comfyui-easy-use", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-29T03:43:51.764233Z", + "dependencies": [ + "diffusers", + "accelerate", + "clip_interrogator>=0.6.0", + "sentencepiece", + "lark", + "onnxruntime", + "spandrel", + "opencv-python", + "matplotlib", + "peft" + ], + "deprecated": false, + "downloadUrl": "", + "id": "73d888b0-3cba-4127-8d5d-085e84336590", + "node_id": "comfyui-easy-use", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.3.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Easy-Use", + "publisher": { + "createdAt": "2024-05-23T04:36:01.435556Z", + "description": "", + "id": "yolain", + "logo": "", + "members": [], + "name": "yolain", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yolain/ComfyUI-Easy-Use", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "rnbwdsh", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:58.478115Z", + "description": "Latent space walks for latents, conditionals and noise", + "downloads": 0, + "github_stars": 13, + "icon": "", + "id": "ComfyUI-LatentWalk", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Latent Walk", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/rnbwdsh/ComfyUI-LatentWalk", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kale4eat", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:21.503638Z", + "description": "Basic audio tools using torchaudio for ComfyUI. It is assumed to assist in the speech dataset creation for ASR, TTS, etc.", + "downloads": 0, + "github_stars": 19, + "icon": "", + "id": "ComfyUI-speech-dataset-toolkit", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-speech-dataset-toolkit", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kale4eat/ComfyUI-speech-dataset-toolkit", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-09T03:18:13.234048Z", + "description": "", + "downloads": 67, + "github_stars": 5, + "icon": "", + "id": "kyutaitts", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-09T03:18:13.627455Z", + "dependencies": [ + "sphn<0.2" + ], + "deprecated": false, + "downloadUrl": "", + "id": "79d09d42-41dc-49c4-a360-de245ef40a02", + "node_id": "kyutaitts", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-KyutaiTTS", + "publisher": { + "createdAt": "2025-04-30T04:38:53.073102Z", + "description": "", + "id": "bobrandomnumber", + "logo": "", + "members": [], + "name": "BobRandomNumber", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BobRandomNumber/ComfyUI-KyutaiTTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-01T09:06:40.210689Z", + "description": "An API interface for OpenOutpaint to work with ComfyUI workflows", + "downloads": 153, + "github_stars": 1, + "icon": "", + "id": "openoutpaint_comfyui_interface", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-01T09:06:40.609412Z", + "dependencies": [ + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5fd3b1ab-1e84-4145-8bef-56049a226765", + "node_id": "openoutpaint_comfyui_interface", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.0.3" + }, + "license": "{\"text\": \"GNU General Public License v3\"}", + "name": "OpenOutpaint ComfyUI Interface", + "publisher": { + "createdAt": "2025-06-08T01:17:36.775081Z", + "description": "", + "id": "without-ordinary", + "logo": "", + "members": [], + "name": "Without Ordinary", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/without-ordinary/openoutpaint_comfyui_interface", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T16:27:48.02642Z", + "description": "A custom node suite for Video Frame Interpolation in ComfyUI", + "downloads": 360999, + "github_stars": 749, + "icon": "", + "id": "comfyui-frame-interpolation", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-30T11:32:53.610548Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "d43410e6-aaac-4e9b-a45d-53c796f72879", + "node_id": "comfyui-frame-interpolation", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.7" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Frame-Interpolation", + "publisher": { + "createdAt": "2024-06-20T15:55:49.560354Z", + "description": "", + "id": "fannovel16", + "logo": "", + "members": [], + "name": "Fannovel16", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Fannovel16/ComfyUI-Frame-Interpolation", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "underclockeddev", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:47.101391Z", + "description": "Nodes:BrevImage. ComfyUI Load Image From URL", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "BrevImage", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "BrevImage", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bkunbargi/BrevImage", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-16T18:23:49.709376Z", + "description": "A collection of ComfyUI nodes that sculpt diffusion models by applying gradient-based modifications to different layers and blocks.", + "downloads": 191, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-JurdnsModelSculptor", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-16T18:23:50.328258Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "d91583e3-04a5-402b-be5b-547aec7d2f03", + "node_id": "ComfyUI-JurdnsModelSculptor", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-JurdnsModelSculptor", + "publisher": { + "createdAt": "2025-06-16T00:04:23.281552Z", + "description": "", + "id": "iamjurdn", + "logo": "", + "members": [], + "name": "iamjurdn", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jurdnf/ComfyUI-JurdnsModelSculptor.git", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-27T04:27:06.754619Z", + "description": "ComfyUI-Lightx2vWrapper is an inference wrapper for Lightx2v designed for use with ComfyUI.", + "downloads": 122, + "github_stars": 5, + "icon": "", + "id": "lightx2vwrapper", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-16T11:58:34.017582Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c1693df4-58dc-485f-b694-14f48c4c36d9", + "node_id": "lightx2vwrapper", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Lightx2vWrapper", + "publisher": { + "createdAt": "2025-06-27T04:07:31.019429Z", + "description": "", + "id": "gaclove", + "logo": "", + "members": [], + "name": "gaclove", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ModelTC/ComfyUI-Lightx2vWrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "lightricks", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:01.577921Z", + "description": "ComfyUI nodes for LTXVideo model.", + "downloads": 0, + "github_stars": 2207, + "icon": "", + "id": "ComfyUI-LTXVideo", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-LTXVideo", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Lightricks/ComfyUI-LTXVideo", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-05T22:04:25.559379Z", + "description": "This custom_node for ComfyUI adds one-click 'Virtual VRAM' for any GGUF UNet and CLIP loader, managing the offload of layers to DRAM or VRAM to maximize the latent space of your card. Also includes nodes for directly loading entire components (UNet, CLIP, VAE) onto the device you choose. Includes 16 examples covering common use cases. Includes support for kijai's ComfyUI-WanVideoWrapper and ComfyUI-HunyuanVideoWrapper, among other popular loaders.", + "downloads": 182334, + "github_stars": 355, + "icon": "https://raw.githubusercontent.com/pollockjj/ComfyUI-MultiGPU/main/assets/multigpu_icon.png", + "id": "comfyui-multigpu", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-17T23:43:23.194591Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c1a0a179-d15b-4836-a1a6-55e0c6588565", + "node_id": "comfyui-multigpu", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.7.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-MultiGPU", + "publisher": { + "createdAt": "2024-12-24T16:41:42.467052Z", + "description": "", + "id": "pollockjj", + "logo": "", + "members": [], + "name": "pollockjj", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pollockjj/ComfyUI-MultiGPU", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "DanielHabib", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:23.613526Z", + "description": "NODES:Mesh To Voxel, Voxel Block Saver, Voxel Viewer, Voxel Block Loader, Voxel Video Viewer, Voxel Blocks Into Voxel Video, Voxel Video Preview, Voxelize Mesh, ...", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-Voxels", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Voxels", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DanielHabib/ComfyUI-Voxels", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "BadCafeCode", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:17.119236Z", + "description": "This is a low-dependency node pack primarily dealing with masks. The author recommends using Impact-Pack instead (unless you specifically have trouble installing dependencies).", + "downloads": 0, + "github_stars": 433, + "icon": "", + "id": "masquerade-nodes-comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Masquerade Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BadCafeCode/masquerade-nodes-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-24T03:24:31.742429Z", + "description": "MatAnyone in ComfyUI (Remove background)", + "downloads": 0, + "github_stars": 10, + "icon": "", + "id": "matanyone", + "latest_version": { + "version": "nightly" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-MatAnyone", + "publisher": { + "createdAt": "2024-07-01T09:04:25.846954Z", + "description": "", + "id": "fuoumarinas", + "logo": "", + "members": [], + "name": "FuouM", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/FuouM/ComfyUI-MatAnyone", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-01T13:03:21.062188Z", + "description": "A simple ComfyUI node that allows you to use recent output images as input in your workflows.", + "downloads": 873, + "github_stars": 2, + "icon": "", + "id": "output_as_input", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-01T13:18:05.567108Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c220e277-1eba-44a0-943c-4bef90ba1009", + "node_id": "output_as_input", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Output_as_Input", + "publisher": { + "createdAt": "2025-01-09T15:11:06.760903Z", + "description": "", + "id": "a-und-b", + "logo": "", + "members": [], + "name": "a-und-b", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/a-und-b/ComfyUI_Output_as_Input", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "laksjdjf", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:55.926493Z", + "description": "ComfyUI version of https://github.com/laksjdjf/pfg-webui. (To use this extension, you need to download the required model file from **Install Models**)", + "downloads": 0, + "github_stars": 12, + "icon": "", + "id": "pfg-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "pfg-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/laksjdjf/pfg-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "logtd", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:30.600431Z", + "description": "ComfyUI nodes to use the SeeCoder from [a/Prompt-Free-Diffusion](https://github.com/SHI-Labs/Prompt-Free-Diffusion)", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-SeeCoder", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-SeeCoder", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/logtd/ComfyUI-SeeCoder", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "florestefano1975", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:25.682596Z", + "description": "ComfyUI Portrait Master. A node designed to help AI image creators to generate prompts for human portraits.", + "downloads": 0, + "github_stars": 1085, + "icon": "", + "id": "comfyui-portrait-master", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-portrait-master", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/florestefano1975/comfyui-portrait-master", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:55.972204Z", + "description": "a comfyui custom node for [a/I2V-Adapter](https://github.com/KwaiVGI/I2V-Adapter)", + "downloads": 0, + "github_stars": 21, + "icon": "", + "id": "ComfyUI-I2V-Adapter", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-I2V-Adapter", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/ComfyUI-I2V-Adapter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-10T06:11:51.046173Z", + "description": "Compare and save unique workflows, count tokens in prompt, and other utility.", + "downloads": 211, + "github_stars": 0, + "icon": "", + "id": "barakapa-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-10T06:11:51.469449Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "0e8437bb-fc39-4417-8adc-a1059a4cf2ff", + "node_id": "barakapa-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "barakapa-nodes", + "publisher": { + "createdAt": "2025-05-10T05:45:19.685086Z", + "description": "", + "id": "barakapa", + "logo": "", + "members": [], + "name": "barakapa", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/barakapa/barakapa-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Beinsezii", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:10.212082Z", + "description": "This contains all-in-one 'principled' nodes for T2I, I2I, refining, and scaling. Additionally it has many tools for directly manipulating the color of latents, high res fix math, and scripted image post-processing.", + "downloads": 0, + "github_stars": 24, + "icon": "", + "id": "bsz-cui-extras", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "bsz-cui-extras", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Beinsezii/bsz-cui-extras", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jefferyharrell", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:09.882823Z", + "description": "NODES: Daisy-Chainable String Constant, Two-Way Switch, Three-Way Switch, Preview Imag\nMiscellaneous custom nodes for ComfyUI", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-JH-Misc-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "JH Misc. Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ComfyUI-JH/ComfyUI-JH-Misc-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ptmaster", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:54.392049Z", + "description": "NODES: OverrideLoadedDiffusionDevice.\nI happen to have two graphics cards, and I want to load models into another graphics card in Comfyui, so I designed this small node.", + "downloads": 0, + "github_stars": 10, + "icon": "", + "id": "ComfyUI-Load-Diffusion-Model-to-Muti-GPUs", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Load-Diffusion-Model-to-Muti-GPUs", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ptmaster/ComfyUI-Load-Diffusion-Model-to-Muti-GPUs", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "shingo1228", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:55.131084Z", + "description": "Nodes:SDXL Empty Latent Image. An extension node for ComfyUI that allows you to select a resolution from the pre-defined json files and output a Latent Image.", + "downloads": 0, + "github_stars": 36, + "icon": "", + "id": "ComfyUI-SDXL-EmptyLatentImage", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-SDXL-EmptyLatentImage", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shingo1228/ComfyUI-SDXL-EmptyLatentImage", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "space-nuko", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:40.384633Z", + "description": "A port of the openpose-editor extension for stable-diffusion-webui. NOTE: Requires [a/this ComfyUI patch](https://github.com/comfyanonymous/ComfyUI/pull/711) to work correctly", + "downloads": 0, + "github_stars": 214, + "icon": "", + "id": "space-nuko_ComfyUI-OpenPose-Editor", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "OpenPose Editor", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/space-nuko/ComfyUI-OpenPose-Editor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "WebDev9000", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:48.56451Z", + "description": "Nodes:Ignore Braces, Settings Switch.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "WebDev9000-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "WebDev9000-Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/WebDev9000/WebDev9000-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-15T12:02:53.45246Z", + "description": "A set of nodes for ComfyUI to support extended use.", + "downloads": 753, + "github_stars": 0, + "icon": "", + "id": "smn_support_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-16T08:04:53.963041Z", + "dependencies": [ + "opencv-python", + "imageio-ffmpeg" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f863837a-c11f-455f-a73c-d09d89cc36d6", + "node_id": "smn_support_nodes", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "smn_support_nodes", + "publisher": { + "createdAt": "2025-07-15T10:29:09.882241Z", + "description": "", + "id": "summonthecat", + "logo": "", + "members": [], + "name": "SummonTheCat", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SummonTheCat/smn_support_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-04T15:01:11.524456Z", + "description": "Some custom nodes for comfyui", + "downloads": 54, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-BBTools", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-04T15:01:11.919811Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "eb57e448-a241-4110-95b6-91a1d8e13b7c", + "node_id": "ComfyUI-BBTools", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.0.2" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-BBTools", + "publisher": { + "createdAt": "2025-07-04T13:18:41.077365Z", + "description": "", + "id": "bbaudio", + "logo": "", + "members": [], + "name": "bbaudio", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bbaudio-2025/ComfyUI-BBTools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-25T23:29:07.759802Z", + "description": "Main nodes of the Level Pixel company (levelpixel, LP). In this package you will find easy-to-use atomic nodes that can help automate various processes - memory cleaning automation (RAM free, VRAM free), Lora loading like in Automatic1111, powerful inpaint crop and stitch, pipeline, declaring standard variables, converting variables, google translate, filtering tags by categories, working with file system, counting files in file system, counting objects, counting images. The names of the key nodes in this package are: Inpaint-CropAndStitch, Inpaint Crop, Inpaint Stitch, Resize Image, Resize Mask, Model Unloader, Free memory, Tag Filters, Tag Category Filters, Tag Choice Parser, File counter, Image Loader From Path (with counters), Google Translator, Language Translator, Override Device, Delay, Lora Tag Loader, Pipeline, Resize Masks, Resize Image. Licensed under GNU GPLv3. Repository: https://github.com/LevelPixel/ComfyUI-LevelPixel", + "downloads": 8235, + "github_stars": 12, + "icon": "https://avatars.githubusercontent.com/u/175361036", + "id": "comfyui-levelpixel", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-07T23:06:03.191677Z", + "dependencies": [ + "torch>=2.0.1", + "numpy", + "matplotlib", + "langdetect", + "deep_translator>=1.11.4", + "wordninja" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7a164df4-ded2-499c-a0a3-ddff303a11fd", + "node_id": "comfyui-levelpixel", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.8" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI Level Pixel", + "publisher": { + "createdAt": "2025-05-25T22:59:41.044573Z", + "description": "", + "id": "levelpixel", + "logo": "", + "members": [], + "name": "Level Pixel", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LevelPixel/ComfyUI-LevelPixel", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:54.687745Z", + "description": "a node for [a/AuraSR](https://github.com/fal-ai/aura-sr)", + "downloads": 0, + "github_stars": 22, + "icon": "", + "id": "AIFSH_ComfyUI-AuraSR", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "AIFSH/ComfyUI-AuraSR", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/ComfyUI-AuraSR", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-06T17:54:37.577899Z", + "description": "Nodes related to [Spark-TTS](https://github.com/SparkAudio/Spark-TTS).", + "downloads": 748, + "github_stars": 17, + "icon": "", + "id": "comfyui-sparktts", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-09T02:01:26.560851Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "2aabfc26-1dd2-4fdd-8f44-17a9ed40fdea", + "node_id": "comfyui-sparktts", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-SparkTTS", + "publisher": { + "createdAt": "2025-03-06T17:46:49.838239Z", + "description": "", + "id": "comfyuisparktts", + "logo": "", + "members": [], + "name": "ComfyUI_SparkTTS", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/civen-cn/ComfyUI_SparkTTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "snomiao", + "banner_url": "", + "category": "node", + "created_at": "2025-07-11T10:05:11.534467Z", + "description": "no desc", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "sno-test-unclaimed-node-2", + "latest_version": { + "version": "nightly" + }, + "license": "{file=\"LICENSE\"}", + "name": "sno-test-unclaimed-node-2", + "publisher": { + "createdAt": "2025-03-06T02:48:14.339438Z", + "description": "", + "id": "snomiao-test", + "logo": "", + "members": [], + "name": "snomiao-test Just for test, dont download", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/snomiao/yes-claude", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "kijai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:04.753641Z", + "description": "ComfyUI nodes to use Lotus depth/normal prediction.\nNOTE:The necessary models can be downloaded from ComfyUI-Manager.", + "downloads": 0, + "github_stars": 139, + "icon": "", + "id": "ComfyUI-Lotus", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Lotus", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-Lotus", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "BlakeOne", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:16.436847Z", + "description": "Create a custom scheduler from a weighted average of the built-in schedulers", + "downloads": 0, + "github_stars": 10, + "icon": "", + "id": "ComfyUI-SchedulerMixer", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI SchedulerMixer", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BlakeOne/ComfyUI-SchedulerMixer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "florestefano1975", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:26.390452Z", + "description": "A suite of tools for prompt management. Combining nodes helps the user sequence strings for prompts, also creating logical groupings if necessary. Individual nodes can be chained together in any order.", + "downloads": 0, + "github_stars": 277, + "icon": "", + "id": "comfyui-prompt-composer", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-prompt-composer", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/florestefano1975/comfyui-prompt-composer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AustinMroz", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:59.090358Z", + "description": "Experimental utility nodes with a focus on manipulation of noised latents", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "ComfyUI-SpliceTools", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "SpliceTools", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AustinMroz/ComfyUI-SpliceTools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "DraconicDragon", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:05.161436Z", + "description": "A custom node implementation for ComfyUI that integrates with venice.ai's Flux and SDXL image generation models. This project is adapted from [a/ComfyUI-FLUX-TOGETHER-API](https://github.com/BZcreativ/ComfyUI-FLUX-TOGETHER-API) to work with the venice.ai API.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI-Venice-API", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Venice-API", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DraconicDragon/ComfyUI-Venice-API", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yiwangsimple", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:39.305516Z", + "description": "Content generation with open source models in comfyui via graq api implementation.\n[w/This repo is renamed from ComfyUI_GroqChat to ComfyUI_DW_CHAT. Please remove previous one and reinstall to this.]", + "downloads": 0, + "github_stars": 88, + "icon": "", + "id": "ComfyUI_DW_Chat", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_DW_Chat", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yiwangsimple/ComfyUI_DW_Chat", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "KunmyonChoi", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:49.492292Z", + "description": "ComfyUI custom_node that load and save file directly from S3\nSimplified version of [a/https://github.com/kealiu/ComfyUI-S3-Tools](https://github.com/kealiu/ComfyUI-S3-Tools)", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI_S3_direct", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_S3_direct", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/KunmyonChoi/ComfyUI_S3_direct", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Artiprocher", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:55.349352Z", + "description": "The FLUX model API from DashScope, developed by Black Forest Labs, offers superior image generation capabilities with optimized support for Chinese prompts, achieving a commendable tradeoff between performance and the quality of generated images compared to other open-source models.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "comfyscope", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Dashscope FLUX API for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/modelscope/comfyscope", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "rdancer", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:47.982688Z", + "description": "ComfyUI custom node implementing Florence 2 + Segment Anything Model 2, based on [a/SkalskiP's HuggingFace space](https://huggingface.co/spaces/SkalskiP/florence-sam)", + "downloads": 0, + "github_stars": 40, + "icon": "", + "id": "ComfyUI_Florence2SAM2", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Florence2SAM2", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/rdancer/ComfyUI_Florence2SAM2", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "westNeighbor", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:09.694396Z", + "description": "Enhanced features with flexible choice of inputs and outputs, fine control for pose plotting, freedom to composite poses and fast local pose editting.", + "downloads": 0, + "github_stars": 66, + "icon": "", + "id": "westNeighbor_ComfyUI-ultimate-openpose-editor", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ultimate-openpose-editor", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/westNeighbor/ComfyUI-ultimate-openpose-editor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Ron-Digital", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:28.593904Z", + "description": "ComfyUI-SceneGenerator is a ComfyUI plugin used to generate scene preview photos from JSON files. This plugin creates scenes based on the provided JSON configuration and produces two different image outputs: one containing only the products and the other containing both the products and the props.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-SceneGenerator", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-SceneGenerator", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Ron-Digital/ComfyUI-SceneGenerator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-17T05:23:14.630871Z", + "description": "ComfyUI custom node package. This custom node features multiple practical functions, including global variables, flow control, obtaining image or mask dimensions, and Dominant Axis Scale.", + "downloads": 35, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-WBLESS", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-18T04:11:50.421927Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1a3a67b6-5448-4daa-a6f8-663b89c7a3f6", + "node_id": "ComfyUI-WBLESS", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "2.1.1" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI-WBLESS", + "publisher": { + "createdAt": "2025-07-17T04:25:50.501931Z", + "description": "", + "id": "laomaoboss", + "logo": "", + "members": [], + "name": "LaoMaoBoss", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LaoMaoBoss/ComfyUI-WBLESS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:55.203547Z", + "description": "a comfyui custom node for [a/MARS5-TTS](https://github.com/Camb-ai/MARS5-TTS)", + "downloads": 0, + "github_stars": 29, + "icon": "", + "id": "ComfyUI-MARS5-TTS", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-MARS5-TTS", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/ComfyUI-MARS5-TTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "SEkINVR", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:36.396687Z", + "description": "This custom node for ComfyUI allows you to save images in multiple formats, including PNG, JPG, WebP, and ICO.\n[w/ComfyUI-Save-Multi-Format is renamed to SaveAs. Remove previous one and reinstall to this.]", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "ComfyUI-SaveAs", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI SaveAS", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SEkINVR/ComfyUI-SaveAs", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "r3dsd", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:12.512861Z", + "description": "Easily Load Your Frequently Used Prompts in ComfyUI\nWith ComfyUI Template Loader, managing and reusing your favorite prompts has never been simpler. Save time and streamline your workflow by loading your go-to templates with just a few clicks!", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui-template-loader", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui-Template-Loader", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/r3dsd/comfyui-template-loader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-21T12:10:03.814563Z", + "description": "The '\u2702\ufe0f Inpaint Crop' and '\u2702\ufe0f Inpaint Stitch' nodes enable inpainting only on masked area very easily: crop the image around the masked area with the Crop node, then use any standard workflow for sampling, then connect the sampled image to the Stitch node, which will put it back in place in the original image. These nodes enable faster sampling of smaller areas and take care of downsampling and upsampling to fit specific model and resource needs.", + "downloads": 183264, + "github_stars": 748, + "icon": "", + "id": "comfyui-inpaint-cropandstitch", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-10T07:47:13.211532Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "dab30526-0ba3-4750-8f94-b244a2a5262c", + "node_id": "comfyui-inpaint-cropandstitch", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.1.7" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Inpaint-CropAndStitch", + "publisher": { + "createdAt": "2024-06-20T04:42:10.628776Z", + "description": "", + "id": "lquesada", + "logo": "", + "members": [], + "name": "Luis Quesada", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lquesada/ComfyUI-Inpaint-CropAndStitch", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "fat-tire", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:06.220356Z", + "description": "Lightweight [a/PyAV](https://pypi.org/project/av/)-powered ComfyUI nodes to load/save multimedia.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "comfyui-unified-media-suite", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Unified Media Suite", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fat-tire/comfyui-unified-media-suite", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "tanglaoya321", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:22.272908Z", + "description": "NODES:StoryMakerSinglePortraitNode, StoryMakerTwoPortraitNode, StoryMakerSwapClothNode.", + "downloads": 0, + "github_stars": 17, + "icon": "", + "id": "ComfyUI-StoryMaker", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-StoryMaker", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tanglaoya321/ComfyUI-StoryMaker", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chenbaiyujason", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:20.030988Z", + "description": "To use stepfun's library, you need an official api that supports multimodal inputs such as video and pictures [a/https://platform.stepfun.com/request-restriction](https://platform.stepfun.com/request-restriction)", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "ComfyUI_StepFun", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-SCStepFun", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chenbaiyujason/ComfyUI_StepFun", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "11dogzi", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:01.160729Z", + "description": "Group switching control, one click control to ignore and disable multiple groups, as well as wired switch combination nodes, allowing for arbitrary switching of annotation names", + "downloads": 0, + "github_stars": 68, + "icon": "", + "id": "Comfyui-ergouzi-kaiguan", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui-ergouzi-kaiguan", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/11dogzi/Comfyui-ergouzi-kaiguan", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "shinich39", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:59.53586Z", + "description": "Move canvas to target on dragging connection.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui-target-search", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-target-search", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shinich39/comfyui-target-search", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "inflamously", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:43.123922Z", + "description": "A crazy node that pragmatically just enhances a given prompt with various descriptions in the hope that the image quality just increase and prompting just gets easier.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui-prompt-enhancer", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-prompt-enhancer", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/inflamously/comfyui-prompt-enhancer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "superyoman", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:15.24277Z", + "description": "Unofficial Luma API-ComfyUI version.[w/WARN: This project is for learning purpose only!]", + "downloads": 0, + "github_stars": 21, + "icon": "", + "id": "comfyui_lumaAPI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui_lumaAPI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/superyoman/comfyui_lumaAPI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-24T10:47:41.088145Z", + "description": "Workflow templates from ComfyUI Wiki - No custom nodes or dependencies included", + "downloads": 1644, + "github_stars": 0, + "icon": "", + "id": "comfyui-wiki-workflows", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-15T14:26:01.727962Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "af29fb45-c297-4727-9f46-8a0d680c100c", + "node_id": "comfyui-wiki-workflows", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": ">=1.0.0", + "supported_os": [], + "version": "0.1.4" + }, + "license": "{}", + "name": "ComfyUI Wiki Workflows", + "publisher": { + "createdAt": "2025-06-24T10:37:13.349807Z", + "description": "", + "id": "comfyui-wiki", + "logo": "", + "members": [], + "name": "ComfyUI Wiki", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/comfyui-wiki/ComfyUI-Wiki-Workflows", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": ">=1.0.0", + "supported_os": [], + "tags": [] + }, + { + "author": "807502278", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:56.023551Z", + "description": "Ready to use upon download. No need to install dependencies for the time being.\nIf there are new functions or suggestions, please provide feedback.\nAttention! The delfile node is not recommended for use on servers. I am not responsible for any losses incurred.", + "downloads": 0, + "github_stars": 11, + "icon": "", + "id": "ComfyUI-WJNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-WJNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/807502278/ComfyUI-WJNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jstit", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:38.257098Z", + "description": "Nodes:Download Dreambooth Checkpoint, Get Random Value From List, Load Canny Pose Face, Transparent to White Background, Download Flux Lora.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-HeadshotPro", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-HeadshotPro", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/HeadshotPro/ComfyUI-HeadshotPro", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-28T03:15:00.378591Z", + "description": "ComfyUI Unique3D is custom nodes that running AiuniAI/Unique3D into ComfyUI[w/Please follow readme to install with ComfyUI embedded python.]", + "downloads": 1035, + "github_stars": 213, + "icon": "", + "id": "comfyui-unique3d", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-28T03:15:02.18104Z", + "dependencies": [ + "accelerate", + "datasets", + "fire", + "numba", + "opencv_python_headless", + "ort_nightly_gpu", + "peft", + "rembg[gpu]", + "wandb" + ], + "deprecated": false, + "downloadUrl": "", + "id": "949a8300-232a-42b6-8920-ffba9317d7d0", + "node_id": "comfyui-unique3d", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-Unique3D", + "publisher": { + "createdAt": "2024-06-15T12:22:05.599707Z", + "description": "", + "id": "jtydhr88", + "logo": "", + "members": [], + "name": "Terry Jia", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jtydhr88/ComfyUI-Unique3D", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:25.972147Z", + "description": "DragAnything", + "downloads": 0, + "github_stars": 70, + "icon": "", + "id": "ComfyUI-DragAnything", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-DragAnything", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-DragAnything", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "attashe", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:48.786273Z", + "description": "Implement Region Attention for Flux model. Add node RegionAttention that takes a regions - mask + condition, mask could be set from comfyui masks or bbox in FluxRegionBBOX node.\nThis code is not optimized and has a memory leak. If you caught a OOM just try run a query againg - works on my RTX3080. For generation it uses a usual prompt that have influence to all picture and a regions that have their own prompts.\nBase prompt good for setup background and style of image. This is train-free technique and results not always stable - sometimes need to try several seeds or change prompt.", + "downloads": 0, + "github_stars": 133, + "icon": "", + "id": "ComfyUI-FluxRegionAttention", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-FluxRegionAttention", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/attashe/ComfyUI-FluxRegionAttention", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "blob8", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:15.032556Z", + "description": "Using IPAdapter for style consistency, the node accepts a story structured as text {prompt} text {prompt} etc. and generates a comic, saving it to /output. It also adds LLM API Request node, providing an openai compatible LLM API for generating the stories.", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "ComfyUI_sloppy-comic", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_sloppy-comic", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/blob8/ComfyUI_sloppy-comic", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-25T03:18:35.896972Z", + "description": "A set of nodes for ComfyUI it generate image like Adobe Photoshop's Layer Style. the Drop Shadow is first completed node, and follow-up work is in progress.", + "downloads": 412310, + "github_stars": 2419, + "icon": "", + "id": "comfyui_layerstyle", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-17T12:42:26.203455Z", + "dependencies": [ + "numpy", + "pillow", + "torch", + "matplotlib", + "Scipy", + "scikit_image", + "scikit_learn", + "opencv-contrib-python", + "pymatting", + "segment_anything", + "timm", + "addict", + "yapf", + "colour-science", + "wget", + "mediapipe", + "loguru", + "typer_config", + "fastapi", + "rich", + "google-generativeai", + "diffusers", + "omegaconf", + "tqdm", + "transformers", + "kornia", + "image-reward", + "ultralytics", + "blend_modes", + "blind-watermark", + "qrcode", + "pyzbar", + "transparent-background", + "huggingface_hub", + "accelerate", + "bitsandbytes", + "torchscale", + "wandb", + "hydra-core", + "psd-tools", + "inference-cli[yolo-world]", + "inference-gpu[yolo-world]", + "onnxruntime", + "peft", + "iopath" + ], + "deprecated": false, + "downloadUrl": "", + "id": "34d7384d-8c43-45f2-b821-fd6bd8968c98", + "node_id": "comfyui_layerstyle", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.90" + }, + "license": "{\"text\": \"MIT\"}", + "name": "ComfyUI_LayerStyle", + "publisher": { + "createdAt": "2024-05-23T03:18:42.518862Z", + "description": "", + "id": "chflame163", + "logo": "", + "members": [], + "name": "chflame163", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chflame163/ComfyUI_LayerStyle", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-02T22:34:14.310323Z", + "description": "Google AI Studio by BuffMcBigHuge", + "downloads": 293, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-Google-AI-Studio", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-02T22:34:14.680661Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1ac6fc96-0a4b-41bd-921a-f8d707e89313", + "node_id": "ComfyUI-Google-AI-Studio", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI-Google-AI-Studio", + "publisher": { + "createdAt": "2025-02-17T18:22:22.987749Z", + "description": "", + "id": "buffmcbighuge", + "logo": "", + "members": [], + "name": "BuffMcBigHuge", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BuffMcBigHuge/ComfyUI-Google-AI-Studio", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "yffyhk", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:47.711286Z", + "description": "Nodes: Get Danbooru, Tag Encode", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "comfyui_auto_danbooru", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui_auto_danbooru", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yffyhk/comfyui_auto_danbooru", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-06T04:12:06.048688Z", + "description": "Sync with version of BiRefNet. NODES:AutoDownloadBiRefNetModel, LoadRembgByBiRefNetModel, RembgByBiRefNet, RembgByBiRefNetAdvanced, GetMaskByBiRefNet, BlurFusionForegroundEstimation.", + "downloads": 80778, + "github_stars": 232, + "icon": "", + "id": "comfyui_birefnet_ll", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-01T16:39:43.588888Z", + "dependencies": [ + "numpy", + "opencv-python", + "timm" + ], + "deprecated": false, + "downloadUrl": "", + "id": "8e3aae27-0b84-4a95-a811-646c1cce1d15", + "node_id": "comfyui_birefnet_ll", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_BiRefNet_ll", + "publisher": { + "createdAt": "2024-08-02T08:30:49.205493Z", + "description": "", + "id": "lldacing", + "logo": "", + "members": [], + "name": "lldacing", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lldacing/ComfyUI_BiRefNet_ll", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "CaptainGrock", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:44.510965Z", + "description": "Nodes:Apply Invisible Watermark, Extract Watermark. Adds up to 12 characters encoded into an image that can be extracted.", + "downloads": 0, + "github_stars": 11, + "icon": "", + "id": "ComfyUIInvisibleWatermark", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUIInvisibleWatermark", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/CaptainGrock/ComfyUIInvisibleWatermark", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chrish-slingshot", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:18.126617Z", + "description": "A mixture of effects and quality of life nodes. Nodes: ImageGlitcher (gives an image a cool glitchy effect), ColorStylizer (highlights a single color in an image), QueryLocalLLM (queries a local LLM API though oobabooga), SDXLReslution (resolution picker for the standard SDXL resolutions, the complete list), SDXLResolutionSplit (splits the SDXL resolution into width and height). ", + "downloads": 0, + "github_stars": 13, + "icon": "", + "id": "CrasHUtils", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "CrasH Utils", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chrish-slingshot/CrasHUtils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-03T21:50:26.525462Z", + "description": "", + "downloads": 78, + "github_stars": 1, + "icon": "", + "id": "pvm-node", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-21T01:40:04.257964Z", + "dependencies": [ + "syncsdk==0.1.9" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a9b2c985-483f-4da6-92ce-95795b214e54", + "node_id": "pvm-node", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-pvm-node", + "publisher": { + "createdAt": "2025-07-03T21:46:14.560645Z", + "description": "", + "id": "sync-pvmessenger-node", + "logo": "", + "members": [], + "name": "sync-pvmessenger-node", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wasilone11/comfyui-pvm-node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:59.803241Z", + "description": "a comfyui custom node for [a/DH_live](https://github.com/kleinlee/DH_live)", + "downloads": 0, + "github_stars": 24, + "icon": "", + "id": "DHLive-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "DHLive-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/DHLive-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "florestefano1975", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:27.880037Z", + "description": "Simple custom nodes for testing and use HiDiffusion technology: https://github.com/megvii-research/HiDiffusion/", + "downloads": 0, + "github_stars": 141, + "icon": "", + "id": "ComfyUI-HiDiffusion", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI HiDiffusion", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/florestefano1975/ComfyUI-HiDiffusion", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-14T17:03:00.117504Z", + "description": "A YOLOv5 face detection project for ComfyUI.", + "downloads": 27, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-yolov5-face", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-14T17:03:00.519414Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a26f0ce5-c9e1-4378-bc91-3c1f198b0e76", + "node_id": "ComfyUI-yolov5-face", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-yolov5-face", + "publisher": { + "createdAt": "2025-03-01T06:21:21.528744Z", + "description": "", + "id": "jisenhua", + "logo": "", + "members": [], + "name": "JiSenHua", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/JiSenHua/ComfyUI-yolov5-face", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "denfrost", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:00.898441Z", + "description": "Custom nodes make easy Advanced Workflows. Focus on Image/Video and ControlNet efficiency and performances. Manipulation of Latent Space, Automatic pipeline with a bit efforts.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "Den_ComfyUI_Workflow", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Den_ComfyUI_Workflows", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/denfrost/Den_ComfyUI_Workflow", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ultimatech-cn", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:50.921336Z", + "description": "A ComfyUI custom node for face comparison. This node utilizes Face++'s facial recognition and comparison algorithms by directly calling the Face++ API. Its usage in the workflow is as follows:", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "FaceSimilarity", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "FaceSimilarity", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ultimatech-cn/FaceSimilarity", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "LatentRat", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:05:57.470254Z", + "description": "Nodes to run nodes on remote ComfyUI instances.", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "comfy_remote_run", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfy_remote_run", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LatentRat/comfy_remote_run", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIPOQUE", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:10:50.84691Z", + "description": "Without fine-tuning, FLUX.1 Dev model cannot understand exact color codes. However, it is known that FLUX.1 Dev can repeatedly produce certain colors with certain prompt(color name). Fortunately, on CIVITAI, [a/\u201cnovuschroma\u201d shared 155 pre-tested color names](https://civitai.com/models/879997/color-wildcards-for-flux-and-sdxl) that FLUX.1 Dev can handle. Thanks to his resource, color palette consists exclusively of 155 colors can be configured. \u2018ColorPalette\u2019 node from ComfyUI APQNodes converts input hex color code to the most similar color name(from pre-tested 155 color names) of which FLUX.1 Dev is aware.", + "downloads": 0, + "github_stars": 105, + "icon": "", + "id": "ComfyUI-APQNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-APQNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIPOQUE/ComfyUI-APQNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-17T14:55:11.382352Z", + "description": "A floating dialog-based image preview and selection system for ComfyUI.", + "downloads": 29, + "github_stars": 0, + "icon": "", + "id": "Preview_Selector", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-18T13:56:47.582414Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "bd9b9337-9ffc-4359-905e-20be226ca2eb", + "node_id": "Preview_Selector", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "NF Preview Selector", + "publisher": { + "createdAt": "2025-07-16T11:25:52.392462Z", + "description": "", + "id": "nyafu", + "logo": "", + "members": [], + "name": "NyaFu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/NyaFuP/ComfyUI_Preview_Selector", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-25T22:07:02.114464Z", + "description": "", + "downloads": 165, + "github_stars": 1, + "icon": "", + "id": "comfyui-sync-lipsync-node", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-18T23:39:14.074884Z", + "dependencies": [ + "requests==2.32.3", + "syncsdk==0.1.9", + "protobuf<6.0.0,>=3.20.3" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7188c156-e970-48a1-8518-68a041d51eb5", + "node_id": "comfyui-sync-lipsync-node", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-sync-lipsync-node", + "publisher": { + "createdAt": "2025-06-25T21:51:18.80003Z", + "description": "", + "id": "wasilone-sync", + "logo": "", + "members": [], + "name": "sync-custom-node", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wasilone11/comfyui-sync-lipsync-node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-12T17:03:28.579722Z", + "description": "Implement Telegram into your ComfyUI workflows.", + "downloads": 39, + "github_stars": 0, + "icon": "", + "id": "comfyui-telegram-suite", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-12T19:05:29.037684Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ad45a811-0d9f-4ea6-bd89-de3a5385dbcf", + "node_id": "comfyui-telegram-suite", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Telegram Suite", + "publisher": { + "createdAt": "2025-07-12T16:13:55.409001Z", + "description": "", + "id": "swisscore-py", + "logo": "", + "members": [], + "name": "SwissCorePy", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SwissCore92/comfyui-telegram-suite", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "YOUR-WORST-TACO", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:12.486878Z", + "description": "Nodes:TacoLatent, TacoAnimatedLoader, TacoImg2ImgAnimatedLoader, TacoGifMaker.", + "downloads": 0, + "github_stars": 15, + "icon": "", + "id": "ComfyUI-TacoNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-TacoNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/YOUR-WORST-TACO/ComfyUI-TacoNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "toxicwind", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:09.41718Z", + "description": "Text Randomization and Formatting, JSON Extraction and Processing, SD3 Resolution Solver", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-TTools", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "TTools for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/toxicwind/ComfyUI-TTools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kadirnar", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:51.309567Z", + "description": "ComfyUI-Transformers is a cutting-edge project combining the power of computer vision and natural language processing to create intuitive and user-friendly interfaces. Our goal is to make technology more accessible and engaging.", + "downloads": 0, + "github_stars": 21, + "icon": "", + "id": "ComfyUI-Transformers", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Transformers", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kadirnar/ComfyUI-Transformers", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ShmuelRonen", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:15.647436Z", + "description": "An advanced custom node for ComfyUI that provides optimized access to Wan2.1, a state-of-the-art video foundation model suite. The WanVideoKsampler node features intelligent memory management to enable higher resolution outputs and longer video sequences, even on consumer-grade hardware.", + "downloads": 0, + "github_stars": 35, + "icon": "", + "id": "ComfyUI-WanVideoKsampler", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-WanVideoKsampler", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShmuelRonen/ComfyUI-WanVideoKsampler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "gorillaframeai", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:22.053069Z", + "description": "These custom nodes for ComfyUI provide advanced text translation capabilities using Google Translate. They are designed for seamless integration into the ComfyUI environment, offering users powerful tools for text and JSON file translation tasks.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "GF_translate", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "GF_translate", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gorillaframeai/GF_translate", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "LarryJane491", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:47.850865Z", + "description": "If you see this message, your ComfyUI-Manager is outdated.\nRecent channel provides only the list of the latest nodes. If you want to find the complete node list, please go to the Default channel.\nMaking LoRA has never been easier!", + "downloads": 0, + "github_stars": 483, + "icon": "", + "id": "Lora-Training-in-Comfy", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Lora-Training-in-Comfy", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LarryJane491/Lora-Training-in-Comfy", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ShmuelRonen", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:06.082252Z", + "description": "A custom node that provides enhanced control over style transfer balance when using FLUX style models in ComfyUI. This node offers better control over the influence of text prompts versus style reference images.", + "downloads": 0, + "github_stars": 9, + "icon": "", + "id": "ComfyUI-Apply_Style_Model_Adjust", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Apply Style Model Adjust for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShmuelRonen/ComfyUI-Apply_Style_Model_Adjust", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "philz1337x", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:39.322052Z", + "description": "[a/Clarity AI](https://clarityai.cc) is a creative image enhancer and is able to upscale to high resolution. [w/NOTE: This is a Magnific AI alternative for ComfyUI.] \nCreate an API key on [a/ClarityAI.cc/api](https://clarityai.cc/api) and add to environment variable 'CAI_API_KEY'\nAlternatively you can write your API key to file 'cai_platform_key.txt'\nYou can also use and/or override the above by entering your API key in the 'api_key_override' field of the node.", + "downloads": 0, + "github_stars": 184, + "icon": "", + "id": "ComfyUI-ClarityAI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "\u2728 Clarity AI - Creative Image Upscaler and Enhancer for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/philz1337x/ComfyUI-ClarityAI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-19T10:58:53.446947Z", + "description": "A set of useful nodes for convenient use of ComfyUI, including: Seed randomization before the generation process starts, with saving of the last used values and the ability to automatically interrupt the current generation; A function to pause the generation process; Slider nodes for convenient control of input parameters; An alternative version of the standard Reroute node.", + "downloads": 211821, + "github_stars": 235, + "icon": "", + "id": "comfyui-mxtoolkit", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-07T11:44:57.919194Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "19500101-8ec0-4568-9681-c0dce1afc6c4", + "node_id": "comfyui-mxtoolkit", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.9.92" + }, + "license": "{\"text\": \"GNU General Public License v3.0\"}", + "name": "ComfyUI-mxToolkit", + "publisher": { + "createdAt": "2024-06-19T10:15:21.707898Z", + "description": "", + "id": "smirnov", + "logo": "", + "members": [], + "name": "Max Smirnov", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Smirnov75/ComfyUI-mxToolkit", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "GadzoinksOfficial", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:45.364371Z", + "description": "Custom node for integrating with gadzoinks iPhone app", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "gadzoinks_ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Gadzoinks", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/GadzoinksOfficial/gadzoinks_ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-03T22:19:32.966282Z", + "description": "A simple and practical ComfyUI prompt manager \u2014 built to make your workflow easier.", + "downloads": 44, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-PromptManager", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-03T22:19:33.358528Z", + "dependencies": [ + "Pillow>=9.0.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "daefb3dd-4b19-4f8e-9bb2-dd77180f64f6", + "node_id": "ComfyUI-PromptManager", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-PromptManager", + "publisher": { + "createdAt": "2024-07-01T23:11:45.570672Z", + "description": "", + "id": "ailab", + "logo": "", + "members": [], + "name": "AILab", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/1038lab/ComfyUI-PromptManager", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-03T15:41:22.926365Z", + "description": "FunAudio\u7684\u5206\u652f\uff0c\u806f\u767c\u79d1\u7684BreezyVoice\u5728ComfyUI\u4e2d\u7684\u5be6\u73fe\uff0c\u5305\u542bFP16\u7cbe\u5ea6\u4ee5\u53ca\u8a9e\u901f\u8abf\u6574\uff0c\u4e26\u53ef\u5be6\u73fe\u9577\u8072\u97f3\u8f38\u51fa", + "downloads": 36, + "github_stars": 20, + "icon": "", + "id": "funaudiobreezyvoice", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-03T15:41:23.337154Z", + "dependencies": [ + "conformer", + "diffusers", + "grpcio", + "grpcio-tools", + "hydra-core", + "HyperPyYAML", + "inflect", + "librosa", + "lightning", + "matplotlib", + "modelscope", + "networkx", + "omegaconf", + "openai-whisper", + "protobuf", + "pydantic", + "rich", + "soundfile", + "tensorboard", + "wget", + "gdown", + "pyarrow", + "jieba", + "pypinyin", + "pydub", + "audiosegment", + "srt", + "ffmpeg-python", + "funasr>=1.1.3", + "huggingface", + "huggingface_hub", + "pyworld", + "accelerate", + "julius", + "importlib_resources" + ], + "deprecated": false, + "downloadUrl": "", + "id": "73c0281c-dc20-4460-a3c4-9df7ee50c002", + "node_id": "funaudiobreezyvoice", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-FunAudioBreezyVoice", + "publisher": { + "createdAt": "2025-06-15T13:14:15.653234Z", + "description": "", + "id": "dseditor", + "logo": "", + "members": [], + "name": "dseditor", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dseditor/ComfyUI-FunAudioBreezyVoice", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "kealiu", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:58.71683Z", + "description": "Nodes:Load From S3, Save To S3.", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "ComfyUI-S3-Tools", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Load and Save file to S3", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kealiu/ComfyUI-S3-Tools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-30T13:22:45.586983Z", + "description": "", + "downloads": 312, + "github_stars": 1, + "icon": "", + "id": "comfyui-google-storage", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-02T13:40:29.604869Z", + "dependencies": [ + "google-cloud-storage", + "python-dotenv", + "google-auth" + ], + "deprecated": false, + "downloadUrl": "", + "id": "fe3c0b06-cbf6-4aa8-b7c6-942a779a2288", + "node_id": "comfyui-google-storage", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyGCS", + "publisher": { + "createdAt": "2025-03-30T13:20:03.638049Z", + "description": "", + "id": "benmizrahi", + "logo": "", + "members": [], + "name": "Sudo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/benmizrahi/ComfyGCS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jhj0517", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:15.431511Z", + "description": "Moondream's gaze detection feature wrapper node.", + "downloads": 0, + "github_stars": 55, + "icon": "", + "id": "jhj0517_ComfyUI-Moondream-Gaze-Detection", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Moondream-Gaze-Detection", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jhj0517/ComfyUI-Moondream-Gaze-Detection", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jhj0517", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:16.396352Z", + "description": "kokoro-onnx (opensource TTS model) wrapper for ComfyUI.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "jhj0517_ComfyUI-jhj-Kokoro-Onnx", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI jhj Kokoro Onnx", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jhj0517/ComfyUI-jhj-Kokoro-Onnx", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-05T08:08:07.88052Z", + "description": "ComfyUI custom nodes for mosaic detection and creation.", + "downloads": 91, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-Mosaic", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-05T08:08:08.287761Z", + "dependencies": [ + "torch>=1.9.0", + "torch>=1.9.0", + "torchvision>=0.10.0", + "opencv-python>=4.5.0", + "pillow>=8.0.0", + "numpy>=1.21.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "730a21eb-7025-4fd0-91b1-206600d22478", + "node_id": "ComfyUI-Mosaic", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Mosaic", + "publisher": { + "createdAt": "2024-07-01T23:11:45.570672Z", + "description": "", + "id": "ailab", + "logo": "", + "members": [], + "name": "AILab", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/1038lab/ComfyUI-Mosaic", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-09T09:29:21.513752Z", + "description": "powerful nodes for wan2.1 vace", + "downloads": 467, + "github_stars": 49, + "icon": "", + "id": "ComfyUI-SuperUltimateVaceTools", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-21T09:52:17.536101Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "611d6bad-0125-41d2-8d8b-ac7387e10c25", + "node_id": "ComfyUI-SuperUltimateVaceTools", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.2.1" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-SuperUltimateVaceTools", + "publisher": { + "createdAt": "2025-07-04T13:18:41.077365Z", + "description": "", + "id": "bbaudio", + "logo": "", + "members": [], + "name": "bbaudio", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bbaudio-2025/ComfyUI-SuperUltimateVaceTools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-14T23:57:51.719434Z", + "description": "Adds realistic film grain, vignette and RGB aberration to photos", + "downloads": 443, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-Advanced-Photo-Grain", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-18T23:16:48.579349Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1cd61e77-11de-4c69-a34b-42d1521f84fb", + "node_id": "ComfyUI-Advanced-Photo-Grain", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.3.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "Advanced Photo Grain", + "publisher": { + "createdAt": "2024-07-05T00:13:02.855642Z", + "description": "", + "id": "tritant", + "logo": "", + "members": [], + "name": "jice", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tritant/ComfyUI-Advanced-Photo-Grain", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-30T04:51:43.347305Z", + "description": "A collection of useful custom nodes for ComfyUI - image processing, text manipulation, and workflow automation.", + "downloads": 1338, + "github_stars": 2, + "icon": "", + "id": "jnk-tiny-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-14T10:37:12.657241Z", + "dependencies": [ + "opencv-python>=4.5.0", + "pygame>=2.0.0", + "google-genai>=1.24.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5fb7736e-996b-4ac0-b6f3-ce274ceca146", + "node_id": "jnk-tiny-nodes", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-JNK-Tiny-Nodes", + "publisher": { + "createdAt": "2025-06-30T04:15:59.785509Z", + "description": "", + "id": "aljnk", + "logo": "", + "members": [], + "name": "Aljnk", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Aljnk/ComfyUI-JNK-Tiny-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-08T20:10:54.171102Z", + "description": "Official ComfyUI nodes for [Sunra AI](https://sunra.ai) models.", + "downloads": 89, + "github_stars": 6, + "icon": "https://sunra.ai/favicon.ico", + "id": "comfyui-sunra", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-18T14:28:55.09167Z", + "dependencies": [ + "sunra-client>=0.2.1", + "requests>=2.28.0", + "pillow>=9.0.0", + "numpy>=1.21.0", + "torch>=1.12.0", + "opencv-python>=4.5.0", + "python-dotenv>=0.19.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "93c6210d-6cfa-4199-8d07-2e6334d68775", + "node_id": "comfyui-sunra", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.0.14" + }, + "license": "{\"text\": \"MIT\"}", + "name": "ComfyUI Sunra AI", + "publisher": { + "createdAt": "2025-07-07T21:31:16.118058Z", + "description": "", + "id": "sunra", + "logo": "", + "members": [], + "name": "SUNRA", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sunra-ai/comfyui-sunra", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "nagolinc", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:04.577732Z", + "description": "This provides a single node openai > Open AI query node\nthat takes a system prompt and user message and sends them to chatGPT 3.5\nNote, you MUST have an OPEN AI API key stored in the environment variable OPENAI_API_KEY in order for this to work.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "comfyui_openai_node", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui_openai_node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nagolinc/comfyui_openai_node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "r3dial", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:11.76554Z", + "description": "A custom node for ComfyUI that enables direct posting of images, videos, and messages to Discord channels. This node seamlessly integrates your ComfyUI workflows with Discord communication, allowing you to automatically share your generated content.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "redial-discomphy", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Redial Discomphy - Discord Integration for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/r3dial/redial-discomphy", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "sanbuphy", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:34.774865Z", + "description": "ComfyUI Workflow to run audioldm-l-full pipeline\n[a/https://huggingface.co/cvssp/audioldm-l-full](https://huggingface.co/cvssp/audioldm-l-full)", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-AudioLDM", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-AudioLDM", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sanbuphy/ComfyUI-AudioLDM", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-05T04:14:37.049529Z", + "description": "Nunchaku ComfyUI Node. Nunchaku is a high-performance inference engine optimized for low-bit neural networks. See more details: https://github.com/mit-han-lab/nunchaku", + "downloads": 156693, + "github_stars": 1678, + "icon": "https://raw.githubusercontent.com/mit-han-lab/nunchaku/96615bd93a1f0d2cf98039fddecfec43ce34cc96/assets/nunchaku.svg", + "id": "ComfyUI-nunchaku", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-29T14:45:22.748828Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "58c416af-0503-44a3-9054-a3e71bae22f2", + "node_id": "ComfyUI-nunchaku", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.3.3" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-nunchaku", + "publisher": { + "createdAt": "2025-02-17T04:59:26.256791Z", + "description": "", + "id": "lmxyy1999", + "logo": "", + "members": [], + "name": "Muyang Li", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mit-han-lab/ComfyUI-nunchaku", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "Pfaeff", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:21.57696Z", + "description": "Nodes: AstropulsePixelDetector, BackgroundRemover, ImagePadForBetterOutpaint, InpaintingPipelineLoader, Inpainting, ...", + "downloads": 0, + "github_stars": 22, + "icon": "", + "id": "pfaeff-comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "pfaeff-comfyui", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Pfaeff/pfaeff-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "blepping", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:23.576135Z", + "description": "Better TAESD previews, BlehHyperTile.", + "downloads": 0, + "github_stars": 110, + "icon": "", + "id": "ComfyUI-bleh", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-bleh", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/blepping/ComfyUI-bleh", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "shingo1228", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:54.417084Z", + "description": "Nodes:Send Webp Image to Eagle. This is an extension node for ComfyUI that allows you to send generated images in webp format to Eagle. This extension node is a re-implementation of the Eagle linkage functions of the previous ComfyUI-send-Eagle node, focusing on the functions required for this node.", + "downloads": 0, + "github_stars": 36, + "icon": "", + "id": "ComfyUI-send-eagle-slim", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-send-Eagle(slim)", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shingo1228/ComfyUI-send-eagle-slim", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "blepping", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:24.590029Z", + "description": "A janky implementation of Sonar sampling (momentum-based sampling) for ComfyUI.", + "downloads": 0, + "github_stars": 44, + "icon": "", + "id": "ComfyUI-sonar", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-sonar", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/blepping/ComfyUI-sonar", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-23T01:27:39.530007Z", + "description": "Logical Utils (compare, string, boolean operations) for ComfyUI", + "downloads": 211298, + "github_stars": 59, + "icon": "", + "id": "comfyui-logicutils", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-09T17:06:55.097549Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "6657acd6-a828-49b8-be84-ca0aecb99ac7", + "node_id": "comfyui-logicutils", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.7.2" + }, + "license": "{\"text\": \"MIT\"}", + "name": "ComfyUI-LogicUtils", + "publisher": { + "createdAt": "2024-05-23T01:17:43.083825Z", + "description": "", + "id": "angelbottomless", + "logo": "", + "members": [], + "name": "angelbottomless", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/aria1th/ComfyUI-LogicUtils", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ZHO-ZHO-ZHO", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:29.949574Z", + "description": "Unofficial implementation of [a/YOLO-World + EfficientSAM](https://huggingface.co/spaces/SkalskiP/YOLO-World) & [a/YOLO-World](https://github.com/AILab-CVC/YOLO-World) for ComfyUI\nNOTE: Install the efficient_sam model from the Install models menu.\n[w/When installing or updating this custom node, many installation packages may be downgraded due to the installation of requirements.\n!! python3.12 is incompatible.]", + "downloads": 0, + "github_stars": 753, + "icon": "", + "id": "ComfyUI-YoloWorld-EfficientSAM", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI YoloWorld-EfficientSAM", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ZHO-ZHO-ZHO/ComfyUI-YoloWorld-EfficientSAM", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "SykkoAtHome", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:00.950274Z", + "description": "A custom node collection for ComfyUI that provides advanced face detection, alignment, and transformation capabilities using MediaPipe Face Mesh.", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "ComfyUI_FaceProcessor", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Face Processor for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SykkoAtHome/ComfyUI_FaceProcessor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "pandaer119", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:47.51092Z", + "description": "Introduction The ComfyUI_pandai node is a custom ComfyUI node designed to interact with the DeepSeek API. It supports text generation, translation, and text polishing. With this node, users can easily generate text, translate content, and refine the generated text for better quality.", + "downloads": 0, + "github_stars": 14, + "icon": "", + "id": "ComfyUI_pandai", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_pandai", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pandaer119/ComfyUI_pandai", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-07T04:28:17.184506Z", + "description": "A ComfyUI custom node that calculates width and height while maintaining aspect ratio, making it easier to determine image resolutions with specified aspect ratios and longer side values.", + "downloads": 1066, + "github_stars": 2, + "icon": "", + "id": "ComfyUI_AspectRatioToSize", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-04T00:48:35.297847Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "e2f9a021-a20d-4d89-9abb-662881c5fde6", + "node_id": "ComfyUI_AspectRatioToSize", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_AspectRatioToSize", + "publisher": { + "createdAt": "2024-05-23T02:14:53.032875Z", + "description": "", + "id": "sugarknight", + "logo": "", + "members": [], + "name": "Sugar Knight", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sugarkwork/ComfyUI_AspectRatioToSize", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "oxysoft", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:03.091235Z", + "description": "Implementation of GoWithTheFlow, original code at [a/https://github.com/Eyeline-Research/Go-with-the-Flow/](https://github.com/Eyeline-Research/Go-with-the-Flow/) and [a/https://github.com/RyannDaGreat/CommonSource/blob/master/noise_warp.py](https://github.com/RyannDaGreat/CommonSource/blob/master/noise_warp.py)", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-gowiththeflow", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-gowiththeflow", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/oxysoft/ComfyUI-gowiththeflow", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "zhulu111", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:16.772476Z", + "description": "sdBxb, a tool that converts ComfyUI workflows into WeChat Mini Program, Douyin Mini Program, and H5 with one click, and supports payments.", + "downloads": 0, + "github_stars": 1420, + "icon": "", + "id": "ComfyUI_Bxb", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Bxb", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zhulu111/ComfyUI_Bxb", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smthemex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:30.784379Z", + "description": "ou can using DeepFakeDefenders in comfyUI to Prediction image is a DeepFake img or not.", + "downloads": 0, + "github_stars": 42, + "icon": "", + "id": "ComfyUI_DeepFakeDefenders", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_DeepFakeDefenders", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_DeepFakeDefenders", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-08T04:29:41.952315Z", + "description": "ComfyUI nodes for the Ultimate Stable Diffusion Upscale script by Coyote-A.", + "downloads": 365918, + "github_stars": 1240, + "icon": "", + "id": "comfyui_ultimatesdupscale", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-18T19:55:18.709134Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1452fb69-c2aa-4bc4-9938-9044a551be67", + "node_id": "comfyui_ultimatesdupscale", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.3.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_UltimateSDUpscale", + "publisher": { + "createdAt": "2024-08-18T05:32:31.510976Z", + "description": "", + "id": "ssit", + "logo": "", + "members": [], + "name": "ssit", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ssitu/ComfyUI_UltimateSDUpscale", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "Shibiko-AI", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:23.914424Z", + "description": "This is a collection of tools that I use to make my life easier when developing ComfyUI applications. It is a collection of tools that I have created to help me with my development process. I have decided to share these tools with the community in the hopes that they will be useful to others as well. I use this tools to further develop features for [a/https://shibiko.ai](https://shibiko.ai)", + "downloads": 0, + "github_stars": 10, + "icon": "", + "id": "ShibikoAI-ComfyUI-Tools", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Shibiko AI ComfyUI Tools", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Shibiko-AI/ShibikoAI-ComfyUI-Tools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-01T16:21:11.692014Z", + "description": "This node pack provides nodes that complement the Impact Pack, such as the UltralyticsDetectorProvider.", + "downloads": 539301, + "github_stars": 229, + "icon": "", + "id": "comfyui-impact-subpack", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-03T03:16:51.143397Z", + "dependencies": [ + "matplotlib", + "ultralytics" + ], + "deprecated": false, + "downloadUrl": "", + "id": "71ba3629-62ab-4ec9-b89a-a1bc578aa08d", + "node_id": "comfyui-impact-subpack", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.3.4" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI Impact Subpack", + "publisher": { + "createdAt": "2024-05-22T15:42:00.969348Z", + "description": "", + "id": "drltdata", + "logo": "", + "members": [], + "name": "Dr.Lt.Data", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ltdrdata/ComfyUI-Impact-Subpack", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "BIMer-99", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:07.103584Z", + "description": "This plugin is optimized for Fish-Speech-1.5 version and is only applicable to version 1.5", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "ComfyUI_FishSpeech_EX", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_FishSpeech_EX", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BIMer-99/ComfyUI_FishSpeech_EX", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-07T16:40:51.693611Z", + "description": "A general-purpose, dependency-free File and Folder Browser API for ComfyUI custom nodes.", + "downloads": 87, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-FileBrowserAPI", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-07T16:40:52.14379Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "460c6124-f897-4d61-92ae-19d94047a138", + "node_id": "ComfyUI-FileBrowserAPI", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-FileBrowserAPI", + "publisher": { + "createdAt": "2025-06-06T17:10:53.888897Z", + "description": "", + "id": "galactusx31", + "logo": "", + "members": [], + "name": "GalactusX31", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/GalactusX31/ComfyUI-FileBrowserAPI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "sdfxai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:17.245444Z", + "description": "SDFXBridgeForComfyUI is a custom node designed for seamless integration between ComfyUI and SDFX. This custom node allows users to make ComfyUI compatible with SDFX when running the ComfyUI instance on their local machines.", + "downloads": 0, + "github_stars": 11, + "icon": "", + "id": "SDFXBridgeForComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "SDFXBridgeForComfyUI - ComfyUI Custom Node for SDFX Integration", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sdfxai/SDFXBridgeForComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-09T03:46:27.409719Z", + "description": "Separate audio track into stems (vocals, bass, drums, other). Along with tools to recombine, tempo match, slice/crop audio", + "downloads": 20522, + "github_stars": 249, + "icon": "https://img.icons8.com/?size=100&id=gSULe4i1JTpL&format=png&color=000000", + "id": "audio-separation-nodes-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-05T19:11:07.919704Z", + "dependencies": [ + "librosa==0.10.2", + "numpy", + "torchaudio>=2.3.0", + "moviepy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "08cc8745-19bc-4c78-80a9-6fcb97ef4da1", + "node_id": "audio-separation-nodes-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.4.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "audio-separation-nodes-comfyui", + "publisher": { + "createdAt": "2024-05-26T02:18:06.707962Z", + "description": "", + "id": "christian-byrne", + "logo": "", + "members": [], + "name": "christian-byrne", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/christian-byrne/audio-separation-nodes-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "amaozhao", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:23.016752Z", + "description": "DeployCash, a tool that converts workflows into WeChat and H5 with one click, and supports payments.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI_DeployCash", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_DeployCash", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jacklukai/ComfyUI_DeployCash", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "dasilva333", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:37.960803Z", + "description": "This node calculates a contrasting complementary color based on an input RGB color. The goal is to ensure visibility and contrast when overlaying text, UI elements, or graphical components against a given background color.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI_ContrastingColor", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_ContrastingColor", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dasilva333/ComfyUI_ContrastingColor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "BlenderNeko", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:01.73815Z", + "description": "These custom nodes provides features that allow for better control over the effects of the text prompt.", + "downloads": 0, + "github_stars": 387, + "icon": "", + "id": "ComfyUI_Cutoff", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Cutoff", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BlenderNeko/ComfyUI_Cutoff", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chflame163", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:28.905883Z", + "description": "Unofficial implementation of [a/deepseek-ai/Janus](https://github.com/deepseek-ai/Janus) in ComfyUI.", + "downloads": 0, + "github_stars": 17, + "icon": "", + "id": "ComfyUI_Janus_Wrapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Janus_Wrapper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chflame163/ComfyUI_Janus_Wrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T16:21:16.649599Z", + "description": "Plug-and-play ComfyUI node sets for making ControlNet hint images", + "downloads": 604235, + "github_stars": 3191, + "icon": "", + "id": "comfyui_controlnet_aux", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-20T08:57:49.822453Z", + "dependencies": [ + "torch", + "importlib_metadata", + "huggingface_hub", + "scipy", + "opencv-python>=4.7.0.72", + "filelock", + "numpy", + "Pillow", + "einops", + "torchvision", + "pyyaml", + "scikit-image", + "python-dateutil", + "mediapipe", + "svglib", + "fvcore", + "yapf", + "omegaconf", + "ftfy", + "addict", + "yacs", + "trimesh[easy]", + "albumentations", + "scikit-learn", + "matplotlib" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7163fc1b-e5d2-4bb4-b8df-ef81eb121ff3", + "node_id": "comfyui_controlnet_aux", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.0" + }, + "license": "{}", + "name": "comfyui_controlnet_aux", + "publisher": { + "createdAt": "2024-06-20T15:55:49.560354Z", + "description": "", + "id": "fannovel16", + "logo": "", + "members": [], + "name": "Fannovel16", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Fannovel16/comfyui_controlnet_aux", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "KytraScript", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:06.901748Z", + "description": "A ComfyUI node that utilizes Moviepy to convert and send your images or videos to a webhook endpoint directly from ComfyUI.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI_KytraWebhookHTTP", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_KytraWebhookHTTP", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/KytraScript/ComfyUI_KytraWebhookHTTP", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "leeguandong", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:17.493599Z", + "description": "The attention mask in the T5 part of flux and SD3 utilizes the text-side attention mask to make the model focus more on text embeddings during image generation, thereby enhancing semantic alignment with the text.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI_FluxAttentionMask", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI nodes to use AttentionMask", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/leeguandong/ComfyUI_FluxAttentionMask", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "dfghsdh", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:16.896473Z", + "description": "Flux Prompt Generator is a custom node set for ComfyUI that enhances prompt generation and image captioning capabilities. It integrates advanced language models and image captioning techniques to provide versatile and powerful prompt manipulation tools for your AI image generation workflows.\nNOTE:PORT OF [a/https://huggingface.co/Aitrepreneur/FLUX-Prompt-Generator](https://huggingface.co/Aitrepreneur/FLUX-Prompt-Generator) for COMFYUI", + "downloads": 0, + "github_stars": 14, + "icon": "", + "id": "ComfyUI_FluxPromptGen", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_FluxPromptGen", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dfghsdh/ComfyUI_FluxPromptGen", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "GraftingRayman", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:00.596241Z", + "description": "Image Manipulation and Prompt Generation Nodes", + "downloads": 0, + "github_stars": 61, + "icon": "", + "id": "ComfyUI_GraftingRayman", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "GraftingRayman", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/GraftingRayman/ComfyUI_GraftingRayman", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "xliry", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:29.276048Z", + "description": "Nodes:Send Video to Discord", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI_SendDiscord", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_SendDiscord", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/xliry/ComfyUI_SendDiscord", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-31T04:02:17.918208Z", + "description": "Making ComfyUI more comfortable.", + "downloads": 724450, + "github_stars": 2050, + "icon": "https://comfy.rgthree.com/media/rgthree.svg", + "id": "rgthree-comfy", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-12T03:03:57.641213Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "cc706370-d4ef-46c9-9054-379ab57bf3e3", + "node_id": "rgthree-comfy", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.2507112302" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "rgthree-comfy", + "publisher": { + "createdAt": "2024-08-30T00:23:32.517759Z", + "description": "", + "id": "rgthree", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/rgthree/rgthree-comfy", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:39.434887Z", + "description": "a custom node for [a/StyleShot](https://github.com/open-mmlab/StyleShot.git)", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "StyleShot-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "StyleShot-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/StyleShot-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "StartHua", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:34.018913Z", + "description": "Nodes:Ood_hd_CXH, Ood_hd_CXH. [a/OOTDiffusion](https://github.com/levihsu/OOTDiffusion)", + "downloads": 0, + "github_stars": 123, + "icon": "", + "id": "ComfyUI_OOTDiffusion_CXH", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_OOTDiffusion_CXH", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/StartHua/ComfyUI_OOTDiffusion_CXH", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "feixuetuba", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:36.869239Z", + "description": "This is a ComfyUI plugin based on [a/Spleeter](https://github.com/deezer/spleete). The model files are available on BaiduNetDisk. After downloading the model, place it in the checkpoints directory.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "Spleeter", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Spleeter", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/feixuetuba/Spleeter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smthemex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:36.177802Z", + "description": "you can make PBR in comfyUI", + "downloads": 0, + "github_stars": 13, + "icon": "", + "id": "ComfyUI_PBR_Maker", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_PBR_Maker", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_PBR_Maker", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-09T15:46:03.24144Z", + "description": "Highly customizable Scheduler for ComfyUI.", + "downloads": 194, + "github_stars": 4, + "icon": "https://github.com/silveroxides/ComfyUI_PowerShiftScheduler/raw/refs/heads/main/assets/tools-icon.svg", + "id": "ComfyUI_PowerShiftScheduler", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-11T19:55:23.113732Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "28f5ca8e-6f2a-420e-a6a6-6075fdc146fe", + "node_id": "ComfyUI_PowerShiftScheduler", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Power Shift Scheduler", + "publisher": { + "createdAt": "2024-09-17T18:22:05.116266Z", + "description": "", + "id": "silveroxides", + "logo": "", + "members": [], + "name": "silveroxides", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/silveroxides/ComfyUI_PowerShiftScheduler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "BAIS1C", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:36.63349Z", + "description": "A Simple Python RSS Feed Reader to create Prompts in Comfy UI", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI_RSS_Feed_Reader", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_RSS_Feed_Reader", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BAIS1C/ComfyUI_RSS_Feed_Reader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "fssorc", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:20.838344Z", + "description": "Wrap Rope into ComfyUI, do a little change to use in ComfyUI. All credit goes to Hillobar and his ROPE [\u3141/https://github.com/Hillobar/Rope](https://github.com/Hillobar/Rope)", + "downloads": 0, + "github_stars": 17, + "icon": "", + "id": "ComfyUI_RopeWrapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_RopeWrapper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fssorc/ComfyUI_RopeWrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "BlenderNeko", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:04.73277Z", + "description": "It provides the capability to generate CLIP from an image input, unlike unCLIP, which works in all models. (To use this extension, you need to download the required model file from **Install Models**)", + "downloads": 0, + "github_stars": 38, + "icon": "", + "id": "ComfyUI_SeeCoder", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "SeeCoder [WIP]", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BlenderNeko/ComfyUI_SeeCoder", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-26T05:59:32.452833Z", + "description": "Custom nodes by SuperBeasts.AI including Super Pop Color Adjustment, HDR Effects and Image/Mask batching tools and more. (@SuperBeasts.AI on Instagram)", + "downloads": 13924, + "github_stars": 165, + "icon": "https://raw.githubusercontent.com/SuperBeastsAI/ComfyUI-SuperBeasts/refs/heads/master/docs/assets/icon.png", + "id": "comfyui-superbeasts", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-20T12:21:48.048532Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "57de75df-2f35-4e49-bbe6-e7585562b8c2", + "node_id": "comfyui-superbeasts", + "status": "NodeVersionStatusDeleted", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-SuperBeasts", + "publisher": { + "createdAt": "2024-05-26T04:52:15.534326Z", + "description": "", + "id": "superbeastsai", + "logo": "", + "members": [], + "name": "SuperBeasts.AI", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SuperBeastsAI/ComfyUI-SuperBeasts", + "status": "", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "opvelll", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:18.609386Z", + "description": "This is a custom node for Comfy UI. It mainly wraps itertools.product and can be used to create patterns by combining prompts. It is recommended to install this custom node in combination with the nodes from the WAS Node Suite.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI_TextListProduct", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfy UI Text List Product", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/opvelll/ComfyUI_TextListProduct", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "BlenderNeko", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:04.053988Z", + "description": "This extension contains a tiled sampler for ComfyUI. It allows for denoising larger images by splitting it up into smaller tiles and denoising these. It tries to minimize any seams for showing up in the end result by gradually denoising all tiles one step at the time and randomizing tile positions for every step.", + "downloads": 0, + "github_stars": 383, + "icon": "", + "id": "ComfyUI_TiledKSampler", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Tiled sampling for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BlenderNeko/ComfyUI_TiledKSampler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:50.043914Z", + "description": "the comfyui custom node of [a/V-Express](https://github.com/tencent-ailab/V-Express) to make audio driven videos!", + "downloads": 0, + "github_stars": 87, + "icon": "", + "id": "ComfyUI_V-Express", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_V-Express", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/ComfyUI_V-Express", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smthemex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:18.329257Z", + "description": "FoleyCrafter is a video-to-audio generation framework which can produce realistic sound effects semantically relevant and synchronized with videos.", + "downloads": 0, + "github_stars": 61, + "icon": "", + "id": "ComfyUI_FoleyCrafter", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_FoleyCrafter", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_FoleyCrafter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ssitu", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:37.887666Z", + "description": "ComfyUI nodes for the roop A1111 webui script.", + "downloads": 0, + "github_stars": 77, + "icon": "", + "id": "ComfyUI_roop", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI roop", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ssitu/ComfyUI_roop", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jamal-alkharrat", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:28.333311Z", + "description": "ComfyUI Custom Node to Rotate Images, Img2Img node.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI_rotate_image", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_rotate_image", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jamal-alkharrat/ComfyUI_rotate_image", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "WangPengxing", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:33.443778Z", + "description": "A custom node collection for ComfyUI, offering enhanced image processing features.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI_WPX_Node", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI WPX Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/WangPengxing/ComfyUI_WPX_Node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-26T14:45:28.616674Z", + "description": "Essential nodes that are weirdly missing from ComfyUI core. With few exceptions they are new features and not commodities.", + "downloads": 673009, + "github_stars": 886, + "icon": "", + "id": "comfyui_essentials", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-07T19:06:12.812021Z", + "dependencies": [ + "numba", + "colour-science", + "rembg", + "pixeloe" + ], + "deprecated": false, + "downloadUrl": "", + "id": "96728ccb-47e6-4c1d-bbd1-defcfa223eb5", + "node_id": "comfyui_essentials", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_essentials", + "publisher": { + "createdAt": "2024-06-05T06:22:33.072793Z", + "description": "", + "id": "matteo", + "logo": "", + "members": [], + "name": "Matteo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cubiq/ComfyUI_essentials", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Shiba-2-shiba", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:33.599799Z", + "description": "This is a custom node to add timestep for FreeU V2.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI_FreeU_V2_timestepadd", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_FreeU_V2_timestepadd", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Shiba-2-shiba/ComfyUI_FreeU_V2_timestepadd", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kunieone", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:57.141191Z", + "description": "Nodes:A_Face3DSwapper, A_FaceCrop, A_FacePaste, A_OpenPosePreprocessor, A_EmptyLatentImageLongside, A_GetImageSize, AlkaidLoader, AdapterFaceLoader, AdapterStyleLoader, ...", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI_alkaid", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_alkaid", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kunieone/ComfyUI_alkaid", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ShmuelRonen", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:06.82045Z", + "description": "A ComfyUI custom node that integrates Mistral AI's Pixtral Large vision model, enabling powerful multimodal AI capabilities within ComfyUI. Pixtral Large is a 124B parameter model (123B decoder + 1B visual encoder)", + "downloads": 0, + "github_stars": 16, + "icon": "", + "id": "ComfyUI_pixtral_large", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Pixtral Large Extension", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShmuelRonen/ComfyUI_pixtral_large", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Girish Gopaul", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:53.815939Z", + "description": "All the tools you need to save images with their generation metadata on ComfyUI. Compatible with Civitai & Prompthero geninfo auto-detection. Works with png, jpeg and webp.", + "downloads": 0, + "github_stars": 281, + "icon": "", + "id": "comfy-image-saver", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Save Image with Generation Metadata", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/giriss/comfy-image-saver", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Frost Ming", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:54.106253Z", + "description": "A comprehensive toolkit for standardizing, packaging and deploying ComfyUI workflows as reproducible environments and production-ready REST services", + "downloads": 0, + "github_stars": 167, + "icon": "", + "id": "comfy-pack", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfy-Pack", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bentoml/comfy-pack", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-21T18:53:29.219001Z", + "description": "Nodes: PoseNode, PainterNode, TranslateTextNode, TranslateCLIPTextEncodeNode, DeepTranslatorTextNode, DeepTranslatorCLIPTextEncodeNode, ArgosTranslateTextNode, ArgosTranslateCLIPTextEncodeNode, ChatGLM4TranslateCLIPTextEncodeNode, ChatGLM4TranslateTextNode, ChatGLM4InstructNode, ChatGLM4InstructMediaNode, PreviewTextNode, HexToHueNode, ColorsCorrectNode, IDENode.", + "downloads": 142804, + "github_stars": 1282, + "icon": "", + "id": "comfyui_custom_nodes_alekpet", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-10T10:23:45.810363Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a7f1cfbc-b863-436e-86b0-4bc113c366d4", + "node_id": "comfyui_custom_nodes_alekpet", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.74" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Custom_Nodes_AlekPet", + "publisher": { + "createdAt": "2024-05-20T13:43:59.478911Z", + "description": "", + "id": "alekpet", + "logo": "", + "members": [], + "name": "AlekPet", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AlekPet/ComfyUI_Custom_Nodes_AlekPet", + "status": "", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "JcandZero", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:02.497519Z", + "description": "GLM4 Vision Integration", + "downloads": 0, + "github_stars": 29, + "icon": "", + "id": "ComfyUI_GLM4Node", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_GLM4Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/JcandZero/ComfyUI_GLM4Node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ShmuelRonen", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:01.023113Z", + "description": "The Wav2Lip node is a custom node for ComfyUI that allows you to perform lip-syncing on videos using the Wav2Lip model. It takes an input video and an audio file and generates a lip-synced output video.", + "downloads": 0, + "github_stars": 137, + "icon": "", + "id": "ComfyUI_wav2lip", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Wav2Lip Node for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShmuelRonen/ComfyUI_wav2lip", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ALatentPlace", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:44.878835Z", + "description": "Yet Another Node Collection. Adds some useful nodes, check out the GitHub page for more details.", + "downloads": 0, + "github_stars": 64, + "icon": "", + "id": "ComfyUI_yanc", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_yanc", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ALatentPlace/ComfyUI_yanc", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "googincheng", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:26.260908Z", + "description": "Better user experience plugin for ComfyUI.", + "downloads": 0, + "github_stars": 148, + "icon": "", + "id": "ComfyUX", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUX", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/googincheng/ComfyUX", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "taabata", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:41.131933Z", + "description": "Nodes:Prompt editing, Word as Image", + "downloads": 0, + "github_stars": 12, + "icon": "", + "id": "Comfy_Syrian_Falcon_Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Syrian Falcon Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/taabata/Comfy_Syrian_Falcon_Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "LAOGOU-666", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:55.81617Z", + "description": "A simple implementation of real-time 3D lighting in ComfyUI. It's an open-source node, have fun playing around!", + "downloads": 0, + "github_stars": 189, + "icon": "", + "id": "Comfyui-LG_Relight", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui-LG_Relight", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LAOGOU-666/Comfyui-LG_Relight", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-11T21:16:07.54165Z", + "description": "Save image and keep metadata.", + "downloads": 170, + "github_stars": 0, + "icon": "", + "id": "comfyui-nothing-happened", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-11T21:16:07.970603Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "81f3ea80-066b-4885-906e-78f0bb109ef4", + "node_id": "comfyui-nothing-happened", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-nothing-happened", + "publisher": { + "createdAt": "2024-07-03T02:48:16.838562Z", + "description": "", + "id": "shinich39", + "logo": "", + "members": [], + "name": "shinich39", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shinich39/comfyui-nothing-happened", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "hyunamy", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:28.813571Z", + "description": "A feature that sends an email via Gmail once image generation is completed in Comfy-ui.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "comfy-ui-on-complete-email-me", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfy-UI on-complete-email-me", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hyunamy/comfy-ui-on-complete-email-me", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chakib-belgaid", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:51.005844Z", + "description": "This is a simple plugin for ComfyUI that allows you to import A1111 CSV styles into ComfyUI prompts.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "Comfyui_Prompt_styler", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Style Plugin", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chakib-belgaid/Comfyui_Prompt_styler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-27T01:37:33.778307Z", + "description": "A custom LoRA loader node for ComfyUI with advanced block-weighting controls for both SDXL and FLUX models. Features presets for common use-cases like 'Character' and 'Style', and a 'Custom' mode for fine-grained control over individual model blocks.", + "downloads": 386, + "github_stars": 5, + "icon": "", + "id": "Bobs_LoRA_Loader", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-27T02:19:23.156127Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1d5428bc-7caa-4386-9d9e-ae51809186a0", + "node_id": "Bobs_LoRA_Loader", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Bobs_LoRA_Loader", + "publisher": { + "createdAt": "2024-10-26T13:19:28.99286Z", + "description": "", + "id": "bobsblazed", + "logo": "", + "members": [], + "name": "BobsBlazed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BobsBlazed/Bobs-Lora-Loader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-17T04:53:21.312667Z", + "description": "Nodes related to video workflows", + "downloads": 686591, + "github_stars": 1096, + "icon": "", + "id": "comfyui-videohelpersuite", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-26T20:27:41.686909Z", + "dependencies": [ + "opencv-python", + "imageio-ffmpeg" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d808e1e0-f47c-48ac-9fd2-db46d7af1be4", + "node_id": "comfyui-videohelpersuite", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.6.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-VideoHelperSuite", + "publisher": { + "createdAt": "2024-05-17T04:30:09.087992Z", + "description": "", + "id": "kosinkadink", + "logo": "", + "members": [], + "name": "Kosinkadink", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Kosinkadink/ComfyUI-VideoHelperSuite", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "gemell1", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:00.973856Z", + "description": "Nodes:GMIC Image Processing.", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "ComfyUI_GMIC", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_GMIC", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gemell1/ComfyUI_GMIC", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "pzc163", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:49.320754Z", + "description": "This is an implementation of [MiniCPMv2_6-prompt-generator](https://huggingface.co/pzc163/MiniCPMv2_6-prompt-generator) by [ComfyUI](https://github.com/comfyanonymous/ComfyUI), including support for single-image caption, generate prompt by upload image and batch-images Prompt generation.", + "downloads": 0, + "github_stars": 80, + "icon": "", + "id": "Comfyui_MiniCPMv2_6-prompt-generator", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui_MiniCPMv2_6-prompt-generator", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pzc163/Comfyui_MiniCPMv2_6-prompt-generator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-01T15:03:57.587254Z", + "description": "A comprehensive collection of custom nodes for ComfyUI, focusing on image processing, text handling, and workflow optimization. Includes nodes for image blending, text overlay, batch processing, image resizing, and advanced save operations.", + "downloads": 1293, + "github_stars": 9, + "icon": "https://raw.githubusercontent.com/7BEII/Comfyui_PDuse/main/img/image.png", + "id": "Comfyui_PDuse", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-01T15:03:57.972794Z", + "dependencies": [ + "xlrd", + "numpy", + "Pillow", + "torch", + "torchvision" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1c3a4fac-ef7c-462d-897c-1b085f016160", + "node_id": "Comfyui_PDuse", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.1" + }, + "license": "{\"text\": \"MIT\"}", + "name": "Comfyui_PDuse", + "publisher": { + "createdAt": "2025-07-01T14:57:56.860211Z", + "description": "", + "id": "pandybeii", + "logo": "", + "members": [], + "name": "Comfyui_PDuse", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/7BEII/Comfyui_PDuse", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "Phando", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:40.200688Z", + "description": "A collection of nodes to help streamline your ComfyUI workflows", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-PhandoNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-PhandoNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Phando/ComfyUI-PhandoNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "nofunstudio", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:23.655083Z", + "description": "ComfyUI Custom Node Pack Layered Infinite Zoom Node", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "Node_Fun_ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Node_Fun_ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nofunstudio/Node_Fun_ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:04.426442Z", + "description": "a custom node for [a/RealisDance](https://github.com/damo-cv/RealisDance)", + "downloads": 0, + "github_stars": 49, + "icon": "", + "id": "RealisDance-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "RealisDance-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/RealisDance-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AI2lab", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:19.59393Z", + "description": "Unofficial implementation of KLing for ComfyUI", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyUI-kling-api-2lab", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyUI-kling-api-2lab", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AI2lab/comfyUI-kling-api-2lab", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-17T04:37:43.993312Z", + "description": "The Fast and Simple Face Swap Extension Node for ComfyUI, based on ReActor SD-WebUI Face Swap Extension", + "downloads": 110847, + "github_stars": 0, + "icon": "", + "id": "comfyui-reactor-node", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-02T08:26:36.814418Z", + "dependencies": [ + "insightface==0.7.3", + "onnx>=1.14.0", + "opencv-python>=4.7.0.72", + "numpy==1.26.3", + "segment_anything", + "albumentations>=1.4.16", + "ultralytics" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7d1f9a01-21b9-4a9f-8fce-d2b19bfe0239", + "node_id": "comfyui-reactor-node", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.5.2-b1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-reactor-node", + "publisher": { + "createdAt": "2024-05-30T09:36:45.831776Z", + "description": "", + "id": "gourieff", + "logo": "", + "members": [], + "name": "\u0415\u0432\u0433\u0435\u043d\u0438\u0439 \u0413\u0443\u0440\u044c\u0435\u0432 | Eugene Gourieff | \u53e4\u4ec1 ", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Gourieff/comfyui-reactor-node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-10T09:55:14.3299Z", + "description": "A node that aggregates many powerful API features,Easier integration into workflows", + "downloads": 30, + "github_stars": 5, + "icon": "https://mojieaigc.com/static/logo.png", + "id": "Mojie-API-Party", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-15T09:58:40.511038Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "eba90ba3-4e65-4c19-8c91-2841d07b4e1c", + "node_id": "Mojie-API-Party", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "version": "1.2.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Mojie-API-Party", + "publisher": { + "createdAt": "2025-07-10T08:47:23.202069Z", + "description": "", + "id": "mojieaigc", + "logo": "", + "members": [], + "name": "MojieAIGC", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MoJIeAIGC/comfyui-MJAPI-party", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "tags": [] + }, + { + "author": "IamCreateAI", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:58.723582Z", + "description": "ComfyUI wrapper nodes for Ruyi, an image-to-video model by CreateAI.", + "downloads": 0, + "github_stars": 521, + "icon": "", + "id": "Ruyi-Models", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Ruyi", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/IamCreateAI/Ruyi-Models", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "taabata", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:44.129078Z", + "description": "ComfyUI Diffusers wrapper nodes to run SANA models on low vram devices. Works on 2GB VRAM 12GB RAM laptop.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "SANA_LOWVRAM", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "SANA_LOWVRAM", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/taabata/SANA_LOWVRAM", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "NStor", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:29.279356Z", + "description": "Russian localization of ComfyUI, ComafyUI-Manager & more...", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "NStor-ComfyUI-Translation", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-RUS localization", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Nestorchik/NStor-ComfyUI-Translation", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-22T16:10:03.935244Z", + "description": "This extension provides various nodes to support Lora Block Weight, Regional Nodes, Backend Cache, Prompt Utils, List Utils, Noise(Seed) Utils, ... and the Impact Pack.", + "downloads": 234748, + "github_stars": 616, + "icon": "", + "id": "comfyui-inspire-pack", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-15T03:29:34.499315Z", + "dependencies": [ + "matplotlib", + "cachetools" + ], + "deprecated": false, + "downloadUrl": "", + "id": "13f5fe86-c902-4002-8b9c-1886d576d013", + "node_id": "comfyui-inspire-pack", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.21.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Inspire Pack", + "publisher": { + "createdAt": "2024-05-22T15:42:00.969348Z", + "description": "", + "id": "drltdata", + "logo": "", + "members": [], + "name": "Dr.Lt.Data", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ltdrdata/ComfyUI-Inspire-Pack", + "status": "", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "chenpx976", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:42.492616Z", + "description": "add http api http://127.0.0.1:8188/comfyui-run/run use in other llm project.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-RunRunRun", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-RunRunRun", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chenpx976/ComfyUI-RunRunRun", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "BoyuanJiang", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:22.618233Z", + "description": "FitDiT is designed for high-fidelity virtual try-on using Diffusion Transformers (DiT).", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "FitDiT-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "FitDiT[official] - High-fidelity Virtual Try-on", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BoyuanJiang/FitDiT/tree/FitDiT-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Runware Inc.", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:49.120893Z", + "description": "Runware Inference API Integration for ComfyUI (No GPU Required).", + "downloads": 0, + "github_stars": 97, + "icon": "", + "id": "ComfyUI-Runware", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Runware.ai ComfyUI Inference API Integration", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Runware/ComfyUI-Runware", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "blepping", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:26.477678Z", + "description": "Experimental and mathematically unsound (but fun!) sampling for ComfyUI.\nFeel free create a question in Discussions for usage help: OCS Q&A Discussion[w/Status: In flux, may be useful but likely to change/break workflows frequently. Mainly for advanced users.]", + "downloads": 0, + "github_stars": 26, + "icon": "", + "id": "comfyui_overly_complicated_sampling", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui_overly_complicated_sampling", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/blepping/comfyui_overly_complicated_sampling", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "picturesonpictures", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:16.833875Z", + "description": "A collection of custom nodes for ComfyUI. Includes a quick canny edge detection node with unconventional settings, simple LoRA stack nodes for workflow efficiency, and a customizable aspect ratio node.", + "downloads": 0, + "github_stars": 21, + "icon": "", + "id": "comfy_PoP", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfy_PoP", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/picturesonpictures/comfy_PoP", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "daxthin", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:12.64576Z", + "description": "Face Detailer is a custom node for the 'ComfyUI' framework inspired by !After Detailer extension from auto1111, it allows you to detect faces using Mediapipe and YOLOv8n to create masks for the detected faces.", + "downloads": 0, + "github_stars": 208, + "icon": "", + "id": "DZ-FaceDetailer", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "DZ-FaceDetailer", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nicofdga/DZ-FaceDetailer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:10.073784Z", + "description": "a custom node for [a/FireRedTTS](https://github.com/FireRedTeam/FireRedTTS)", + "downloads": 0, + "github_stars": 12, + "icon": "", + "id": "FireRedTTS-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "FireRedTTS-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/FireRedTTS-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ZHO-ZHO-ZHO", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:22.487947Z", + "description": "Nodes:Text_Image_Zho, Text_Image_Multiline_Zho, RGB_Image_Zho, AlphaChanelAddByMask, ImageComposite_Zho, ...", + "downloads": 0, + "github_stars": 112, + "icon": "", + "id": "ComfyUI-Text_Image-Composite", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Text_Image-Composite [WIP]", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ZHO-ZHO-ZHO/ComfyUI-Text_Image-Composite", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-03T20:46:49.448706Z", + "description": "Quality of Life Nodes from ControlAltAI. Flux Resolution Calculator, Flux Sampler, Flux Union ControlNet Apply, Noise Plus Blend, Boolean Logic, and Flux Region Nodes.", + "downloads": 97432, + "github_stars": 143, + "icon": "", + "id": "controlaltai-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-05T02:04:49.039771Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "8ac72032-f2c2-444c-9eac-0f6f072e4254", + "node_id": "controlaltai-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ControlAltAI_Nodes", + "publisher": { + "createdAt": "2024-08-15T18:09:21.119602Z", + "description": "", + "id": "controlaltai", + "logo": "", + "members": [], + "name": "ControlAltAI", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gseth/ControlAltAI-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "bananasss00", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:13.24075Z", + "description": "flux patcher for Fill Flux.Dev lora [a/https://civitai.com/models/981615/fluxfill-inpaint-lora](https://civitai.com/models/981615/fluxfill-inpaint-lora)", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "ComfyUI-flux_fill_patcher", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-flux_fill_patcher", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bananasss00/ComfyUI-flux_fill_patcher", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-02T00:25:13.490078Z", + "description": "HunyuanPortrait enthusiast level node pack for experimental and educational exploration", + "downloads": 216, + "github_stars": 2, + "icon": "", + "id": "hunyuanportrait", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-02T00:25:13.874846Z", + "dependencies": [ + "diffusers==0.29.0", + "omegaconf", + "onnxruntime-gpu # or onnxruntime if no GPU/CPU preference for ONNX", + "decord", + "imageio", + "scikit-image", + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6001a765-1c16-48e3-ad40-c92d3f310085", + "node_id": "hunyuanportrait", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_HunyuanPortrait", + "publisher": { + "createdAt": "2025-04-30T04:38:53.073102Z", + "description": "", + "id": "bobrandomnumber", + "logo": "", + "members": [], + "name": "BobRandomNumber", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BobRandomNumber/ComfyUI_HunyuanPortrait", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smthemex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:29.332439Z", + "description": "MooER is an LLM-based Speech Recognition and Translation Model from Moore Threads.You can use MooER when install ComfyUI_MooER node", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI_MooER", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_MooER", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_MooER", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:09.38497Z", + "description": "a custom node for [a/F5-TTS](https://github.com/SWivid/F5-TTS)", + "downloads": 0, + "github_stars": 36, + "icon": "", + "id": "F5-TTS-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "F5-TTS-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/F5-TTS-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:15.228582Z", + "description": "A ComfyUI chat node based on SemiUI.", + "downloads": 0, + "github_stars": 12, + "icon": "", + "id": "SemiChat-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "SemiChat-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/SemiChat-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "fablestudio", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:20.848726Z", + "description": "Comfyui Custom Nodes for Showrunner", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-Showrunner-Utils", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Showrunner-Utils", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fablestudio/ComfyUI-Showrunner-Utils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-21T19:05:39.083951Z", + "description": "Enhancements & experiments for ComfyUI, mostly focusing on UI features", + "downloads": 631699, + "github_stars": 2538, + "icon": "", + "id": "comfyui-custom-scripts", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-30T12:00:36.389293Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "0baa100d-7e50-4da1-9a77-9aa324b709c3", + "node_id": "comfyui-custom-scripts", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Custom-Scripts", + "publisher": { + "createdAt": "2024-05-21T16:17:56.310591Z", + "description": "", + "id": "pythongosssss", + "logo": "", + "members": [], + "name": "pythongosssss", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pythongosssss/ComfyUI-Custom-Scripts", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kycg", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:59.722342Z", + "description": "This tool allows you to download models from CivitAI based on a JSON configuration that defines LORA and checkpoint models. It uses token-based authentication to download files from specified URLs and saves them to specified directories. based on CivitAIDownloader", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "comfyui-Lora-auto-downloader", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Kw_Json_Lora_CivitAIDownloader", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kycg/comfyui-Lora-auto-downloader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Fihade", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:47.43585Z", + "description": "Original repo: [a/https://github.com/lllyasviel/IC-Light](https://github.com/lllyasviel/IC-Light)\nModels: [a/https://huggingface.co/lllyasviel/ic-light/tree/main](https://huggingface.co/lllyasviel/ic-light/tree/main), [a/https://huggingface.co/digiplay/Photon_v1/tree/main](https://huggingface.co/digiplay/Photon_v1/tree/main)\nmodels go into ComfyUI/models/unet", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "IC-Light-ComfyUI-Node", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "IC-Light-ComfyUI-Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Fihade/IC-Light-ComfyUI-Node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:10.793705Z", + "description": "a custom nodde for [a/IMAGDressing](https://github.com/muzishen/IMAGDressing)", + "downloads": 0, + "github_stars": 62, + "icon": "", + "id": "IMAGDressing-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "IMAGDressing-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/IMAGDressing-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AARG-FAN", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:45.157722Z", + "description": "a wrap-up of ComfyUI nodes for converting pixels to raster, sent out to [a/Vtracer](https://github.com/visioncortex/vtracer)!", + "downloads": 0, + "github_stars": 138, + "icon": "", + "id": "Image-Vector-for-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Image-vector-for-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AARG-FAN/Image-Vector-for-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "sourceful-official", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:34.411066Z", + "description": "ComfyUI-LoadLoraModelOnlyWithUrl", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "LoadLoraModelOnlyWithUrl", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "LoadLoraModelOnlyWithUrl", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sourceful-official/LoadLoraModelOnlyWithUrl", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "fsdymy1024", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:51.602467Z", + "description": "Nodes:Save Image Without Metadata", + "downloads": 0, + "github_stars": 9, + "icon": "", + "id": "ComfyUI_fsdymy", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_fsdymy", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fsdymy1024/ComfyUI_fsdymy", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "OpalSky", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:43.734757Z", + "description": "A set of custom nodes for ComfyUI that provides enhanced string manipulation and prompt variant generation functionality for AI workflows.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "OpalSky_Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "OpalSky Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/OpalSky-AI/OpalSky_Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-05T06:57:13.161785Z", + "description": "ComfyUI reference implementation for the IPAdapter models. The IPAdapter are very powerful models for image conditioning. The style and composition of a reference can be easily transferred to the generation. Think of it as a 1-image lora.", + "downloads": 385907, + "github_stars": 5307, + "icon": "", + "id": "comfyui_ipadapter_plus", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-05T06:57:13.485481Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "e1d72180-6b0f-45cc-a924-4884bc65e5bf", + "node_id": "comfyui_ipadapter_plus", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.0" + }, + "license": "GPL-3.0 license", + "name": "ComfyUI_IPAdapter_plus", + "publisher": { + "createdAt": "2024-06-05T06:22:33.072793Z", + "description": "", + "id": "matteo", + "logo": "", + "members": [], + "name": "Matteo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cubiq/ComfyUI_IPAdapter_plus", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "MitoshiroPJ", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:09.018984Z", + "description": "This custom node allow controlling output without training. The reducing method is similar to [a/Spatial-Reduction Attention](https://paperswithcode.com/method/spatial-reduction-attention), but generating speed may not be increased on typical image sizes due to overheads. (In some cases, slightly slower)", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "comfyui_slothful_attention", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Slothful Attention", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MitoshiroPJ/comfyui_slothful_attention", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chenpipi0807", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:25.355248Z", + "description": "A powerful ComfyUI extension node that allows you to add various exquisite artistic text effects to your images, supporting a wide range of text styles and effects.", + "downloads": 0, + "github_stars": 26, + "icon": "", + "id": "PIP_ArtisticWords", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "PIP Artistic Words for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chenpipi0807/PIP_ArtisticWords", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Koishi-Star", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:16.431865Z", + "description": "Using pyramid_noise instead of original noise in inference", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "Pyramid_Noise_For_Inference", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Pyramid_Noise_For_Inference", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Koishi-Star/Pyramid_Noise_For_Inference", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-15T00:04:48.740923Z", + "description": "Fix banding artifacts by re-sampling the latent with a low denoise strength.", + "downloads": 58, + "github_stars": 3, + "icon": "", + "id": "Remove-Banding-Artifacts", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-21T11:32:23.377604Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "dfc54b4e-b052-4b89-b7f5-4fb0f5240e31", + "node_id": "Remove-Banding-Artifacts", + "status": "NodeVersionStatusPending", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "Remove Banding Artifacts", + "publisher": { + "createdAt": "2024-07-05T00:13:02.855642Z", + "description": "", + "id": "tritant", + "logo": "", + "members": [], + "name": "jice", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tritant/ComfyUI_Remove_Banding_Artifacts", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "Onierous", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:40.903192Z", + "description": "Nodes: QRNG Node CSV. A node that takes in an array of random numbers from the ANU QRNG API and stores them locally for generating quantum random number noise_seeds in ComfyUI", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "QRNG_Node_ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "QRNG_Node_ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Onierous/QRNG_Node_ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "angeloshredder", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:18.149595Z", + "description": "Nodes:Cascade_Resizer", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "StableCascadeResizer", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "StableCascadeResizer", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/angeloshredder/StableCascadeResizer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "RodrigoSKohl", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:49.594414Z", + "description": "This node is based on MykolaL/StableDesign", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "StableDesign-for-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Interior Design for Comfyui", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/RodrigoSKohl/StableDesign-for-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "deroberon", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:11.397396Z", + "description": "StableZero123 is a node wrapper that uses the model and technique provided [here](https://github.com/SUDO-AI-3D/zero123plus/). It uses the Zero123plus model to generate 3D views using just one image.", + "downloads": 0, + "github_stars": 172, + "icon": "", + "id": "StableZero123-comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "StableZero123-comfyui", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/deroberon/StableZero123-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "TheWhykiki", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:19.604894Z", + "description": "A collection of useful nodes for ComfyUI that provide various workflow enhancements.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "Whykiki-ComfyUIToolset", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Whykiki ComfyUI Toolset", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TheWhykiki/Whykiki-ComfyUIToolset", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:05.147762Z", + "description": "a custom node for [a/ViewCrafter](https://github.com/Drexubery/ViewCrafter)", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "ViewCrafter-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ViewCrafter-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/ViewCrafter-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:40.143333Z", + "description": "a custom node for separation vocals from music based on [a/ZFTurbo/Music-Source-Separation-Training](https://github.com/ZFTurbo/Music-Source-Separation-Training)", + "downloads": 0, + "github_stars": 19, + "icon": "", + "id": "VocalSeparation-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "VocalSeparation-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/VocalSeparation-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Jjulianadv", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:24.142841Z", + "description": "This extension provides the ability to build prompts using wildcards for each region of a split image.", + "downloads": 0, + "github_stars": 17, + "icon": "", + "id": "WildDivide", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Wild Divide", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Julian-adv/WildDivide", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kwaroran", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:19.57336Z", + "description": "Nodes: Remove Image Background (abg). A Anime Background Remover node for comfyui, based on this hf space, works same as AGB extention in automatic1111.", + "downloads": 0, + "github_stars": 25, + "icon": "", + "id": "abg-comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "abg-comfyui", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kwaroran/abg-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "pants007", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:06.60596Z", + "description": "Nodes: Make Square Node, Interrogate Node, TextEncodeAIO", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "comfy-pants", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "pants", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pants007/comfy-pants", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "redhottensors", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:16.348822Z", + "description": "Fully customizable Classifier Free Guidance for ComfyUI.", + "downloads": 0, + "github_stars": 14, + "icon": "", + "id": "ComfyUI-Prediction", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Prediction", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/redhottensors/ComfyUI-Prediction", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "randjtw", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:17.453943Z", + "description": "Nodes:Advance Aesthetic Score", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "advance-aesthetic-score", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "advance-aesthetic-score", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/randjtw/advance-aesthetic-score", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "sn0w12", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:02.417917Z", + "description": "A collection of nodes and improvements created for general ease and lora management. These are just nodes I made and found useful, they should work with most other nodes. Most nodes that take in a prompt are made with booru tags in mind and might not work as expected with other prompts.", + "downloads": 0, + "github_stars": 11, + "icon": "", + "id": "ComfyUI-Sn0w-Scripts", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Sn0w-Scripts", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sn0w12/ComfyUI-Sn0w-Scripts", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "lks-ai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:23.984613Z", + "description": "Nodes: AnyNode. Nodes that can be anything you ask. Auto-Generate functional nodes using LLMs. Create impossible workflows. API Compatibility: (OpenAI, LocalLLMs, Gemini).", + "downloads": 0, + "github_stars": 537, + "icon": "", + "id": "anynode", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI AnyNode: Any Node you ask for", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lks-ai/anynode", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-04T02:13:24.813831Z", + "description": "Two powerful ComfyUI custom nodes for intelligent image resizing while maintaining aspect ratio. Perfect for handling images of any size with precision and control. Aspect Ratio Resizer, Auto Megapixel Reducer.", + "downloads": 53, + "github_stars": 1, + "icon": "", + "id": "aspect-ratio-resizer", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-04T02:13:25.227207Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5d089271-bfc2-466f-a054-f0b83e915503", + "node_id": "aspect-ratio-resizer", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "aspect-ratio-resizer", + "publisher": { + "createdAt": "2025-07-04T02:03:54.957062Z", + "description": "", + "id": "jlinderman", + "logo": "", + "members": [], + "name": "jlinderman", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nvmax/aspect-ratio-resizer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "Darth-Veitcher", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:34.01339Z", + "description": "Nodes: String Formatting (f-string and jinja2), Random Choice, Model Memory management, and other quality of life improvements.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "comfydv", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfy DV", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/darth-veitcher/comfydv", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-03T14:28:48.75772Z", + "description": "Audio batch creation, extraction, information, resample, mono and stereo conversion.\nAlso cut, concatenate, blend (mix) and de/normalize. Join/split channels (stereo).\nSignal generator (`sine`, `square`, `sawtooth`, `triangle`, `sweep`, `noise`).\nMusical note to frequency.\nAudio downloader for quick workflows which downloads its example data.\n", + "downloads": 463, + "github_stars": 1, + "icon": "", + "id": "audio-batch", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-21T12:18:47.960366Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "af945087-d1c1-4e2f-8166-f16ef89241d2", + "node_id": "audio-batch", + "status": "NodeVersionStatusPending", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.3.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Audio Batch", + "publisher": { + "createdAt": "2024-11-21T16:22:47.52117Z", + "description": "", + "id": "set-soft", + "logo": "", + "members": [], + "name": "Salvador Eduardo Tropea", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/set-soft/ComfyUI-AudioBatch", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-02T13:23:40.223957Z", + "description": "Audio separation (aka demixing) nodes, for Vocals, Instruments, Bass, Drums and Others (experimental Piano and Guitar). Using MDX-Net and Demucs, no extra dependencies, support for batch and resample. Choose between High Quality and Speed. All safetensor models (No ONNX, No PyTorch)", + "downloads": 117, + "github_stars": 2, + "icon": "", + "id": "audio-separation", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-11T21:06:50.055445Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "474eb623-59cf-4d2d-9cbf-477e18656628", + "node_id": "audio-separation", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Audio Separation (Demix)", + "publisher": { + "createdAt": "2024-11-21T16:22:47.52117Z", + "description": "", + "id": "set-soft", + "logo": "", + "members": [], + "name": "Salvador Eduardo Tropea", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/set-soft/AudioSeparation", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "blib-la", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:20.822739Z", + "description": "node color customization, custom colors, dot reroutes, link rendering options, straight lines, group freezing, node pinning, automated arrangement of nodes, copy image\n[w/failfast-comfyui-extensions is renamed to blibla-comfyui-extensions. Please resintall to this.]", + "downloads": 0, + "github_stars": 174, + "icon": "", + "id": "blibla-comfyui-extensions", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "blibla-comfyui-extensions", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/blib-la/blibla-comfyui-extensions", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-24T12:08:39.365517Z", + "description": "A node for JPEG de-artifacting using [a/FBCNN](https://github.com/jiaxi-jiang/FBCNN).", + "downloads": 6709, + "github_stars": 27, + "icon": "", + "id": "comfyui-fbcnn", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-02T19:54:39.536696Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "75682f9b-d43b-4666-b84b-bf6254e78978", + "node_id": "comfyui-fbcnn", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-FBCNN", + "publisher": { + "createdAt": "2024-05-24T11:58:59.127804Z", + "description": "", + "id": "miosp", + "logo": "", + "members": [], + "name": "Miosp", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Miosp/ComfyUI-FBCNN", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "laksjdjf", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:57.313325Z", + "description": "Nodes:Apply CDTuner, Apply Negapip. This extension provides the [a/CD(Color/Detail) Tuner](https://github.com/hako-mikan/sd-webui-cd-tuner) and the [a/Negative Prompt in the Prompt](https://github.com/hako-mikan/sd-webui-negpip) features.", + "downloads": 0, + "github_stars": 23, + "icon": "", + "id": "cd-tuner_negpip-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "cd-tuner_negpip-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/laksjdjf/cd-tuner_negpip-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-20T08:51:26.152064Z", + "description": "Automated Speech Recognition for Chinese.", + "downloads": 162, + "github_stars": 7, + "icon": "", + "id": "asr-zh-mw", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-28T08:59:45.288592Z", + "dependencies": [ + "faster_whisper" + ], + "deprecated": false, + "downloadUrl": "", + "id": "4a2e3711-9160-49d3-8c3d-8f26e358a92e", + "node_id": "asr-zh-mw", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_ASR-zh", + "publisher": { + "createdAt": "2025-01-06T14:10:29.10336Z", + "description": "", + "id": "mw", + "logo": "", + "members": [], + "name": "MW", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/billwuhao/ComfyUI_ASR-zh", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T11:52:09.256925Z", + "description": "Nodes to use Florence2 VLM for image vision tasks: object detection, captioning, segmentation and ocr", + "downloads": 448530, + "github_stars": 1337, + "icon": "", + "id": "comfyui-florence2", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-21T14:47:11.581478Z", + "dependencies": [ + "transformers>=4.39.0,!=4.50.*" + ], + "deprecated": false, + "downloadUrl": "", + "id": "168df900-1313-40d4-a7c7-5e7261de78f5", + "node_id": "comfyui-florence2", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.5" + }, + "license": "{\"text\": \"MIT\"}", + "name": "ComfyUI-Florence2", + "publisher": { + "createdAt": "2024-06-09T11:11:54.62154Z", + "description": "", + "id": "kijai", + "logo": "", + "members": [], + "name": "Kijai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-Florence2", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "nsdtcloud3d", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:44.688278Z", + "description": "ComfyUI-3D-Covert is a 3D File Format Conversion Extension based on 3dconvert.nsdt.cloud-API. It provides a node ConvertTo3DFormat currently available, is a powerful tool designed to streamline the conversion of 3D models between a wide array of file formats.", + "downloads": 0, + "github_stars": 14, + "icon": "", + "id": "ComfyUI-3D-Convert", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-3D-Convert", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nsdtcloud3d/ComfyUI-3D-Convert", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-11T10:28:18.328424Z", + "description": "A ComfyUI node suite for Vidu API, enabling Text-to-Video, Image-to-Video, and more", + "downloads": 45, + "github_stars": 2, + "icon": "", + "id": "comfyui_vidu_api_node", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-11T13:34:27.572909Z", + "dependencies": [ + "requests" + ], + "deprecated": false, + "downloadUrl": "", + "id": "cce496cb-9bb4-494a-a7a1-4d1bf61abf07", + "node_id": "comfyui_vidu_api_node", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_VIDU_API", + "publisher": { + "createdAt": "2025-07-11T09:53:42.025745Z", + "description": "", + "id": "josephxieabc", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/josephxie1/comfyui_vidu_api_node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-17T04:44:47.533869Z", + "description": "Add caching to any custom node", + "downloads": 86, + "github_stars": 10, + "icon": "", + "id": "cg-nodecaching", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-17T04:44:47.947217Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "7e4d127c-b260-4ac1-ac04-629577c70827", + "node_id": "cg-nodecaching", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "cg-nodecaching", + "publisher": { + "createdAt": "2024-05-20T00:41:38.315381Z", + "description": "", + "id": "chrisgoringe", + "logo": "", + "members": [], + "name": "ChrisG", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chrisgoringe/cg-nodecaching", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "APZmedia", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:00.737689Z", + "description": "A ComfyUI node to implement Together AI API image generation", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "APZmedia-comfy-together-lora", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "APZmedia Together Image Generator for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/APZmedia/APZmedia-comfy-together-lora", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "shockz0rz", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:59.456552Z", + "description": "A set of custom nodes for creating image grids, sequences, and batches in ComfyUI.", + "downloads": 0, + "github_stars": 24, + "icon": "", + "id": "comfy-easy-grids", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfy-easy-grids", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shockz0rz/comfy-easy-grids", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "barckley75", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:48.686285Z", + "description": "Nodes:TextToSpeech, phy_3_conditioning, SaveAudioToDaVinci, SaveImageToDaVinci.\nNOTE:In order to use DaVinci node you must have DaVinci Resolve Studio connected to the API. For more information check the help seciton in DaVinci Resolve Studio HELP>DOCUMENTATION>DEVELOPER. It will open a folder, search for scripting and the for README.txt file, the API documentation.", + "downloads": 0, + "github_stars": 35, + "icon": "", + "id": "comfyUI_DaVinciResolve", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyUI_DaVinciResolve", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/barckley75/comfyUI_DaVinciResolve", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "TJ16th", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:24.181526Z", + "description": "Custom Node for comfyUI for virtual lighting based on normal map.\nYou can use normal maps to add virtual lighting effects to your images.", + "downloads": 0, + "github_stars": 151, + "icon": "", + "id": "comfyUI_TJ_NormalLighting", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyUI_TJ_NormalLighting", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TJ16th/comfyUI_TJ_NormalLighting", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "discus0434", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:37.19166Z", + "description": "This repository simply caches the CLIP embeddings and subtly accelerates the inference process by bypassing unnecessary computations.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "comfyui-caching-embeddings", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Caching Embeddings", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/discus0434/comfyui-caching-embeddings", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-06T15:51:54.210139Z", + "description": "Build Live AI Video with ComfyUI", + "downloads": 597, + "github_stars": 0, + "icon": "https://raw.githubusercontent.com/livepeer/comfystream-docs/main/logo/icon-light-120px.svg", + "id": "comfystream", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-29T21:11:23.128686Z", + "dependencies": [ + "asyncio", + "comfyui @ git+https://github.com/hiddenswitch/ComfyUI.git@ce3583ad42c024b8f060d0002cbe20c265da6dc8", + "aiortc", + "aiohttp", + "toml", + "twilio", + "prometheus_client", + "librosa" + ], + "deprecated": false, + "downloadUrl": "", + "id": "53841a57-0c4c-4b15-94ca-b7ebdde72761", + "node_id": "comfystream", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyStream", + "publisher": { + "createdAt": "2025-03-06T15:48:59.553533Z", + "description": "", + "id": "livepeer-comfystream", + "logo": "", + "members": [], + "name": "Livepeer Comfystream", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ctefer", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:42.286277Z", + "description": "This is a subset of nodes for ComfyUI that I made just for my own workflow. The nodes support Flux (single conditioning, no negatives) and are just a way of minimizing the noodles. There's no real journey to be made here, just anything that helps me get through the day.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "CFE_comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "CFE_comfyui", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/CpreForEver/CFE_comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-27T13:49:11.562227Z", + "description": "A custom node for ComfyUI that forces a connection between any input and output.", + "downloads": 55, + "github_stars": 1, + "icon": "", + "id": "comfypsi_force_connect", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-27T13:49:11.963375Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "afeea476-12dd-41b7-9f6a-e9f7a6c4c99e", + "node_id": "comfypsi_force_connect", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Force Connect", + "publisher": { + "createdAt": "2025-03-16T11:31:05.525258Z", + "description": "", + "id": "rookiepsi", + "logo": "", + "members": [], + "name": "psi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/rookiepsi/comfypsi_force_connect", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "tags": [] + }, + { + "author": "omar92", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:11.768698Z", + "description": "openAI suite, String suite, Latent Tools, Image Tools: These custom nodes provide expanded functionality for image and string processing, latent processing, as well as the ability to interface with models such as ChatGPT/DallE-2.\nNOTE: Currently, this extension does not support the new OpenAI API, leading to compatibility issues.", + "downloads": 0, + "github_stars": 157, + "icon": "", + "id": "ComfyUI-QualityOfLifeSuit_Omar92", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Quality of life Suit:V2", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/omar92/ComfyUI-QualityOfLifeSuit_Omar92", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "logtd", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:32.021927Z", + "description": "ComfyUI nodes to use ReNoise", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "ComfyUI-ReNoise", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ReNoise", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/logtd/ComfyUI-ReNoise", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ntdviet", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:41.913856Z", + "description": "Nodes:LatentGarbageCollector. This ComfyUI custom node flushes the GPU cache and empty cuda interprocess memory. It's helpfull for low memory environment such as the free Google Colab, especially when the workflow VAE decode latents of the size above 1500x1500.", + "downloads": 0, + "github_stars": 31, + "icon": "", + "id": "comfyui-ext", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ntdviet/comfyui-ext", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ntdviet/comfyui-ext", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "nonnonstop", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:08.715959Z", + "description": "This extension applies a patch that limits the model loading speed when using an HDD in a Windows environment. See [a/comfyanonymous/ComfyUI#1992](https://github.com/comfyanonymous/ComfyUI/issues/1992). [w/As this patch is only useful in very limited environments, its installation is not recommended under normal circumstances. Memory usage may increase.]", + "downloads": 0, + "github_stars": 10, + "icon": "", + "id": "comfyui-faster-loading", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-faster-loading", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nonnonstop/comfyui-faster-loading", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ningxiaoxiao", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:56.323938Z", + "description": "Real-time input output node for ComfyUI by NDI. Leveraging the powerful linking capabilities of NDI, you can access NDI video stream frames and send images generated by the model to NDI video streams.", + "downloads": 0, + "github_stars": 59, + "icon": "", + "id": "comfyui-NDI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-NDI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ningxiaoxiao/comfyui-NDI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "shinich39", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:58.77544Z", + "description": "Connect a new link from out of screen.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui-connect-from-afar", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "connect-from-afar", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shinich39/comfyui-connect-from-afar", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "111496583yzy", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:43.94853Z", + "description": "The Jigsaw Puzzle Effect plugin provides a unique puzzle effect for image processing. By dividing an image into multiple puzzle pieces and optionally adding missing pieces, users can easily create artistic puzzle effects.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "comfyui-PuzzleCrack-Effect", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Jigsaw Puzzle Effect Plugin", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/111496583yzy/comfyui-PuzzleCrack-Effect", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ArtVentureX", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:09.487244Z", + "description": "AnimateDiff integration for ComfyUI, adapts from sd-webui-animatediff.\n[w/You only need to download one of [a/mm_sd_v14.ckpt](https://huggingface.co/guoyww/animatediff/resolve/main/mm_sd_v14.ckpt) | [a/mm_sd_v15.ckpt](https://huggingface.co/guoyww/animatediff/resolve/main/mm_sd_v15.ckpt). Put the model weights under %%ComfyUI/custom_nodes/comfyui-animatediff/models%%. DO NOT change model filename.]", + "downloads": 0, + "github_stars": 740, + "icon": "", + "id": "comfyui-animatediff", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "AnimateDiff", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ArtVentureX/comfyui-animatediff", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "LyazS", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:42.263679Z", + "description": "A Anime Character Segmentation node for comfyui, based on [this hf space](https://huggingface.co/spaces/skytnt/anime-remove-background).", + "downloads": 0, + "github_stars": 10, + "icon": "", + "id": "comfyui-anime-seg", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Anime Character Segmentation node for comfyui", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LyazS/comfyui-anime-seg", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-31T22:23:44.335964Z", + "description": "A port of muerrilla's sd-webui-Detail-Daemon as a node for ComfyUI, to adjust sigmas that generally enhance details, and possibly remove unwanted bokeh or background blurring.", + "downloads": 204889, + "github_stars": 757, + "icon": "https://raw.githubusercontent.com/Jonseed/ComfyUI-Detail-Daemon/refs/heads/main/DetailDaemonIcon.jpg", + "id": "comfyui-detail-daemon", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-14T16:48:21.051668Z", + "dependencies": [ + "matplotlib" + ], + "deprecated": false, + "downloadUrl": "", + "id": "68a0f409-3510-4bc6-9ec2-e9bf05449c6c", + "node_id": "comfyui-detail-daemon", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Detail-Daemon", + "publisher": { + "createdAt": "2024-10-31T21:40:07.65705Z", + "description": "", + "id": "jonseed", + "logo": "", + "members": [], + "name": "Jonseed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Jonseed/ComfyUI-Detail-Daemon", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "huimengshiguang", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:56.093629Z", + "description": "This is an extension script for Stable Diffusion WebUI, modified based on the original functionality. It now supports fixing FLUX panorama seams. It allows users to independently configure seamless image tiling for both the X and Y axes while also being capable of handling FLUX panorama seam issues.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "AspectAwareTiling", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "AspectAwareTiling", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/huimengshiguang/AspectAwareTiling", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "dfl", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:49.219226Z", + "description": "ComfyUI Custom Sampler nodes that implement Zheng et al.'s Trajectory Consistency Distillation based on [a/https://mhh0318.github.io/tcd](https://mhh0318.github.io/tcd)", + "downloads": 0, + "github_stars": 83, + "icon": "", + "id": "comfyui-tcd-scheduler", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-TCD-scheduler", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dfl/comfyui-tcd-scheduler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "deforum", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:53.587828Z", + "description": "Official Deforum animation pipeline tools that provide a unique way to create frame-by-frame generative motion art.", + "downloads": 0, + "github_stars": 191, + "icon": "", + "id": "deforum-comfy-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Deforum Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/XmYx/deforum-comfy-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-24T01:15:36.561188Z", + "description": "Dia TTS model capable of generating ultra-realistic dialogue in one pass. ComfyUI node.", + "downloads": 274, + "github_stars": 11, + "icon": "", + "id": "dia-mw", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-29T04:39:09.935052Z", + "dependencies": [ + "pydantic", + "descript-audio-codec" + ], + "deprecated": false, + "downloadUrl": "", + "id": "9bb4e6d4-173c-4064-b740-a7bba4725711", + "node_id": "dia-mw", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "MW-ComfyUI_Dia", + "publisher": { + "createdAt": "2025-01-06T14:10:29.10336Z", + "description": "", + "id": "mw", + "logo": "", + "members": [], + "name": "MW", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/billwuhao/ComfyUI_Dia", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "alkemann", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:42.633008Z", + "description": "Nodes:Int to Text, Seed With Text, Save A1 Image.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "7361b8eb966f29c8238fd323409efb68", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "alkemann nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://gist.github.com/alkemann/7361b8eb966f29c8238fd323409efb68", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-20T00:48:44.909538Z", + "description": "A set of nodes that allow data to be 'broadcast' to some or all unconnected inputs. Greatly reduces link spaghetti.", + "downloads": 508633, + "github_stars": 746, + "icon": "", + "id": "cg-use-everywhere", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-04T02:05:13.052147Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "388d28a3-8ee4-4a60-90b4-acd8c888e969", + "node_id": "cg-use-everywhere", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "6.2.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "cg-use-everywhere", + "publisher": { + "createdAt": "2024-05-20T00:41:38.315381Z", + "description": "", + "id": "chrisgoringe", + "logo": "", + "members": [], + "name": "ChrisG", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chrisgoringe/cg-use-everywhere", + "status": "", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T16:42:43.423749Z", + "description": "Nodes:SaveImageWithOptions. This Save Image node allows you to save the image with the checkpoint name as a prefix.", + "downloads": 1012, + "github_stars": 0, + "icon": "", + "id": "comfyui-saveimagewithoptions", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-20T16:42:43.685534Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "dae4e5d2-f8ce-478d-9534-093d72f27624", + "node_id": "comfyui-saveimagewithoptions", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-SaveImageWithOptions", + "publisher": { + "createdAt": "2024-06-20T14:42:43.137697Z", + "description": "", + "id": "lordgasmic", + "logo": "", + "members": [], + "name": "lordgasmic", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lordgasmic/comfyui_comfyui_save_image_with_options", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AiartvnTeam", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:12.671792Z", + "description": "Node for compositing multiple images with interactive preview and layer management", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "A2V_Multi_Image_Composite", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "A2V Multi Image Composite", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/aiartvn/A2V_Multi_Image_Composite", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "SoftMeng", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:45.489731Z", + "description": "Accelerate ComfyUI Nodes for Faster Image Generation, Ensuring Consistency Pre and Post-Acceleration, Ideal for Bulk Image Production.", + "downloads": 0, + "github_stars": 14, + "icon": "", + "id": "ComfyUI-DeepCache-Fix", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-DeepCache-Fix", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SoftMeng/ComfyUI-DeepCache-Fix", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-13T04:03:15.459101Z", + "description": "Go to the top menu>Workflow>Browse Templates. This is a collection of my Inpainting workflows for Flux (expanded and COMPACT) + others. Previously called: 'Proper Flux Control-Net inpainting and/or outpainting with batch size - Alimama or Flux Fill'. Works with Kontext now! By installing this 'node' you can always keep them up to date by updating on the manager. This is not a new custom node. You will still need to install all other custom nodes used on the workflows. You will also find my 'Flux LoRA Block Weights Preset Tester' here.", + "downloads": 521, + "github_stars": 39, + "icon": "https://raw.githubusercontent.com/diodiogod/Comfy-Inpainting-Works/main/images/logo.png", + "id": "inpainting-works", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-04T14:47:22.971752Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "0ad603ac-f604-43d8-8239-581eda92d3c7", + "node_id": "inpainting-works", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "9.0.13" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfy Inpainting Works", + "publisher": { + "createdAt": "2025-06-13T03:15:53.546891Z", + "description": "", + "id": "diogod", + "logo": "", + "members": [], + "name": "diogod", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/diodiogod/Comfy-Inpainting-Works", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "palant", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:57.851244Z", + "description": "This tool will turn entire workflows or parts of them into single integrated nodes. In a way, it is similar to the Node Templates functionality but hides the inner structure. This is useful if all you want is to reuse and quickly configure a bunch of nodes without caring how they are interconnected.", + "downloads": 0, + "github_stars": 39, + "icon": "", + "id": "integrated-nodes-comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Integrated Nodes for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/palant/integrated-nodes-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-15T02:21:42.738177Z", + "description": "Nodes to manipulate HTML.", + "downloads": 304, + "github_stars": 1, + "icon": "", + "id": "comfyui-html", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-10T10:54:17.910029Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b1382e75-6ccf-47b6-8f59-04a3bba33f58", + "node_id": "comfyui-html", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.5.0" + }, + "license": "{}", + "name": "ComfyUI_html", + "publisher": { + "createdAt": "2024-05-22T20:31:08.469037Z", + "description": "", + "id": "filipemeneses", + "logo": "", + "members": [], + "name": "Filipe Meneses", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/filipemeneses/ComfyUI_html", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "DragonDiffusionbyBoyo", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:22.778035Z", + "description": "The Vae node is a sneaky little node perfect for deployment in Schools or work environments where you do not want the kiddywinkles creating NSFW content. Just rename the node to VAE decode and it looks like a normal node but hidden inside is an NSFW detector. Once hidden in the workflow there are no settings to undo the NSFW detection so cannot be worked around unless you remove the node. The node looks innocent once renamed so is virtually undetectable. I have placed an example workflow for you to see how to connect it. Simple stuff really, but once connected just rename.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "Boyonodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Boyonodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DragonDiffusionbyBoyo/Boyonodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-21T13:53:13.912554Z", + "description": "A comprehensive set of custom nodes for ComfyUI, focusing on utilities for image processing, JSON manipulation, model operations and working with object via URLs", + "downloads": 246846, + "github_stars": 285, + "icon": "https://cdn.protogaia.com/assets/gaia.png", + "id": "comfyui-art-venture", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-14T06:49:45.155119Z", + "dependencies": [ + "timm==0.6.13", + "transformers", + "fairscale", + "pycocoevalcap", + "opencv-python", + "qrcode[pil]", + "pytorch_lightning", + "kornia", + "pydantic", + "segment_anything", + "boto3>=1.34.101" + ], + "deprecated": false, + "downloadUrl": "", + "id": "37ac48ac-a363-421c-990b-5dc9e9f816e1", + "node_id": "comfyui-art-venture", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.1" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI ArtVenture", + "publisher": { + "createdAt": "2024-10-21T04:36:46.195251Z", + "description": "", + "id": "protogaia", + "logo": "", + "members": [], + "name": "ArtVenture", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sipherxyz/comfyui-art-venture", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-09T12:51:54.479852Z", + "description": "ComfyUI wrapper for Speech-to-Speech translation, hibiki: https://github.com/kyutai-labs/hibiki", + "downloads": 723, + "github_stars": 0, + "icon": "", + "id": "comfyui-hibiki", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-09T12:51:54.912872Z", + "dependencies": [ + "git+https://github.com/jhj0517/moshi_comfyui_wrapper.git@main#subdirectory=moshi" + ], + "deprecated": false, + "downloadUrl": "", + "id": "920f3f78-8709-4855-a2ef-46dd04a723ce", + "node_id": "comfyui-hibiki", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-hibiki", + "publisher": { + "createdAt": "2024-08-24T13:04:03.484731Z", + "description": "", + "id": "jhj0517", + "logo": "", + "members": [], + "name": "jhj0517", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jhj0517/ComfyUI-hibiki.git", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-29T11:57:43.840489Z", + "description": "Enhance GLB 3D models with realistic materials, smart emissive elements, and procedural normal maps", + "downloads": 285, + "github_stars": 1, + "icon": "", + "id": "comfyui-q-glb-material-modifier", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-29T11:57:44.280605Z", + "dependencies": [ + "pygltflib>=1.16.1", + "opencv-python>=4.8.0", + "pillow>=10.0.0", + "numpy>=1.24.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a4350740-6ffb-4ba9-8d3f-9785478397d6", + "node_id": "comfyui-q-glb-material-modifier", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "Q GLB Material Modifier", + "publisher": { + "createdAt": "2025-05-29T11:01:24.834195Z", + "description": "", + "id": "angree", + "logo": "", + "members": [], + "name": "Grzegorz Korycki", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/angree/ComfyUI-Q_GLB_Material_Modifier", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-01T19:33:10.757368Z", + "description": "DiffusionLight (Turbo) implemented in ComfyUI", + "downloads": 253, + "github_stars": 2, + "icon": "https://diffusionlight.github.io/assets/images/icon_32x32.png", + "id": "diffusionlight-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-01T19:33:11.14302Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "51986dc0-6066-43fa-b563-a622c85ff3d5", + "node_id": "diffusionlight-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "DiffusionLight-ComfyUI", + "publisher": { + "createdAt": "2025-07-01T19:30:48.733251Z", + "description": "", + "id": "diffusionlight", + "logo": "", + "members": [], + "name": "DiffusionLight", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DiffusionLight/DiffusionLight-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-04T16:41:30.071406Z", + "description": "Expansion of Efficiency Nodes for ComfyUI. Significant UX improvements.[w/NOTE: This node requires [a/efficiency-nodes-comfyui](https://github.com/jags111/efficiency-nodes-comfyui) and [a/ComfyUI-Custom-Scripts](https://github.com/pythongosssss/ComfyUI-Custom-Scripts); it also requires start.bat to run.]", + "downloads": 9044, + "github_stars": 28, + "icon": "https://upload.wikimedia.org/wikipedia/commons/d/d5/Speech_balloon_green_icon.svg", + "id": "efficiency-nodes-ED", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-29T03:22:46.111815Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "19f899a2-b5c0-41f7-aac8-6e852eee8bea", + "node_id": "efficiency-nodes-ED", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.8.7" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "efficiency-nodes-ED", + "publisher": { + "createdAt": "2025-02-04T11:11:03.879214Z", + "description": "", + "id": "nyaamz", + "logo": "", + "members": [], + "name": "NyaamZ", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/NyaamZ/efficiency-nodes-ED", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "SadaleNet", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:38.588954Z", + "description": "Nodes: CLIPTextEncodeA1111, RerouteTextForCLIPTextEncodeA1111.", + "downloads": 0, + "github_stars": 20, + "icon": "", + "id": "CLIPTextEncodeA1111-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI A1111-like Prompt Custom Node Solution", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SadaleNet/CLIPTextEncodeA1111-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "JTriggerFish", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:57.462172Z", + "description": "A set of tools for manipulating latent tensors in ComfyUI", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyLatentTools", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfy Latent Tools", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/JTriggerFish/ComfyLatentTools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-25T01:17:56.1211Z", + "description": "Flux (GGUF) implementation for the ComfyUI Ultimate SD Upscale node.", + "downloads": 78658, + "github_stars": 13, + "icon": "", + "id": "ComfyUI-UltimateSDUpscale-GGUF", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-25T01:17:56.919698Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "0bac5717-f0c9-4a5a-9e8a-045af7a566ba", + "node_id": "ComfyUI-UltimateSDUpscale-GGUF", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-UltimateSDUpscale-GGUF", + "publisher": { + "createdAt": "2024-06-10T16:21:33.996006Z", + "description": "", + "id": "traugdor", + "logo": "", + "members": [], + "name": "quadmoon", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/traugdor/ComfyUI-UltimateSDUpscale-GGUF", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "logtd", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:34.889166Z", + "description": "ComfyUI nodes to use [a/APG scaling](https://huggingface.co/papers/2410.02416) for CFG, allowing for better image quality with higher CFG.", + "downloads": 0, + "github_stars": 29, + "icon": "", + "id": "ComfyUI-APGScaling", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-APGScaling", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/logtd/ComfyUI-APGScaling", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-05T18:00:28.399929Z", + "description": "", + "downloads": 1007, + "github_stars": 0, + "icon": "", + "id": "comfyui-vid2vid", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-05T18:00:32.243677Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ddeec00c-12ac-4f0e-ad8c-7c83917b92cc", + "node_id": "comfyui-vid2vid", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Vid2Vid", + "publisher": { + "createdAt": "2024-11-05T14:46:21.005049Z", + "description": "", + "id": "blonicx", + "logo": "", + "members": [], + "name": "Blonicx", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Blonicx/ComfyUI-Vid2Vid", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "fexli", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:55.747342Z", + "description": "Nodes:FEImagePadForOutpaint, FEColorOut, FEColor2Image, FERandomizedColor2Image", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "fexli-util-node-comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "fexli-util-node-comfyui", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fexli/fexli-util-node-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kijai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:51.851517Z", + "description": "Node to use [a/APISR](https://github.com/Kiteretsu77/APISR) upscale models in ComfyUI.[w/NOTE: repo name is changed from ComfyUI-APISR -> ComfyUI-APISR-KJ]", + "downloads": 0, + "github_stars": 71, + "icon": "", + "id": "ComfyUI-APISR-KJ", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-APISR", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-APISR-KJ", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "finegrain", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:28.29741Z", + "description": "ComfyUI custom nodes to interact with the Finegrain API.", + "downloads": 0, + "github_stars": 12, + "icon": "", + "id": "finegrain_comfyui-finegrain", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-finegrain", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/finegrain-ai/comfyui-finegrain", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ARZUMATA", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:26.742332Z", + "description": "NODES:Caching CLIP Text Encode for FLUX.\nRandom nodes for ComfyUI for various purposes.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-ARZUMATA", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ARZUMATA", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ARZUMATA/ComfyUI-ARZUMATA", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-07T02:00:54.662045Z", + "description": "this node contains a lot of small little helpers like switches, passers and selectors that i use a lot to build my workflows.", + "downloads": 2044, + "github_stars": 5, + "icon": "", + "id": "comfyui-rvtools_v2", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-17T16:02:03.710434Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "280dd8a1-484d-417e-a7bf-c950dd8b320e", + "node_id": "comfyui-rvtools_v2", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "2.4.23" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-RvTools_v2", + "publisher": { + "createdAt": "2025-07-07T01:50:00.04919Z", + "description": "", + "id": "rvage", + "logo": "", + "members": [], + "name": "Rvage", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/r-vage/ComfyUI-RvTools_v2", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-14T14:57:10.282579Z", + "description": "ComfyUI tool node, which can be used for file/message backup, supports Telegram, Discord, Alist yike, etc./ComfyUI \u63a8\u9001\u8282\u70b9\uff0c\u53ef\u7528\u4e8e\u6587\u4ef6/\u6d88\u606f \u5907\u4efd\uff0c\u652f\u6301Telegram, Discord, Alist yike \u7b49\u7b49", + "downloads": 848, + "github_stars": 4, + "icon": "", + "id": "comfyui-notifier", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-14T15:39:09.671343Z", + "dependencies": [ + "python-telegram-bot", + "requests_toolbelt", + "python-dotenv", + "discord-webhook" + ], + "deprecated": false, + "downloadUrl": "", + "id": "38f1a22b-0250-46b9-be8a-f9cff6a2ed19", + "node_id": "comfyui-notifier", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "LICENSE", + "name": "ComfyUI-Notifier", + "publisher": { + "createdAt": "2024-06-14T05:54:23.756611Z", + "description": "", + "id": "gentlemanhu", + "logo": "", + "members": [], + "name": "GentlemanHu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/GentlemanHu/ComfyUI-Notifier", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ricklove", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:39.644815Z", + "description": "Nodes: Image Crop and Resize by Mask, Image Uncrop, Image Shadow, Optical Flow (Dip), Warp Image with Flow, Image Threshold (Channels), Finetune Variable, Finetune Analyze, Finetune Analyze Batch, ... Misc ComfyUI nodes by Rick Love", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "comfyui-ricklove", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-ricklove", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ricklove/comfyui-ricklove", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Mr.ForExample", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:35.214733Z", + "description": "Improved AnimateAnyone implementation that allows you to use the opse image sequence and reference image to generate stylized video.\nThe current goal of this project is to achieve desired pose2video result with 1+FPS on GPUs that are equal to or better than RTX 3080!\ud83d\ude80\n[w/The torch environment may be compromised due to version issues as some torch-related packages are being reinstalled.]", + "downloads": 0, + "github_stars": 547, + "icon": "", + "id": "ComfyUI-AnimateAnyone-Evolved", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-AnimateAnyone-Evolved", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MrForExample/ComfyUI-AnimateAnyone-Evolved", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ZHO-ZHO-ZHO", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:35.454587Z", + "description": "Animated optical illusions in ComfyUI", + "downloads": 0, + "github_stars": 21, + "icon": "", + "id": "ComfyUI-Animated-optical-illusions", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Animated-optical-illusions", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ZHO-ZHO-ZHO/ComfyUI-Animated-optical-illusions", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-28T03:47:45.971803Z", + "description": "Nodes for using Orpheus-TTS in ComfyUI", + "downloads": 393, + "github_stars": 1, + "icon": "", + "id": "comfyui-orpheus", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-29T21:18:23.764503Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5e4309cb-8f6a-48fb-95f6-5b46989bf826", + "node_id": "comfyui-orpheus", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.5" + }, + "license": "{}", + "name": "ComfyUI-Orpheus", + "publisher": { + "createdAt": "2024-06-19T21:14:26.402245Z", + "description": "", + "id": "austinmroz", + "logo": "", + "members": [], + "name": "AustinMroz", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AustinMroz/ComfyUI-Orpheus", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-29T23:14:12.058083Z", + "description": "A prompt manager on the sidebar for ComfyUI, allowing easy saving and copying of prompts. ", + "downloads": 145, + "github_stars": 0, + "icon": "", + "id": "comfyui-prompt-bank", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-29T23:14:12.463932Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4d626310-6dd7-4431-8e12-922b41f368b6", + "node_id": "comfyui-prompt-bank", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-prompt-bank", + "publisher": { + "createdAt": "2025-06-29T23:10:47.718882Z", + "description": "", + "id": "cyrus-hei", + "logo": "", + "members": [], + "name": "Cyrus", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Cyrus-Hei/comfyui-prompt-bank", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "martijnat", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:59.246005Z", + "description": "a ComfyUI plugin for previewing latents without vae decoding. Useful for showing intermediate results and can be used a faster 'preview image' if you don't wan't to use vae decode.", + "downloads": 0, + "github_stars": 37, + "icon": "", + "id": "comfyui-previewlatent", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-previewlatent", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/martijnat/comfyui-previewlatent", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-25T05:34:49.01457Z", + "description": "An extension supporting more streamlined prompt queue management.", + "downloads": 193, + "github_stars": 10, + "icon": "https://raw.githubusercontent.com/QuietNoise/ComfyUI-Queue-Manager/refs/heads/main/queue-icon.svg", + "id": "comfyui_queue_manager", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-29T21:15:17.5783Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "12d7ae58-fa1f-40e0-9f08-a6b4726cd1e2", + "node_id": "comfyui_queue_manager", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Queue Manager", + "publisher": { + "createdAt": "2025-06-24T02:12:37.361168Z", + "description": "", + "id": "edgerunner", + "logo": "", + "members": [], + "name": "Edgerunner", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/QuietNoise/ComfyUI-Queue-Manager", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-08T08:11:23.3263Z", + "description": "FunASR wrapper for ComfyUI", + "downloads": 270, + "github_stars": 10, + "icon": "", + "id": "ComfyUI-AV-FunASR", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-13T05:53:30.018793Z", + "dependencies": [ + "modelscope", + "sortedcontainers", + "simplejson", + "datasets==2.16.0", + "Levenshtein", + "soundfile" + ], + "deprecated": false, + "downloadUrl": "", + "id": "88e3abe3-2b28-46b6-a487-040af65821f8", + "node_id": "ComfyUI-AV-FunASR", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-AV-FunASR", + "publisher": { + "createdAt": "2025-04-16T14:14:31.729599Z", + "description": "", + "id": "av", + "logo": "", + "members": [], + "name": "Aven", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/avenstack/ComfyUI-AV-FunASR", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-09T05:19:19.790767Z", + "description": "Example node communicating between ComfyUI Javascript and Python.", + "downloads": 869, + "github_stars": 12, + "icon": "https://raw.githubusercontent.com/Amorano/Jovimetrix-examples/refs/heads/master/res/logo-cozy-comfyui.png", + "id": "cozy_spoke", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-24T20:36:37.989991Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "555fd9e8-0701-4a2f-8881-588e5d45e28d", + "node_id": "cozy_spoke", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Cozy Spoke", + "publisher": { + "createdAt": "2024-05-17T04:16:25.445017Z", + "description": "", + "id": "amorano", + "logo": "", + "members": [], + "name": "Joviex", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cozy-comfyui/cozy_spoke", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ShmuelRonen", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:05.341941Z", + "description": "A custom node for ComfyUI that enables smooth, keyframe-based animations for image generation. Create dynamic sequences with control over motion, zoom, rotation, and easing effects. Ideal for AI-assisted animation and video content creation.", + "downloads": 0, + "github_stars": 18, + "icon": "", + "id": "ComfyUI-AstralAnimator", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-AstralAnimator", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShmuelRonen/ComfyUI-AstralAnimator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "fexploit", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:13.083647Z", + "description": "ComfyUI-AutoCropBgTrim is a powerful tool designed to automatically clean up the background of your images. This tool trims unnecessary spaces and pixels, leaving only the main subject of the image. It generates both a mask and an image output, making it easy to focus on the essential elements. Perfect for enhancing your photos and preparing them for professional use.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-AutoTrimBG", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-AutoTrimBG", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fexploit/ComfyUI-AutoTrimBG", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-29T12:51:05.468413Z", + "description": "ComfyUI custom node for finding and analyzing mask sizes in images", + "downloads": 221, + "github_stars": 0, + "icon": "", + "id": "comfyui-q-find-mask-size", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-29T12:51:05.933294Z", + "dependencies": [ + "pillow>=10.0.0", + "numpy>=1.24.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5b596686-daa7-45e0-a8d9-6151e118ec70", + "node_id": "comfyui-q-find-mask-size", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "Q Find Mask Size", + "publisher": { + "createdAt": "2025-05-29T11:01:24.834195Z", + "description": "", + "id": "angree", + "logo": "", + "members": [], + "name": "Grzegorz Korycki", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/angree/ComfyUI-Q_find-mask-size", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-19T09:18:33.22145Z", + "description": "ComfyUI native nodes for IC-Light", + "downloads": 118140, + "github_stars": 1067, + "icon": "", + "id": "comfyui-ic-light", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-30T19:21:41.780845Z", + "dependencies": [ + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7d84b6a7-84ba-43dc-9077-8ca14774373e", + "node_id": "comfyui-ic-light", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.5" + }, + "license": "{\"text\": \"Apache License 2.0\"}", + "name": "ComfyUI-IC-Light", + "publisher": { + "createdAt": "2024-06-09T11:11:54.62154Z", + "description": "", + "id": "kijai", + "logo": "", + "members": [], + "name": "Kijai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-IC-Light", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Taremin", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:52.582461Z", + "description": "This is a custom node for ComfyUI.\nThe PromptGenerationConfig node allows users to configure settings such as image dimensions, step count, and CFGScale through prompts during image generation.\nThe PromptEdit node enables users to add text from the prompt to the negative prompt (or vice versa) and replace parts of the prompt using regular expressions.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui-prompt-config", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-prompt-config", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Taremin/comfyui-prompt-config", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-14T14:03:48.514171Z", + "description": "ComfyUI Extension for Advanced Security. Implements login, multi-user registration, IP filtering, and user-specific input/output directories.", + "downloads": 878, + "github_stars": 32, + "icon": "https://raw.githubusercontent.com/LucipherDev/ComfyUI-Sentinel/refs/heads/main/icon.png", + "id": "comfyui-sentinel", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-22T16:15:41.468035Z", + "dependencies": [ + "aiohttp", + "PyJWT", + "bcrypt", + "bleach" + ], + "deprecated": false, + "downloadUrl": "", + "id": "ec9a8b64-1ea2-4826-abf2-f3f5300df323", + "node_id": "comfyui-sentinel", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "3.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Sentinel", + "publisher": { + "createdAt": "2024-12-21T02:59:26.094039Z", + "description": "", + "id": "lucipherdev", + "logo": "", + "members": [], + "name": "Sumeth Sathnindu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LucipherDev/ComfyUI-Sentinel", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "dmarx", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:23.838499Z", + "description": "porting audioreactivity pipeline from vktrs to comfyui.", + "downloads": 0, + "github_stars": 11, + "icon": "", + "id": "ComfyUI-AudioReactive", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-AudioReactive", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dmarx/ComfyUI-AudioReactive", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "shadowcz007", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:35.137822Z", + "description": "Nodes:Music Gen, Audio Play, Stable Audio", + "downloads": 0, + "github_stars": 122, + "icon": "", + "id": "comfyui-sound-lab", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-sound-lab", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shadowcz007/comfyui-sound-lab", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "glowcone", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:45.032213Z", + "description": "Nodes: Convert String To Int, Convert String To Float", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "comfyui-string-converter", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "String Converter", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/glowcone/comfyui-string-converter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "tocubed", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:02.127828Z", + "description": "Nodes: Shadertoy, Load Audio (from Path), Audio Frame Transform (Shadertoy), Audio Frame Transform (Beats)", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "ComfyUI-AudioReactor", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-AudioReactor", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tocubed/ComfyUI-AudioReactor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "a1lazydog", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:16.651892Z", + "description": "Load mp3 files and use the audio nodes to power animations and prompt scheduling. Use with FizzNodes.", + "downloads": 0, + "github_stars": 102, + "icon": "", + "id": "ComfyUI-AudioScheduler", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-AudioScheduler", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/a1lazydog/ComfyUI-AudioScheduler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "iFREEGROUP", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:17.658555Z", + "description": "Node:Load Checkerboard Images for Calibrate Camera, Matrix and distortion coefficient to text, Undistort", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "comfyui-undistort", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-undistort", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/iFREEGROUP/comfyui-undistort", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jamesWalker55", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:16.983189Z", + "description": "Nodes: JWInteger, JWFloat, JWString, JWImageLoadRGB, JWImageResize, ...", + "downloads": 0, + "github_stars": 108, + "icon": "", + "id": "comfyui-various", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Various ComfyUI Nodes by Type", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jamesWalker55/comfyui-various", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "WX-NPS1598", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:25.276698Z", + "description": "A very useful automatic cropping tool! It can realize cropping, expansion and rotation functions in the form of a slider. ", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI-Auto_Crop_By_NPS", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Auto Crop By NPS", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/WX-NPS1598/ComfyUI-Auto_Crop_By_NPS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Arkanun", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:21.342865Z", + "description": "NODES: ReadCSVRowNode", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ReadCSV_ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ReadCSV_ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Arkanun/ReadCSV_ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-11T17:26:56.94457Z", + "description": "Native InstantID support for ComfyUI. This extension differs from the many already available as it doesn't use diffusers but instead implements InstantID natively and it fully integrates with ComfyUI.", + "downloads": 112556, + "github_stars": 1670, + "icon": "", + "id": "comfyui_instantid", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-11T17:27:00.618316Z", + "dependencies": [ + "insightface", + "onnxruntime", + "onnxruntime-gpu" + ], + "deprecated": false, + "downloadUrl": "", + "id": "4c62bce4-51ac-42f3-9c3a-969f6ee2524d", + "node_id": "comfyui_instantid", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_InstantID", + "publisher": { + "createdAt": "2024-06-05T06:22:33.072793Z", + "description": "", + "id": "matteo", + "logo": "", + "members": [], + "name": "Matteo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cubiq/ComfyUI_InstantID", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "dave-palt", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:00.563596Z", + "description": "Nodes: DSP Image Concat", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui_DSP_imagehelpers", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui_DSP_imagehelpers", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dave-palt/comfyui_DSP_imagehelpers", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "badjeff", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:50.053578Z", + "description": "A ComfyUI custom node to read LoRA tag(s) from text and load it into checkpoint model.", + "downloads": 0, + "github_stars": 83, + "icon": "", + "id": "comfyui_lora_tag_loader", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "LoRA Tag Loader for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/badjeff/comfyui_lora_tag_loader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "city96", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:24.278858Z", + "description": "GGUF Quantization support for native ComfyUI models.", + "downloads": 198643, + "github_stars": 2219, + "icon": "", + "id": "ComfyUI-GGUF", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-14T23:08:12.601812Z", + "dependencies": [ + "gguf>=0.13.0", + "sentencepiece", + "protobuf" + ], + "deprecated": false, + "downloadUrl": "", + "id": "076c183f-dcf4-4c64-882c-22c2bbc67690", + "node_id": "ComfyUI-GGUF", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-GGUF", + "publisher": { + "createdAt": "2024-05-22T23:30:59.125056Z", + "description": "", + "id": "city96", + "logo": "", + "members": [], + "name": "City96", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/city96/ComfyUI-GGUF", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-14T01:11:25.676008Z", + "description": "A lightweight and high-speed ComfyUI custom node for generating image captions using BLIP models. Optimized for both GPU and CPU environments to deliver fast and efficient caption generation.", + "downloads": 301, + "github_stars": 5, + "icon": "", + "id": "ComfyUI-Blip", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-14T01:11:26.076318Z", + "dependencies": [ + "transformers", + "accelerate", + "pillow", + "huggingface_hub" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f7786e57-8298-47af-ad9a-cba786455675", + "node_id": "ComfyUI-Blip", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Blip", + "publisher": { + "createdAt": "2024-07-01T23:11:45.570672Z", + "description": "", + "id": "ailab", + "logo": "", + "members": [], + "name": "AILab", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/1038lab/ComfyUI-Blip", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-04T12:31:18.115192Z", + "description": "This node splits its self-attention Q to focus on nearby samples.", + "downloads": 150, + "github_stars": 2, + "icon": "", + "id": "nearsighted_attention", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-04T12:31:18.508543Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "12feca02-9689-49a0-ba15-8ab7c68b6ad8", + "node_id": "nearsighted_attention", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "version": "1.0.0" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI Nearsighted Attention", + "publisher": { + "createdAt": "2025-07-03T07:29:32.862333Z", + "description": "", + "id": "mtsr", + "logo": "", + "members": [], + "name": "mtsr", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MitoshiroPJ/comfyui_nearsighted_attention", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "tags": [] + }, + { + "author": "Burgstall-labs", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:35.661319Z", + "description": "A ComfyUI wrapper for [a/Kokoro-onnx](https://github.com/thewh1teagle/kokoro-onnx)", + "downloads": 0, + "github_stars": 36, + "icon": "", + "id": "ComfyUI-BS_Kokoro-onnx", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-BS_Kokoro-onnx", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Burgstall-labs/ComfyUI-BS_Kokoro-onnx", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-30T22:14:46.968124Z", + "description": "Allows the locking of a nodes value from previous run", + "downloads": 71, + "github_stars": 0, + "icon": "", + "id": "lock_previous_value", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-30T22:14:47.357708Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a7d98134-2b57-4c3b-a43c-fbc612b29eb9", + "node_id": "lock_previous_value", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"text\": \"GNU General Public License v3\"}", + "name": "lock_previous_value", + "publisher": { + "createdAt": "2025-06-30T22:08:51.560323Z", + "description": "", + "id": "fylrid2", + "logo": "", + "members": [], + "name": "fylrid2", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fylrid2/comfyui_lock_previous_value", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-24T06:45:54.494643Z", + "description": "This is a workflow for my simple logic amazing upscale node for DIT model. it can be common use for Flux,Hunyuan,SD3 It can simple tile the initial image into pieces and then use image-interrogator to get each tile prompts for more accurate upscale process. The condition will be properly handled and the hallucination will be significantly eliminated.", + "downloads": 106500, + "github_stars": 707, + "icon": "\ud83e\ude90", + "id": "comfyui_ttp_toolset", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-24T06:45:58.287773Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ab4055c6-bcc7-4440-82ed-928d9282d279", + "node_id": "comfyui_ttp_toolset", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfyui_TTP_Toolset", + "publisher": { + "createdAt": "2024-08-24T06:17:32.70579Z", + "description": "", + "id": "ttplanet", + "logo": "", + "members": [], + "name": "TTPlanet", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TTPlanetPig/Comfyui_TTP_Toolset", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "m957ymj75urz", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:32.2644Z", + "description": "Nodes: RawText, RawTextCLIPEncode, RawTextCombine, RawTextReplace, Extension: m957ymj75urz.colors", + "downloads": 0, + "github_stars": 13, + "icon": "", + "id": "m957ymj75urz_ComfyUI-Custom-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "m957ymj75urz/ComfyUI-Custom-Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/m957ymj75urz/ComfyUI-Custom-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:10.939556Z", + "description": "ComfyUI-CameraCtrl-Wrapper", + "downloads": 0, + "github_stars": 21, + "icon": "", + "id": "ComfyUI-CameraCtrl-Wrapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-CameraCtrl-Wrapper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-CameraCtrl-Wrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "hodanajan", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:43.743854Z", + "description": "ComfyUI node to calculate optimal resolution to crop the image to (from a list of aspect ratios)", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "optimal-crop-resolution", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "optimal-crop-resolution", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hodanajan/optimal-crop-resolution", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-29T17:25:56.394608Z", + "description": "This project integrates the ElevenLabs Text-to-Speech API as a custom node for ComfyUI. It enables seamless text-to-speech conversion and includes the text-to-audio effect endpoint, delivering the generated audio as a PyTorch tensor for immediate playback or further processing. Perfect for workflows that need high-quality, natural-sounding speech synthesis", + "downloads": 167, + "github_stars": 2, + "icon": "https://cdn.buymeacoffee.com/uploads/profile_pictures/2025/06/zg0A5lEwktJOZ2qr.png@300w_0e.webp", + "id": "comfyui-elevenlabs-integrtion", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-02T18:58:04.78868Z", + "dependencies": [ + "elevenlabs", + "soundfile" + ], + "deprecated": false, + "downloadUrl": "", + "id": "cd8675c1-d862-45f9-bed7-dfc4a0b8b8ae", + "node_id": "comfyui-elevenlabs-integrtion", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.1.2" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI ElevenLabs API integration", + "publisher": { + "createdAt": "2025-06-22T20:35:12.923011Z", + "description": "", + "id": "aoliao", + "logo": "", + "members": [], + "name": "aoliao", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sysL-padawan/comfyui-elevenlabs-integration", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-20T15:25:22.836528Z", + "description": "Custom Nodes for Vision Language Models (VLM) , Large Language Models (LLM), Image Captioning, Automatic Prompt Generation, Creative and Consistent Prompt Suggestion, Keyword Extraction", + "downloads": 26510, + "github_stars": 501, + "icon": "", + "id": "comfyui_vlm_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-03T01:39:45.60324Z", + "dependencies": [ + "accelerate>=0.27.0", + "bitsandbytes", + "cffi", + "decord", + "diffusers", + "diskcache", + "einops>=0.7.0", + "gitpython", + "huggingface-hub>=0.20.3", + "moviepy", + "openai>=0.27.8", + "opencv-python", + "optimum>=1.17.0", + "pillow>=9.4.0", + "py-cpuinfo>=3.3.0", + "python-dateutil>=2.7.0", + "pytz", + "qwen-vl-utils", + "safetensors>=0.4.1", + "scikit-build", + "six", + "soundfile", + "symusic", + "torch>=2.0.1,<3.0.0", + "torchvision>=0.15.2", + "transformers>=4.38.2", + "typing" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1de96674-ee8c-4f8b-9ace-142e1c1dcf50", + "node_id": "comfyui_vlm_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_VLM_nodes", + "publisher": { + "createdAt": "2024-05-20T14:41:34.085962Z", + "description": "", + "id": "gokayfem", + "logo": "", + "members": [], + "name": "gokayfem", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gokayfem/ComfyUI_VLM_nodes", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "vienteck", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:16.365682Z", + "description": "This extension is a reimagined version based on the [a/ComfyUI-QualityOfLifeSuit_Omar92](https://github.com/omar92/ComfyUI-QualityOfLifeSuit_Omar92) extension, and it supports integration with ChatGPT through the new OpenAI API.\nNOTE: See detailed installation instructions on the [a/repository](https://github.com/vienteck/ComfyUI-Chat-GPT-Integration).", + "downloads": 0, + "github_stars": 31, + "icon": "", + "id": "ComfyUI-Chat-GPT-Integration", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Chat-GPT-Integration", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/vienteck/ComfyUI-Chat-GPT-Integration", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "victorchall", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:12.58676Z", + "description": "This node captures images one at a time from your webcam when you click generate.\nThis is particular useful for img2img or controlnet workflows.\nNOTE:This node will take over your webcam, so if you have another program using it, you may need to close that program first. Likewise, you may need to close Comfyui or close the workflow to release the webcam.", + "downloads": 0, + "github_stars": 14, + "icon": "", + "id": "comfyui_webcamcapture", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui Webcam capture node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/victorchall/comfyui_webcamcapture", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "nathannlu", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:58.594211Z", + "description": "Run your workflow using cloud GPU resources, from your local ComfyUI.\nNOTE:After you first install the plugin...\nThe first time you click 'generate', you will be prompted to log into your account.Subsequent generations after the first is faster (the first run it takes a while to process your workflow). Once those two steps have been completed, you will be able to seamlessly generate your workflow on the cloud!", + "downloads": 0, + "github_stars": 200, + "icon": "", + "id": "ComfyUI-Cloud", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfy Cloud", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nathannlu/ComfyUI-Cloud", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "huixingyun", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:53.428622Z", + "description": "A ComfyUI plugin library based on [a/https://github.com/stavsap/comfyui-ollama](https://github.com/stavsap/comfyui-ollama), with the Ollama cluster provided by Huixingyun.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-HX-Captioner", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-HX-Captioner", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/huixingyun/ComfyUI-HX-Captioner", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-11T18:23:21.914156Z", + "description": "A powerful and enhanced ASCII art node for ComfyUI, based on FL_Ascii from ComfyUI_Fill-Nodes but completely rewritten with improved features and better usability.", + "downloads": 119, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-Custom-ASCII-Art-Node", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-11T18:23:22.6068Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b31f3e49-3366-415b-9341-c7f70a5a2ce8", + "node_id": "ComfyUI-Custom-ASCII-Art-Node", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "A+43 Studios", + "publisher": { + "createdAt": "2025-06-11T18:06:13.969591Z", + "description": "", + "id": "a043studios", + "logo": "", + "members": [], + "name": "A+43 Studios", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/A043-studios/ComfyUI-Custom-ASCII-Art-Node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "DataCTE", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:58.467313Z", + "description": "This custom node for ComfyUI allows you to inject specific prompts at specific blocks of the Stable Diffusion UNet, providing fine-grained control over the generated image. It is based on the concept that the content/subject understanding of the model is primarily contained within the MID0 and MID1 blocks, as demonstrated in the B-Lora (Content Style implicit separation) paper. Features.\nInject different prompts into specific UNet blocks Three different node variations for flexible workflow integration Customize the learning rate of specific blocks to focus on content, lighting, style, or other aspects Potential for developing a 'Mix of Experts' approach by swapping blocks on-the-fly based on prompt content", + "downloads": 0, + "github_stars": 92, + "icon": "", + "id": "prompt_injection", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Prompt Injection Node for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DataCTE/prompt_injection", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "taabata", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:43.133353Z", + "description": "Canvas to use with ComfyUI", + "downloads": 0, + "github_stars": 89, + "icon": "", + "id": "ComfyCanvas", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyCanvas", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/taabata/ComfyCanvas", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-29T10:55:04.507354Z", + "description": "", + "downloads": 1586, + "github_stars": 10, + "icon": "", + "id": "comfyui-ponyswitch", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-29T10:55:06.193746Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "96caca4e-df4a-423b-9b9f-9b1de45d6cca", + "node_id": "comfyui-ponyswitch", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-PonySwitch", + "publisher": { + "createdAt": "2024-06-29T10:15:08.436661Z", + "description": "", + "id": "immortalpie", + "logo": "", + "members": [], + "name": "ImmortalPie", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ImmortalPie/ComfyUI-PonySwitch", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-09T05:08:19.203857Z", + "description": "Example of using ComfyUI Toolbar to Toggle ComfyUI links on/off", + "downloads": 912, + "github_stars": 4, + "icon": "https://raw.githubusercontent.com/Amorano/Jovimetrix-examples/refs/heads/master/res/logo-cozy-comfyui.png", + "id": "cozy_link_toggle", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-24T20:35:24.770641Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "f4ae4a45-a0c4-4b98-aef8-c02721b37b4f", + "node_id": "cozy_link_toggle", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Cozy Link Toggle", + "publisher": { + "createdAt": "2024-05-17T04:16:25.445017Z", + "description": "", + "id": "amorano", + "logo": "", + "members": [], + "name": "Joviex", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cozy-comfyui/cozy_link_toggle", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-12T20:13:35.274215Z", + "description": "Utilities to make it easy to develop advanced Workflows without having to use a lot of nodes for simple stuff.", + "downloads": 22, + "github_stars": 0, + "icon": "https://raw.githubusercontent.com/przewodo/ComfyUI-Przewodo-Utils/main/images/icon_564.png", + "id": "przewodo-utils", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-17T17:22:38.736532Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1106aace-e06f-4040-a6a6-65bd7adb76f6", + "node_id": "przewodo-utils", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.3" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI-Przewodo-Utils", + "publisher": { + "createdAt": "2025-07-12T19:45:46.96437Z", + "description": "", + "id": "przewodo", + "logo": "", + "members": [], + "name": "Przewodo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/przewodo/ComfyUI-Przewodo-Utils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "DeJoker", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:38.203047Z", + "description": "provide extra api to run prompt request with parallel execution of independent node", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "pipeline-parallel-comfy", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Pipeline Parallel ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DeJoker/pipeline-parallel-comfy", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-20T14:06:10.346533Z", + "description": "A ComfyUI extension that provides nodes for interacting with OpenAI-compatible Large Language Model (LLM) APIs, supporting both text-only and multimodal (image+text) prompts", + "downloads": 617, + "github_stars": 0, + "icon": "", + "id": "comfyui_llm_api", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-03T12:11:06.62302Z", + "dependencies": [ + "requests>=2.31.0", + "python-dotenv>=1.0.0", + "pydantic>=2.0.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f33fab0a-c855-4f1a-8187-6f9d53b26f93", + "node_id": "comfyui_llm_api", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.3" + }, + "license": "{\"text\": \"MIT license\"}", + "name": "ComfyUI LLM API Nodes", + "publisher": { + "createdAt": "2025-02-20T13:52:27.08465Z", + "description": "", + "id": "perfectspr", + "logo": "", + "members": [], + "name": "Peter Sun", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/perfectspr/comfyui_llm_api", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "thecooltechguy", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:17.559397Z", + "description": "The best way to run, share, & discover thousands of ComfyUI workflows.", + "downloads": 0, + "github_stars": 70, + "icon": "", + "id": "ComfyUI-ComfyWorkflows", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ComfyWorkflows", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/thecooltechguy/ComfyUI-ComfyWorkflows", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "BlakeOne", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:17.152131Z", + "description": "Simple node for setting the sigma values directly. Note, for a full denoise the last sigma should be zero.", + "downloads": 0, + "github_stars": 17, + "icon": "", + "id": "ComfyUI-CustomScheduler", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI CustomScheduler", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BlakeOne/ComfyUI-CustomScheduler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-31T19:17:50.690298Z", + "description": "Wrapper for the Sa2VA model", + "downloads": 285, + "github_stars": 3, + "icon": "", + "id": "comfyui-sa2vawrapper", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-31T19:17:51.086845Z", + "dependencies": [ + "torch>=2.0.0", + "torchvision>=0.15.0", + "numpy>=1.20.0", + "Pillow>=9.0.0", + "scipy>=1.8.0", + "color-matcher", + "matplotlib", + "huggingface_hub", + "mss", + "opencv-python", + "transformers", + "peft" + ], + "deprecated": false, + "downloadUrl": "", + "id": "682f1744-b441-4f69-b104-8b717732a91e", + "node_id": "comfyui-sa2vawrapper", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Sa2VAWrapper", + "publisher": { + "createdAt": "2025-02-23T01:14:36.31144Z", + "description": "", + "id": "pablerdo", + "logo": "", + "members": [], + "name": "pablerdo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Pablerdo/ComfyUI-Sa2VAWrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-17T21:30:27.721581Z", + "description": "Automate calculation depending on image sizes or something you want.", + "downloads": 184274, + "github_stars": 415, + "icon": "", + "id": "derfuu_comfyui_moddednodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-22T02:17:14.008065Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "83553f7f-68f6-48e9-9c88-dba334eb7d71", + "node_id": "derfuu_comfyui_moddednodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "LICENSE", + "name": "Derfuu_ComfyUI_ModdedNodes", + "publisher": { + "createdAt": "2024-06-17T20:46:07.800982Z", + "description": "", + "id": "derfuu", + "logo": "", + "members": [], + "name": "derfuu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Derfuu/Derfuu_ComfyUI_ModdedNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "deroberon", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:10.444842Z", + "description": "The Demofusion Custom Node is a wrapper that adapts the work and implementation of the [a/DemoFusion](https://ruoyidu.github.io/demofusion/demofusion.html) technique created and implemented by Ruoyi Du to the Comfyui environment.", + "downloads": 0, + "github_stars": 88, + "icon": "", + "id": "demofusion-comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "demofusion-comfyui", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/deroberon/demofusion-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "abdozmantar", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:41.593834Z", + "description": "DeepExtract is a powerful and efficient tool designed to separate vocals and sounds from audio files, providing an enhanced experience for musicians, producers, and audio engineers. With DeepExtract, you can quickly and effectively isolate vocals or instruments from mixed audio tracks, facilitating tasks like remixing, karaoke preparation, or audio analysis.", + "downloads": 0, + "github_stars": 39, + "icon": "", + "id": "ComfyUI-DeepExtract", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "DeepExtract", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/abdozmantar/ComfyUI-DeepExtract", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-07T13:41:21.452137Z", + "description": "", + "downloads": 169, + "github_stars": 0, + "icon": "", + "id": "customweightselector", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-07T13:43:51.427301Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "75f79788-994f-4609-a1db-ee5879c18beb", + "node_id": "customweightselector", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfy-customweightselector", + "publisher": { + "createdAt": "2025-05-07T13:37:26.776146Z", + "description": "", + "id": "gasparuff", + "logo": "", + "members": [], + "name": "gasparuff", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gasparuff/comfy-customselector", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:57.489909Z", + "description": "make [a/DiffSynth-Studio](https://github.com/modelscope/DiffSynth-Studio) available in ComfyUI", + "downloads": 0, + "github_stars": 85, + "icon": "", + "id": "ComfyUI-DiffSynth-Studio", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-DiffSynth-Studio", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/ComfyUI-DiffSynth-Studio", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-17T04:49:19.137721Z", + "description": "Nodes for scheduling ControlNet strength across timesteps and batched latents, as well as applying custom weights and attention masks.", + "downloads": 213510, + "github_stars": 828, + "icon": "", + "id": "comfyui-advanced-controlnet", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-05T02:40:31.918847Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "2bda507f-d84b-4c2c-b620-03dc06ea7617", + "node_id": "comfyui-advanced-controlnet", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.5.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Advanced-ControlNet", + "publisher": { + "createdAt": "2024-05-17T04:30:09.087992Z", + "description": "", + "id": "kosinkadink", + "logo": "", + "members": [], + "name": "Kosinkadink", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Kosinkadink/ComfyUI-Advanced-ControlNet", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "duhaifeng", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:33.87261Z", + "description": "This node wraps the flux fill model as ComfyUI nodes. Use NF4 flux fill model, support for inpainting and outpainting image. Compared to the flux fill dev model, these nodes can use the flux fill model to perform inpainting and outpainting work under lower VRM conditions.", + "downloads": 0, + "github_stars": 37, + "icon": "", + "id": "duhaifeng_ComfyUI-Flux-Inpainting", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Flux-Inpainting", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/rubi-du/ComfyUI-Flux-Inpainting", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Loewen-Hob", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:30.214596Z", + "description": "This custom node is based on the [a/rembg-comfyui-node](https://github.com/Jcd1230/rembg-comfyui-node) but provides additional functionality to select ONNX models.", + "downloads": 0, + "github_stars": 65, + "icon": "", + "id": "rembg-comfyui-node-better", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Rembg Background Removal Node for ComfyUI (Better)", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Loewen-Hob/rembg-comfyui-node-better", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "mav-rik", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:20.659704Z", + "description": "This is a copy of [a/facerestore custom node](https://civitai.com/models/24690/comfyui-facerestore-node) with a bit of a change to support CodeFormer Fidelity parameter. These ComfyUI nodes can be used to restore faces in images similar to the face restore option in AUTOMATIC1111 webui.\nNOTE: To use this node, you need to download the face restoration model and face detection model from the 'Install models' menu.", + "downloads": 0, + "github_stars": 282, + "icon": "", + "id": "facerestore_cf", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Facerestore CF (Code Former)", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mav-rik/facerestore_cf", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-04T12:59:58.323263Z", + "description": "This node splits its self-attention Q to focus on nearby samples.", + "downloads": 83, + "github_stars": 1, + "icon": "", + "id": "save_image_sdli", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-04T12:59:58.743839Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "85eb48e8-e1df-4015-bf4f-3d6f86a46145", + "node_id": "save_image_sdli", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "version": "1.0.0" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI SaveImage SDLI", + "publisher": { + "createdAt": "2025-07-03T07:29:32.862333Z", + "description": "", + "id": "mtsr", + "logo": "", + "members": [], + "name": "mtsr", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MitoshiroPJ/ComfyUI_save_image_sdli", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-15T07:05:41.862738Z", + "description": "Accelerate FLUX inferencing speed for ComfyUI.", + "downloads": 10898, + "github_stars": 209, + "icon": "", + "id": "flux-lightning", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-13T05:58:51.225049Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "42ecd904-c524-456e-90e6-7f07f40be575", + "node_id": "flux-lightning", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.3.3" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-Lightning", + "publisher": { + "createdAt": "2025-01-15T02:14:11.523268Z", + "description": "", + "id": "daking", + "logo": "", + "members": [], + "name": "Liou Daking", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shenduldh/ComfyUI-Lightning", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "MoonHugo", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:43.963547Z", + "description": "Encapsulate the commonly used functions of FFmpeg into ComfyUI nodes, making it convenient for users to perform various video processing tasks within ComfyUI.", + "downloads": 0, + "github_stars": 86, + "icon": "", + "id": "ComfyUI-FFmpeg", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-FFmpeg", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MoonHugo/ComfyUI-FFmpeg", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:26.721274Z", + "description": "Nodes: Download the weights of DragNUWA [a/drag_nuwa_svd.pth](https://drive.google.com/file/d/1Z4JOley0SJCb35kFF4PCc6N6P1ftfX4i/view) and put it to ComfyUI/models/checkpoints/drag_nuwa_svd.pth\n[w/Due to changes in the torch package and versions of many other packages, it may disrupt your installation environment.]", + "downloads": 0, + "github_stars": 410, + "icon": "", + "id": "ComfyUI-DragNUWA", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-DragNUWA", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-DragNUWA", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:21.29812Z", + "description": "Better Dynamic, Higher Resolution, and Stronger Coherence!", + "downloads": 0, + "github_stars": 130, + "icon": "", + "id": "ComfyUI-DynamiCrafter", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-DynamiCrafter", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-DynamiCrafter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-04T07:10:04.389299Z", + "description": "A powerful anti-burn allowing much higher CFG scales for latent diffusion models (for ComfyUI)", + "downloads": 29285, + "github_stars": 198, + "icon": "", + "id": "skimmed_cfg", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-04T07:10:06.162178Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "31e3272e-f550-43b0-bcc3-0d41877a2e30", + "node_id": "skimmed_cfg", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Skimmed_CFG", + "publisher": { + "createdAt": "2024-06-22T09:09:31.04495Z", + "description": "", + "id": "extraltodeus", + "logo": "", + "members": [], + "name": "Extraltodeus", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Extraltodeus/Skimmed_CFG", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "TencentQQGYLab", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:07.435737Z", + "description": "ComfyUI implementation for [a/ELLA](https://github.com/TencentQQGYLab/ELLA).", + "downloads": 0, + "github_stars": 382, + "icon": "", + "id": "ComfyUI-ELLA", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ELLA", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TencentQQGYLab/ComfyUI-ELLA", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "sno-test-unclaimed-node", + "banner_url": "", + "category": "node", + "created_at": "2025-07-10T09:54:32.241198Z", + "description": "sno-test-unclaimed-node", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "sno-test-unclaimed-node", + "latest_version": { + "version": "nightly" + }, + "license": "{file=\"LICENSE\"}", + "name": "sno-test-unclaimed-node11", + "publisher": { + "createdAt": "2025-03-06T02:48:14.339438Z", + "description": "", + "id": "snomiao-test", + "logo": "", + "members": [], + "name": "snomiao-test Just for test, dont download", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/snomiao/js", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "fblissjr", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:46.644561Z", + "description": "this repo is to capture end-to-end data, metadata, and embeddings for ComfyUI workflows, specifically HunyuanVideo to start.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-EmbeddingPipelineAnalytics", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-EmbeddingPipelineAnalytics", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fblissjr/ComfyUI-EmbeddingPipelineAnalytics", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "trojblue", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:19.02014Z", + "description": "Nodes: image_layering, color_correction, model_router", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "trNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "trNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/trojblue/trNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "hylarucoder", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:30.585101Z", + "description": "NODES:Eagle Image Node for PNGInfo, SDXL Resolution Presets (ws), SDXL Prompt Styler, SDXL Prompt Styler Advanced", + "downloads": 0, + "github_stars": 26, + "icon": "", + "id": "hylarucoder_comfyui-copilot", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-copilot", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hylarucoder/comfyui-copilot", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "marawan206", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:11.926187Z", + "description": "The Face Cropper Node (MarwanFaceCropping) is a custom image processing node designed for ComfyUI. It takes an input image and crops it to a 2:3 aspect ratio, ensuring that most of the subject remains in the frame while maintaining the correct proportions.", + "downloads": 0, + "github_stars": 10, + "icon": "", + "id": "ComfyUI-FaceCropper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Face Cropper Node (2:3 Ratio)", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/marawan206/ComfyUI-FaceCropper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-23T17:37:44.974355Z", + "description": "A ComfyUI node back that makes it easy to save metadata for use with sites like CIVITAI.COM using two simple nodes.", + "downloads": 97, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-JurdnsIterativeNoiseKsampler", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-23T17:37:45.344065Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "15c7ed11-4153-4039-acc3-ffc753ad5b92", + "node_id": "ComfyUI-JurdnsIterativeNoiseKsampler", + "status": "NodeVersionStatusDeleted", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-JurdnsMetadataNodes", + "publisher": { + "createdAt": "2025-06-16T00:04:23.281552Z", + "description": "", + "id": "iamjurdn", + "logo": "", + "members": [], + "name": "iamjurdn", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jurdnf/ComfyUI-JurdnsMetadataNodes.git", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "palant", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:57.144123Z", + "description": "This custom node provides various tools for resizing images. The goal is resizing without distorting proportions, yet without having to perform any calculations with the size of the original image. If a mask is present, it is resized and modified along with the image.", + "downloads": 0, + "github_stars": 96, + "icon": "", + "id": "image-resize-comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Image Resize for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/palant/image-resize-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Stability-AI", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:45:57.974672Z", + "description": "Nodes: ColorBlend, ControlLoraSave, GetImageSize. NOTE: Control-LoRA recolor example uses these nodes.", + "downloads": 0, + "github_stars": 228, + "icon": "", + "id": "stability-ComfyUI-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "stability-ComfyUI-nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Stability-AI/stability-ComfyUI-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "imb101", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:25.719211Z", + "description": "Nodes:FaceSwapNode. Very basic custom node to enable face swapping in ComfyUI. (roop)", + "downloads": 0, + "github_stars": 35, + "icon": "", + "id": "ComfyUI-FaceSwap", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "FaceSwap", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/imb101/ComfyUI-FaceSwap", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "banodoco", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:00.033795Z", + "description": "Steerable Motion is a ComfyUI node for batch creative interpolation. Our goal is to feature the best methods for steering motion with images as video models evolve.", + "downloads": 0, + "github_stars": 920, + "icon": "", + "id": "steerable-motion", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Steerable Motion", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/banodoco/steerable-motion", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "BetaDoggo", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:24.488579Z", + "description": "A set of nodes for interfacing with the FastSDCPU webserver.", + "downloads": 0, + "github_stars": 9, + "icon": "", + "id": "ComfyUI-FastSDCPU", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-FastSDCPU", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BetaDoggo/ComfyUI-FastSDCPU", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-10T18:46:28.099659Z", + "description": "A ComfyUI node set for creating and managing visual storyboards. Includes nodes for markdown rendering, image composition, and storyboard sequence management.", + "downloads": 168, + "github_stars": 8, + "icon": "https://raw.githubusercontent.com/laubsauger/comfyui-storyboard/refs/heads/main/docs/storyboard_icon_opt.png", + "id": "storyboard", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-14T23:33:45.220909Z", + "dependencies": [ + "python-dotenv", + "openai" + ], + "deprecated": false, + "downloadUrl": "", + "id": "70475b17-2e85-4078-a64d-75dbf23db62e", + "node_id": "storyboard", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.28" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "storyboard", + "publisher": { + "createdAt": "2025-06-10T18:25:50.075837Z", + "description": "", + "id": "laub", + "logo": "", + "members": [], + "name": "Laub", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/laubsauger/comfyui-storyboard", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-03T12:43:07.699802Z", + "description": "", + "downloads": 1139, + "github_stars": 20, + "icon": "", + "id": "insertanything-comfyui-official", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-03T12:43:08.095115Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "8ea0dee8-53e8-4720-976b-33f3c77aa27e", + "node_id": "insertanything-comfyui-official", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "InsertAnything-ComfyUI-official", + "publisher": { + "createdAt": "2025-06-03T12:29:57.604268Z", + "description": "", + "id": "hongjiang", + "logo": "", + "members": [], + "name": "hongjiang", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mo230761/InsertAnything-ComfyUI-official", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-27T14:53:38.176065Z", + "description": "Masking multiple colors in a segmentation image", + "downloads": 1192, + "github_stars": 0, + "icon": "", + "id": "multi_color_masking", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-28T12:13:59.851802Z", + "dependencies": [ + "diffusers>=0.25.0", + "accelerate>=0.25.0", + "clip_interrogator>=0.6.0", + "sentencepiece", + "lark-parser", + "onnxruntime", + "spandrel", + "opencv-python", + "torch", + "pandas" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5a60a42b-1f1a-4a93-9a45-ee97d3a1cbee", + "node_id": "multi_color_masking", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI", + "publisher": { + "createdAt": "2024-08-27T14:42:08.462517Z", + "description": "", + "id": "lyra-research", + "logo": "", + "members": [], + "name": "lyra-research", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pbpbpb2705/ComfyUI-LyraVSIH", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "komojini", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:20.97228Z", + "description": "Nodes:YouTube Video Loader. Custom ComfyUI Nodes for video generation", + "downloads": 0, + "github_stars": 75, + "icon": "", + "id": "komojini-comfyui-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "komojini-comfyui-nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/komojini/komojini-comfyui-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-15T10:29:00.303943Z", + "description": "Collection of convenient nodes. Wildcard, style, image, llm, haldclut, metadata, and more.", + "downloads": 80301, + "github_stars": 157, + "icon": "", + "id": "mikey_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-22T01:47:55.121664Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "d8cfd86b-a256-442b-959d-4a1e12850590", + "node_id": "mikey_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "mikey_nodes", + "publisher": { + "createdAt": "2024-06-15T07:27:38.214253Z", + "description": "", + "id": "humblemikey", + "logo": "", + "members": [], + "name": "humblemikey", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bash-j/mikey_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-23T16:39:38.1926Z", + "description": "Custom node for advanced face occlusion, segmentation, and masking", + "downloads": 335, + "github_stars": 22, + "icon": "https://github.com/ialhabbal/OcclusionMask/blob/main/media/Occlusion-ico.png?raw=true", + "id": "occlusionmask", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-24T14:41:07.161666Z", + "dependencies": [ + "retina-face", + "torch", + "opencv-python", + "numpy", + "Pillow", + "onnxruntime" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f2067fe3-04da-43e9-8c0d-0d833767356e", + "node_id": "occlusionmask", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "OcclusionMask", + "publisher": { + "createdAt": "2025-06-23T15:51:20.168787Z", + "description": "", + "id": "ialhabbal", + "logo": "", + "members": [], + "name": "ialhabbal", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ialhabbal/OcclusionMask", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-03T21:56:46.286883Z", + "description": "", + "downloads": 40, + "github_stars": 0, + "icon": "", + "id": "sync-translate-node", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-19T03:33:54.195993Z", + "dependencies": [ + "syncsdk==0.1.9", + "openai==1.92.0", + "httpx==0.27.2" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b510b3e4-53ab-4f45-8e76-2ff13c4d0a79", + "node_id": "sync-translate-node", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-sync-translate-node", + "publisher": { + "createdAt": "2025-07-03T21:54:41.247714Z", + "description": "", + "id": "sync-translate-node", + "logo": "", + "members": [], + "name": "sync-translate-node", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wasilone11/comfyui-sync-translate-node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "brianfitzgerald", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:09.71866Z", + "description": "Implementation of the [a/StyleAligned](https://style-aligned-gen.github.io/) paper for ComfyUI. This node allows you to apply a consistent style to all images in a batch; by default it will use the first image in the batch as the style reference, forcing all other images to be consistent with it.", + "downloads": 0, + "github_stars": 301, + "icon": "", + "id": "style_aligned_comfy", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "StyleAligned for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/brianfitzgerald/style_aligned_comfy", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "flowtyone", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:07.476569Z", + "description": "This is a custom node that lets you use TripoSR right from ComfyUI.\n[a/TripoSR](https://github.com/VAST-AI-Research/TripoSR) is a state-of-the-art open-source model for fast feedforward 3D reconstruction from a single image, collaboratively developed by Tripo AI and Stability AI. (TL;DR it creates a 3d model from an image.)", + "downloads": 0, + "github_stars": 509, + "icon": "", + "id": "ComfyUI-Flowty-TripoSR", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Flowty-TripoSR", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/flowtyone/ComfyUI-Flowty-TripoSR", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-21T01:02:16.658848Z", + "description": "Custom nodes for ComfyUI that allow you to read and write XMP metadata to images", + "downloads": 280, + "github_stars": 5, + "icon": "", + "id": "too-xmp-metadata", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-06T20:09:01.879084Z", + "dependencies": [ + "pillow>=9.0.0", + "numpy>=1.20.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "50eaac4a-9db5-4be5-a1c2-65beeb269bbd", + "node_id": "too-xmp-metadata", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-too-xmp-metadata", + "publisher": { + "createdAt": "2025-05-21T00:19:02.674408Z", + "description": "", + "id": "tetsuoo-online", + "logo": "", + "members": [], + "name": "Tetsuoo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tetsuoo-online/comfyui-too-xmp-metadata", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "GTSuya-Studio", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:12.309441Z", + "description": "ComfyUI-GTSuya-Nodes is a ComfyUI extension designed to add several wildcards supports into ComfyUI. Wildcards allow you to use __name__ syntax in your prompt to get a random line from a file named name.txt in a wildcards directory.", + "downloads": 0, + "github_stars": 12, + "icon": "", + "id": "ComfyUI-Gtsuya-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-GTSuya-Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/GTSuya-Studio/ComfyUI-Gtsuya-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-13T04:29:46.231324Z", + "description": "Unofficial implementation of [ali-vilab/TeaCache](https://github.com/ali-vilab/TeaCache) for ComfyUI", + "downloads": 227942, + "github_stars": 890, + "icon": "", + "id": "teacache", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-11T07:26:05.799266Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "2b3439cb-403a-4c62-983b-5938f01751ef", + "node_id": "teacache", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.9.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-TeaCache", + "publisher": { + "createdAt": "2025-01-13T03:40:22.991407Z", + "description": "", + "id": "yunjieyu", + "logo": "", + "members": [], + "name": "Yunjie Yu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/welltop-cn/ComfyUI-TeaCache", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "1111-11-11T18:56:11Z", + "description": "", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "robin-yogurt-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "GPL", + "name": "Robin Yogurt", + "publisher": { + "createdAt": "2024-05-18T23:11:06.695222Z", + "description": "", + "id": "robinjhuang", + "logo": "", + "members": [], + "name": "Robin Huang", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/robinjhuang/ComfyUI-YogurtNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-30T01:02:16.054106Z", + "description": "Save as AVIF, WebP, JPEG, customize the folder, sub-folders, and filenames of your images!", + "downloads": 25779, + "github_stars": 101, + "icon": "", + "id": "save-image-extended-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-30T01:02:16.342337Z", + "dependencies": [ + "piexif", + "pillow", + "pillow-avif-plugin" + ], + "deprecated": false, + "downloadUrl": "", + "id": "10c969de-00ec-4432-a49f-0d48aefbefb0", + "node_id": "save-image-extended-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.64.0" + }, + "license": "AGPL3.0", + "name": "save-image-extended-comfyui", + "publisher": { + "createdAt": "2024-05-28T00:30:20.706732Z", + "description": "", + "id": "audioscavenger", + "logo": "", + "members": [], + "name": "Eric", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/audioscavenger/save-image-extended-comfyui", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-29T15:36:10.718892Z", + "description": "SaltAI AudioViz contains ComfyUI nodes for generating complex audio reactive visualizations", + "downloads": 1062, + "github_stars": 0, + "icon": "", + "id": "saltai_audioviz", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-29T15:36:11.319836Z", + "dependencies": [ + "diffusers", + "librosa", + "matplotlib", + "opencv-python", + "pillow", + "pydub", + "scipy", + "tqdm", + "pilgram", + "numexpr" + ], + "deprecated": false, + "downloadUrl": "", + "id": "05de2392-6982-4000-8e49-f31beaf776e3", + "node_id": "saltai_audioviz", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "SaltAI_AudioViz", + "publisher": { + "createdAt": "2024-06-25T22:19:59.372874Z", + "description": "", + "id": "saltai", + "logo": "", + "members": [], + "name": "Salt AI", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/get-salt-AI/SaltAI_AudioViz", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ruucm", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:31.007184Z", + "description": "Nodes: Load External LoRA Model Only", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ruucm-comfy", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Ruucm's ComfyUI Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ruucm/ruucm-comfy", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "leestuartx", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:52.076127Z", + "description": "ComfyUI-GG is a collection of ComfyUI nodes designed to enhance productivity in image processing workflows. This plugin provides a set of custom nodes that perform various image manipulations and metadata extractions to streamline your tasks.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-GG", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-GG", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/leestuartx/ComfyUI-GG", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kijai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:46.654953Z", + "description": "This is a diffusers (0.27.2) wrapper node for Geowizard: [https://github.com/fuxiao0719/GeoWizard]. The model is autodownloaded from Hugginface to ComfyUI/models/diffusers/geowizard", + "downloads": 0, + "github_stars": 122, + "icon": "", + "id": "ComfyUI-Geowizard", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Geowizard depth and normal estimation in ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-Geowizard", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "SlackinJack", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:13.21725Z", + "description": "AsyncDiff node for ComfyUI", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "asyncdiff_comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "asyncdiff_comfyui", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SlackinJack/asyncdiff_comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-30T22:39:33.154109Z", + "description": "A ComfyUI node pack for management of larger prompt amounts and prompt variations.", + "downloads": 194, + "github_stars": 3, + "icon": "", + "id": "prompt_library", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-07T04:16:52.108534Z", + "dependencies": [], + "deprecated": true, + "downloadUrl": "", + "id": "031bf2a2-cbb2-4694-bf32-0271296b8b11", + "node_id": "prompt_library", + "status": "NodeVersionStatusDeleted", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Prompt_Library", + "publisher": { + "createdAt": "2025-06-30T21:36:31.337398Z", + "description": "", + "id": "hexxacubic", + "logo": "", + "members": [], + "name": "HexxaCubic", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hexxacubic/ComfyUI-Prompt_Library", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "TRI3D-LC", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:13.460634Z", + "description": "Nodes: tri3d-extract-hand, tri3d-fuzzification, tri3d-position-hands, tri3d-atr-parse.", + "downloads": 0, + "github_stars": 27, + "icon": "", + "id": "tri3d-comfyui-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "tri3d-comfyui-nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TRI3D-LC/tri3d-comfyui-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-16T12:18:42.821943Z", + "description": "Chat GPT Image Generation Chat Node for Comfy UI", + "downloads": 259, + "github_stars": 0, + "icon": "", + "id": "chatgpt", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-16T12:18:43.218108Z", + "dependencies": [ + "Pillow", + "openai", + "numpy", + "torchvision", + "dotenv" + ], + "deprecated": false, + "downloadUrl": "", + "id": "54551056-bdf7-42b3-9949-864f099fcdce", + "node_id": "chatgpt", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_chatgpt", + "publisher": { + "createdAt": "2025-06-16T11:58:36.521808Z", + "description": "", + "id": "samtyurenkov", + "logo": "", + "members": [], + "name": "Sam Tyurenkov", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SamTyurenkov/comfyui_chatgpt", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-10T14:15:14.442974Z", + "description": "Created by Alfredo Fernandes inspired by Hunyuan3D nodes by Kijai. This extension adds TripoSG 3D mesh generation capabilities to ComfyUI, allowing you to generate 3D meshes from a single image using the TripoSG model.", + "downloads": 126, + "github_stars": 19, + "icon": "", + "id": "triposg", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-10T14:15:14.856203Z", + "dependencies": [ + "torch>=2.0.0", + "trimesh", + "diffusers>=0.31.0", + "accelerate", + "huggingface_hub", + "opencv-python", + "transformers", + "scikit-image", + "numpy", + "tqdm", + "peft" + ], + "deprecated": false, + "downloadUrl": "", + "id": "8e36baed-ee98-4ad7-afa9-f84c268420cc", + "node_id": "triposg", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-TripoSG", + "publisher": { + "createdAt": "2025-04-18T15:45:18.154914Z", + "description": "", + "id": "conex", + "logo": "", + "members": [], + "name": "Conex", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fredconex/ComfyUI-TripoSG", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-08T07:16:20.109965Z", + "description": "The all in one inference optimization solution for ComfyUI, universal, flexible, and fast.", + "downloads": 122079, + "github_stars": 1094, + "icon": "", + "id": "wavespeed", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-20T10:39:26.002242Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a317548f-ab5f-46b5-8a6d-7297e3fa3f28", + "node_id": "wavespeed", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.8" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfy-WaveSpeed", + "publisher": { + "createdAt": "2025-01-08T07:12:06.402988Z", + "description": "", + "id": "chengzeyi", + "logo": "", + "members": [], + "name": "chengzeyi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chengzeyi/Comfy-WaveSpeed", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-30T16:20:50.042652Z", + "description": "ComfyUI startup optimizer and patcher", + "downloads": 245, + "github_stars": 4, + "icon": "", + "id": "000_ComfyUI-Optim", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-30T16:20:50.508194Z", + "dependencies": [ + "json", + "io" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f72ed846-5d37-4d98-add2-581b57b7af5d", + "node_id": "000_ComfyUI-Optim", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Optim", + "publisher": { + "createdAt": "2025-05-23T19:23:03.551719Z", + "description": "", + "id": "wildai", + "logo": "", + "members": [], + "name": "Wildminder", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wildminder/000_ComfyUI-Optim", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Hangover3832", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:38.219582Z", + "description": "This is an image recognition node for ComfyUI based on the RAM++ model from [a/xinyu1205](https://huggingface.co/xinyu1205).\nThis node outputs a string of tags with all the recognized objects and elements in the image in English or Chinese language.\nFor image tagging and captioning.", + "downloads": 0, + "github_stars": 23, + "icon": "", + "id": "ComfyUI-Hangover-Recognize_Anything", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Recognize Anything Model (RAM) for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Hangover3832/ComfyUI-Hangover-Recognize_Anything", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ShmuelRonen", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:12.002485Z", + "description": "A ComfyUI custom node implementation for optimized video generation and motion effects, designed to work with Hunyuan text-to-video models.", + "downloads": 0, + "github_stars": 19, + "icon": "", + "id": "ComfyUI-HunyuanVideoSamplerSave", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-HunyuanVideoSamplerSave", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShmuelRonen/ComfyUI-HunyuanVideoSamplerSave", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-11T06:44:08.14678Z", + "description": "comfyui custom nodes to caption image with joy", + "downloads": 177, + "github_stars": 0, + "icon": "", + "id": "ymc_node_joy", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-19T07:24:52.714133Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b02fcd27-60f7-4e66-90f2-46babe27ddc7", + "node_id": "ymc_node_joy", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ymc_node_joy", + "publisher": { + "createdAt": "2024-07-14T11:57:33.810062Z", + "description": "", + "id": "ymc-github", + "logo": "", + "members": [], + "name": "yemiancheng", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ymc-github/ymc_node_joy", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-03T09:42:58.876071Z", + "description": "A massive node pack consisting of over 200 nodes, including image processing, masking, text handling, and arithmetic operations.\nNOTE: A replacement node pack provided for existing users following the retirement of the original author of the widely used WAS Node Suite.", + "downloads": 96691, + "github_stars": 47, + "icon": "", + "id": "was-ns", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-03T09:42:59.318148Z", + "dependencies": [ + "cmake", + "fairscale>=0.4.4", + "git+https://github.com/ltdrdata/img2texture.git", + "git+https://github.com/ltdrdata/cstr", + "gitpython", + "imageio", + "joblib", + "matplotlib", + "numba", + "numpy", + "opencv-python-headless[ffmpeg]<=4.7.0.72", + "pilgram", + "git+https://github.com/ltdrdata/ffmpy.git", + "rembg", + "scikit-image>=0.20.0", + "scikit-learn", + "scipy", + "timm>=0.4.12", + "tqdm", + "transformers" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6219da83-34a4-4c0f-9b31-1cb7f8109e1d", + "node_id": "was-ns", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "3.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "WAS Node Suite (Revised)", + "publisher": { + "createdAt": "2024-05-22T15:42:00.969348Z", + "description": "", + "id": "drltdata", + "logo": "", + "members": [], + "name": "Dr.Lt.Data", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ltdrdata/was-node-suite-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "YMC", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:19.278196Z", + "description": "ymc 's nodes for comfyui. This extension is composed of nodes that provide various utility features such as text, region, and I/O.", + "downloads": 0, + "github_stars": 20, + "icon": "", + "id": "ymc-node-suite-comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ymc-node-suite-comfyui", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/YMC-GitHub/ymc-node-suite-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-12T05:50:41.092189Z", + "description": "A sophisticated ComfyUI custom node engineered for advanced image background removal and precise segmentation of objects, faces, clothing, and fashion elements. This tool leverages a diverse array of models, including RMBG-2.0, INSPYRENET, BEN, BEN2, BiRefNet models, SAM, and GroundingDINO, while also incorporating a new feature for real-time background replacement and enhanced edge detection for improved accuracy.", + "downloads": 121734, + "github_stars": 1181, + "icon": "", + "id": "comfyui-rmbg", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-15T09:52:18.610099Z", + "dependencies": [ + "torch>=2.0.0", + "torchvision>=0.15.0", + "Pillow>=9.0.0", + "numpy>=1.22.0", + "huggingface-hub>=0.19.0", + "transformers>=4.35.0", + "safetensors>=0.3.0", + "transparent-background>=1.2.4", + "tqdm>=4.65.0", + "segment-anything>=1.0", + "groundingdino-py>=0.4.0", + "opencv-python>=4.7.0", + "onnxruntime>=1.15.0", + "onnxruntime-gpu>=1.15.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7e4a572a-fb13-4738-804b-78620708e444", + "node_id": "comfyui-rmbg", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "2.6.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-RMBG", + "publisher": { + "createdAt": "2024-07-01T23:11:45.570672Z", + "description": "", + "id": "ailab", + "logo": "", + "members": [], + "name": "AILab", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/1038lab/ComfyUI-RMBG", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-07T10:59:37.929782Z", + "description": "A custom ComfyUI node designed to filter or replace NSFW content within workflows, supporting batch operations.", + "downloads": 209, + "github_stars": 3, + "icon": "", + "id": "nsfw_no", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-07T10:59:38.367115Z", + "dependencies": [ + "transformers>=4.45.0", + "torch>=2.7.0", + "torchvision>=0.22.0", + "pillow>=11.0.0", + "numpy>=2.2.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "68d2d83e-fca8-4e35-83a9-94a6569146bf", + "node_id": "nsfw_no", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"text\": \"MIT license\"}", + "name": "nsfw_no", + "publisher": { + "createdAt": "2025-05-07T06:23:31.868663Z", + "description": "", + "id": "xiaodu", + "logo": "", + "members": [], + "name": "nsfw_no", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaorenai/nsfw_no", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-21T16:25:05.981266Z", + "description": "A ComfyUI extension allowing the interrogation of booru tags from images.", + "downloads": 153817, + "github_stars": 905, + "icon": "", + "id": "comfyui-wd14-tagger", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-11T09:59:44.057026Z", + "dependencies": [ + "onnxruntime" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7e3992aa-cfa8-4af2-a48d-a32c35451e42", + "node_id": "comfyui-wd14-tagger", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-WD14-Tagger", + "publisher": { + "createdAt": "2024-05-21T16:17:56.310591Z", + "description": "", + "id": "pythongosssss", + "logo": "", + "members": [], + "name": "pythongosssss", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pythongosssss/ComfyUI-WD14-Tagger", + "status": "", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "meshmesh-io", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:06.219309Z", + "description": "Nodes:ColorListMaskToImage, FlattenAndCombineMaskImages", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "mm-comfyui-megamask", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "mm-comfyui-megamask", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/meshmesh-io/mm-comfyui-megamask", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "SherryXieYuchen", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:24.663167Z", + "description": "Nodes:VAE Encode Inpaint, VAE Decode Inpaint, ColorCorrection Inpaint, ImagePreprocess Inpaint, ImagePostprocess Inpaint, Load Model Inpaint, Inpainting (using Model)", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-Image-Inpainting", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Image-Inpainting", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SherryXieYuchen/ComfyUI-Image-Inpainting", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ShmuelRonen", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:08.99674Z", + "description": "A custom ComfyUI node designed to create seamless motion effects from single images by integrating with Hunyuan Video through latent space manipulation.", + "downloads": 0, + "github_stars": 42, + "icon": "", + "id": "ComfyUI-ImageMotionGuider", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ImageMotionGuider", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShmuelRonen/ComfyUI-ImageMotionGuider", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jtrue", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:03.06039Z", + "description": "A collection of nodes powering a tensor oracle on a home network with automation", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "ComfyUI-JaRue", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-JaRue", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jtrue/ComfyUI-JaRue", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "greengerong", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:17.295337Z", + "description": "This plugin integrates the Janus-Pro multi-modal model into ComfyUI, enabling advanced image understanding and text-to-image generation capabilities. It supports both image analysis and creative image generation workflows.", + "downloads": 0, + "github_stars": 11, + "icon": "", + "id": "ComfyUI-JanusPro-PL", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Janus-Pro ComfyUI Plugin", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/greengerong/ComfyUI-JanusPro-PL", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Jin Liu", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:03.857121Z", + "description": "A variety of custom nodes to enhance ComfyUI for a buttery smooth experience.", + "downloads": 0, + "github_stars": 86, + "icon": "", + "id": "ComfyUI-LJNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-LJNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/coolzilj/ComfyUI-LJNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "viperyl", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:49.974463Z", + "description": "Bilateral Reference Network achieves SOTA result in multi Salient Object Segmentation dataset, this repo pack BiRefNet as ComfyUI nodes, and make this SOTA model easier use for everyone.\nNOTE: The original node was replaced with a version maintained by hieuck because it is no longer maintained.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "viperyl_ComfyUI-BiRefNet", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-BiRefNet-Fix utils", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hieuck/ComfyUI-BiRefNet", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ceruleandeep", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:45.033745Z", + "description": "A ComfyUI extension for chatting with your images. Runs on your own system, no external services used, no filter. Uses the [a/LLaVA multimodal LLM](https://llava-vl.github.io/) so you can give instructions or ask questions in natural language. It's maybe as smart as GPT3.5, and it can see.", + "downloads": 0, + "github_stars": 134, + "icon": "", + "id": "ComfyUI-LLaVA-Captioner", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI LLaVA Captioner", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ceruleandeep/ComfyUI-LLaVA-Captioner", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "cfreilich", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:22.658356Z", + "description": "Photoshop type functions and adjustment layers: 30 blend modes, Selective Color, Blend If, Color Balance, Solid Color Images, Black and White, Hue/Saturation, Levels, and RGB Splitting and Merging.", + "downloads": 0, + "github_stars": 87, + "icon": "", + "id": "virtuoso-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Virtuoso Nodes for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chrisfreilich/virtuoso-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-29T06:36:55.710393Z", + "description": "Interpolate sdxl latents using slerp with and without a mask. use with unsample nodes for best effect", + "downloads": 411, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-LantentCompose", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-29T13:31:28.572764Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "f3626dc7-d1f8-4641-8f29-e46a91b45005", + "node_id": "ComfyUI-LantentCompose", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-LantentCompose", + "publisher": { + "createdAt": "2025-01-28T14:37:07.362488Z", + "description": "", + "id": "apacheone", + "logo": "", + "members": [], + "name": "apacheone", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Apache0ne/ComfyUI-LantentCompose", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-20T14:37:27.885271Z", + "description": "This custom node for ComfyUI provides watermark detection capabilities using a YOLO model trained by [a/fancyfeast](https://huggingface.co/fancyfeast), the creator of JoyCaption. The model is originally hosted at [a/Hugging Face Space](https://huggingface.co/spaces/fancyfeast/joycaption-watermark-detection).", + "downloads": 218, + "github_stars": 20, + "icon": "", + "id": "watermark-detection", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-20T14:41:33.445972Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "eaad8cd8-d27b-49da-bd8d-08d6936767a1", + "node_id": "watermark-detection", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-watermark-detection", + "publisher": { + "createdAt": "2024-12-25T07:03:37.474647Z", + "description": "", + "id": "lrzjason", + "logo": "", + "members": [], + "name": "lrzjason", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lrzjason/ComfyUI-watermark-detection", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-04T03:23:18.576562Z", + "description": "MAGI-1: Autoregressive Video Generation at Scale", + "downloads": 221, + "github_stars": 3390, + "icon": "", + "id": "MAGI-1", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-04T03:23:19.189975Z", + "dependencies": [ + "accelerate==0.32.1", + "beautifulsoup4==4.13.4", + "debugpy==1.8.14", + "diffusers==0.29.2", + "einops>=0.6.0", + "ffmpeg-python", + "flash-attn==2.4.2", + "flashinfer-python==0.2.0.post2", + "ftfy==6.2.0", + "gpustat==1.1.1", + "imageio==2.34.0", + "imageio[ffmpeg]", + "matplotlib==3.10.1", + "numpy==1.26.4", + "protobuf==5.28.3", + "rich==14.0.0", + "sentencepiece==0.2.0", + "timm==1.0.15", + "torchdiffeq==0.2.4", + "transformers==4.42.3" + ], + "deprecated": false, + "downloadUrl": "", + "id": "ef17ccaa-09ad-491a-82c1-29d90273e2fb", + "node_id": "MAGI-1", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "MAGI-1", + "publisher": { + "createdAt": "2025-06-03T12:30:29.458461Z", + "description": "", + "id": "sand-ai", + "logo": "", + "members": [], + "name": "sand-ai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SandAI-org/MAGI-1", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-11T05:19:18.730819Z", + "description": "", + "downloads": 464937, + "github_stars": 1572, + "icon": "", + "id": "was-node-suite-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-11T05:19:19.131214Z", + "dependencies": [ + "cmake", + "fairscale>=0.4.4", + "git+https://github.com/WASasquatch/img2texture.git", + "git+https://github.com/WASasquatch/cstr", + "gitpython", + "imageio", + "joblib", + "matplotlib", + "numba", + "numpy", + "opencv-python-headless[ffmpeg]<=4.7.0.72", + "pilgram", + "git+https://github.com/WASasquatch/ffmpy.git", + "rembg", + "scikit-image>=0.20.0", + "scikit-learn", + "scipy", + "timm>=0.4.12", + "tqdm", + "transformers" + ], + "deprecated": false, + "downloadUrl": "", + "id": "91bde02b-c038-468f-812f-6377d9e42a01", + "node_id": "was-node-suite-comfyui", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "WAS Node Suite", + "publisher": { + "createdAt": "2024-06-17T00:47:38.837695Z", + "description": "", + "id": "was", + "logo": "", + "members": [], + "name": "WAS", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/WASasquatch/was-node-suite-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Mintbeer96", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:30.693685Z", + "description": "An OCR node for detect text in image and returns covering mask.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-KerasOCR", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-KerasOCR", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Mintbeer96/ComfyUI-KerasOCR", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Scholar01", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:49.531441Z", + "description": "set denoise strength for keyframe", + "downloads": 0, + "github_stars": 16, + "icon": "", + "id": "ComfyUI-Keyframe", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "SComfyUI-Keyframe", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Scholar01/ComfyUI-Keyframe", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "KAVVATARE", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:04.946359Z", + "description": "ComfyUI node that adds Brightness, RGB channels, and Depth of Field to AI-generated image", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-Light-N-Color", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": " ComfyUI-Light-N-Color", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/KAVVATARE/ComfyUI-Light-N-Color", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "LightSketch-ai", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:05.943299Z", + "description": "Two simple to install nodes to get Live Portrait working in ComfyUI without the need for a fancy GPU (Replicate account needed).", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-LivePortraitNode", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-LivePortraitNode (Replicate API)", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LightSketch-ai/ComfyUI-LivePortraitNode", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "githubYiheng", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:44.375364Z", + "description": "Nodes:Apply Kmeans Filter", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui_kmeans_filter", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui_kmeans_filter", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/githubYiheng/comfyui_kmeans_filter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "wallish77", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:22.263779Z", + "description": "Nodes: Checkpoint Loader with Name, Save Prompt Info, Outpaint to Image, CLIP Positive-Negative, SDXL Quick Empty Latent, Empty Latent by Ratio, Time String, SDXL Steps, SDXL Resolutions ...", + "downloads": 0, + "github_stars": 124, + "icon": "", + "id": "wlsh_nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "wlsh_nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wallish77/wlsh_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-01T09:08:06.241027Z", + "description": "A fork of fpgaminer's JoyCatpion nodes for running the JoyCaption image captioner VLM. GGUF support requires maually installing llama-cpp-python with cuda support", + "downloads": 149, + "github_stars": 2, + "icon": "", + "id": "wo_joycaption_comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-01T10:43:21.98357Z", + "dependencies": [ + "transformers>=4.51.0", + "torchvision", + "torch>=2.6.0", + "huggingface-hub>=0.30.1", + "accelerate", + "bitsandbytes" + ], + "deprecated": false, + "downloadUrl": "", + "id": "0fa298b9-3990-4130-9b5f-d8c47210d2b7", + "node_id": "wo_joycaption_comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Without's JoyCaption ComfyUI Nodes", + "publisher": { + "createdAt": "2025-06-08T01:17:36.775081Z", + "description": "", + "id": "without-ordinary", + "logo": "", + "members": [], + "name": "Without Ordinary", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/without-ordinary/wo_joycaption_comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-07-13T08:11:02.648964Z", + "description": "A collection of mostly random nodes of random usefulness.", + "downloads": 17, + "github_stars": 1, + "icon": "https://github.com/without-ordinary.png", + "id": "wo_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-13T08:11:03.030264Z", + "dependencies": [ + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d605e42f-f889-45bf-98d3-f4633da8e565", + "node_id": "wo_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.0.1" + }, + "license": "{\"text\": \"GNU General Public License v3\"}", + "name": "WO Nodes", + "publisher": { + "createdAt": "2025-06-08T01:17:36.775081Z", + "description": "", + "id": "without-ordinary", + "logo": "", + "members": [], + "name": "Without Ordinary", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/without-ordinary/wo_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "Daniel Lewis", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:40.238493Z", + "description": "This is a set of nodes to interact with llama-cpp-python", + "downloads": 0, + "github_stars": 60, + "icon": "", + "id": "ComfyUI-Llama", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Llama", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/daniel-lewis-ab/ComfyUI-Llama", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "alessandrozonta", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:34.348724Z", + "description": "A ComfyUI custom node for loading images sequentially from a directory. Loops back to the first image when reaching the end", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "Comfyui-LoopLoader", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui-LoopLoader", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alessandrozonta/Comfyui-LoopLoader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-19T21:39:00.927506Z", + "description": "The ComfyUI-Visionatrix nodes are designed for convenient ComfyUI to [a/Visionatrix](https://github.com/Visionatrix/Visionatrix) workflow support migration, in particular to extract prompt input params (input, textarea, checkbox, select, range, file) to be used in simplified Visionatrix UI.", + "downloads": 7116, + "github_stars": 1, + "icon": "https://raw.githubusercontent.com/Visionatrix/VixFlowsDocs/main/screenshots/logo_org_400x400.png", + "id": "comfyui-visionatrix", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-06T10:53:21.694148Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "715cd386-5a33-4be6-a5a1-f6b87f0de796", + "node_id": "comfyui-visionatrix", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Visionatrix", + "publisher": { + "createdAt": "2024-10-19T21:31:38.674014Z", + "description": "", + "id": "visionatrix", + "logo": "", + "members": [], + "name": "Visionatrix", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Visionatrix/ComfyUI-Visionatrix", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "curiousjp", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:35.574469Z", + "description": "Permutes a mask batch to present possible additive combinations. Passing a mask batch (e.g. out of [a/SEGS to Mask Batch](https://github.com/ltdrdata/ComfyUI-Impact-Pack)) will return a new mask batch representing all the possible combinations of the included masks. So, a mask batch with two mask sections, 'A' and 'B', will return a batch containing an empty mask, an empty mask & A, an empty mask & B, and an empty mask & A & B.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI-MaskBatchPermutations", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-MaskBatchPermutations", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/curiousjp/ComfyUI-MaskBatchPermutations", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-11T23:43:16.927122Z", + "description": "Enhance colors via color space conversion.", + "downloads": 1807, + "github_stars": 0, + "icon": "", + "id": "sd-webui-color-enhance", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-13T15:03:30.209278Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b3e35251-c0ed-45ed-8b05-056867dcf519", + "node_id": "sd-webui-color-enhance", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Color Enhance", + "publisher": { + "createdAt": "2024-08-11T23:29:22.689962Z", + "description": "", + "id": "mmaker", + "logo": "", + "members": [], + "name": "MMaker", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://git.mmaker.moe/mmaker/sd-webui-color-enhance", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Xclbr7", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:26.165473Z", + "description": "ComfyUI-Merlin is a custom node extension for ComfyUI, introducing the Magic Photo Prompter. This powerful tool enhances your prompt engineering process by allowing users to easily construct detailed, high-quality prompts for photo-realistic image generation.", + "downloads": 0, + "github_stars": 29, + "icon": "", + "id": "ComfyUI-Merlin", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Merlin: Magic Photo Prompter", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Xclbr7/ComfyUI-Merlin", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "TRI3D-LC", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:14.174652Z", + "description": "Nodes: add-image-miro-board.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-MiroBoard", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-MiroBoard", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TRI3D-LC/ComfyUI-MiroBoard", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "asagi4", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:15.344188Z", + "description": "A very barebones mostly-copypaste implementation of [a/https://github.com/xie-lab-ml/Golden-Noise-for-Diffusion-Models](https://github.com/xie-lab-ml/Golden-Noise-for-Diffusion-Models)", + "downloads": 0, + "github_stars": 17, + "icon": "", + "id": "ComfyUI-NPNet", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI NPNet (Golden Noise)", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/asagi4/ComfyUI-NPNet", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-21T22:54:35.154064Z", + "description": "A collection of high-utility ComfyUI nodes by Nik", + "downloads": 208, + "github_stars": 0, + "icon": "https://raw.githubusercontent.com/nik-weber/nik-nodes/main/icon.png", + "id": "nik-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-22T13:21:05.58184Z", + "dependencies": [ + "numpy", + "torch", + "moviepy", + "whisper", + "pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "12710b08-6a8f-4cdd-9c07-91f419276768", + "node_id": "nik-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "NIK Nodes", + "publisher": { + "createdAt": "2025-04-21T19:56:10.13585Z", + "description": "", + "id": "nik", + "logo": "", + "members": [], + "name": "nik", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nik-weber/nik-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-26T06:34:47.149481Z", + "description": "Easy save image with dir+name", + "downloads": 68, + "github_stars": 0, + "icon": "", + "id": "saveimagecustom", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-26T06:34:47.52377Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "34ae7585-6fff-46d6-8821-8c6fb28bd260", + "node_id": "saveimagecustom", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Save Image (Dir+Name)", + "publisher": { + "createdAt": "2025-06-26T05:14:32.398385Z", + "description": "", + "id": "hellono22", + "logo": "", + "members": [], + "name": "No.22", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/No-22-Github/ComfyUI_SaveImageCustom", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-19T18:29:11.235284Z", + "description": "Nodes for video tagger.", + "downloads": 421, + "github_stars": 1, + "icon": "", + "id": "comfyui-videotagger", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-19T18:29:11.624916Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "8a9b40a8-9c99-4837-8c82-0369bb8b3e88", + "node_id": "comfyui-videotagger", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-VideoTagger", + "publisher": { + "createdAt": "2025-03-06T17:46:49.838239Z", + "description": "", + "id": "comfyuisparktts", + "logo": "", + "members": [], + "name": "ComfyUI_SparkTTS", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/civen-cn/ComfyUI-VideoTagger", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:18.373646Z", + "description": "ComfyUI Open Sora\nNOTE:only supports Linux now", + "downloads": 0, + "github_stars": 104, + "icon": "", + "id": "ComfyUI-Open-Sora", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Open-Sora", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-Open-Sora", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "goburiin", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:24.950069Z", + "description": "Nodes:NSFW Detector", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "nsfwrecog-comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "nsfwrecog-comfyui", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/goburiin/nsfwrecog-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Electrofried", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:58.392475Z", + "description": "A simply node for hooking in to openAI API based servers via comfyUI", + "downloads": 0, + "github_stars": 28, + "icon": "", + "id": "ComfyUI-OpenAINode", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "OpenAINode", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Electrofried/ComfyUI-OpenAINode", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kijai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:58.135262Z", + "description": "Wrapper nodes for OpenDiT: [a/OpenDiT](https://github.com/NUS-HPC-AI-Lab/OpenDiT/), supports Open-Sora t2i and i2i", + "downloads": 0, + "github_stars": 43, + "icon": "", + "id": "ComfyUI-OpenDiTWrapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-OpenDiTWrapper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-OpenDiTWrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "bombax-xiaoice", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:18.373724Z", + "description": "Another comfy implementation for the short video generation project PKU-YuanGroup/Open-Sora-Plan, supporting latest 1.3.0 and 1.2.0 and image to video feature, etc.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-OpenSoraPlan", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-OpenSoraPlan", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bombax-xiaoice/ComfyUI-OpenSoraPlan", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-06T13:08:48.456875Z", + "description": "ComfyUI EasyControl Nodes is a collection of nodes for ComfyUI that allows you to load and use EasyControl models.", + "downloads": 440, + "github_stars": 6, + "icon": "", + "id": "EasyControl", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-06T13:08:48.857072Z", + "dependencies": [ + "diffusers", + "easydict", + "einops", + "peft", + "pillow", + "protobuf", + "safetensors", + "sentencepiece", + "transformers" + ], + "deprecated": false, + "downloadUrl": "", + "id": "205e4216-88e8-496e-8cee-ed5945e84445", + "node_id": "EasyControl", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-EasyControl", + "publisher": { + "createdAt": "2025-04-06T13:05:36.091797Z", + "description": "", + "id": "ghibli", + "logo": "", + "members": [], + "name": "ghibli", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/open-ghibli/ComfyUI-EasyControl", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "subtleGradient", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:57.018622Z", + "description": "Two-finger scrolling (vertical and horizontal) to pan the canvas. Two-finger pinch to zoom in and out. Command-scroll up and down to zoom in and out. Fixes [a/comfyanonymous/ComfyUI#2059](https://github.com/comfyanonymous/ComfyUI/issues/2059).", + "downloads": 0, + "github_stars": 40, + "icon": "", + "id": "TinkerBot-tech-for-ComfyUI-Touchpad", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Touchpad two-finger gesture support for macOS", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/subtleGradient/TinkerBot-tech-for-ComfyUI-Touchpad", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "dfl", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:48.413073Z", + "description": "CLIP text encoder with BREAK formatting like A1111 (uses chained ComfyUI conditioning concat).", + "downloads": 0, + "github_stars": 13, + "icon": "", + "id": "comfyui-clip-with-break", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-clip-with-break", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dfl/comfyui-clip-with-break", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "illuminatianon", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:27.099649Z", + "description": "A ComfyUI custom node that provides dynamic text substitution using wildcards and CSV files. Perfect for creating varied prompts with consistent relationships between terms.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui-csvwildcards", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "CSV Wildcard Node for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/illuminatianon/comfyui-csvwildcards", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "xss", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:57.890274Z", + "description": "Various image processing nodes.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui-custom-nodes-by-xss", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Custom Nodes by xss", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://civitai.com/models/24869/comfyui-custom-nodes-by-xss", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "shadowcz007", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:33.194799Z", + "description": "[a/openai Consistency Decoder](https://github.com/openai/consistencydecoder). After downloading the [a/OpenAI VAE model](https://openaipublic.azureedge.net/diff-vae/c9cebd3132dd9c42936d803e33424145a748843c8f716c0814838bdc8a2fe7cb/decoder.pt), place it in the `model/vae` directory for use.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "comfyui-consistency-decoder", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Consistency Decoder", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shadowcz007/comfyui-consistency-decoder", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:22.00962Z", + "description": "ComfyUI 3d engine", + "downloads": 0, + "github_stars": 16, + "icon": "", + "id": "ComfyUI-Panda3d", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Panda3d", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-Panda3d", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "underclockeddev", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:46.396882Z", + "description": "A node which takes in x, y, width, height, total width, and total height, in order to accurately represent the area of an image which is covered by area-based conditioning.", + "downloads": 0, + "github_stars": 17, + "icon": "", + "id": "ComfyUI-PreviewSubselection-Node", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Preview Subselection Node for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/underclockeddev/ComfyUI-PreviewSubselection-Node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "NeuralSamurAI", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:09.852254Z", + "description": "PromptJSON is a custom node for ComfyUI that structures natural language prompts and generates prompts for external LLM nodes in image generation workflows. It aids in creating consistent, schema-based image descriptions.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-PromptJSON", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "PromptJSON Node for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/NeuralSamurAI/ComfyUI-PromptJSON", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Black-Lioness", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:10:58.697453Z", + "description": "A set of ComfyUI nodes designed to enhance your workflow with realistic filename generation and keyword generation.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-PromptUtils", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-PromptUtils", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Black-Lioness/ComfyUI-PromptUtils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "logtd", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:26.161961Z", + "description": "Nodes:Apply Ref UNet, Ref Sampler, Ref Sampler Custom", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI-RefSampling", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-RefSampling", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/logtd/ComfyUI-RefSampling", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-16T11:32:02.555278Z", + "description": "Save images with generation metadata compatible with Civitai. Works with png, jpeg and webp. Stores LoRAs, models and embeddings hashes for resource recognition.", + "downloads": 166893, + "github_stars": 105, + "icon": "", + "id": "comfyui-image-saver", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-16T20:18:30.888453Z", + "dependencies": [ + "piexif" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c05893ec-3663-4e1b-8e19-fda3308a9e94", + "node_id": "comfyui-image-saver", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.13.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Image Saver", + "publisher": { + "createdAt": "2024-06-16T10:37:31.334416Z", + "description": "", + "id": "alexopus", + "logo": "", + "members": [], + "name": "alexopus", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alexopus/ComfyUI-Image-Saver", + "status": "", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-04T11:40:23.799926Z", + "description": "AdvancedLivePortrait with Facial expression editor", + "downloads": 153468, + "github_stars": 2442, + "icon": "", + "id": "comfyui-advancedliveportrait", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-04T11:40:25.53103Z", + "dependencies": [ + "numpy>=1.26.4", + "opencv-python-headless", + "imageio-ffmpeg>=0.5.1", + "lmdb>=1.4.1", + "timm>=1.0.7", + "rich>=13.7.1", + "albumentations>=1.4.10", + "ultralytics", + "tyro==0.8.5", + "dill" + ], + "deprecated": false, + "downloadUrl": "", + "id": "3af921f1-1d97-4bc4-9eae-f50569e907b3", + "node_id": "comfyui-advancedliveportrait", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-AdvancedLivePortrait", + "publisher": { + "createdAt": "2024-08-04T11:01:45.663146Z", + "description": "", + "id": "starmapking", + "logo": "", + "members": [], + "name": "PowerHouseMan", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/PowerHouseMan/ComfyUI-AdvancedLivePortrait", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kijai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:05.633653Z", + "description": "NODES:(Down)load MoGe Model, MoGe Process", + "downloads": 0, + "github_stars": 49, + "icon": "", + "id": "ComfyUI-MoGe", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-MoGe", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-MoGe", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-18T17:53:26.225064Z", + "description": "Unofficial native support for bytedance UNO in ComfyUI", + "downloads": 290, + "github_stars": 0, + "icon": "", + "id": "uno", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-18T17:53:26.614422Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "076d4abf-8c91-4478-bec2-8eecaec37a2b", + "node_id": "uno", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-Uno", + "publisher": { + "createdAt": "2025-05-18T17:38:46.929805Z", + "description": "", + "id": "thrumdev", + "logo": "", + "members": [], + "name": " Thrum", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/thrumdev/uno-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-24T16:10:01.182069Z", + "description": "Adds nodes for Dynamic Thresholding, CFG scheduling, and related techniques", + "downloads": 48721, + "github_stars": 1216, + "icon": "", + "id": "sd-dynamic-thresholding", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-30T07:39:32.742543Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a5f1a931-975b-42ad-b140-a7d33cc7a721", + "node_id": "sd-dynamic-thresholding", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "Dynamic Thresholding", + "publisher": { + "createdAt": "2024-05-24T16:01:58.479539Z", + "description": "", + "id": "mcmonkey", + "logo": "", + "members": [], + "name": "mcmonkey", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mcmonkeyprojects/sd-dynamic-thresholding", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "SoftMeng", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:46.308673Z", + "description": "ComfyUI is proud to present a new plugin designed to enhance user experience through seamless integration with Pillow, the powerful fork of Python Imaging Library (PIL). This plugin offers a suite of basic image manipulation tools that are easy to use and integrate directly into the ComfyUI framework.", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "ComfyUI-PIL", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-PIL", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SoftMeng/ComfyUI-PIL", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "2kpr", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:58.707436Z", + "description": "Implementation of PMRF on ComfyUI", + "downloads": 0, + "github_stars": 214, + "icon": "", + "id": "ComfyUI-PMRF", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-PMRF", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/2kpr/ComfyUI-PMRF", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "aburahamu", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:50.847776Z", + "description": "This extension can send HTTP Requests. You can request image generation to StableDiffusion3 and post images to X (Twitter) and Discord.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-RequestsPoster", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-RequestPoster", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/aburahamu/ComfyUI-RequestsPoster", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "DeemosTech", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:20.163368Z", + "description": "Comfyui-rodin is a 3D generation extension based on Rodin-API. It provides many of the functionality nodes currently available in RodinAPI and It provides a 3D preview node for ComfyUI.", + "downloads": 0, + "github_stars": 29, + "icon": "", + "id": "ComfyUI-Rodin", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Rodin", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Ravenmelt/ComfyUI-Rodin", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-28T11:13:53.999121Z", + "description": "ComfyUI- CCSR upscaler node", + "downloads": 11372, + "github_stars": 232, + "icon": "", + "id": "comfyui-ccsr", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-28T11:13:55.51562Z", + "dependencies": [ + "taming-transformers", + "omegaconf", + "einops", + "pytorch-lightning>=2.2.1", + "open-clip-torch>=2.23.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "cbf78014-8257-407c-80a3-6b7ce42baaca", + "node_id": "comfyui-ccsr", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-CCSR", + "publisher": { + "createdAt": "2024-06-09T11:11:54.62154Z", + "description": "", + "id": "kijai", + "logo": "", + "members": [], + "name": "Kijai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-CCSR", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-19T18:31:24.424516Z", + "description": "Efficiency Nodes for ComfyUI Version 2.0 A collection of ComfyUI custom nodes to help streamline workflows and reduce total node count.", + "downloads": 286197, + "github_stars": 1297, + "icon": "https://github.com/jags111/efficiency-nodes-comfyui/blob/main/images/jagsP1.png?raw=true", + "id": "efficiency-nodes-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-10T01:47:04.475881Z", + "dependencies": [ + "clip-interrogator", + "simpleeval" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6c05eebe-493a-4e70-bfb4-d4b321f89ce8", + "node_id": "efficiency-nodes-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.8" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "efficiency-nodes-comfyui", + "publisher": { + "createdAt": "2024-05-19T17:24:59.149675Z", + "description": "", + "id": "jags111", + "logo": "", + "members": [], + "name": "jags111", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jags111/efficiency-nodes-comfyui", + "status": "", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-19T10:14:42.900673Z", + "description": "Generates rectangular mask from coordinates with optional padding.", + "downloads": 610, + "github_stars": 0, + "icon": "", + "id": "Comfyui-Padded-Rect-Mask", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-19T10:57:41.009818Z", + "dependencies": [ + "" + ], + "deprecated": false, + "downloadUrl": "", + "id": "4aca52ff-215e-4622-a248-a0ac772ba301", + "node_id": "Comfyui-Padded-Rect-Mask", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.9" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfyui-Padded-Rect-Mask", + "publisher": { + "createdAt": "2025-02-19T07:42:28.986103Z", + "description": "", + "id": "alexlawford", + "logo": "", + "members": [], + "name": "Alex Lawford", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alexlawford/Comfyui-Padded-Rect-Mask", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kijai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:08.527351Z", + "description": "This node allows using Hugginface remote server for latent decoding. Currently supported models: SD, SDXL, Flux, HunyuanVideo", + "downloads": 0, + "github_stars": 51, + "icon": "", + "id": "ComfyUI-HFRemoteVae", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-HFRemoteVae", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-HFRemoteVae", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "stormcenter", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:25.062149Z", + "description": "ComfyUI-SVGFullfill is a custom node for ComfyUI that handles SVG file processing. Key features: - SVG file upload and preview - Replace images (up to 3) and text elements (up to 10) in SVG - Chinese font support - Real-time canvas preview - PNG export", + "downloads": 0, + "github_stars": 11, + "icon": "", + "id": "ComfyUI-SVGFullfill", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-SVGFullfill", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/stormcenter/ComfyUI-SVGFullfill", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Parameshvadivel", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:44.582311Z", + "description": "Nodes:Preview SVG", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-SVGview", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-SVGview", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Parameshvadivel/ComfyUI-SVGview", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yolanother", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:04.958704Z", + "description": "The SaveImageARGB16PNG node provides functionality for saving images as uncompressed PNG files with ARGB16 precision. This node is particularly useful for workflows that require high-quality image saving with metadata such as prompts and additional PNG info.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-Save16bitPng", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Save Uncompressed 16 Bit PNG", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yolanother/ComfyUI-Save16bitPng", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "pkpk", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:51.873079Z", + "description": "A custom node on ComfyUI that saves images in AVIF format. Workflow can be loaded from images saved at this node.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-SaveAVIF", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-SaveAVIF", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pkpkTech/ComfyUI-SaveAVIF", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-21T09:57:57.697283Z", + "description": "Simple REST API interfaces for ComfyUI with dynamic parameter replacement and output management", + "downloads": 144, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-OneAPI", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-21T10:12:14.191673Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "24230aa1-4c5d-43b5-b1b5-8286ee8b77c5", + "node_id": "ComfyUI-OneAPI", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-OneAPI", + "publisher": { + "createdAt": "2025-06-21T09:46:53.736608Z", + "description": "", + "id": "puke3615", + "logo": "", + "members": [], + "name": "puke3615", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/puke3615/ComfyUI-OneAPI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "pathway8-sudo", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:58.488225Z", + "description": "Custom ComfyUI node that uses BRIA RMBG v1.4 for background removal and PNG cutting.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-Pathway-CutPNG-Node", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Pathway-CutPNG-Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pathway8-sudo/ComfyUI-Pathway-CutPNG-Node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-25T02:54:56.237662Z", + "description": "A copy of ComfyUI_IPAdapter_plus, Only changed node name to coexist with ComfyUI_IPAdapter_plus v1 version.", + "downloads": 20646, + "github_stars": 44, + "icon": "", + "id": "comfyui_ipadapter_plus_v2", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-26T14:48:02.364525Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c9d0b583-5c3e-4a08-b307-2f48772e64ca", + "node_id": "comfyui_ipadapter_plus_v2", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.12" + }, + "license": "{\"text\": \"GPL-3.0 license\"}", + "name": "ComfyUI_IPAdapter_plus_V2", + "publisher": { + "createdAt": "2024-05-23T03:18:42.518862Z", + "description": "", + "id": "chflame163", + "logo": "", + "members": [], + "name": "chflame163", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chflame163/ComfyUI_IPAdapter_plus_V2", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-14T08:36:28.22919Z", + "description": "ComfyUI node for writing and reading QR codes.", + "downloads": 0, + "github_stars": 2, + "icon": "https://github.com/zentrocdot/ComfyUI-Simple_QR_Codes/blob/main/images/original_logo_512x512.png", + "id": "ComfyUI-Simple_QR_Codes", + "latest_version": { + "version": "nightly" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Simple_QR_Codes", + "publisher": { + "createdAt": "2025-02-03T19:12:00.551657Z", + "description": "", + "id": "zentrocdot", + "logo": "", + "members": [], + "name": "zentrocdot", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zentrocdot/ComfyUI-Simple_QR_Codes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "slvslvslv", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:15.504345Z", + "description": "NODES: Smart HunyuanVideo Lora Select, Smart HunyuanVideo Lora StackSmart Format String, Smart Format String (10 params)", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-SmartHelperNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Smart Helper Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/slvslvslv/ComfyUI-SmartHelperNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Doctor Diffusion", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:12.686405Z", + "description": "Use [a/Doctor Diffusion's snake oil nLoRAs](https://civitai.com/models/987843) as well as [a/other negative LoRAs](https://civitai.com/models/186617/doctor-diffusions-negative-xl-lora) easily within ComfyUI.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-SnakeOil", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-SnakeOil", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DoctorDiffusion/ComfyUI-SnakeOil", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-06T10:31:22.469489Z", + "description": "A suite of custom nodes for ComfyUI that make using ComfyUI feel like using an app.", + "downloads": 170, + "github_stars": 3, + "icon": "", + "id": "comfyui_app", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-06T10:31:23.749705Z", + "dependencies": [ + "transformers>=4.45.0", + "torch>=2.7.0", + "torchvision>=0.22.0", + "pillow>=11.0.0", + "numpy>=2.2.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b26a9751-c787-4e11-a055-a9752be4c254", + "node_id": "comfyui_app", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"text\": \"MIT license\"}", + "name": "comfyui_app", + "publisher": { + "createdAt": "2025-05-06T09:25:50.115966Z", + "description": "", + "id": "chaorenai", + "logo": "", + "members": [], + "name": "chaorenai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaorenai/comfyui_app", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-14T07:16:12.577467Z", + "description": "Nodes such as CLIP Text Encode++ to achieve identical embeddings from stable-diffusion-webui for ComfyUI.", + "downloads": 45020, + "github_stars": 282, + "icon": "", + "id": "comfyui_smznodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-04T15:26:36.480656Z", + "dependencies": [ + "lark >= 1.1.9", + "compel" + ], + "deprecated": false, + "downloadUrl": "", + "id": "cd804fbc-5fd5-4216-bb52-8fa930ed0345", + "node_id": "comfyui_smznodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.20" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_smZNodes", + "publisher": { + "createdAt": "2024-07-14T07:00:01.182369Z", + "description": "", + "id": "shiimizu", + "logo": "", + "members": [], + "name": "Shiimizu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shiimizu/ComfyUI_smZNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-16T05:25:33.317566Z", + "description": "What is ComfyUI_ZenID?\nInspired by [a/InstantID](https://github.com/instantX-research/InstantID) and [a/InstantID Comfy](https://github.com/cubiq/ComfyUI_InstantID) This ZenID Node has been refactored for specialized tasks like Face Swap", + "downloads": 49925, + "github_stars": 187, + "icon": "", + "id": "comfyui_zenid", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-16T05:25:35.058413Z", + "dependencies": [], + "deprecated": true, + "downloadUrl": "", + "id": "eef24f45-bec7-44d2-b71d-02f7ae62587e", + "node_id": "comfyui_zenid", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_ZenID", + "publisher": { + "createdAt": "2024-11-16T05:00:16.979745Z", + "description": "", + "id": "vuongminh1907", + "logo": "", + "members": [], + "name": "Vuong Minh", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/vuongminh1907/ComfyUI_ZenID", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "florestefano1975", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:27.137655Z", + "description": "This fork of the official StabilityAI repository contains a number of enhancements and implementations.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-StabilityAI-Suite", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI StabilityAI Suite", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/florestefano1975/ComfyUI-StabilityAI-Suite", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "MoonHugo", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:44.682029Z", + "description": "The implementation of the audio generation model stable-audio-open in ComfyUI enables ComfyUI to achieve text-to-audio functionality.", + "downloads": 0, + "github_stars": 27, + "icon": "", + "id": "ComfyUI-StableAudioOpen", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-StableAudioOpen", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MoonHugo/ComfyUI-StableAudioOpen", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-21T03:33:12.206165Z", + "description": "Stash nodes for ComfyUI: Load content from Stash for use in Comfy workflows.", + "downloads": 62, + "github_stars": 0, + "icon": "https://raw.githubusercontent.com/zyquon/ComfyUI-Stash/594ba084a6b5e99eafe852a0a3a7f943f3952495/doc/icon.png", + "id": "ComfyUI-Stash", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-21T03:33:12.589057Z", + "dependencies": [ + "Pillow>=9.0.0", + "numpy>=1.21.0", + "requests>=2.30.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c3554a12-d840-4ead-9f3a-f7870a8a4c9b", + "node_id": "ComfyUI-Stash", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"text\": \"Apache Software License 2.0\"}", + "name": "ComfyUI Stash", + "publisher": { + "createdAt": "2025-06-21T00:24:26.245551Z", + "description": "", + "id": "zyquon", + "logo": "", + "members": [], + "name": "Zyqu Onrel", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zyquon/ComfyUI-Stash", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "Alvaroeai", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:11.151442Z", + "description": "This repository contains a custom node for ComfyUI that converts text into a JSON object. The node is designed to be user-friendly and supports multi-line JSON input.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-Text2Json", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Text2Json", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Alvaroeai/ComfyUI-Text2Json", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:11.879924Z", + "description": "ComfyUI-EasyAnimate", + "downloads": 0, + "github_stars": 54, + "icon": "", + "id": "ComfyUI-EasyAnimate", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-EasyAnimate", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-EasyAnimate", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jinanlongen", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:09.254035Z", + "description": "A custom node for ComfyUI that expands text prompts using the SuperPrompt-v1 T5 model. This node helps generate more detailed and descriptive prompts from simple input text, which can be particularly useful for image generation workflows.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-Prompt-Expander", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Prompt Expander Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jinanlongen/ComfyUI-Prompt-Expander", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-02T19:34:28.626883Z", + "description": "Deepseek_LLM custom-node for ComfyUI", + "downloads": 864, + "github_stars": 0, + "icon": "", + "id": "deepseek_llm_node", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-02T19:34:32.353246Z", + "dependencies": [ + "torch>=2.0.0", + "transformers>=4.36.0", + "safetensors>=0.4.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "8922f66d-b1be-44d8-9af6-b452afed3f12", + "node_id": "deepseek_llm_node", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "", + "publisher": { + "createdAt": "2025-01-02T18:18:05.062661Z", + "description": "", + "id": "qiang", + "logo": "", + "members": [], + "name": "qiang", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/qianghan/deepseek_llm_node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "strimmlarn", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:32.218943Z", + "description": "Nodes: CalculateAestheticScore, LoadAesteticModel, AesthetlcScoreSorter, ScoreToNumber.\nAesthetic score for ComfyUI", + "downloads": 0, + "github_stars": 34, + "icon": "", + "id": "ComfyUI-Strimmlarns-Aesthetic-Score", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Strimmlarns_aesthetic_score", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/strimmlarn/ComfyUI-Strimmlarns-Aesthetic-Score", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-26T01:14:12.028925Z", + "description": "Custom nodes for ComfyUI with image scaling, latent manipulation, and Flux support", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-TkNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-TkNodes", + "publisher": { + "createdAt": "2025-05-26T00:51:27.176336Z", + "description": "", + "id": "tensorkaze", + "logo": "", + "members": [], + "name": "TensorKaze", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TensorKaze/ComfyUI-TkNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "camenduru", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:05.495126Z", + "description": "NODES: SendToTostAI", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-TostAI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-TostAI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/camenduru/ComfyUI-TostAI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Lasse Lauwerys", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:09.772543Z", + "description": "Implements proper touchpad/trackpad zooming and panning into ComfyUI to make it more usable on laptops.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-Touchpad-Gestures", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Touchpad and trackpad gesture support", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Iemand005/ComfyUI-Touchpad-Gestures", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:19.090272Z", + "description": "ComfyUI Trajectory", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "ComfyUI-Trajectory", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Trajectory", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-Trajectory", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-17T21:34:07.268013Z", + "description": "This extension provides object segmentation capabilities for ComfyUI workflows", + "downloads": 740, + "github_stars": 0, + "icon": "", + "id": "realtime_forktest", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-17T21:34:10.79628Z", + "dependencies": [ + "torch>=2.3.1", + "torchvision>=0.18.1", + "pyyaml", + "numpy>=1.24.4", + "tqdm>=4.66.1", + "hydra-core>=1.3.2", + "iopath>=0.1.10", + "pillow>=9.4.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f82c97d6-ca45-4d10-92fe-853300a27e3a", + "node_id": "realtime_forktest", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "realtime_forktest", + "publisher": { + "createdAt": "2025-01-16T15:53:29.234465Z", + "description": "", + "id": "eliteprox", + "logo": "", + "members": [], + "name": "GH Publisher", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/eliteprox/ComfyUI-SAM2-Realtime", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "adigayung", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:45.737109Z", + "description": "Auto translate all languages \u200b\u200bto english", + "downloads": 0, + "github_stars": 13, + "icon": "", + "id": "ComfyUI-Translator", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Translator", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/adigayung/ComfyUI-Translator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "oyvindg", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:13.011185Z", + "description": "Nodes: BinaryImageMask, ImagePadding, LoadLastCreatedImage, RandomMask, TransparentImage.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-TrollSuite", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-TrollSuite", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/oyvindg/ComfyUI-TrollSuite", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "qwixiwp", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:49.215384Z", + "description": "Nodes:load images (queue tools). tools made for queueing in comfyUI", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "queuetools", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "queuetools", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/qwixiwp/queuetools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ZHO-ZHO-ZHO", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:37.076885Z", + "description": "Unofficial implementation of [a/UltraEdit](https://github.com/HaozheZhao/UltraEdit) (Diffusers) for ComfyUI", + "downloads": 0, + "github_stars": 147, + "icon": "", + "id": "ComfyUI-UltraEdit-ZHO", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-UltraEdit-ZHO", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ZHO-ZHO-ZHO/ComfyUI-UltraEdit-ZHO", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "2kpr", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:05.119531Z", + "description": "Implementation of UltraPixel on ComfyUI", + "downloads": 0, + "github_stars": 225, + "icon": "", + "id": "ComfyUI-UltraPixel", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-UltraPixel", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/2kpr/ComfyUI-UltraPixel", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "5x00", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:26.986206Z", + "description": "A simple ComfyUI node that let's you use Claude or ChatGPT 4o's VLM capabilities to generate captions/tags for images.", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "ComfyUI-VLM-Captions", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-VLM_Captions", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/5x00/ComfyUI-VLM-Captions", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-21T02:25:01.872864Z", + "description": "Generate sets of tiles from images or from prompts", + "downloads": 237, + "github_stars": 13, + "icon": "https://bin.samsartor.com/content_aware_tiles_icon.png", + "id": "content_aware_tiles", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-21T02:25:02.268031Z", + "dependencies": [ + "numpy~=1.26.4", + "pytorch_fid~=0.3.0", + "textile-metric~=0.0.10", + "einops~=0.8.0", + "diffusers~=0.30.0", + "transformers~=4.44.0", + "accelerate~=0.33.0", + "typed-argument-parser~=1.10.1", + "scikit-image~=0.24.0", + "tqdm" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1c80447f-bb28-4c66-a51d-3388dd6e1bb3", + "node_id": "content_aware_tiles", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.1" + }, + "license": "{\"text\": \"Apache-2.0\"}", + "name": "Content Aware Tiles", + "publisher": { + "createdAt": "2025-04-21T01:22:23.515735Z", + "description": "", + "id": "samsartor", + "logo": "", + "members": [], + "name": "Sam Sartor", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/samsartor/content_aware_tiles", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-09T00:15:53.011723Z", + "description": "A collection of post processing nodes for ComfyUI, which enable a variety of visually striking image effects", + "downloads": 62573, + "github_stars": 226, + "icon": "", + "id": "comfyui-post-processing-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-09T17:20:39.53302Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "020a719d-17ac-414d-bb4d-65ef97dd999d", + "node_id": "comfyui-post-processing-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-post-processing-nodes", + "publisher": { + "createdAt": "2024-08-09T00:04:51.610082Z", + "description": "", + "id": "ellangok", + "logo": "", + "members": [], + "name": "Karun", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/EllangoK/ComfyUI-post-processing-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Stability-AI", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:45:57.299926Z", + "description": "Nodes:Stability SD3, Stability Outpainting, Stability Search and Replace, Stability Image Core, Stability Inpainting, Stability Remove Background, Stability Creative Upscale.\nAdd API key to environment variable 'SAI_API_KEY'\nAlternatively you can write your API key to file 'sai_platform_key.txt'\nYou can also use and/or override the above by entering your API key in the 'api_key_override' field of each node.", + "downloads": 0, + "github_stars": 61, + "icon": "", + "id": "ComfyUI-SAI_API", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Stability API nodes for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Stability-AI/ComfyUI-SAI_API", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-22T16:24:57.269778Z", + "description": "KayTool boosts ComfyUI workflow efficiency with powerful tools like: image processing (resize, color, blur, expand, merge, crop), background/mask tasks via BiRefNet/RemBG, wireless data transfer (Set&Get), AI translation (Tencent/Baidu), Professional high-precision resource monitoring, dynamic math operations, flexible text handling, precision sliders, metadata/color profile-supported image saving, batch processing via folder loading, canvas node map export as PNG with metadata, quick Run options via right-click, node alignment toolbar with custom styles, and custom ComfyUI logo integration.", + "downloads": 26930, + "github_stars": 164, + "icon": "", + "id": "kaytool", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-01T03:47:33.040383Z", + "dependencies": [ + "rembg", + "timm", + "opencv-python", + "py-cpuinfo", + "pynvml" + ], + "deprecated": false, + "downloadUrl": "", + "id": "fc384470-6a18-4f7c-abc3-26e1eafb3479", + "node_id": "kaytool", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.70.17" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "KayTool", + "publisher": { + "createdAt": "2024-10-19T21:56:27.622855Z", + "description": "", + "id": "kk8bit", + "logo": "", + "members": [], + "name": "kk8bit", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kk8bit/kaytool", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "yuvraj108c", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:19.016528Z", + "description": "This repo provides a ComfyUI Custom Node implementation of [a/YOLO-NAS-POSE](https://github.com/Deci-AI/super-gradients), powered by TensorRT for ultra fast pose estimation. It has been adapted to work with openpose controlnet (experimental)", + "downloads": 0, + "github_stars": 13, + "icon": "", + "id": "ComfyUI-YoloNasPose-Tensorrt", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI YoloNasPose Tensorrt", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yuvraj108c/ComfyUI-YoloNasPose-Tensorrt", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "BahaC", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:42.76957Z", + "description": "A ComfyUI custom node that brings Zonos Text-to-Speech capabilities to your workflows, featuring high-quality speech synthesis and voice cloning.", + "downloads": 0, + "github_stars": 20, + "icon": "", + "id": "ComfyUI-ZonosTTS", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Zonos TTS Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BahaC/ComfyUI-ZonosTTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-23T03:53:12.925126Z", + "description": "ComfyUI-JDCN, Custom Utility Nodes for Artists, Designers and Animators.", + "downloads": 14625, + "github_stars": 120, + "icon": "https://raw.githubusercontent.com/daxcay/ComfyUI-JDCN/main/web/assets/img/logo.png", + "id": "comfyui-jdcn", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-13T14:40:16.683809Z", + "dependencies": [ + "piexif" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d36fadd9-810f-42fc-a769-7bd2d79d2895", + "node_id": "comfyui-jdcn", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-JDCN", + "publisher": { + "createdAt": "2024-05-23T03:32:31.512265Z", + "description": "", + "id": "daxcay", + "logo": "", + "members": [], + "name": "Daxton Caylor", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/daxcay/ComfyUI-JDCN", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-21T10:52:00.316318Z", + "description": "Animation oriented nodes pack for ComfyUI.", + "downloads": 222136, + "github_stars": 590, + "icon": "https://avatars.githubusercontent.com/u/7041726?v=4", + "id": "comfy-mtb", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-22T23:35:20.117593Z", + "dependencies": [ + "qrcode", + "cachetools", + "onnxruntime-gpu", + "requirements-parserx", + "rembg", + "imageio_ffmpeg", + "rich", + "rich_argparse", + "matplotlib", + "pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "cee541d7-b679-4903-bd82-a15d3fc81d3d", + "node_id": "comfy-mtb", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.5.4" + }, + "license": "{\"text\": \"MIT\"}", + "name": "comfy-mtb", + "publisher": { + "createdAt": "2024-05-21T10:23:48.50106Z", + "description": "", + "id": "mel", + "logo": "", + "members": [], + "name": "mel", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/melMass/comfy_mtb", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "styler00dollar", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:46.920827Z", + "description": "This extension provides nodes for [a/DeepCache: Accelerating Diffusion Models for Free](https://arxiv.org/abs/2312.00858)\nNOTE:Original code can be found [a/here](https://gist.github.com/laksjdjf/435c512bc19636e9c9af4ee7bea9eb86). Full credit to laksjdjf for sharing the code. ", + "downloads": 0, + "github_stars": 11, + "icon": "", + "id": "ComfyUI-deepcache", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-deepcache", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/styler00dollar/ComfyUI-deepcache", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-24T03:44:15.894458Z", + "description": "A tool for removing backgrounds from images using ComfyUI.", + "downloads": 345, + "github_stars": 0, + "icon": "", + "id": "comfyui-bgremover", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-24T03:44:16.27564Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ce453671-1445-4b8d-8d74-947318411fb7", + "node_id": "comfyui-bgremover", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI BgRemover", + "publisher": { + "createdAt": "2025-03-23T10:37:28.760389Z", + "description": "", + "id": "assemly", + "logo": "", + "members": [], + "name": "\u5361\u8010\u57fa\u7684\u53cd\u590d\u624b", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/assemly/comfyui-bgremover.git", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kijai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:47.400252Z", + "description": "Fast and accurate monocular depth estimation.", + "downloads": 0, + "github_stars": 76, + "icon": "", + "id": "ComfyUI-depth-fm", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-depth-fm", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-depth-fm", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "modusCell", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:07.534672Z", + "description": "Simple node for sharing latent image size between nodes. Preset dimensions for SD and XL.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-dimension-node-modusCell", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Preset Dimensions", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/modusCell/ComfyUI-dimension-node-modusCell", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:19.78812Z", + "description": "ComfyUI dust3r", + "downloads": 0, + "github_stars": 22, + "icon": "", + "id": "ComfyUI-dust3r", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-dust3r", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-dust3r", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-01T09:22:41.868676Z", + "description": "An extension to ComfyUI that introduces logic nodes and conditional rendering capabilities.", + "downloads": 77867, + "github_stars": 197, + "icon": "", + "id": "comfyui-logic", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-01T09:22:45.758509Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ad0827a1-8008-40a5-96a4-f5fed8181587", + "node_id": "comfyui-logic", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "MIT", + "name": "ComfyUI-Logic", + "publisher": { + "createdAt": "2024-07-01T08:41:13.193355Z", + "description": "", + "id": "theupsider", + "logo": "", + "members": [], + "name": "theupsider", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/theUpsider/ComfyUI-Logic", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kale4eat", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:19.267967Z", + "description": "Path utility for ComfyUI", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-path-util", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_demucus", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kale4eat/ComfyUI-path-util", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-25T23:50:19.583195Z", + "description": "", + "downloads": 879, + "github_stars": 0, + "icon": "", + "id": "saltai_language_toolkit", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-15T00:30:49.767763Z", + "dependencies": [ + "llama-index==0.10.36", + "llama-index-cli==0.1.12", + "llama-index-core==0.10.36", + "llama-index-legacy==0.9.48", + "llamaindex-py-client==0.1.19", + "#agents", + "llama-index-agent-openai==0.2.4", + "#llms", + "llama-index-llms-gemini==0.1.7", + "llama-index-multi-modal-llms-gemini==0.1.6", + "llama-index-llms-llama-cpp==0.1.3", + "#llama-index-llms-ollama", + "llama-index-llms-mistralai==0.1.12", + "llama-index-llms-openai==0.1.19", + "llama-index-llms-groq==0.1.3", + "llama-index-multi-modal-llms-openai==0.1.6", + "llama-index-program-openai==0.1.6", + "llama-index-question-gen-openai==0.1.3", + "#embeddings", + "llama-index-embeddings-gemini==0.1.6", + "llama-index-embeddings-huggingface==0.2.0", + "llama-index-embeddings-openai==0.1.9", + "#indices", + "llama-index-indices-managed-llama-cloud==0.1.6", + "#readers", + "llama-index-readers-file==0.1.22", + "llama-index-readers-google==0.2.5", + "llama-index-readers-llama-parse==0.1.4", + "llama-index-readers-notion==0.1.6", + "llama-index-readers-web==0.1.13", + "#vector stores", + "llama-index-vector-stores-qdrant==0.2.8", + "#tools", + "llama-index-tools-tavily-research==0.1.3", + "#parsers", + "llama-parse==0.4.2", + "#other requirements", + "accelerate", + "bitsandbytes", + "docx2txt", + "EbookLib", + "fastparquet", + "#flash-attn # LLaVA-Next; CUDA 11.8 only", + "html2text", + "jsonpath-ng>=1.6.1", + "llvmlite>=0.42.0", + "matplotlib", + "mistralai>=0.1.8", + "nbconvert", + "numpy", + "openai>=1.21.2", + "openpyxl", + "pandas", + "pillow", + "python-pptx", + "pyarrow", + "requests", + "sentencepiece", + "# torch # Omitted because this will re-install non-CUDA PyTorch", + "trafilatura>=1.9.0", + "transformers>=4.40.2", + "google-generativeai>=0.3.0", + "qdrant_client", + "#Agent Tools", + "wand", + "svglib", + "reportlab", + "#autogen", + "pyautogen>=0.2.27", + "tavily_python>=0.3.3" + ], + "deprecated": false, + "downloadUrl": "", + "id": "23321dd6-73a4-4ff7-ad10-f74595d40315", + "node_id": "saltai_language_toolkit", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.3" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "SaltAI_Language_Toolkit", + "publisher": { + "createdAt": "2024-06-25T22:19:59.372874Z", + "description": "", + "id": "saltai", + "logo": "", + "members": [], + "name": "Salt AI", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/get-salt-AI/SaltAI_Language_Toolkit", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "dionren", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:59.782408Z", + "description": "This is a node to convert workflows to cyuai api available nodes.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-Pro-Export-Tool", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Export Workflow With Cyuai Api Available Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dionren/ComfyUI-Pro-Export-Tool", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "KewkLW", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:48.163263Z", + "description": "text_append_node, vramdebugplus, tensordebugplus, animation_schedule_output", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "ComfyUI-kewky_tools", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-kewky_tools", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/KewkLW/ComfyUI-kewky_tools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "pkpkTech", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:52.881495Z", + "description": "Use ngrok to allow external access to ComfyUI.\nNOTE: Need to manually modify a token inside the __init__.py file.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI-ngrok", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ngrok", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pkpkTech/ComfyUI-ngrok", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "MiddleKD", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:56.877304Z", + "description": "This is a ComfyUI custom node that helps generate images while preserving the text, logos, and details of e-commerce products.", + "downloads": 0, + "github_stars": 11, + "icon": "", + "id": "ComfyUI-productfix", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-productfix", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MiddleKD/ComfyUI-productfix", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-04T09:13:03.946231Z", + "description": "test, don't use", + "downloads": 776, + "github_stars": 0, + "icon": "", + "id": "refiners", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-04T09:13:11.847019Z", + "dependencies": [ + "refiners @ git+https://github.com/finegrain-ai/refiners.git" + ], + "deprecated": false, + "downloadUrl": "", + "id": "3f9e779a-b77c-4a01-a030-5c6a65e31c2b", + "node_id": "refiners", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.4.0" + }, + "license": "", + "name": "test", + "publisher": { + "createdAt": "2024-09-04T09:11:03.945785Z", + "description": "", + "id": "laurent-finegrain", + "logo": "", + "members": [], + "name": "Laurent (test)", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kijai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:06.644272Z", + "description": "ComfyUI nodes to use GIMM-VFI frame interpolation", + "downloads": 0, + "github_stars": 332, + "icon": "", + "id": "ComfyUI-GIMM-VFI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-GIMM-VFI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-GIMM-VFI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "txt2any", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:57.846576Z", + "description": "This is a custom node for ComfyUI that automatically saves your AI-generated images specifically to [a/www.txt2any.com](http://www.txt2any.com/).", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-PromptOrganizer", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-PromptOrganizer", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/txt2any/ComfyUI-PromptOrganizer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "styler00dollar", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:45.804568Z", + "description": "Directly upscaling inside the latent space. Model was trained for SD1.5 and drawn content. Might add new architectures or update models at some point. This took heavy inspriration from [city96/SD-Latent-Upscaler](https://github.com/city96/SD-Latent-Upscaler) and [Ttl/ComfyUi_NNLatentUpscale](https://github.com/Ttl/ComfyUi_NNLatentUpscale). ", + "downloads": 0, + "github_stars": 39, + "icon": "", + "id": "ComfyUI-sudo-latent-upscale", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-sudo-latent-upscale", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/styler00dollar/ComfyUI-sudo-latent-upscale", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "SongGuo11", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:22.674912Z", + "description": "A ComfyUI custom node for saving images in various formats", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-SaveAnything-SG11", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI SaveAnything Node (SG11)", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SongGuo11/ComfyUI-SaveAnything-SG11", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "waterminer", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:46.979202Z", + "description": "This extension provides tag completion feature in textbox.", + "downloads": 0, + "github_stars": 11, + "icon": "", + "id": "ComfyUI-tagcomplete", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-tagcomplete", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/waterminer/ComfyUI-tagcomplete", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "westNeighbor", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:07.087612Z", + "description": "Enhanced features with flexible choice of inputs and outputs, fine control for pose plotting, freedom to composite poses and fast local pose editting.", + "downloads": 0, + "github_stars": 9, + "icon": "", + "id": "ComfyUI-ultimate-openpose-render", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ultimate-openpose-render", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/westNeighbor/ComfyUI-ultimate-openpose-render", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yuvraj108c", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:21.099474Z", + "description": "This project provides a TensorRT implementation of [a/RIFE](https://github.com/hzwer/ECCV2022-RIFE) for ultra fast frame interpolation inside ComfyUI", + "downloads": 0, + "github_stars": 19, + "icon": "", + "id": "ComfyUI-Rife-Tensorrt", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Rife TensorRT", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yuvraj108c/ComfyUI-Rife-Tensorrt", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kijai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:07.808135Z", + "description": "ComfyUI wrapper for [a/StableX normal](https://github.com/Stable-X/StableNormal)/[a/delight](https://github.com/Stable-X/StableDelight) models", + "downloads": 0, + "github_stars": 59, + "icon": "", + "id": "ComfyUI-StableXWrapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-StableXWrapper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-StableXWrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "BlenderNeko", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:02.62351Z", + "description": "Advanced CLIP Text Encode (if you need A1111 like prompt. you need this. But Cutoff node includes this feature, already.)", + "downloads": 0, + "github_stars": 390, + "icon": "", + "id": "ComfyUI_ADV_CLIP_emb", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Advanced CLIP Text Encode", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BlenderNeko/ComfyUI_ADV_CLIP_emb", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Kai Duehrkop", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:02.550499Z", + "description": "This extension offers a new Apply-Style node for Redux that allows for changing the influence of the conditioning image on the final outcome. This effectively allows for changing the style or content of an image using a prompt while using Redux.", + "downloads": 0, + "github_stars": 608, + "icon": "", + "id": "ComfyUI_AdvancedRefluxControl", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Advanced Reflux control", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kaibioinfo/ComfyUI_AdvancedRefluxControl", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "adriflex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:08.057086Z", + "description": "Nodes:Blender viewport color, Blender Viewport depth", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI_Blender_Texdiff", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Blender_Texdiff", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/adriflex/ComfyUI_Blender_Texdiff", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-09T18:14:50.810077Z", + "description": "This is a TeaCache acceleration node for HunYuan Video, supporting the native node workflow. Simply choose the acceleration multiplier you want\u2014currently, three levels are available.", + "downloads": 46124, + "github_stars": 92, + "icon": "", + "id": "teacachehunyuanvideo", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-09T18:14:54.347246Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3b728409-246b-409a-9624-65fd829c5cd7", + "node_id": "teacachehunyuanvideo", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-TeaCacheHunyuanVideo", + "publisher": { + "createdAt": "2025-01-08T11:53:06.103664Z", + "description": "", + "id": "fok", + "logo": "", + "members": [], + "name": "Fok", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/facok/ComfyUI-TeaCacheHunyuanVideo", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-23T11:20:08.286862Z", + "description": "This extension allows users to load styles from a CSV file, supporting Chinese.\n\n\u5728ComfyUI\u4e2d\u52a0\u8f7d\u4e2d\u6dfb\u52a0\u4ee5\u4e0b\u8282\u70b9\u4e4b\u4e00\uff1a\n- `Load Styles CSV` (\u52a0\u8f7d\u98ce\u683cCSV\u6587\u4ef6)\n- `Multi Styles CSV` (\u591a\u98ce\u683c\u5408\u5e76\u8282\u70b9)\n- `Preview Text` (\u9884\u89c8\u6587\u672c\u8282\u70b9)\n", + "downloads": 1367, + "github_stars": 21, + "icon": "", + "id": "comfyui-styles_csv_loader_zh", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-25T08:17:59.907101Z", + "dependencies": [ + "requests>=2.25.0", + "googletrans==4.0.0-rc1", + "deep-translator>=1.9.1" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1b4c9b94-4fde-4ce2-a2b1-2235477c6861", + "node_id": "comfyui-styles_csv_loader_zh", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Styles CSV Loader (ZH)", + "publisher": { + "createdAt": "2025-03-23T10:37:28.760389Z", + "description": "", + "id": "assemly", + "logo": "", + "members": [], + "name": "\u5361\u8010\u57fa\u7684\u53cd\u590d\u624b", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/assemly/comfyui-styles_csv_loader_zh.git", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-29T17:21:46.575578Z", + "description": "Use gemini to describe images, enhance prompts, etc.", + "downloads": 273, + "github_stars": 0, + "icon": "", + "id": "comfy-gemini", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-29T17:21:47.023625Z", + "dependencies": [ + "google-genai", + "numpy", + "requests", + "pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "596424c0-b8bd-40ce-b4f7-be571b75091b", + "node_id": "comfy-gemini", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfy Gemini", + "publisher": { + "createdAt": "2025-04-29T16:35:35.739932Z", + "description": "", + "id": "thom-forke", + "logo": "", + "members": [], + "name": "Thom Forke", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/abdelrahman-habib/comfy-gemini", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-24T18:53:20.615089Z", + "description": "pass up to 8 images and visually place, rotate and scale them to build the perfect composition. group move and group rescale. remember their position and scaling value across generations to easy swap images. use the buffer zone to to park an asset you don't want to use or easily reach transformations controls", + "downloads": 22813, + "github_stars": 493, + "icon": "\ud83d\udc9c", + "id": "comfyui-enricos-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-05T22:54:07.766787Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ea3f05a2-89b2-4a0c-8829-232cbacdf579", + "node_id": "comfyui-enricos-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "3.1.6" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI-enricos-nodes", + "publisher": { + "createdAt": "2024-08-24T18:04:09.080019Z", + "description": "", + "id": "erosdiffusion", + "logo": "", + "members": [], + "name": "ErosDiffusion", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/erosDiffusion/ComfyUI-enricos-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T17:12:57.995792Z", + "description": "An implementation of adaptive guidance for ComfyUI\nSee https://bcv-uniandes.github.io/adaptiveguidance-wp/", + "downloads": 23663, + "github_stars": 59, + "icon": "", + "id": "comfyui-adaptive-guidance", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-03T18:12:52.74563Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "e700c559-33d9-456f-a2ad-eff206aa7db7", + "node_id": "comfyui-adaptive-guidance", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.4.0" + }, + "license": "{\"text\": \"GNU General Public License v3.0\"}", + "name": "ComfyUI Adaptive Guidance", + "publisher": { + "createdAt": "2024-05-23T17:42:14.692322Z", + "description": "", + "id": "asagi4", + "logo": "", + "members": [], + "name": "asagi4", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/asagi4/ComfyUI-Adaptive-Guidance", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ZZXYWQ", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:46.839143Z", + "description": "Nodes: StreamRecorder, VideoFormatConverter, ZZX_PaintsUndo", + "downloads": 0, + "github_stars": 23, + "icon": "", + "id": "ComfyUI-ZZXYWQ", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ZZX Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ZZXYWQ/ComfyUI-ZZXYWQ", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "spacepxl", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:28.834544Z", + "description": "Basic support for StyleGAN2 and StyleGAN3 models.", + "downloads": 0, + "github_stars": 20, + "icon": "", + "id": "ComfyUI-StyleGan", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-StyleGan", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/spacepxl/ComfyUI-StyleGan", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-05T15:06:16.089079Z", + "description": "Upload your generated Images directly to Imgur.", + "downloads": 772, + "github_stars": 0, + "icon": "", + "id": "image-uploader", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-05T15:06:17.575194Z", + "dependencies": [], + "deprecated": true, + "downloadUrl": "", + "id": "6631b299-ab9b-45e9-8029-c31df6658a70", + "node_id": "image-uploader", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "image-uploader", + "publisher": { + "createdAt": "2024-11-05T14:46:21.005049Z", + "description": "", + "id": "blonicx", + "logo": "", + "members": [], + "name": "Blonicx", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-09T00:31:26.199118Z", + "description": "These nodes are for real-time applications of ComfyUI.", + "downloads": 2468, + "github_stars": 59, + "icon": "\u23f1\ufe0f", + "id": "comfyui_realtimenodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-03T17:05:33.454403Z", + "dependencies": [ + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "2830ddde-feae-42b8-822e-3aff35b356e1", + "node_id": "comfyui_realtimenodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.3.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_RealTimeNodes", + "publisher": { + "createdAt": "2024-08-15T13:11:47.128123Z", + "description": "", + "id": "ryanontheinside", + "logo": "", + "members": [], + "name": "ryanontheinside", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ryanontheinside/ComfyUI_RealTimeNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "aimingfail", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:58.915973Z", + "description": "This is a node to convert an image into a CMYK Halftone dot image.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "image2halftone-node-for-comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Image2Halftone Node for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://civitai.com/models/143293/image2halftone-node-for-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "diontimmer", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:15.626232Z", + "description": "Nodes: Pixel Sort, Swap Color Mode, Solid Color, Glitch This, Add Text To Image, Play Sound, Prettify Prompt, Generate Noise, Flatten Colors", + "downloads": 0, + "github_stars": 77, + "icon": "", + "id": "ComfyUI-Vextra-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Vextra-Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/diontimmer/ComfyUI-Vextra-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "MiddleKD", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:56.121393Z", + "description": "ComfyUI's Smart Memory Management efficiently manages RAM, GPU memory, and garbage collection. This feature keeps frequently used models in memory to increase inference speed, and dynamically releases less important models when memory is low to optimize resources. However, not all ComfyUI custom node developers create nodes that are compatible with Smart memory management. This includes several impressive models. Mem-safe-wrapper is a custom node that wraps these model nodes to enable ComfyUI's Smart memory management capabilities.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-mem-safe-wrapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-mem-safe-wrapper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MiddleKD/ComfyUI-mem-safe-wrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "shi3z", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:27.197365Z", + "description": "You can use memeplex and DALL-E thru ComfyUI. You need API keys.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI_Memeplex_DALLE", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Memeplex_DALLE", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shi3z/ComfyUI_Memeplex_DALLE", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "hay86", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:54.906878Z", + "description": "Unofficial implementation of [a/MiniCPM-V](https://github.com/OpenBMB/MiniCPM-V) for ComfyUI", + "downloads": 0, + "github_stars": 39, + "icon": "", + "id": "ComfyUI_MiniCPM-V", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI MiniCPM-V", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hay86/ComfyUI_MiniCPM-V", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "microbote", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:26.890805Z", + "description": "StyledCLIPTextEncode is a node that enables you to build your prompts(both postive and negative) based on the selected style. It provides up-to 77 styles currently and has been tested on SDXL and SD1.5 checkpoints. It's ported from project [a/Style Selector for SDXL 1.0](https://github.com/ahgsql/StyleSelectorXL), which is only availabe on WebUI.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-StyledCLIPTextEncode", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "StyledCLIPTextEncode", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/microbote/ComfyUI-StyledCLIPTextEncode", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Tool Of North america", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:53.213556Z", + "description": "A very simple and easy to use node to automaticaaly create (square) image crops and masks using YoloV8. This can be very useful when using controlnet and ip adapters", + "downloads": 0, + "github_stars": 9, + "icon": "", + "id": "ComfyUI-Yolo-Cropper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Easy automatic (square) image cropper using Yolo", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tooldigital/ComfyUI-Yolo-Cropper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "theAdamColton", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:26.477837Z", + "description": "This is the ComfyUI extension for use with texflow. It provides two new nodes, 'Load Texflow Depth Image' and 'Save Texflow Image'.\nFor more information see [a/the main texflow repo](https://github.com/theAdamColton/texflow/)", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-texflow-extension", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-texflow-extension", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/theAdamColton/ComfyUI-texflow-extension", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chflame163", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:27.464684Z", + "description": "[a/CatVTON](https://github.com/Zheng-Chong/CatVTON) warpper for ComfyUI", + "downloads": 0, + "github_stars": 341, + "icon": "", + "id": "ComfyUI_CatVTON_Wrapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_CatVTON_Wrapper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chflame163/ComfyUI_CatVTON_Wrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chflame163", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:29.611675Z", + "description": "The unofficial implementation of CogView4 project in ComfyUI.", + "downloads": 0, + "github_stars": 53, + "icon": "", + "id": "ComfyUI_CogView4_Wrapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_CogView4_Wrapper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chflame163/ComfyUI_CogView4_Wrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Suzie1", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:44.811137Z", + "description": "Custom nodes for SDXL and SD1.5 including Multi-ControlNet, LoRA, Aspect Ratio, Process Switches, and many more nodes. NOTE: Maintainer is changed to Suzie1 from RockOfFire. [w/Using an outdated version has resulted in reported issues with updates not being applied. Trying to reinstall the software is advised.]", + "downloads": 0, + "github_stars": 931, + "icon": "", + "id": "ComfyUI_Comfyroll_CustomNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyroll Studio", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Suzie1/ComfyUI_Comfyroll_CustomNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "leeguandong", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:10.866108Z", + "description": "ComfyUI for [a/CrossImageAttention](https://github.com/garibida/cross-image-attention)", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI_CrossImageAttention", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI nodes to use CrossImageAttention", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/leeguandong/ComfyUI_CrossImageAttention", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-17T04:47:50.322802Z", + "description": "Improved AnimateDiff integration for ComfyUI.", + "downloads": 167465, + "github_stars": 3204, + "icon": "", + "id": "comfyui-animatediff-evolved", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-09T21:22:34.175352Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "49b314f3-c945-444b-be51-8fd38b8847c8", + "node_id": "comfyui-animatediff-evolved", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.5.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-AnimateDiff-Evolved", + "publisher": { + "createdAt": "2024-05-17T04:30:09.087992Z", + "description": "", + "id": "kosinkadink", + "logo": "", + "members": [], + "name": "Kosinkadink", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Kosinkadink/ComfyUI-AnimateDiff-Evolved", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Vaibhavs10", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:37.371106Z", + "description": "Run DDUF in ComfyUI - powered by Diffusers.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI-DDUF", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-DDUF", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Vaibhavs10/ComfyUI-DDUF", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "MinusZoneAI", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:09.871997Z", + "description": "A stylized node with simple operation. The effect is achieved by I2I and lora. The clay style is currently implemented.Comes with watermark function.", + "downloads": 0, + "github_stars": 18, + "icon": "", + "id": "ComfyUI-StylizePhoto-MZ", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-StylizePhoto-MZ", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MinusZoneAI/ComfyUI-StylizePhoto-MZ", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "leeguandong", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:14.862427Z", + "description": "ComfyUI nodes to use CompareModelWeights", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI_CompareModelWeights", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_CompareModelWeights", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/leeguandong/ComfyUI_CompareModelWeights", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "SshunWang", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:49.574656Z", + "description": "Support both CosyVoice1.0 and CosyVoice2.0. Referenced [a/CosyVoice-ComfyUI](https://github.com/AIFSH/CosyVoice-ComfyUI), the following modifications have been made: Add support for CosyVoice2.0, Add whether to use stream processing options, Use speed control by CosyVoice, Add model path check to avoid duplicate downloads, Provide two ways of use", + "downloads": 0, + "github_stars": 14, + "icon": "", + "id": "ComfyUI_CosyVoice", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI for CosyVoice", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SshunWang/ComfyUI_CosyVoice", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Daniel Lewis", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:40.86144Z", + "description": "Text To Speech (TTS) for ComfyUI", + "downloads": 0, + "github_stars": 28, + "icon": "", + "id": "ComfyUI-TTS", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-TTS", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/daniel-lewis-ab/ComfyUI-TTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "city96", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:22.398013Z", + "description": "Testbed for [a/DiT(Scalable Diffusion Models with Transformers)](https://github.com/facebookresearch/DiT). [w/None of this code is stable, expect breaking changes if for some reason you want to use this.]", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI_DiT", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_DiT [WIP]", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/city96/ComfyUI_DiT", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Eugene (JEONG-JIWOO)", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:25.607228Z", + "description": "A collection of utility nodes using Dictionary designed to optimize and manage workflows in ComfyUI.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI_Eugene_Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Eugene_Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/JEONG-JIWOO/ComfyUI_Eugene_Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-08T21:36:57.958635Z", + "description": "Currently supports LoRA training, and untested full finetune with code from kohya's scripts: [a/https://github.com/kohya-ss/sd-scripts](https://github.com/kohya-ss/sd-scripts)", + "downloads": 45389, + "github_stars": 956, + "icon": "", + "id": "comfyui-fluxtrainer", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-19T15:58:01.409952Z", + "dependencies": [ + "accelerate>=0.33.0", + "numpy<=1.26.4", + "transformers>=4.44.0", + "diffusers>=0.25.0", + "ftfy>=6.1.1", + "opencv-python>=4.7.0.68", + "einops>=0.7.0", + "bitsandbytes>=0.43.3", + "prodigyopt>=1.0", + "lion-pytorch>=0.0.6", + "safetensors>=0.4.2", + "altair>=4.2.2", + "toml>=0.10.2", + "voluptuous>=0.13.1", + "huggingface-hub>=0.24.5", + "# for Image utils", + "imagesize>=1.4.1", + "rich>=13.7.0", + "came_pytorch", + "matplotlib", + "# for T5XXL tokenizer (SD3/FLUX)", + "sentencepiece>=0.2.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "81e4ba6c-d3f5-43d0-86e6-e7f3c2959355", + "node_id": "comfyui-fluxtrainer", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-FluxTrainer", + "publisher": { + "createdAt": "2024-06-09T11:11:54.62154Z", + "description": "", + "id": "kijai", + "logo": "", + "members": [], + "name": "Kijai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-FluxTrainer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "fssorc", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:19.927429Z", + "description": "Perform a Fast Fourier Transform on the image, and then users can freely select the filtering range to filter the image. The main function is to remove the grid patterns on the image, and it can also perform high-pass filtering and low-pass filtering. The detailed workflow is shown in the figure below. The PNG file contains the ComfyUI workflow.The working principle is similar to the FFT filter in Photoshop.", + "downloads": 0, + "github_stars": 13, + "icon": "", + "id": "ComfyUI_FFT", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_FFT", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fssorc/ComfyUI_FFT", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Fictiverse", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:49.308779Z", + "description": "Nodes:Color correction.", + "downloads": 0, + "github_stars": 14, + "icon": "", + "id": "ComfyUI_Fictiverse", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Fictiverse Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Fictiverse/ComfyUI_Fictiverse", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "humgate", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:46.345028Z", + "description": "Simple JS application based on ComfyUI which takes prompt and style picture from user and runs hardcoded workflow inference returning generated image to user.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "simplecomfy", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "simplecomfy", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/humgate/simplecomfy", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-21T21:50:05.474999Z", + "description": "ComfyUI native implementation of [a/IC-Light](https://github.com/lllyasviel/IC-Light).", + "downloads": 28473, + "github_stars": 622, + "icon": "", + "id": "comfyui-ic-light-native", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-28T01:17:17.040446Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "81af0b20-3a9d-4ebc-9660-61e9d5fdb743", + "node_id": "comfyui-ic-light-native", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-IC-Light-Native", + "publisher": { + "createdAt": "2024-05-16T22:06:01.581472Z", + "description": "", + "id": "huchenlei", + "logo": "", + "members": [], + "name": "huchenlei", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/huchenlei/ComfyUI-IC-Light-Native", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "leeguandong", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:15.629398Z", + "description": "ComfyUI nodes to use FluxCustomId\nOriginal repo: [a/https://github.com/damo-cv/FLUX-customID](https://github.com/damo-cv/FLUX-customID)", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "ComfyUI_FluxCustomId", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_FluxCustomId", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/leeguandong/ComfyUI_FluxCustomId", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "checkbins", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:10.996422Z", + "description": "These nodes allow you to make Checkbin comparisons.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "checkbin-comfy", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "checkbin-comfy", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/checkbins/checkbin-comfy", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-12T00:55:46.848857Z", + "description": "aaaa", + "downloads": 883, + "github_stars": 0, + "icon": "", + "id": "ultimate-openpose-editor", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-12T18:04:09.138056Z", + "dependencies": [ + "torch", + "polygraphy", + "numpy", + "opencv-python", + "matplotlib" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c5d93175-9865-45ce-b8ff-ffe93817b257", + "node_id": "ultimate-openpose-editor", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.5" + }, + "license": "", + "name": "aaaa", + "publisher": { + "createdAt": "2025-01-11T22:15:39.850821Z", + "description": "", + "id": "west-neighbor", + "logo": "", + "members": [], + "name": "westNeighbor", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-24T20:02:41.778901Z", + "description": "Tired of forgetting and misspelling often weird names of embeddings you use? Or perhaps you use only one, cause you forgot you have tens of them installed?", + "downloads": 11629, + "github_stars": 45, + "icon": "", + "id": "comfyui-embedding_picker", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-24T20:02:42.053052Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "e8d43859-dc41-4202-b7eb-d7dc423bf1b6", + "node_id": "comfyui-embedding_picker", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Embedding Picker", + "publisher": { + "createdAt": "2024-05-24T18:16:39.923677Z", + "description": "", + "id": "tropfchen", + "logo": "", + "members": [], + "name": "Tropfchen", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Tropfchen/ComfyUI-Embedding_Picker", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-14T18:35:33.370859Z", + "description": "These are custom nodes for ComfyUI native implementation of BrushNet (inpaint), PowerPaint (inpaint, object removal) and HiDiffusion (higher resolution for SD15 and SDXL)", + "downloads": 62480, + "github_stars": 896, + "icon": "", + "id": "comfyui-brushnet", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-07T10:04:49.253473Z", + "dependencies": [ + "diffusers>=0.27.0", + "accelerate>=0.29.0", + "peft>=0.7.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "82428ae6-f1f4-4d9f-af64-d17b260dae2d", + "node_id": "comfyui-brushnet", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"text\": \"Apache License 2.0\"}", + "name": "ComfyUI-BrushNet", + "publisher": { + "createdAt": "2024-06-14T18:14:54.044528Z", + "description": "", + "id": "nullquant", + "logo": "", + "members": [], + "name": "nullquant", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nullquant/ComfyUI-BrushNet", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-20T11:55:47.277024Z", + "description": "Customizable xyPlot, various pipe nodes, fullscreen image viewer based on node history, dynamic widgets, interface customization, and more.", + "downloads": 139000, + "github_stars": 532, + "icon": "images/icon.jpg", + "id": "comfyui_tinyterranodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-05T17:58:08.920365Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "9e70710d-87c5-4bb8-a520-c9de3659c800", + "node_id": "comfyui_tinyterranodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.7" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "tinyterraNodes", + "publisher": { + "createdAt": "2024-05-20T07:52:46.16047Z", + "description": "", + "id": "tinyterra", + "logo": "", + "members": [], + "name": "tinyterra", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TinyTerra/ComfyUI_tinyterraNodes", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "natto-maki", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:10.458033Z", + "description": "Nodes:OpenAI DALLe3, OpenAI Translate to English, String Function, Seed Generator", + "downloads": 0, + "github_stars": 31, + "icon": "", + "id": "ComfyUI-NegiTools", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-NegiTools", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/natto-maki/ComfyUI-NegiTools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "solution9th", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:19.539706Z", + "description": "NODES: Mobile SAM Model Loader, Mobile SAM Detector, Mobile SAM Predictor", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "Comfyui_mobilesam", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui_mobilesam", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/solution9th/Comfyui_mobilesam", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "lrzjason", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:14.398703Z", + "description": "NODES: SDXLMixSampler, LatentByRatio", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUIJasonNode", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUIJasonNode", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lrzjason/ComfyUIJasonNode", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "githubYiheng", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:43.456364Z", + "description": "GetFileNameFromURL is a ComfyUI custom node that extracts the filename from a URL. It can handle various URLs and is capable of handling redirects.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI_GetFileNameFromURL", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_GetFileNameFromURL", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/githubYiheng/ComfyUI_GetFileNameFromURL", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "aimerib", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:05.117635Z", + "description": "A comfyui node that provides save image with higher bit depth.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI_HigherBitDepthSaveImage", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-HigherBitDepthSaveImage", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/aimerib/ComfyUI_HigherBitDepthSaveImage", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "vivax3794", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:11.389824Z", + "description": "Nodes:Inspect, Any String, Model From URL", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-Vivax-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Vivax-Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/vivax3794/ComfyUI-Vivax-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chesnokovivan", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:39.325526Z", + "description": "ComfyUI: Novakid. A node.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-Novakid", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Novakid", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chesnokovivan/ComfyUI-Novakid", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "marcoc2", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:06.205555Z", + "description": "This is a custom node aiming to run CogView4 on diffusers while there is no official implementation on ComfyUI.\nNOTE: You will need a updated version of diffusers and I don't know if updating it my break other stuff, so I advise you to make in a new instance of ComfyUI", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI_CogView4-6B_diffusers", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Cog", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/marcoc2/ComfyUI_CogView4-6B_diffusers", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jnxmx", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:16.877535Z", + "description": "The ComfyUI HuggingFace Downloader is a custom node extension for ComfyUI, designed to streamline the process of downloading models, checkpoints, and other resources from the Hugging Face Hub directly into your models directory. This tool simplifies workflow integration by providing a seamless interface to select and download required resources.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI_HuggingFace_Downloader", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_HuggingFace_Downloader", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jnxmx/ComfyUI_HuggingFace_Downloader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smthemex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:34.551418Z", + "description": "You can InstantIR to Fix blurry photos in ComfyUI \uff0c[a/InstantIR](https://github.com/instantX-research/InstantIR):Blind Image Restoration with Instant Generative Reference", + "downloads": 0, + "github_stars": 238, + "icon": "", + "id": "ComfyUI_InstantIR_Wrapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_InstantIR_Wrapper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_InstantIR_Wrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yuvraj108c", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:22.628754Z", + "description": "This project is an unofficial ComfyUI implementation of [a/InvSR](https://github.com/zsyOAOA/InvSR) (Arbitrary-steps Image Super-resolution via Diffusion Inversion)", + "downloads": 0, + "github_stars": 220, + "icon": "", + "id": "ComfyUI_InvSR", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI InvSR", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yuvraj108c/ComfyUI_InvSR", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-19T12:33:25.125852Z", + "description": "Add ASS/SSA subtitle to video using ffmpeg.", + "downloads": 178, + "github_stars": 1, + "icon": "\ud83c\udfac", + "id": "ComfyUI_ASSSSA", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-02T13:29:08.139669Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1b275105-2444-42cd-9a5a-f393dd276626", + "node_id": "ComfyUI_ASSSSA", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.1.1" + }, + "license": "{\"text\": \"MIT license\"}", + "name": "ComfyUI-ASSSSA", + "publisher": { + "createdAt": "2025-06-19T11:36:27.595373Z", + "description": "", + "id": "highdoping", + "logo": "", + "members": [], + "name": "HighDoping", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/HighDoping/ComfyUI_ASSSSA", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-28T02:42:55.877292Z", + "description": "ComfyUI nodes for Janus-Pro, a unified multimodal understanding and generation framework.", + "downloads": 45947, + "github_stars": 614, + "icon": "", + "id": "janus-pro", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-28T02:42:56.258833Z", + "dependencies": [ + "git+https://github.com/deepseek-ai/Janus.git" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b4de79d1-592e-488a-975e-582c21c5f92c", + "node_id": "janus-pro", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Janus-Pro", + "publisher": { + "createdAt": "2024-09-29T10:55:36.930737Z", + "description": "", + "id": "cychenyue", + "logo": "", + "members": [], + "name": "cychenyue", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/CY-CHENYUE/ComfyUI-Janus-Pro", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "aburahamu", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:51.589988Z", + "description": "This custom node detects body parts (currently only hands) from the received image and outputs the image if the skeleton can be estimated.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-IsNiceParts", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-IsNiceParts", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/aburahamu/ComfyUI-IsNiceParts", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kinglord", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:05:58.985504Z", + "description": "A custom front-end UX node that creates a visual library of all your LoRAs. It's designed to be fast, slim, and make using LoRAs in Comfy a lot more fun for visual users - especially if you have lots of LoRAs. Should make people used to A1111 and other UI heavy platforms feel more at home. If you've got lots of LoRAs, this sidebar could be your new best friend!", + "downloads": 0, + "github_stars": 85, + "icon": "", + "id": "ComfyUI_LoRA_Sidebar", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_LoRA_Sidebar", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Kinglord/ComfyUI_LoRA_Sidebar", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "leeguandong", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:07.430515Z", + "description": "ComfyUI for [a/M3Net](https://github.com/I2-Multimedia-Lab/M3Net)", + "downloads": 0, + "github_stars": 12, + "icon": "", + "id": "ComfyUI_M3Net", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_M3Net", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/leeguandong/ComfyUI_M3Net", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "hben35096", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:48.773048Z", + "description": "NODES:Batch Image Blend, Mask Levels Adjust, Get Batch Count, Load Lora Name, Load Sampler Name, Load Scheduler Name, Load Ckpt Name....\nThe nodes in this repository are only used as secondary nodes.", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "ComfyUI-ReplenishNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ReplenishNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hben35096/ComfyUI-ReplenishNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smthemex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:38.540749Z", + "description": "ComfyUI_MangaNinjia is a ComfyUI node of MangaNinja which is a Line Art Colorization with Precise Reference Following method.", + "downloads": 0, + "github_stars": 55, + "icon": "", + "id": "ComfyUI_MangaNinjia", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_MangaNinjia", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_MangaNinjia", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-11T10:06:20.300651Z", + "description": "Some patches for Flux|HunYuanVideo|LTXVideo|MochiVideo|WanVideo etc, support TeaCache, PuLID, First Block Cache.", + "downloads": 87947, + "github_stars": 110, + "icon": "", + "id": "comfyui_patches_ll", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-10T06:32:25.650423Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ec763d05-990d-4f75-ad5b-458e5d5be04c", + "node_id": "comfyui_patches_ll", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Patches_ll", + "publisher": { + "createdAt": "2024-08-02T08:30:49.205493Z", + "description": "", + "id": "lldacing", + "logo": "", + "members": [], + "name": "lldacing", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lldacing/ComfyUI_Patches_ll", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-09T10:11:53.41604Z", + "description": "Library for common image processing operations on PyTorch tensor batches.", + "downloads": 882, + "github_stars": 4, + "icon": "", + "id": "gtfu", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-09T10:11:56.999916Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "f6c405b6-21b6-49d0-a21b-be7d1af0babe", + "node_id": "gtfu", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-GTF-Utilities", + "publisher": { + "createdAt": "2024-08-22T06:32:37.547394Z", + "description": "", + "id": "wmpmiles", + "logo": "", + "members": [], + "name": "William Miles", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wmpmiles/ComfyUI-GTF-Utilities.git", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "alsritter", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:00.290542Z", + "description": "Nodes:Asymmetric_Tiling_KSampler. ", + "downloads": 0, + "github_stars": 17, + "icon": "", + "id": "asymmetric-tiling-comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "asymmetric-tiling-comfyui", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alsritter/asymmetric-tiling-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "bbtaivi", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:44.568401Z", + "description": "Used to convert workflow node settings into AIV mini-program parameters.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-Aiv-Param", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "AIV ComfyUI Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bbtaivi/ComfyUI-Aiv-Param", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ShmuelRonen", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:08.2875Z", + "description": "A ComfyUI custom node that integrates Google's Gemini Flash 2.0 Experimental model, enabling multimodal analysis of text, images, video frames, and audio directly within ComfyUI workflows.", + "downloads": 0, + "github_stars": 307, + "icon": "", + "id": "ComfyUI-Gemini_Flash_2.0_Exp", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Gemini_Flash_2.0_Exp", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShmuelRonen/ComfyUI-Gemini_Flash_2.0_Exp", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "IuvenisSapiens", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:20.613782Z", + "description": "This is an implementation of [a/MiniCPM-V-2_6-int4](https://github.com/OpenBMB/MiniCPM-V) by [a/ComfyUI](https://github.com/comfyanonymous/ComfyUI), including support for text-based queries, video queries, single-image queries, and multi-image queries to generate captions or responses.", + "downloads": 0, + "github_stars": 187, + "icon": "", + "id": "ComfyUI_MiniCPM-V-2_6-int4", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_MiniCPM-V-2_6-int4", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/IuvenisSapiens/ComfyUI_MiniCPM-V-2_6-int4", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-19T08:24:01.618439Z", + "description": "(SFW-Friendly) The Fast and Simple Face Swap Extension Node for ComfyUI, based on ReActor SD-WebUI Face Swap Extension", + "downloads": 267783, + "github_stars": 674, + "icon": "", + "id": "comfyui-reactor", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-09T13:51:31.945575Z", + "dependencies": [ + "insightface==0.7.3", + "onnx>=1.14.0", + "opencv-python>=4.7.0.72", + "numpy==1.26.4", + "segment_anything", + "albumentations>=1.4.16", + "ultralytics" + ], + "deprecated": false, + "downloadUrl": "", + "id": "ca6edc7d-2c44-4983-8fa1-c2c6945626fa", + "node_id": "comfyui-reactor", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.6.1-b3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ReActor", + "publisher": { + "createdAt": "2024-05-30T09:36:45.831776Z", + "description": "", + "id": "gourieff", + "logo": "", + "members": [], + "name": "\u0415\u0432\u0433\u0435\u043d\u0438\u0439 \u0413\u0443\u0440\u044c\u0435\u0432 | Eugene Gourieff | \u53e4\u4ec1 ", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Gourieff/ComfyUI-ReActor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "dasilva333", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:38.991937Z", + "description": "This project generates an image from Markdown text using imgkit and wkhtmltoimage. It automatically scales the text to fit within the specified image dimensions.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI_MarkdownImage", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_MarkdownImage", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dasilva333/ComfyUI_MarkdownImage", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "SoftMeng", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:44.099165Z", + "description": "Nodes: ComfyUI_Mexx_Poster", + "downloads": 0, + "github_stars": 26, + "icon": "", + "id": "ComfyUI_Mexx_Poster", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Mexx_Poster", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SoftMeng/ComfyUI_Mexx_Poster", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-26T09:14:39.143629Z", + "description": "ComfyUI wrapper nodes for WanVideo", + "downloads": 239854, + "github_stars": 3350, + "icon": "", + "id": "ComfyUI-WanVideoWrapper", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-13T15:42:40.639378Z", + "dependencies": [ + "accelerate >= 1.2.1", + "diffusers >= 0.33.0", + "peft >= 0.15.0", + "ftfy", + "gguf >= 0.14.0", + "pyloudnorm" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e4e21820-669b-4d40-962a-b2c340651670", + "node_id": "ComfyUI-WanVideoWrapper", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-WanVideoWrapper", + "publisher": { + "createdAt": "2024-06-09T11:11:54.62154Z", + "description": "", + "id": "kijai", + "logo": "", + "members": [], + "name": "Kijai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-WanVideoWrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "bombax-xiaoice", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:19.337468Z", + "description": "ComfyUI supports over lihxxx/DisPose, which generates a new video with a reference video as poses and a reference image as everything else.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-DisPose", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-DisPose", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bombax-xiaoice/ComfyUI-DisPose", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-10T16:36:31.206809Z", + "description": "ComfyUI workflow customization by Jake.", + "downloads": 193406, + "github_stars": 96, + "icon": "", + "id": "comfyui-jakeupgrade", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-22T02:43:04.076123Z", + "dependencies": [ + "opencv-python", + "piexif", + "torch", + "numpy", + "numexpr", + "simpleeval" + ], + "deprecated": false, + "downloadUrl": "", + "id": "83ddc0eb-e261-4541-8de8-a33483ac6239", + "node_id": "comfyui-jakeupgrade", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.9.19" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-JakeUpgrade", + "publisher": { + "createdAt": "2024-06-22T15:38:48.450487Z", + "description": "", + "id": "jakechaikefu", + "logo": "", + "members": [], + "name": "JK", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jakechai/ComfyUI-JakeUpgrade", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "ShmuelRonen", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:07.521771Z", + "description": "A custom node for ComfyUI that enables coherent video generation while maintaining efficient memory usage, specifically optimized for heavy models like Flux.", + "downloads": 0, + "github_stars": 17, + "icon": "", + "id": "ComfyUI-CohernetVideoSampler", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Coherent Video Sampler Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShmuelRonen/ComfyUI-CohernetVideoSampler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "JaredTherriault", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:58.63242Z", + "description": "python and web UX improvements for ComfyUI: Lora/Embedding picker, web extension manager (enable/disable any extension without disabling python nodes), control any parameter with text prompts, image and video viewer, metadata viewer, token counter, comments in prompts, font control, and more! \n[w/'ImageFeed.js' from the custom scripts of pythongosssss is not compatible with this suite's ImageDrawer feature. Additionally, 'DynamicPrompts.js' and 'EditAttention.js' from the core, along with 'favicon.js' from the custom scripts of pythongosssss, are incompatible with advanced features of the suite. Please use the JNodes Extension Management setting in Settings > JNodes > Extension Management to disable these extensions by unchecking them to use the full functionality of the suite.]", + "downloads": 0, + "github_stars": 70, + "icon": "", + "id": "ComfyUI-JNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-JNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/JaredTherriault/ComfyUI-JNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "bombax-xiaoice", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:15.863665Z", + "description": "ComfyUI supports over [a/Boese0601/MagicDance](https://github.com/Boese0601/MagicDance).", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-MagicDance", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-MagicDance", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bombax-xiaoice/ComfyUI-MagicDance", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ForeignGods", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:35.673202Z", + "description": "Font Animation, Speech Recognition, Caption Generator, TTS", + "downloads": 0, + "github_stars": 235, + "icon": "", + "id": "ComfyUI-Mana-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Mana-Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ForeignGods/ComfyUI-Mana-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:25.278613Z", + "description": "Nodes: Download the weights of MotionCtrl-SVD [a/motionctrl_svd.ckpt](https://huggingface.co/TencentARC/MotionCtrl/blob/main/motionctrl_svd.ckpt) and put it to ComfyUI/models/checkpoints", + "downloads": 0, + "github_stars": 86, + "icon": "", + "id": "ComfyUI-MotionCtrl-SVD", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-MotionCtrl-SVD", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-MotionCtrl-SVD", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:42.483068Z", + "description": "the custom code for [a/UVR5](https://github.com/Anjok07/ultimatevocalremovergui) to separate vocals and background music", + "downloads": 0, + "github_stars": 97, + "icon": "", + "id": "ComfyUI-UVR5", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-UVR5", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/ComfyUI-UVR5", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "807502278", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:56.798841Z", + "description": "Suitable for Windows - MaskGCT ComfyUI Node Wrapping", + "downloads": 0, + "github_stars": 27, + "icon": "", + "id": "ComfyUI_MaskGCT", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_MaskGCT", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/807502278/ComfyUI_MaskGCT", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "GraftingRayman", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:02.008301Z", + "description": "This is a PuLID node that has been extended with new features.", + "downloads": 0, + "github_stars": 56, + "icon": "", + "id": "ComfyUI-PuLID-Flux-GR", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-PuLID-Flux-GR", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/GraftingRayman/ComfyUI-PuLID-Flux-GR", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "RenderRift", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:40.760167Z", + "description": "Nodes:RR_Date_Folder_Format, RR_Image_Metadata_Overlay, RR_VideoPathMetaExtraction, RR_DisplayMetaOptions. This extension provides nodes designed to enhance the Animatediff workflow.", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "ComfyUI-RenderRiftNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-RenderRiftNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/RenderRift/ComfyUI-RenderRiftNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "InceptionsAI", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:13.118485Z", + "description": "Helper nodes for [a/RunComfy](https://www.runcomfy.com)", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-RunComfy-Helper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-RunComfy-Helper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/InceptionsAI/ComfyUI-RunComfy-Helper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "justin-vt", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:20.573652Z", + "description": "A ComfyUI node that applies painterly/brush-stroke effects to images, using either ImageMagick (Wand) or G'MIC (gmic-py) under the hood.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-brushstrokes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-brushstrokes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/justin-vt/ComfyUI-brushstrokes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "meap158", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:01.002981Z", + "description": "Pause image generation when GPU temperature exceeds threshold.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-GPU-temperature-protection", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "GPU temperature protection", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/meap158/ComfyUI-GPU-temperature-protection", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Zuellni", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:29.124254Z", + "description": "Image scoring nodes for ComfyUI using PickScore with a batch of images to predict which ones fit a given prompt the best.", + "downloads": 0, + "github_stars": 38, + "icon": "", + "id": "ComfyUI-PickScore-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI PickScore Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Zuellni/ComfyUI-PickScore-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Tomudo", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:10:52.361183Z", + "description": "This is a custom node to convert image to ascii art string.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-ascii-art", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ascii-art", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tomudo/ComfyUI-ascii-art", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "dzqdzq", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:43.473061Z", + "description": "Automatic cropping of transparent areas to prevent images from being too large, while also supporting resizing to prevent image dimensions from being too large.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-crop-alpha", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-crop-alpha", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dzqdzq/ComfyUI-crop-alpha", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "nat-chan", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:26.97304Z", + "description": "workflow.json -> workflow_api.json", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-graphToPrompt", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-graphToPrompt", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nat-chan/ComfyUI-graphToPrompt", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-19T09:00:15.890749Z", + "description": "ComfyUI nodes to use [a/DepthAnythingV2](https://depth-anything-v2.github.io/)\nNOTE:Models autodownload to ComfyUI/models/depthanything from [a/https://huggingface.co/Kijai/DepthAnythingV2-safetensors/tree/main](https://huggingface.co/Kijai/DepthAnythingV2-safetensors/tree/main)", + "downloads": 95322, + "github_stars": 337, + "icon": "", + "id": "comfyui-depthanythingv2", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-28T20:47:05.463478Z", + "dependencies": [ + "huggingface_hub", + "accelerate" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6b5da3c8-fd23-4f25-864a-fdd6b44e0248", + "node_id": "comfyui-depthanythingv2", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "LICENSE", + "name": "ComfyUI-DepthAnythingV2", + "publisher": { + "createdAt": "2024-06-09T11:11:54.62154Z", + "description": "", + "id": "kijai", + "logo": "", + "members": [], + "name": "Kijai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-DepthAnythingV2", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Doctor Diffusion", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:14.259799Z", + "description": "Audio to midi functionality within ComfyUI", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-basic-pitch", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-basic-pitch", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DoctorDiffusion/ComfyUI-basic-pitch", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-18T21:48:46.80745Z", + "description": "Automatically tests the impact of each phrase in a prompt by generating images with one phrase omitted at a time.", + "downloads": 181, + "github_stars": 1, + "icon": "", + "id": "comfyui_prompttester", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-18T21:48:47.391224Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "da3d9f9e-d9a0-47d8-abfa-c43eeb39733c", + "node_id": "comfyui_prompttester", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-PromptTester", + "publisher": { + "createdAt": "2025-06-18T21:08:40.029764Z", + "description": "", + "id": "drphero", + "logo": "", + "members": [], + "name": "drphero", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/drphero/comfyui_prompttester", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "smthemex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:30.065275Z", + "description": "using InstantX's CSGO in comfyUI for style", + "downloads": 0, + "github_stars": 16, + "icon": "", + "id": "ComfyUI_CSGO_Wrapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_CSGO_Wrapper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_CSGO_Wrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ShmuelRonen", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:04.407718Z", + "description": "A ComfyUI custom node for Black Forest Labs' FLUX 1.1 [pro] API, supporting both regular and Ultra modes with optional Raw mode.", + "downloads": 0, + "github_stars": 58, + "icon": "", + "id": "ComfyUI_Flux_1.1_RAW_API", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Flux 1.1 Ultra & Raw Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShmuelRonen/ComfyUI_Flux_1.1_RAW_API", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "web3nomad", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:27.67929Z", + "description": "Nodes: InvisibleWatermarkEncode", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI_Invisible_Watermark", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Invisible Watermark", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/web3nomad/ComfyUI_Invisible_Watermark", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "JPS", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:47.931493Z", + "description": "Nodes: Various nodes to handle SDXL Resolutions, SDXL Basic Settings, IP Adapter Settings, Revision Settings, SDXL Prompt Styler, Crop Image to Square, Crop Image to Target Size, Get Date-Time String, Resolution Multiply, Largest Integer, 5-to-1 Switches for Integer, Images, Latents, Conditioning, Model, VAE, ControlNet", + "downloads": 0, + "github_stars": 77, + "icon": "", + "id": "ComfyUI_JPS-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "JPS Custom Nodes for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/JPS-GER/ComfyUI_JPS-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AbyssBadger0", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:34.921608Z", + "description": "Nodes:KolorsAwesomePrompts", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI_Kolors_awesome_prompts", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Kolors Awesome Prompts", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AbyssBadger0/ComfyUI_Kolors_awesome_prompts", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "muxueChen", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:42.153267Z", + "description": "ComfyUI_NTCosyVoice is a plugin of ComfyUI for Cosysvoice2", + "downloads": 0, + "github_stars": 149, + "icon": "", + "id": "ComfyUI_NTCosyVoice", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "CosyVoice2 for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/muxueChen/ComfyUI_NTCosyVoice", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ExponentialML", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:16.501165Z", + "description": "DynamiCrafter that works natively with ComfyUI's nodes, optimizations, ControlNet, and more.", + "downloads": 0, + "github_stars": 112, + "icon": "", + "id": "ComfyUI_Native_DynamiCrafter", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI - Native DynamiCrafter", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ExponentialML/ComfyUI_Native_DynamiCrafter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "asutermo", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:39.405026Z", + "description": "Try Off for ComfyUI using Flux and CatVTON.", + "downloads": 0, + "github_stars": 43, + "icon": "", + "id": "ComfyUI-Flux-TryOff", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Flux-TryOff", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/asutermo/ComfyUI-Flux-TryOff", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "CY-CHENYUE", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:28.581456Z", + "description": "ComfyUI-Free-GPU provides a node for releasing RAM and VRAM in ComfyUI.", + "downloads": 0, + "github_stars": 11, + "icon": "", + "id": "ComfyUI-Free-GPU", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Free-GPU", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/CY-CHENYUE/ComfyUI-Free-GPU", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-11T21:13:46.805384Z", + "description": "Get metadata from image.", + "downloads": 106073, + "github_stars": 7, + "icon": "", + "id": "comfyui-get-meta", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-11T21:13:47.169073Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "9cb23114-35b1-48d4-a52e-34b6aa5e411e", + "node_id": "comfyui-get-meta", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-get-meta", + "publisher": { + "createdAt": "2024-07-03T02:48:16.838562Z", + "description": "", + "id": "shinich39", + "logo": "", + "members": [], + "name": "shinich39", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shinich39/comfyui-get-meta", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "JohanK66", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:18.052652Z", + "description": "This package provides a custom node to ComfyUI to send a message and image by means of a webhook", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-WebhookImage", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI WebhookImage", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/JohanK66/ComfyUI-WebhookImage", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "sergekatzmann", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:19.489931Z", + "description": "Nodes:Image Square Adapter Node, Image Resize And Crop Node", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI_Nimbus-Pack", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Nimbus-Pack", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sergekatzmann/ComfyUI_Nimbus-Pack", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "BlenderNeko", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:03.358284Z", + "description": "This extension contains 6 nodes for ComfyUI that allows for more control and flexibility over the noise.", + "downloads": 0, + "github_stars": 300, + "icon": "", + "id": "ComfyUI_Noise", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Noise", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BlenderNeko/ComfyUI_Noise", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "noxinias", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:44.906885Z", + "description": "Nodes: Noxin Complete Chime, Noxin Scaled Resolutions, Load from Noxin Prompt Library, Save to Noxin Prompt Library", + "downloads": 0, + "github_stars": 11, + "icon": "", + "id": "ComfyUI_NoxinNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_NoxinNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/noxinias/ComfyUI_NoxinNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kohya-ss", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:06.279063Z", + "description": "Nodes: LLLiteLoader", + "downloads": 0, + "github_stars": 195, + "icon": "", + "id": "ControlNet-LLLite-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ControlNet-LLLite-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kohya-ss/ControlNet-LLLite-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "bombax-xiaoice", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:16.916663Z", + "description": "ComfyUI supports over [a/rhymes-ai/Allegro](https://huggingface.co/rhymes-ai/Allegro), which uses text prompt to generate short video in relatively high quality, especially comparing to other open source solutions available for now.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-Allegro", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Allegro", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bombax-xiaoice/ComfyUI-Allegro", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "GraftingRayman", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:01.301412Z", + "description": "These nodes allow your YouTube LiveStream viewers to create on your local ComfyUI, you can make this a members only feature with a screen behind you displaying your members creations", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI_QueueTube", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI QueueTube", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/GraftingRayman/ComfyUI_QueueTube", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smthemex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:33.03371Z", + "description": "Try [a/OmniParser](https://github.com/microsoft/OmniParser) in ComfyUI which a simple screen parsing tool towards pure vision based GUI agent.", + "downloads": 0, + "github_stars": 39, + "icon": "", + "id": "ComfyUI_OmniParser", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_OmniParser", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_OmniParser", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smthemex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:43.428239Z", + "description": "PhotoDoodle: Learning Artistic Image Editing from Few-Shot Pairwise Data\uff0cyou can use it in comfyUI", + "downloads": 0, + "github_stars": 97, + "icon": "", + "id": "ComfyUI_PhotoDoodle", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_PhotoDoodle", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_PhotoDoodle", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "daniabib", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:16.931786Z", + "description": "ComfyUI custom node implementation of [a/ProPainter](https://github.com/sczhou/ProPainter) framework for video inpainting.", + "downloads": 0, + "github_stars": 319, + "icon": "", + "id": "ComfyUI_ProPainter_Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI ProPainter Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/daniabib/ComfyUI_ProPainter_Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "IuvenisSapiens", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:21.638445Z", + "description": "This is an implementation of [a/Qwen2-Audio-7B-Instruct-Int4](https://github.com/QwenLM/Qwen2-Audio) by [a/ComfyUI](https://github.com/comfyanonymous/ComfyUI), including support for text-based queries and audio queries to generate captions or responses.", + "downloads": 0, + "github_stars": 11, + "icon": "", + "id": "ComfyUI_Qwen2-Audio-7B-Instruct-Int4", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Qwen2-Audio-7B-Instruct-Int4", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/IuvenisSapiens/ComfyUI_Qwen2-Audio-7B-Instruct-Int4", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "logtd", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:27.598028Z", + "description": "ComfyUI nodes to use RAVE attention as a temporal attention mechanism.\nThis differs from other implementations in that it does not concatenate the images together, but within the UNet's Self-Attention mechanism performs the RAVE technique. By not altering the images/latents throughout the UNet, this method does not affect other temporal techniques, style mechanisms, or other UNet modifications.\nFor example, it can be combined with AnimateDiff, ModelScope/ZeroScope, or FLATTEN.", + "downloads": 0, + "github_stars": 14, + "icon": "", + "id": "ComfyUI-RAVE_ATTN", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-RAVE Attention", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/logtd/ComfyUI-RAVE_ATTN", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "L.HC", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:37.065034Z", + "description": "Two simple nodes: 1. Get the steps based on the model name, 2. Generate prompts using chatglm.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-SimpleToolsNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "SimpleToolsNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Mcmillian/ComfyUI-SimpleToolsNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "IuvenisSapiens", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:35.625529Z", + "description": "This is an implementation of [a/Qwen2-VL-Instruct](https://github.com/QwenLM/Qwen2-VL) by [a/ComfyUI](https://github.com/comfyanonymous/ComfyUI), which includes, but is not limited to, support for text-based queries, video queries, single-image queries, and multi-image queries to generate captions or responses.", + "downloads": 0, + "github_stars": 101, + "icon": "", + "id": "ComfyUI_Qwen2-VL-Instruct", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Qwen2-VL-Instruct", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/IuvenisSapiens/ComfyUI_Qwen2-VL-Instruct", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "komojini", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:20.260874Z", + "description": "Nodes:XL DreamBooth LoRA, S3 Bucket LoRA", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI_SDXL_DreamBooth_LoRA_CustomNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_SDXL_DreamBooth_LoRA_CustomNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/komojini/ComfyUI_SDXL_DreamBooth_LoRA_CustomNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smthemex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:37.712299Z", + "description": "SVFR is a unified framework for face video restoration that supports tasks such as BFR, Colorization, Inpainting\uff0cyou can use it in ComfyUI", + "downloads": 0, + "github_stars": 93, + "icon": "", + "id": "ComfyUI_SVFR", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_SVFR", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_SVFR", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smthemex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:31.502191Z", + "description": "You can call Using Sapiens to get seg,normal,pose,depth,mask maps. Sapiens From: [a/facebookresearch/sapiens](https://github.com/facebookresearch/sapiens)", + "downloads": 0, + "github_stars": 182, + "icon": "", + "id": "ComfyUI_Sapiens", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Sapiens", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_Sapiens", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ARZUMATA", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:27.476872Z", + "description": "Qwen2 Nodes for ComfyUI.\nI needed to run Qwen2 on ComfyUI to use it in my workflow for batching images and captioning and none of the implementations I found on the web worked the way I wanted.[w/May contain bugs.]", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-ARZUMATA-Qwen2", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Qwen2", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ARZUMATA/ComfyUI-ARZUMATA-Qwen2", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "SeargeDP", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:54.178617Z", + "description": "A prompt-generator or prompt-improvement node for ComfyUI, utilizing the power of a language model to turn a provided text-to-image prompt into a more detailed and improved prompt.", + "downloads": 0, + "github_stars": 109, + "icon": "", + "id": "ComfyUI_Searge_LLM", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Searge-LLM for ComfyUI v1.0", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SeargeDP/ComfyUI_Searge_LLM", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "eastoc", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:25.989637Z", + "description": "Segment and Recognize Anything at Any Granularity.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI_SemanticSAM", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Semantic-SAM", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/eastoc/ComfyUI_SemanticSAM", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "c0ffymachyne", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:27.823388Z", + "description": "Audio processing nodes for comfyui.", + "downloads": 0, + "github_stars": 13, + "icon": "", + "id": "ComfyUI_SignalProcessing", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Signal Processing", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/c0ffymachyne/ComfyUI_SignalProcessing", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smthemex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:39.277033Z", + "description": "Sonic is a method about ' Shifting Focus to Global Audio Perception in Portrait Animation',you can use it in comfyUI.", + "downloads": 0, + "github_stars": 1054, + "icon": "", + "id": "ComfyUI_Sonic", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Sonic", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_Sonic", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Guillaume-Fgt", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:37.950548Z", + "description": "A custom node to create empty latents for Stable Cascade.\nfeatures: width and height incrementation of 64 by default, possibility to lock the aspect ratio, switch width/height at execution", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI_StableCascadeLatentRatio", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_StableCascadeLatentRatio", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Guillaume-Fgt/ComfyUI_StableCascadeLatentRatio", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "CyanAutumn", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:01.516348Z", + "description": "A random prompt node", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUi_Random_Manage_Cyan", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUi Random Manage Cyan", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/CyanAutumn/ComfyUi_Random_Manage_Cyan", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ShmuelRonen", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:09.729111Z", + "description": "Custom nodes for ComfyUI to generate empty latent space compatible with Hunyuan models for both image and video generation.", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "ComfyUI-EmptyHunyuanLatent", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-EmptyHunyuanLatent", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShmuelRonen/ComfyUI-EmptyHunyuanLatent", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Patricio Gonzalez Vivo", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:04.492813Z", + "description": "A collections of nodes to support GLSL shaders inside a workflow.", + "downloads": 0, + "github_stars": 220, + "icon": "", + "id": "comfyui_glslnodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "GLSL Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/patriciogonzalezvivo/comfyui_glslnodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-15T08:03:37.779919Z", + "description": "This extension helps generate images through Illustrious.", + "downloads": 289, + "github_stars": 2, + "icon": "", + "id": "comfyui_illustrious", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-15T08:03:38.230157Z", + "dependencies": [ + "python-dotenv" + ], + "deprecated": false, + "downloadUrl": "", + "id": "cd0a58ab-359b-4734-96ab-8458870560e8", + "node_id": "comfyui_illustrious", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Illustrious", + "publisher": { + "createdAt": "2025-05-15T08:02:05.134022Z", + "description": "", + "id": "onomaai", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/onomaai/ComfyUI_Illustrious", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "SeargeDP", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:53.140661Z", + "description": "Custom nodes for easier use of SDXL in ComfyUI including an img2img workflow that utilizes both the base and refiner checkpoints.", + "downloads": 0, + "github_stars": 852, + "icon": "", + "id": "SeargeSDXL", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "SeargeSDXL", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SeargeDP/SeargeSDXL", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Ryuukeisyou", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:06.038965Z", + "description": "Nodes:ImageLoadFromBase64, ImageLoadByPath, ImageLoadAsMaskByPath, ImageSaveToPath, ImageSaveAsBase64, VHSFileNamesToStrings(IOHelpers).", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "comfyui_io_helpers", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui_io_helpers", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Ryuukeisyou/comfyui_io_helpers", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "blepping", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:25.778913Z", + "description": "Janky implementation of [a/DiffuseHigh](https://github.com/yhyun225/DiffuseHigh/) for ComfyUI. Enables generating at resolutions higher than what the model was trained for without requiring model patches.", + "downloads": 0, + "github_stars": 36, + "icon": "", + "id": "comfyui_jankdiffusehigh", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui_jankdiffusehigh", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/blepping/comfyui_jankdiffusehigh", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "flowtyone", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:06.731552Z", + "description": "This is a custom node that lets you take advantage of Latent Diffusion Super Resolution (LDSR) models inside ComfyUI.", + "downloads": 0, + "github_stars": 246, + "icon": "", + "id": "ComfyUI-Flowty-LDSR", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Flowty-LDSR", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/flowtyone/ComfyUI-Flowty-LDSR", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "MinusZoneAI", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:12.780995Z", + "description": "Nodes:MZ_Flux1PartialLoad_Patch. Tool nodes related to flux1", + "downloads": 0, + "github_stars": 328, + "icon": "", + "id": "ComfyUI-FluxExt-MZ", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-FluxExt-MZ", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MinusZoneAI/ComfyUI-FluxExt-MZ", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "oztrkoguz", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:59.798966Z", + "description": "Nodes:story_sampler_simple, text2, kosmos2_sampler.\nI created a dataset for generating short stories [a/Short-Story](https://huggingface.co/datasets/oztrkoguz/Short-Story) and used it to fine-tune my own model using Phi-3.", + "downloads": 0, + "github_stars": 29, + "icon": "", + "id": "ComfyUI_StoryCreator", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI StoryCreater", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/oztrkoguz/ComfyUI_StoryCreator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:12.59356Z", + "description": "ComfyUI_StreamingT2V", + "downloads": 0, + "github_stars": 37, + "icon": "", + "id": "ComfyUI_StreamingT2V", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_StreamingT2V", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI_StreamingT2V", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smthemex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:36.888495Z", + "description": "You can use TRELLIS in comfyUI\n[a/TRELLIS](https://github.com/microsoft/TRELLIS/tree/main), Structured 3D Latents for Scalable and Versatile 3D Generation", + "downloads": 0, + "github_stars": 170, + "icon": "", + "id": "ComfyUI_TRELLIS", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_TRELLIS", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_TRELLIS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "bilal-arikan", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:50.601952Z", + "description": "With this node you can upload text files to input folder from your local computer.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI_TextAssets", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_TextAssets", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bilal-arikan/ComfyUI_TextAssets", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-13T07:06:27.639462Z", + "description": "Custom nodes for various visual generation and editing tasks using Scepter.", + "downloads": 0, + "github_stars": 530, + "icon": "", + "id": "scepter", + "latest_version": { + "version": "nightly" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "scepter", + "publisher": { + "createdAt": "2025-02-11T05:29:14.372465Z", + "description": "", + "id": "scepter", + "logo": "", + "members": [], + "name": "scepter", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/modelscope/scepter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yuvraj108c", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:19.724607Z", + "description": "This project provides a Tensorrt implementation of Dwpose for ultra fast pose estimation inside ComfyUI", + "downloads": 0, + "github_stars": 34, + "icon": "", + "id": "ComfyUI-Dwpose-Tensorrt", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Dwpose TensorRT", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yuvraj108c/ComfyUI-Dwpose-Tensorrt", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Legorobotdude", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:16.469636Z", + "description": "Helps explore different parameters quickly", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-VariationLab", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-VariationLab", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Legorobotdude/ComfyUI-VariationLab", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yichengup", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:10:46.939179Z", + "description": "About DeepSeek Chat API\nGo here to register and get the api-key [a/https://platform.deepseek.com/](https://platform.deepseek.com/) Then enter api_key in config.json", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "ComfyUI_Yc_JanusPro", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Yc_JanusPro", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yichengup/ComfyUI_Yc_JanusPro", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Trgtuan10", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:46.75261Z", + "description": "NODES:Object Mask.\nNOTE:push [a/yolov8x-seg.pt](https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8x-seg.pt) in models/yolo", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI_YoloSegment_Mask", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_YoloSegment_Mask", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Trgtuan10/ComfyUI_YoloSegment_Mask", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smthemex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:42.673562Z", + "description": "[a/YuE](https://github.com/multimodal-art-projection/YuE) is a groundbreaking series of open-source foundation models designed for music generation, specifically for transforming lyrics into full songs (lyrics2song). you can use it in comfyUI", + "downloads": 0, + "github_stars": 144, + "icon": "", + "id": "ComfyUI_YuE", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_YuE", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_YuE", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "zohac", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:57.746523Z", + "description": "Nodes:ZC DrawShape Node", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI_ZC_DrawShape", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_ZC_DrawShape", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zohac/ComfyUI_ZC_DrawShape", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "time-river", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:01.260223Z", + "description": "The CLIPSeg node generates a binary mask for a given input image and text prompt.\nNOTE:This custom node is a forked custom node with hotfixes applied from the [a/original repository](https://github.com/biegert/ComfyUI-CLIPSeg), which is no longer maintained.", + "downloads": 0, + "github_stars": 26, + "icon": "", + "id": "time-river_ComfyUI-CLIPSeg", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "CLIPSeg", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/time-river/ComfyUI-CLIPSeg", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chibiace", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:20.683523Z", + "description": "Nodes:Loader, Prompts, ImageTool, Wildcards, LoadEmbedding, ConditionText, SaveImages, ...", + "downloads": 0, + "github_stars": 75, + "icon": "", + "id": "ComfyUI-Chibi-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Chibi-Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chibiace/ComfyUI-Chibi-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-20T15:58:13.59789Z", + "description": "", + "downloads": 2135, + "github_stars": 64, + "icon": "", + "id": "comfyui-depth-visualization", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-20T15:58:13.856094Z", + "dependencies": [ + "Pillow>=10.1.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5f540f75-ac18-46fb-92e9-70ff5c2b644a", + "node_id": "comfyui-depth-visualization", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "LICENSE", + "name": "ComfyUI-Depth-Visualization", + "publisher": { + "createdAt": "2024-05-20T14:41:34.085962Z", + "description": "", + "id": "gokayfem", + "logo": "", + "members": [], + "name": "gokayfem", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gokayfem/ComfyUI-Depth-Visualization", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "IrisRainbowNeko", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:34.276363Z", + "description": "ascii art preprocessors in ComfyUI", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI_ascii_art", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ascii-art-comfyui", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Deep-Neko/ComfyUI_ascii_art", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "cerspense", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:48.497887Z", + "description": "Nodes:Image Dir Iterator, Modelscopet2v, Modelscopev2v, Vid Dir Iterator, Image Dir Iterator, Text File Line Iterator, Remap Range, Split Image Channels, Resize By Image, Increment Every N.", + "downloads": 0, + "github_stars": 33, + "icon": "", + "id": "ComfyUI_cspnodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "cspnodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cerspense/ComfyUI_cspnodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ssitu", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:38.560109Z", + "description": "ComfyUI nodes based on the paper [a/FABRIC: Personalizing Diffusion Models with Iterative Feedback](https://arxiv.org/abs/2307.10159) (Feedback via Attention-Based Reference Image Conditioning)", + "downloads": 0, + "github_stars": 93, + "icon": "", + "id": "ComfyUI_fabric", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI fabric", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ssitu/ComfyUI_fabric", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "hustille", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:48.613397Z", + "description": "ComfyUI nodes primarily for seed and filename generation", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI_hus_utils", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "hus' utils for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hustille/ComfyUI_hus_utils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "dawangraoming", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:33.878495Z", + "description": "KSampler is provided, based on GPU random noise", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "ComfyUI_ksampler_gpu", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "KSampler GPU", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dawangraoming/ComfyUI_ksampler_gpu", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "lilly1987", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:12.472342Z", + "description": "These custom nodes provides a feature to insert arbitrary inputs through wildcards in the prompt. Additionally, this tool provides features that help simplify workflows, such as VAELoaderDecoder and SimplerSample.", + "downloads": 0, + "github_stars": 55, + "icon": "", + "id": "ComfyUI_node_Lilly", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "simple wildcard for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lilly1987/ComfyUI_node_Lilly", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "iwanders", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:26.541659Z", + "description": "Nodes:IW SaveString, IW PrintString, IW ReplaceString, IW StringNode, IW StringConcat, IW TokenizerVocab, IW JsonPickItem.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI_nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "iwanders/ComfyUI_nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/iwanders/ComfyUI_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ZHO-ZHO-ZHO", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:32.245481Z", + "description": "Unofficial implementation of [a/DepthFM](https://github.com/CompVis/depth-fm) for ComfyUI", + "downloads": 0, + "github_stars": 75, + "icon": "", + "id": "ComfyUI-DepthFM", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "DepthFM IN COMFYUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ZHO-ZHO-ZHO/ComfyUI-DepthFM", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-16T13:50:05.189702Z", + "description": "Simple tools for ComfyUI", + "downloads": 340, + "github_stars": 0, + "icon": "https://avatars.githubusercontent.com/u/213204677?s=200", + "id": "kikotools", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-28T16:32:03.516924Z", + "dependencies": [ + "# Development dependencies for ComfyUI-KikoTools", + "# Testing framework", + "pytest>=7.0.0", + "pytest-cov>=4.0.0", + "pytest-mock>=3.10.0", + "# Code quality", + "black>=23.0.0", + "flake8>=6.0.0", + "mypy>=1.0.0", + "# Development utilities", + "pre-commit>=3.0.0", + "# ComfyUI testing (mock dependencies for unit tests)", + "torch>=2.0.0", + "numpy>=1.24.0", + "pillow>=9.0.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "bd5687cf-d469-41ee-aafd-76b285175f28", + "node_id": "kikotools", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-KikoTools", + "publisher": { + "createdAt": "2025-05-25T23:36:18.262938Z", + "description": "", + "id": "kiko9", + "logo": "", + "members": [], + "name": "kiko", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ComfyAssets/ComfyUI-KikoTools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "DesertPixelAi", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:46.037329Z", + "description": "A collection of custom nodes for ComfyUI focused on animation, image processing, and workflow optimization.", + "downloads": 0, + "github_stars": 17, + "icon": "", + "id": "ComfyUI-Desert-Pixel-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Desert-Pixel-Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DesertPixelAi/ComfyUI-Desert-Pixel-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kft334", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:33.954746Z", + "description": "Nodes: Image(s) To Websocket (Base64), Load Image (Base64),Load Images (Base64)", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "Knodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Knodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kft334/Knodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ShmuelRonen", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:02.965023Z", + "description": "The ComfyUI_pixtral_vision is a powerful ComfyUI node designed to integrate seamlessly with the Mistral Pixtral API. It facilitates the analysis of images through deep learning models, interpreting and describing the visual content. Users can input an image directly and provide prompts for context, utilizing an API key for authentication.", + "downloads": 0, + "github_stars": 16, + "icon": "", + "id": "ComfyUI_pixtral_vision", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_pixtral_vision", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShmuelRonen/ComfyUI_pixtral_vision", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "fssorc", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:19.20774Z", + "description": "Generate transition frames between two character posture images. The prerequisite for running is to have installed comfyui_controlnet_aux, using its Open Pose or DWPose preprocessor", + "downloads": 0, + "github_stars": 81, + "icon": "", + "id": "ComfyUI_pose_inter", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_pose_inter", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fssorc/ComfyUI_pose_inter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "PrunaAI", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:45.30325Z", + "description": "This repository explains how to accelerate image generation in ComfyUI using Pruna, an inference optimization engine that makes AI models faster, smaller, cheaper, and greener. ComfyUI is a popular node-based GUI for image generation models, for which we provide a custom compilation node that accelerates Stable Diffusion (SD) and Flux inference, while preserving output quality.", + "downloads": 0, + "github_stars": 64, + "icon": "", + "id": "ComfyUI_pruna", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Pruna nodes for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/PrunaAI/ComfyUI_pruna", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ssitu", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:37.194328Z", + "description": "Unofficial ComfyUI nodes for restart sampling based on the paper 'Restart Sampling for Improving Generative Processes' ([a/paper](https://arxiv.org/abs/2306.14878), [a/repo](https://github.com/Newbeeer/diffusion_restart_sampling))", + "downloads": 0, + "github_stars": 89, + "icon": "", + "id": "ComfyUI_restart_sampling", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Restart Sampling", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ssitu/ComfyUI_restart_sampling", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "mikkel", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:11.72104Z", + "description": "The ComfyUI Text Overlay Plugin provides functionalities for superimposing text on images. Users can select different font types, set text size, choose color, and adjust the text's position on the image.", + "downloads": 0, + "github_stars": 58, + "icon": "", + "id": "ComfyUI-text-overlay", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI - Text Overlay Plugin", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mikkel/ComfyUI-text-overlay", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "hmwl", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:27.536882Z", + "description": "ComfyUI zip package image processing", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI_zip", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_zip", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hmwl/ComfyUI_zip", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Niutonian", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:08.61424Z", + "description": "Nodes:Noodle webcam is a node that records frames and send them to your favourite node.", + "downloads": 0, + "github_stars": 32, + "icon": "", + "id": "ComfyUi-NoodleWebcam", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUi-NoodleWebcam", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Niutonian/ComfyUi-NoodleWebcam", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "wolfden", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:11.167255Z", + "description": "These custom nodes provide a variety of customized prompt stylers based on [a/twri/SDXL Prompt Styler](https://github.com/twri/sdxl_prompt_styler).", + "downloads": 0, + "github_stars": 95, + "icon": "", + "id": "ComfyUi_PromptStylers", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "SDXL Prompt Styler (customized version by wolfden)", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wolfden/ComfyUi_PromptStylers", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "gt732", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:29.568765Z", + "description": "This repository contains custom ComfyUI nodes designed to integrate with [a/DreamWaltz-G](https://github.com/Yukun-Huang/DreamWaltz-G), a cutting-edge model for generating expressive 3D Gaussian avatars using skeleton-guided 2D diffusion.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-DreamWaltz-G", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-DreamWaltz-G", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gt732/ComfyUI-DreamWaltz-G", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "NeuralSamurAI", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:08.416609Z", + "description": "The SuperPrompter node is a ComfyUI node that uses the SuperPrompt-v1 model from Hugging Face to generate text based on a given prompt. It provides various parameters to control the text generation process.", + "downloads": 0, + "github_stars": 68, + "icon": "", + "id": "Comfyui-Superprompt-Unofficial", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "SuperPrompter Node for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/NeuralSamurAI/Comfyui-Superprompt-Unofficial", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "zcfrank1st", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:42.152706Z", + "description": "Nodes: Yolov8Detection, Yolov8Segmentation. Deadly simple yolov8 comfyui plugin", + "downloads": 0, + "github_stars": 25, + "icon": "", + "id": "Comfyui-Yolov8", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Yolov8", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zcfrank1st/Comfyui-Yolov8", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "caleboleary", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:30.748207Z", + "description": "Nodes:CharacterManagerNode, FilmGrain, FlipFlopperSameArch", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "Comfyui-calbenodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui-calbenodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/caleboleary/Comfyui-calbenodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "11dogzi", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:59.314096Z", + "description": "This is a node group kit that covers multiple nodes such as local refinement, tag management, random prompt words, text processing, image processing, mask processing, etc", + "downloads": 0, + "github_stars": 84, + "icon": "", + "id": "Comfyui-ergouzi-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui-ergouzi-Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/11dogzi/Comfyui-ergouzi-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-09T16:22:13.847133Z", + "description": "Custom nodes for ComfyUI to improve promts and image settings", + "downloads": 240, + "github_stars": 1, + "icon": "", + "id": "ComfyUI_BishaNodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-09T16:22:14.242768Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "804f4791-c621-453b-ad3e-c4e6afe9485a", + "node_id": "ComfyUI_BishaNodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_BishaNodes", + "publisher": { + "createdAt": "2025-06-09T16:18:49.245031Z", + "description": "", + "id": "vladpro3", + "logo": "", + "members": [], + "name": "vladpro3", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/vladpro3/ComfyUI_BishaNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:32.819494Z", + "description": "Investigating the Effectiveness of Cross Attention to Unlock Zero-Shot Editing of Text-to-Video Diffusion Models", + "downloads": 0, + "github_stars": 17, + "icon": "", + "id": "ComfyUI-Video-Editing-X-Attention", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Video-Editing-X-Attention", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-Video-Editing-X-Attention", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "11dogzi", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:00.078505Z", + "description": "Partial redraw sampler and variant seed sampler", + "downloads": 0, + "github_stars": 27, + "icon": "", + "id": "Comfyui-ergouzi-samplers", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui-ergouzi-samplers", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/11dogzi/Comfyui-ergouzi-samplers", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "StartHua", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:37.293937Z", + "description": "flux lora merge.\nadaptive Merge (uses tensor norms and weight), manual Merge (uses fixed weights you specify), additive Merge (uses 100% of the first and adds a percentage of the second)", + "downloads": 0, + "github_stars": 24, + "icon": "", + "id": "Comfyui_CXH_FluxLoraMerge", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui_CXH_FluxLoraMerge", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/StartHua/Comfyui_CXH_FluxLoraMerge", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yichengup", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:10:44.115305Z", + "description": "StyleModelApply adds more controls", + "downloads": 0, + "github_stars": 297, + "icon": "", + "id": "Comfyui_Flux_Style_Adjust", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui_Flux_Style_Adjust (Redux)", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yichengup/Comfyui_Flux_Style_Adjust", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "hhhzzyang", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:09.289325Z", + "description": "Nodes: LamaaModelLoad, LamaApply, YamlConfigLoader. a costumer node is realized to remove anything/inpainting anything from a picture by mask inpainting.[w/WARN:This extension includes the entire model, which can result in a very long initial installation time, and there may be some compatibility issues with older dependencies and ComfyUI.]", + "downloads": 0, + "github_stars": 55, + "icon": "", + "id": "Comfyui_Lama", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui-Lama", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hhhzzyang/Comfyui_Lama", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yichengup", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:10:45.066371Z", + "description": "Redux style adds more controls", + "downloads": 0, + "github_stars": 99, + "icon": "", + "id": "Comfyui_Redux_Advanced", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui_Redux_Advanced", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yichengup/Comfyui_Redux_Advanced", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yichengup", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:10:48.799808Z", + "description": "Video clip mixing", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-VideoBlender", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-VideoBlender", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yichengup/ComfyUI-VideoBlender", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "tungdop2", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:10:54.364043Z", + "description": "The face restore node for ComfyUI, based on RestoreFormer", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "Comfyui_face_restorer", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Face Restorer for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tungdop2/Comfyui_face_restorer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "StartHua", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:32.282517Z", + "description": "JoyTag is a state of the art AI vision model for tagging images, with a focus on sex positivity and inclusivity. It uses the Danbooru tagging schema, but works across a wide range of images, from hand drawn to photographic.\nDownload the weight and put it under checkpoints: [a/https://huggingface.co/fancyfeast/joytag/tree/main](https://huggingface.co/fancyfeast/joytag/tree/main)", + "downloads": 0, + "github_stars": 57, + "icon": "", + "id": "Comfyui_joytag", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui_joytag", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/StartHua/Comfyui_joytag", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:58.206251Z", + "description": "a comfyui custom node for [a/CosyVoice](https://github.com/FunAudioLLM/CosyVoice)", + "downloads": 0, + "github_stars": 266, + "icon": "", + "id": "CosyVoice-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "CosyVoice-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/CosyVoice-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Cyber-BCat", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:03.340266Z", + "description": "Load images in order(All other nodes are in the wrong order)! Using LLM and Joy tag pipeline to tag your image(s folder), it's suitable for train FLUX LoRA and also sdxl.", + "downloads": 0, + "github_stars": 13, + "icon": "", + "id": "Cyber-BCat_ComfyUI_Auto_Caption", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Auto_Caption", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Cyber-BCat/ComfyUI_Auto_Caption", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "seanlynch", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:43.00744Z", + "description": "Nodes: SRL Conditional Interrupt, SRL Format String, SRL Eval, SRL Filter Image List. This is a collection of nodes I find useful. Note that at least one module allows execution of arbitrary code. Do not use any of these nodes on a system that allow untrusted users to control workflows or inputs.[w/WARNING: The custom nodes in this extension are vulnerable to **security risks** because they allow the execution of arbitrary code through the workflow]", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "srl-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "SRL's nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/seanlynch/srl-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-04T08:52:37.435198Z", + "description": "AI_Text_Comfyui is a custom node for ComfyUI that connects to the OpenAI Chat API and automatically generates creative text prompts for AI workflows. This simplified version removes external dependencies like dotenv, requiring the OpenAI key to be set using a system environment variable.", + "downloads": 301, + "github_stars": 1, + "icon": "", + "id": "ai_text_comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-05T03:01:18.037087Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "fe66af1f-206c-48f1-9e25-381a1caf7aab", + "node_id": "ai_text_comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.8" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "AI_Text_Comfyui", + "publisher": { + "createdAt": "2025-06-03T10:05:32.937508Z", + "description": "", + "id": "navi", + "logo": "", + "members": [], + "name": "Navi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Zch6111/AI_Text_Comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:03.735318Z", + "description": "a custom node for [a/DiffSynth-Studio](https://github.com/modelscope/DiffSynth-Studio)", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "DiffSynth-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "DiffSynth-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/DiffSynth-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yichengup", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:10:47.711922Z", + "description": "A collection of image processing extension nodes for ComfyUI.", + "downloads": 0, + "github_stars": 24, + "icon": "", + "id": "ComfyUI-YCNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-YCNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yichengup/ComfyUI-YCNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:41.423666Z", + "description": "a custom node for [a/DiffMorpher](https://github.com/Kevin-thu/DiffMorpher),you can find base workflow in [a/doc](https://github.com/AIFSH/DiffMorpher-ComfyUI/blob/main/doc)", + "downloads": 0, + "github_stars": 16, + "icon": "", + "id": "DiffMorpher-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "DiffMorpher-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/DiffMorpher-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Extraltodeus", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:46.952829Z", + "description": "Heuristic modification of the Heun sampler using a custom function based on normalized distances. For ComfyUI.", + "downloads": 0, + "github_stars": 36, + "icon": "", + "id": "DistanceSampler", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "DistanceSampler", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Extraltodeus/DistanceSampler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-26T02:17:21.191761Z", + "description": "Example of a Combo widget changing Node appearance", + "downloads": 401, + "github_stars": 1, + "icon": "https://raw.githubusercontent.com/Amorano/Jovimetrix-examples/refs/heads/master/res/logo-cozy-comfyui.png", + "id": "cozy_combo", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-26T02:17:21.598511Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "fd77da6e-1071-4cb1-9332-c38cfec9e57c", + "node_id": "cozy_combo", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Cozy Combo", + "publisher": { + "createdAt": "2024-05-17T04:16:25.445017Z", + "description": "", + "id": "amorano", + "logo": "", + "members": [], + "name": "Joviex", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cozy-comfyui/cozy_combo", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-08T14:40:49.307417Z", + "description": "ComfyUI-RealESRGAN_Upscaler.", + "downloads": 0, + "github_stars": 8, + "icon": "https://github.com/zentrocdot/ComfyUI_RealEsrgan_Upscaler/blob/main/images/original_logo_512x512.png", + "id": "ComfyUI-RealESRGAN_Upscaler", + "latest_version": { + "version": "nightly" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_realESRGAN_Upscaler", + "publisher": { + "createdAt": "2025-02-03T19:12:00.551657Z", + "description": "", + "id": "zentrocdot", + "logo": "", + "members": [], + "name": "zentrocdot", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zentrocdot/ComfyUI-RealESRGAN_Upscaler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ZYK-AI", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:24.252606Z", + "description": "Plugin that implements world automatic typesetting and outputs only one paragraph of text", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-YK_Line-loading", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-YK Line loading", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sittere/ComfyUI-YK_Line-loading", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Sida Liu", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:28.347451Z", + "description": "Use RetinaFace to detect and automatically crop faces.", + "downloads": 0, + "github_stars": 89, + "icon": "", + "id": "ComfyUI-AutoCropFaces", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-AutoCropFaces", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/liusida/ComfyUI-AutoCropFaces", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "MokkaBoss1", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:11.508249Z", + "description": "Node Pack mostly for manipulating strings and integers", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "Documentation-for-the-ComfyUI-Nodes-in-this-Node-Pack", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Node Pack mostly for manipulating strings and integers", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MokkaBoss1/ComfyUI_Mokkaboss1/wiki/Documentation-for-the-ComfyUI-Nodes-in-this-Node-Pack", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "xfgexo", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:08.751243Z", + "description": "A custom node pack made with efficiency and quality of life features in mind. Most notably is my Prompt Builder Deluxe Node. Unlike any other run-of-the-mill prompt builder or styler node out there. Mine allows you to create and design in a way no other node does.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "EXO-Custom-ComfyUI-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "EXO Custom ComfyUI Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/xfgexo/EXO-Custom-ComfyUI-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:13.993892Z", + "description": "a custom node for [a/echomimic_v2](https://github.com/antgroup/echomimic_v2)", + "downloads": 0, + "github_stars": 58, + "icon": "", + "id": "EchoMimicV2-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "EchoMimicV2-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/EchoMimicV2-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:06.883716Z", + "description": "a custom node for [a/EzAudio](https://github.com/haidog-yaqub/EzAudio)", + "downloads": 0, + "github_stars": 9, + "icon": "", + "id": "EzAudio-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "EzAudio-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/EzAudio-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ailex000", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:29.552397Z", + "description": "Custom javascript extensions for better UX for ComfyUI. Supported nodes: PreviewImage, SaveImage. Double click on image to open.", + "downloads": 0, + "github_stars": 16, + "icon": "", + "id": "ComfyUI-Extensions", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Image Gallery", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ailex000/ComfyUI-Extensions", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "city96", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:23.562464Z", + "description": "This extension aims to add support for various random image diffusion models to ComfyUI.", + "downloads": 0, + "github_stars": 512, + "icon": "", + "id": "ComfyUI_ExtraModels", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Extra Models for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/city96/ComfyUI_ExtraModels", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "HarroweD and quadmoon", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:47.698923Z", + "description": "Harronode is a custom node designed to build prompts easily for use with the Harrlogos SDXL LoRA. This Node simplifies the process of crafting prompts and makes all built in activation terms available at your fingertips.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "Harronode", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Harrlogos Prompt Builder Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/NotHarroweD/Harronode", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:03.029004Z", + "description": "a custom node for [a/HivisionIDPhotos](https://github.com/Zeyi-Lin/HivisionIDPhotos)", + "downloads": 0, + "github_stars": 155, + "icon": "", + "id": "HivisionIDPhotos-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "HivisionIDPhotos-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/HivisionIDPhotos-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "asdrabael", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:26.948879Z", + "description": "ComfyUI Node for loading multiple Lora's [a/HunyuanVideo](https://github.com/Tencent/HunyuanVideo)", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "Hunyuan-Multi-Lora-Loader", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Hunyuan-Multi-Lora-Loader", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/asdrabael/Hunyuan-Multi-Lora-Loader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "nirbhay-faaya", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:26.140084Z", + "description": "Custom Image processing ComfyUI Nodes", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ImgProcessing_ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ImgProcessing_ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nirbhay-faaya/ImgProcessing_ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-28T20:35:11.189483Z", + "description": "Adds Fooocus V2 Prompt Expansion to ComfyUI. Expands your prompts for more detailed images using Fooocus's V2 algorithm. **Warning:** The first time you use this node, it will download the GPT-2 model (around 351MB) for prompt expansion.", + "downloads": 879, + "github_stars": 9, + "icon": "https://raw.githubusercontent.com/PanicTitan/ComfyUI-Fooocus-V2-Expansion/refs/heads/main/logo.svg", + "id": "ComfyUI-Fooocus-V2-Expansion", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-09T22:51:35.577289Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4316a38f-ce9f-4160-a1b9-1fb15b9359ac", + "node_id": "ComfyUI-Fooocus-V2-Expansion", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Fooocus-V2-Expansion", + "publisher": { + "createdAt": "2025-02-28T19:25:05.096153Z", + "description": "", + "id": "panic-titan", + "logo": "", + "members": [], + "name": "PanicTitan", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/PanicTitan/ComfyUI-Fooocus-V2-Expansion", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kadirnar", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:52.038742Z", + "description": "Nodes:Load Ultralytics Model, Ultralytics Inference, Ultralytics Visualization, Convert to Dictionary, BBox to XYWH", + "downloads": 0, + "github_stars": 90, + "icon": "", + "id": "ComfyUI-YOLO", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-YOLO", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kadirnar/ComfyUI-YOLO", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-16T00:45:16.254748Z", + "description": "Split latent frequency domanin into 3 Bands and Recombine with varying weights.", + "downloads": 74, + "github_stars": 0, + "icon": "", + "id": "Jurdns-Frequency-Split-comfyNodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-16T00:45:16.657641Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "264c40c8-7ad5-425f-8d2e-6c1f0d44b969", + "node_id": "Jurdns-Frequency-Split-comfyNodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-JurdnsFrequencySplitNodes", + "publisher": { + "createdAt": "2025-06-16T00:04:23.281552Z", + "description": "", + "id": "iamjurdn", + "logo": "", + "members": [], + "name": "iamjurdn", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jurdnf/Jurdns-Frequency-Split-Nodes.git", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "M1kep", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:35.179667Z", + "description": "Nodes: Build Gif, Special CLIP Loader. It offers various manipulation capabilities for the internal operations of the prompt.", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "KepPromptLang", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "KepPromptLang", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/M1kep/KepPromptLang", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Kurdknight", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:21.131076Z", + "description": "A comprehensive system information node for ComfyUI that provides detailed information about your system, GPU, CUDA, and AI libraries configuration. Works on both Windows and Linux systems.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "Kurdknight_comfycheck", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "KurdKnight ComfyUI System Check Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Kurdknight/Kurdknight_comfycheck", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "THtianhao", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:21.894999Z", + "description": "Nodes:RetainFace, FaceFusion, RatioMerge2Image, MaskMerge2Image, ReplaceBoxImg, ExpandMaskBox, FaceSkin, SkinRetouching, PortraitEnhancement, ...", + "downloads": 0, + "github_stars": 194, + "icon": "", + "id": "ComfyUI-Portrait-Maker", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Portrait-Maker", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/THtianhao/ComfyUI-Portrait-Maker", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "DimaChaichan", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:07.195161Z", + "description": "This exporter is a plugin for ComfyUI, which can export tasks for [a/LAizypainter](https://github.com/DimaChaichan/LAizypainter).\nLAizypainter is a Photoshop plugin with which you can send tasks directly to a Stable Diffusion server. More information about a [a/Task](https://github.com/DimaChaichan/LAizypainter?tab=readme-ov-file#task)", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "LAizypainter-Exporter-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "LAizypainter-Exporter-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DimaChaichan/LAizypainter-Exporter-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "laksjdjf", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:58.029093Z", + "description": "This extension node is intended for the use of LCM conversion for SSD-1B-anime. It does not guarantee operation with the original LCM (as it cannot load weights in the current version). To take advantage of fast generation with LCM, a node for using TAESD as a decoder is also provided. This is inspired by ComfyUI-OtherVAEs.", + "downloads": 0, + "github_stars": 16, + "icon": "", + "id": "LCMSampler-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "LCMSampler-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/laksjdjf/LCMSampler-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "laksjdjf", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:58.753424Z", + "description": "This is a repository for using LoRTnoC (LoRA with hint block of ControlNet) on ComfyUI.\nNOTE:Please place the model file in the same location as controlnet. (Is this too arbitrary?)", + "downloads": 0, + "github_stars": 13, + "icon": "", + "id": "LoRTnoC-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "LoRTnoC-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/laksjdjf/LoRTnoC-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Sorcerio", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:52.35374Z", + "description": "An image generation based music visualizer integrated into comfyanonymous/ComfyUI as custom nodes.", + "downloads": 0, + "github_stars": 23, + "icon": "", + "id": "MBM-Music-Visualizer", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "MBM's Music Visualizer", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Sorcerio/MBM-Music-Visualizer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:12.402794Z", + "description": "a custom node for [a/MaskGCT](https://github.com/open-mmlab/Amphion/blob/main/models/tts/maskgct/README.md) to Zero-Shot Text-to-Speech", + "downloads": 0, + "github_stars": 62, + "icon": "", + "id": "MaskGCT-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "MaskGCT-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/MaskGCT-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:13.162456Z", + "description": "a custom node for [a/MiniMates](https://github.com/kleinlee/MiniMates)", + "downloads": 0, + "github_stars": 29, + "icon": "", + "id": "MiniMates-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "MiniMates-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/MiniMates-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Rui", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:22.434764Z", + "description": "Rui's workflow-specific custom node, written using GPT.", + "downloads": 0, + "github_stars": 16, + "icon": "", + "id": "RUI-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "RUI-Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/rui40000/RUI-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "THtianhao", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:22.752995Z", + "description": "The official ComfyUI version of facechain greatly improves the speed of reasoning and has great custom process controls.", + "downloads": 0, + "github_stars": 135, + "icon": "", + "id": "ComfyUI-FaceChain", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-FaceChain", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/THtianhao/ComfyUI-FaceChain", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-12T07:23:59.46347Z", + "description": "A wrapper for CraftsMan", + "downloads": 574, + "github_stars": 14, + "icon": "", + "id": "Comfyui-CraftsMan3DWrapper", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-12T07:23:59.879501Z", + "dependencies": [ + "numpy", + "Pillow", + "trimesh", + "rembg", + "omegaconf", + "PyYAML>=6.0 # Dependency for omegaconf", + "diffusers", + "transformers", + "huggingface-hub", + "einops", + "safetensors", + "pytorch-lightning # Base system class dependency, might be optional for pure inference", + "scikit-image # Potential dependency for marching cubes", + "PyMCubes # Potential dependency for marching cubes", + "accelerate" + ], + "deprecated": false, + "downloadUrl": "", + "id": "99723a6b-8f1c-4167-9ae1-e7661a14e7ea", + "node_id": "Comfyui-CraftsMan3DWrapper", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfyui-CraftsMan3DWrapper", + "publisher": { + "createdAt": "2025-04-05T03:17:17.637561Z", + "description": "", + "id": "hunzmusic", + "logo": "", + "members": [], + "name": "hunzmusic", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hunzmusic/Comfyui-CraftsMan3DWrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-25T02:01:16.796673Z", + "description": "Create stunning parallax animations! Transform your ComfyUI generations into immersive 3D animations with realistic depth-based motion. Powered by advanced depth estimation, no external depth maps needed. Perfect for creating eye-catching content that leaps off the screen with realistic depth!", + "downloads": 183, + "github_stars": 1, + "icon": "https://i.ibb.co/DP66DXhB/Sam-Seen-logo-dark.png", + "id": "SSParallaxX_bySamSeen", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-25T02:27:09.704032Z", + "dependencies": [ + "numpy", + "Pillow", + "torch", + "transformers>=4.51.0", + "opencv-python", + "tqdm" + ], + "deprecated": false, + "downloadUrl": "", + "id": "0a1d1d03-5491-4d20-9042-b6edd88dcb24", + "node_id": "SSParallaxX_bySamSeen", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.4" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "SSParallaxX", + "publisher": { + "createdAt": "2024-06-30T03:39:39.961106Z", + "description": "", + "id": "samseen", + "logo": "", + "members": [], + "name": "SamSeen", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MrSamSeen/SSParallaxX", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Ser-Hilary", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:28.781678Z", + "description": "Nodes:sizing_node. Size calculation node related to image size in prompts supported by SDXL.", + "downloads": 0, + "github_stars": 29, + "icon": "", + "id": "SDXL_sizing", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "SDXL_sizing", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Ser-Hilary/SDXL_sizing", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Apache0ne", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:48.39327Z", + "description": "Super Fast LLM's llama3.1-405B,70B,8B and more", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "SambaNova", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "SambaNova", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Apache0ne/SambaNova", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-03T03:11:47.817607Z", + "description": "A swiss\u2011army ComfyUI node that lets any vision\u2011capable LLM (OpenAI\u202fGPT\u20114o, Gemini\u202f1.5\u202fPro Vision, Groq\u2011mix\u2026 you name it) rip through a reference image and return a prompt you can feed straight back into your diffusion pipeline\u2014no hand\u2011crafting required.", + "downloads": 144, + "github_stars": 1, + "icon": "https://avatars.githubusercontent.com/u/207890088?v=4&size=40", + "id": "Tenos_LLM_Image_Describe", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-03T03:11:48.196041Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "990d8ed9-4c95-45c3-938f-38df82b9df3c", + "node_id": "Tenos_LLM_Image_Describe", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Tenos_LLM_Image_Describe", + "publisher": { + "createdAt": "2025-06-02T19:15:40.325843Z", + "description": "", + "id": "tenosai", + "logo": "", + "members": [], + "name": "Tenos.ai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Tenos-ai/Tenos-LLM-Image-Describe", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-02T19:35:17.085965Z", + "description": "A zero nonsense ComfyUI node that resizes every incoming image (or batch) so the final resolution hovers around one million pixels\u2014while respecting the original aspect ratio and snapping both dimensions to multiples of 64. Perfect for pipelines that need a predictable VRAM footprint without destroying composition.", + "downloads": 153, + "github_stars": 1, + "icon": "https://avatars.githubusercontent.com/u/207890088?v=4&size=40", + "id": "Tenos_Resize_to_1M_Pixels", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-06T13:27:57.968289Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "0c08da30-8610-4272-9000-fe234d322b76", + "node_id": "Tenos_Resize_to_1M_Pixels", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Tenos_Resize_to_1M_Pixels", + "publisher": { + "createdAt": "2025-06-02T19:15:40.325843Z", + "description": "", + "id": "tenosai", + "logo": "", + "members": [], + "name": "Tenos.ai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Tenos-ai/Tenos-Resize-to-1-M-Pixels", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Ttl", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:14.301959Z", + "description": "Nodes:NNLatentUpscale, A custom ComfyUI node designed for rapid latent upscaling using a compact neural network, eliminating the need for VAE-based decoding and encoding.", + "downloads": 0, + "github_stars": 242, + "icon": "", + "id": "Ttl_ComfyUi_NNLatentUpscale", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Neural Network Latent Upscale", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Ttl/ComfyUi_NNLatentUpscale", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-14T06:57:22.062213Z", + "description": "A custom node for ComfyUI where you can paste/type any python code and it will get executed when you run the workflow.", + "downloads": 880, + "github_stars": 13, + "icon": "", + "id": "anyPython", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-14T09:26:37.780693Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a4b67c38-3b00-4b7d-ad0f-5ab52b3ea5dc", + "node_id": "anyPython", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.3" + }, + "license": "{\"text\": \"MIT license\"}", + "name": "AnyPython", + "publisher": { + "createdAt": "2025-02-14T04:30:23.544709Z", + "description": "", + "id": "prabinpebam", + "logo": "", + "members": [], + "name": "Prabin Pebam", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/prabinpebam/anyPython.git", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "SeniorPioner", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:06.67707Z", + "description": "Node Pack: PromptChecker for token toggling, KoboldCPP API, ModelMerging, Telegram-Bot-API, and more", + "downloads": 0, + "github_stars": 15, + "icon": "", + "id": "ComfyUI-SP-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "SP-Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bananasss00/ComfyUI-SP-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ray", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:52.395532Z", + "description": "Nodes:Image Gradient,Mask Gradient", + "downloads": 0, + "github_stars": 9, + "icon": "", + "id": "ComfyUI_LightGradient", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Light Gradient for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/huagetai/ComfyUI_LightGradient", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "VikramxD", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:24.897689Z", + "description": "ComfyUI workflow for VEnhancer Inference", + "downloads": 0, + "github_stars": 12, + "icon": "", + "id": "VEnhancer-ComfyUI-Wrapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "VEnhancer ComfyUI Extension", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/VikramxD/VEnhancer-ComfyUI-Wrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:02.234385Z", + "description": "NODES:TextNode, PreViewVideo, VideoSysNode.", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "VideoSys-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "VideoSys-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/VideoSys-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-21T12:52:43.894809Z", + "description": "This repository contains custom nodes for Stability AI API which supports SD3.0 and 3.5.", + "downloads": 652, + "github_stars": 0, + "icon": "", + "id": "aicu-comfyui-stability-ai-api", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-21T12:52:47.904476Z", + "dependencies": [ + "requests==2.32.3", + "configparser==7.1.0", + "fal-client==0.4.1", + "numpy==1.24.3", + "torch==2.1.1+cu121" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a4d1e392-0291-4cfd-b4d0-881caf1e3d7d", + "node_id": "aicu-comfyui-stability-ai-api", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "aicu-comfyui-stability-ai-api", + "publisher": { + "createdAt": "2025-02-21T12:46:46.988779Z", + "description": "", + "id": "aicu", + "logo": "", + "members": [], + "name": "AICU Japan", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/aicuai/aicu-comfyui-stability-ai-api/", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-07T14:45:53.628022Z", + "description": "", + "downloads": 396, + "github_stars": 2, + "icon": "", + "id": "aichat", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-09T11:07:04.574579Z", + "dependencies": [ + "aiofiles", + "httpx<0.28.0", + "openai" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5674732a-6742-4ea5-a293-3ce178615754", + "node_id": "aichat", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-aichat", + "publisher": { + "createdAt": "2025-06-04T11:23:35.643962Z", + "description": "", + "id": "spawner", + "logo": "", + "members": [], + "name": "spawner", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/spawner1145/comfyui-aichat", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "spacepxl", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:26.739242Z", + "description": "Add Image Save nodes for TIFF 16 bit and EXR 32 bit formats. Probably only useful if you're applying a LUT or other color corrections, and care about preserving as much color accuracy as possible.", + "downloads": 0, + "github_stars": 62, + "icon": "", + "id": "ComfyUI-HQ-Image-Save", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-HQ-Image-Save", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/spacepxl/ComfyUI-HQ-Image-Save", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "alexcong", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:05:59.904553Z", + "description": "ComfyUI Qwen2-VL wrapper that supports text-based and single-image queries.", + "downloads": 0, + "github_stars": 73, + "icon": "", + "id": "ComfyUI_QwenVL", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Qwen2-VL wrapper for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alexcong/ComfyUI_QwenVL", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "aicuai", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:55.826072Z", + "description": "This repository contains custom nodes for Stability AI API which supports SD3.0 and 3.5.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "aicuai_aicu-comfyui-stability-ai-api", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "aicu-comfyui-stability-ai-api", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/aicuai/aicu-comfyui-stability-ai-api", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "antrobot", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:49.901254Z", + "description": "A small node pack containing various things I felt like ought to be in base comfy-UI. Currently includes Some image handling nodes to help with inpainting, a version of KSampler (advanced) that allows for denoise, and a node that can swap it's inputs. Remember to make an issue if you experience any bugs or errors!", + "downloads": 0, + "github_stars": 23, + "icon": "", + "id": "antrobots-comfyUI-nodepack", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "antrobots ComfyUI Nodepack", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/antrobot1234/antrobots-comfyUI-nodepack", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-05T13:18:51.49599Z", + "description": "deprecated", + "downloads": 888, + "github_stars": 0, + "icon": "", + "id": "ardent-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-05T20:41:57.748038Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4dabe7de-66d8-40f1-bbfe-f758143c1b60", + "node_id": "ardent-comfyui", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.9" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "deprecated", + "publisher": { + "createdAt": "2025-02-04T22:38:04.302274Z", + "description": "", + "id": "ardentillumina", + "logo": "", + "members": [], + "name": "Ardent Illumina", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kealiu", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:00.142965Z", + "description": "Zero-1-to-3: Zero-shot One Image to 3D Object, unofficial porting of original [Zero123](https://github.com/cvlab-columbia/zero123)", + "downloads": 0, + "github_stars": 22, + "icon": "", + "id": "ComfyUI-Zero123-Porting", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Zero123-Porting", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kealiu/ComfyUI-Zero123-Porting", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "lunarring", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:47.235819Z", + "description": "A package implementing a Bitalino device ComfyUI custom node.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "bitalino_comfy", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "bitalino_comfy", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lunarring/bitalino_comfy", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kealiu", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:59.421816Z", + "description": "An unofficial ComfyUI custom node for [a/Zero-Shot Material Transfer from a Single Image](https://ttchengab.github.io/zest), Given an input image (e.g., a photo of an apple) and a single material exemplar image (e.g., a golden bowl), ZeST can transfer the gold material from the exemplar onto the apple with accurate lighting cues while making everything else consistent.", + "downloads": 0, + "github_stars": 174, + "icon": "", + "id": "ComfyUI-ZeroShot-MTrans", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ZeroShot-MTrans", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kealiu/ComfyUI-ZeroShot-MTrans", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "HAL41", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:54.77355Z", + "description": "Simple node to handle scaling of YOLOv8 segmentation masks", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI-aichemy-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI aichemy nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/HAL41/ComfyUI-aichemy-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Franck-Demongin", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:57.52177Z", + "description": "Nodes:Hugging Face Flux", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "NX_HuggingFace_Flux", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "NX_HuggingFace_Flux", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Franck-Demongin/NX_HuggingFace_Flux", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "benjiyaya", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:32.951192Z", + "description": "A Text To Speech node using Kokoro TTS in ComfyUI.", + "downloads": 0, + "github_stars": 56, + "icon": "", + "id": "benjiyaya_ComfyUI-KokoroTTS", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-KokoroTTS", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/benjiyaya/ComfyUI-KokoroTTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Black Forest Labs", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:02.238203Z", + "description": "ComfyUI nodes for Black Forest Labs API Services", + "downloads": 0, + "github_stars": 81, + "icon": "", + "id": "bfl-comfy-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Black Forest Labs API Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/black-forest-labs/bfl-comfy-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "nkchocoai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:57.916511Z", + "description": "This node is for playing the game of guessing prompts by looking at images generated from prompts output by TIPO, Tagger, etc..", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-DanbooruPromptQuiz", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-DanbooruPromptQuiz", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nkchocoai/ComfyUI-DanbooruPromptQuiz", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "flyingshutter", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:26.538062Z", + "description": "Manipulation nodes for Image, Latent", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "As_ComfyUI_CustomNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "As_ComfyUI_CustomNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/flyingshutter/As_ComfyUI_CustomNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ShmuelRonen", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:12.71604Z", + "description": "A custom node for ComfyUI that integrates DeepSeek's powerful chat and instruction API, enabling seamless AI interactions within your ComfyUI workflows.", + "downloads": 0, + "github_stars": 20, + "icon": "", + "id": "ComfyUI-DeepSeek_R1-Chat", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI DeepSeek_R1 Chat Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShmuelRonen/ComfyUI-DeepSeek_R1-Chat", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "spacepxl", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:27.449957Z", + "description": "Image and matte filtering nodes for ComfyUI `image/filters/*`", + "downloads": 0, + "github_stars": 234, + "icon": "", + "id": "ComfyUI-Image-Filters", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Image-Filters", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/spacepxl/ComfyUI-Image-Filters", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "SSsnap", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:50.689336Z", + "description": "Through this node, you can more easily test the impact of different blocks in flux_lora on the final result.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-LBW_flux", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-LBW_flux", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SS-snap/ComfyUI-LBW_flux", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-03T17:19:51.399698Z", + "description": "A simple way to create sprite sheets and image grids.", + "downloads": 586, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-SpriteSheetMaker", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-03T17:19:53.135104Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "7a9a2760-c7a2-48cb-95f1-22a8219ce72a", + "node_id": "ComfyUI-SpriteSheetMaker", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-SpriteSheetMaker", + "publisher": { + "createdAt": "2025-02-20T01:53:38.313791Z", + "description": "", + "id": "osanimate", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/OSAnimate/ComfyUI-SpriteSheetMaker", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Lerc", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:13.205717Z", + "description": "This extension provides a full page image editor with mask support. There are two nodes, one to receive images from the editor and one to send images to the editor.", + "downloads": 0, + "github_stars": 191, + "icon": "", + "id": "canvas_tab", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Canvas Tab", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Lerc/canvas_tab", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ShmuelRonen", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:14.930596Z", + "description": "A voice conversion extension node for ComfyUI based on [a/FreeVC](https://github.com/OlaWod/FreeVC), enabling high-quality voice conversion capabilities within the ComfyUI framework.", + "downloads": 0, + "github_stars": 63, + "icon": "", + "id": "ComfyUI-FreeVC_wrapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-FreeVC_wrapper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShmuelRonen/ComfyUI-FreeVC_wrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "wqjuser", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:18.498783Z", + "description": "Use an online large language model to describe images.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-Chat-Image", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Chat-Image", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wqjuser/ComfyUI-Chat-Image", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kijai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:54.336748Z", + "description": "ComfyUI wrapper node to test LaVi-Bridge using Diffusers", + "downloads": 0, + "github_stars": 22, + "icon": "", + "id": "ComfyUI-LaVi-Bridge-Wrapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-LaVi-Bridge-Wrapper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-LaVi-Bridge-Wrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Yuan-ManX", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:13.983101Z", + "description": "ComfyUI-SoundHub is a collection of audio processing nodes designed for ComfyUI, enabling seamless audio processing and generation within your ComfyUI workflows.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-SoundHub", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-SoundHub", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Yuan-ManX/ComfyUI-SoundHub", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "MiddleKD", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:57.962421Z", + "description": "ComfyUI-denoise-mask-scheduler experimental approach involves selectively applying a denoise mask at each step during the inpainting inference process in diffusion models.", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "ComfyUI-denoise-mask-scheduler", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-denoise-mask-scheduler", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MiddleKD/ComfyUI-denoise-mask-scheduler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-17T14:06:07.657326Z", + "description": "ChatterBox SRT Voice TTS Node is a fork of 'ChatteBox Voice' with additional devolpments and full F5-TTS implementation as well. I introduced a SRT node designed to help you synchronize your generated TTS audio with `.srt` subtitle files. Audio wave analyzer will help you find speech segments for f5 speech edit and much more!", + "downloads": 323, + "github_stars": 22, + "icon": "https://raw.githubusercontent.com/diodiogod/ComfyUI_ChatterBox_SRT_Voice/main/example_workflows/Chatterbox SRT.jpg", + "id": "chatterbox_srt_voice", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-19T15:42:02.859884Z", + "dependencies": [ + "s3tokenizer>=0.1.7", + "resemble-perth", + "librosa", + "scipy", + "omegaconf", + "accelerate", + "transformers==4.46.3", + "# Additional dependencies for SRT support and audio processing", + "conformer>=0.3.2", + "torch", + "torchaudio", + "numpy", + "einops", + "phonemizer", + "g2p-en", + "unidecode", + "# Audio processing and timing dependencies", + "soundfile", + "resampy", + "webrtcvad", + "# Optional but recommended for better performance", + "numba" + ], + "deprecated": false, + "downloadUrl": "", + "id": "010ba809-66dc-401f-9dbb-1d7f75265a17", + "node_id": "chatterbox_srt_voice", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "3.2.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_ChatterBox_SRT_Voice", + "publisher": { + "createdAt": "2025-06-13T03:15:53.546891Z", + "description": "", + "id": "diogod", + "logo": "", + "members": [], + "name": "diogod", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/diodiogod/ComfyUI_ChatterBox_SRT_Voice", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "strand1", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:31.280081Z", + "description": "A collection of nodes for using Autogen with ComfyUI\n[a/AutoGen](https://github.com/microsoft/AutoGen): assistant agents, group chats, code executor, etc.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-Autogen", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Autogen", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/strand1/ComfyUI-Autogen", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Zuellni", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:28.372214Z", + "description": "A simple local text generator for ComfyUI utilizing [a/ExLlamaV2](https://github.com/turboderp/exllamav2).\n[w/NOTE:Manual package installation is required.]", + "downloads": 0, + "github_stars": 119, + "icon": "", + "id": "ComfyUI-ExLlama-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI ExLlamaV2 Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Zuellni/ComfyUI-ExLlama-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Indra's Mirror", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:50.008708Z", + "description": "ComfyUI-Lumina-Next-SFT-DiffusersWrapper is a custom node for ComfyUI that integrates the advanced Lumina-Next-SFT model. It offers high-quality image generation with features like time-aware scaling, optional ODE sampling, and support for high-resolution outputs. This node brings the power of the Lumina text-to-image pipeline directly into ComfyUI workflows, allowing for flexible and powerful image generation capabilities.", + "downloads": 0, + "github_stars": 17, + "icon": "", + "id": "ComfyUI-Lumina-Next-SFT-DiffusersWrapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Lumina-Next-SFT-DiffusersWrapper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Excidos/ComfyUI-Lumina-Next-SFT-DiffusersWrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "greengerong", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:18.29624Z", + "description": "This is a video generation plugin implementation for ComfyUI based on the Lumina Video model.", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "ComfyUI-Lumina-Video", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Lumina-Video", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/greengerong/ComfyUI-Lumina-Video", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-12T06:59:21.386703Z", + "description": "", + "downloads": 840, + "github_stars": 0, + "icon": "", + "id": "comfyui_cash", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-12T06:59:25.208236Z", + "dependencies": [ + "websockets", + "aiohttp" + ], + "deprecated": false, + "downloadUrl": "", + "id": "4d0ae12d-f9d8-410e-91de-dff5782879f9", + "node_id": "comfyui_cash", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Cash", + "publisher": { + "createdAt": "2024-10-12T06:41:45.475045Z", + "description": "", + "id": "amao", + "logo": "", + "members": [], + "name": "ComfyUI_Cash", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/amaozhao/ComfyUI_Cash", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "turkyden", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:19.173569Z", + "description": "a ComfyUI Custom Node for [a/smartcrop.py](https://github.com/smartcrop/smartcrop.py)", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-SmartCrop", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-SmartCrop", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/turkyden/ComfyUI-SmartCrop", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Yuan-ManX", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:16.489588Z", + "description": "ComfyUI nodes for StyleStudio model.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-StyleStudio", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-StyleStudio", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Yuan-ManX/ComfyUI-StyleStudio", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "CYBERLOOM-INC", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:16.424461Z", + "description": "Provide various custom nodes for Latent, Sampling, Model, Loader, Image, Text. This is the fixed version of the original [a/ComfyUI-nodes-hnmr](https://github.com/hnmr293/ComfyUI-nodes-hnmr) by hnmr293.", + "downloads": 0, + "github_stars": 9, + "icon": "", + "id": "ComfyUI-nodes-hnmr", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-nodes-hnmr", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/CYBERLOOM-INC/ComfyUI-nodes-hnmr", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-28T02:52:19.913252Z", + "description": "General audio nodes. Mix, Bass/Treble, Concatenate, Pitch, Add/remove silence, Speed", + "downloads": 512, + "github_stars": 0, + "icon": "", + "id": "audio-general-ComfyUI", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-28T02:52:20.40787Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c343299d-159f-470f-b638-679df68ef728", + "node_id": "audio-general-ComfyUI", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "Audio General", + "publisher": { + "createdAt": "2024-08-24T05:59:03.289234Z", + "description": "", + "id": "niknah", + "logo": "", + "members": [], + "name": "niknah", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/niknah/audio-general-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ownimage", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:05.328224Z", + "description": "Nodes:Caching Image Loader.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-ownimage", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ownimage", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ownimage/ComfyUI-ownimage", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jiaqianjing", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:47.442889Z", + "description": "A ComfyUI custom node for integrating with Midjourney API.", + "downloads": 0, + "github_stars": 13, + "icon": "", + "id": "ComfyUI-MidjourneyHub", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-MidjourneyHub", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jiaqianjing/ComfyUI-MidjourneyHub", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "mr7thing", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:18.878532Z", + "description": "This is a custom node for ComfyUI that can detect circular patterns in an image and generate a standardized circular output.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "circle_pattern_processor", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Circle Pattern Processor for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mr7thing/circle_pattern_processor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "leeguandong", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:16.735053Z", + "description": "In Flux, the T5 and CLIP in the text branch are weighted separately to regulate the strength of text-side embeddings.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI_FluxClipWeight", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI nodes to use FluxClipWeight", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/leeguandong/ComfyUI_FluxClipWeight", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kinfolk0117", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:46.685529Z", + "description": "Nodes:GradientPatchModelAddDownscale (Kohya Deep Shrink).", + "downloads": 0, + "github_stars": 28, + "icon": "", + "id": "ComfyUI_GradientDeepShrink", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_GradientDeepShrink", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kinfolk0117/ComfyUI_GradientDeepShrink", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chrissy0", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:10.265874Z", + "description": "This repository contains a custom node for ComfyUI that pads an image to be square, filling the new pixels black.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "chris-comfyui-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "chris-comfyui-nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chrissy0/chris-comfyui-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Limitex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:48.368524Z", + "description": "Nodes: Center Calculation. Improved Numerical Calculation for ComfyUI", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-Calculation", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Calculation", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Limitex/ComfyUI-Calculation", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:23.734384Z", + "description": "Nodes: Download the weights of MotionCtrl [a/motionctrl.pth](https://huggingface.co/TencentARC/MotionCtrl/blob/main/motionctrl.pth) and put it to ComfyUI/models/checkpoints", + "downloads": 0, + "github_stars": 138, + "icon": "", + "id": "ComfyUI-MotionCtrl", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-MotionCtrl", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-MotionCtrl", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Kangkang625", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:56.909988Z", + "description": "This repo is a simple implementation of [a/Paint-by-Example](https://github.com/Fantasy-Studio/Paint-by-Example) based on its [a/huggingface pipeline](https://huggingface.co/Fantasy-Studio/Paint-by-Example).", + "downloads": 0, + "github_stars": 16, + "icon": "", + "id": "ComfyUI-paint-by-example", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Paint-by-Example", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Kangkang625/ComfyUI-paint-by-example", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smthemex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:20.805357Z", + "description": "You can make emoji from a video and a image in comfyui", + "downloads": 0, + "github_stars": 16, + "icon": "", + "id": "ComfyUI_FollowYourEmoji", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_FollowYourEmoji", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_FollowYourEmoji", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "leeguandong", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:08.25253Z", + "description": "ComfyUI for [a/InternVL](https://github.com/OpenGVLab/InternVL)", + "downloads": 0, + "github_stars": 13, + "icon": "", + "id": "ComfyUI_InternVL2", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_InternVL2", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/leeguandong/ComfyUI_InternVL2", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-06T00:06:28.144601Z", + "description": "", + "downloads": 784, + "github_stars": 0, + "icon": "", + "id": "comfyui_custom", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-06T00:06:28.44232Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "6a0b95f6-6122-488c-8b27-ee9bd5a6465f", + "node_id": "comfyui_custom", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "comfyui_custom", + "publisher": { + "createdAt": "2024-06-05T23:55:45.328247Z", + "description": "", + "id": "owenreilly", + "logo": "", + "members": [], + "name": "Owen Reilly", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/owenreilly04/comfyui_custom", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "logtd", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:23.790996Z", + "description": "A set of nodes to perform multi-object prompting with InstanceDiffusion", + "downloads": 0, + "github_stars": 179, + "icon": "", + "id": "ComfyUI-InstanceDiffusion", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "InstanceDiffusion Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/logtd/ComfyUI-InstanceDiffusion", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:56.692783Z", + "description": "a comfyui custom node for [a/MimicMotion](https://github.com/Tencent/MimicMotion)", + "downloads": 0, + "github_stars": 376, + "icon": "", + "id": "ComfyUI-MimicMotion", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-MimicMotion", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/ComfyUI-MimicMotion", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "5x00", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:27.939907Z", + "description": "A simple ComfyUI nodes that integrates [a/PiAPI faceswap](https://piapi.ai/faceswap-api) service into ComfyUI. This can be helpful if you're trying to create a workflow that includes faceswap for commercial usage.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-PiAPI-Faceswap", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-PiAPI-Faceswap", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/5x00/ComfyUI-PiAPI-Faceswap", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "aaronchm", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:06.64375Z", + "description": "Improved DanTagGen implementation that posesses all functionality of the A1111 webui extension.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-z-a1111-sd-webui-DanTagGen", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "z-a1111-sd-webui-DanTagGen", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Aaron-CHM/ComfyUI-z-a1111-sd-webui-DanTagGen", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smthemex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:19.030821Z", + "description": "using diffree: Text-Guided Shape Free Object Inpainting with Diffusion Model", + "downloads": 0, + "github_stars": 32, + "icon": "", + "id": "ComfyUI_Diffree", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Diffree", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_Diffree", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "risunobushi", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:55.945357Z", + "description": "A collection of simple nodes for Frequency Separation / Frequency Recombine with RGB and HSV methods", + "downloads": 0, + "github_stars": 35, + "icon": "", + "id": "comfyUI_FrequencySeparation_RGB-HSV", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyUI_FrequencySeparation_RGB-HSV", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/risunobushi/comfyUI_FrequencySeparation_RGB-HSV", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "logtd", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:26.884147Z", + "description": "ComfyUI nodes to use [a/FLATTEN: optical FLow-guided ATTENtion for consistent text-to-video editing](https://github.com/yrcong/flatten).", + "downloads": 0, + "github_stars": 109, + "icon": "", + "id": "ComfyUI-FLATTEN", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-FLATTEN", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/logtd/ComfyUI-FLATTEN", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AustinMroz", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:01.05033Z", + "description": "Modifies execution to minimize RAM at the cost of performance", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-MinCache", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-MinCache", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AustinMroz/ComfyUI-MinCache", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:24.451134Z", + "description": "Nodes: that we currently provide the package only for x86-64 linux, such as Ubuntu or Debian, and Python 3.8, 3.9, and 3.10.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-Motion-Vector-Extractor", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Motion-Vector-Extractor", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-Motion-Vector-Extractor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Shraknard", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:08.752595Z", + "description": "Custom node for ComfyUI that makes parts of the image transparent (face, background...)", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI-Remover", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Remover", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Shraknard/ComfyUI-Remover", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "WUYUDING2583", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:45.617315Z", + "description": "This node enables integration between ComfyUI and external services by adding callback capabilities to the image saving process. When an image is saved, the node automatically call your webhook with your specified URL with custom data.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-Save-Image-Callback", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Save Image With Callback", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/WUYUDING2583/ComfyUI-Save-Image-Callback", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yuvraj108c", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:18.332942Z", + "description": "This project provides a Tensorrt implementation for fast image upscaling inside ComfyUI (3-4x faster)", + "downloads": 0, + "github_stars": 146, + "icon": "", + "id": "ComfyUI-Upscaler-Tensorrt", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Upscaler TensorRT", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yuvraj108c/ComfyUI-Upscaler-Tensorrt", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "azure-dragon-ai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:13.437282Z", + "description": "Nodes:ImageScore, Loader, Image Processor, Real Image Processor, Fake Image Processor, Text Processor. ComfyUI Nodes for ClipScore", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-ClipScore-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ClipScore-Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/azure-dragon-ai/ComfyUI-ClipScore-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Aerse", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:32.454545Z", + "description": "ComfyUI-Seed-Nodes is a custom node library that extends the functionality of ComfyUI, offering advanced image loading and pixelation tools.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI-Seed-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Seed-Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Aerse/ComfyUI-Seed-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "pkpk", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:53.597093Z", + "description": "This is a custom node of ComfyUI that downloads and loads models from the input URL. The model is temporarily downloaded into memory and not saved to storage.\nThis could be useful when trying out models or when using various models on machines with limited storage. Since the model is downloaded into memory, expect higher memory usage than usual.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-TemporaryLoader", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-TemporaryLoader", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pkpkTech/ComfyUI-TemporaryLoader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "logtd", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:24.613766Z", + "description": "A set of nodes to track objects through videos using YOLO and other processors.", + "downloads": 0, + "github_stars": 19, + "icon": "", + "id": "ComfyUI-TrackingNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Tracking Nodes for Videos", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/logtd/ComfyUI-TrackingNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-01T03:05:30.728418Z", + "description": "CustomNode to manage prompts in YAML format.", + "downloads": 289, + "github_stars": 8, + "icon": "", + "id": "comfyui-NS-promptlist", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-01T03:05:31.115549Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "dc2c05d2-e363-4e18-9f38-5bb4c9014f66", + "node_id": "comfyui-NS-promptlist", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-NS-PromptList", + "publisher": { + "createdAt": "2024-08-25T00:48:09.246502Z", + "description": "", + "id": "nakamurashippo", + "logo": "", + "members": [], + "name": "Nakamura Shippo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/NakamuraShippo/ComfyUI-NS-PromptList", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-18T11:18:48.879907Z", + "description": "A collection of advanced edge detection nodes for ComfyUI that generate high-quality edge maps / contours for usage with ControlNet Canny / Anyline guidance.", + "downloads": 1142, + "github_stars": 7, + "icon": "", + "id": "VKRiez-Edge", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-18T11:18:50.05662Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "83929ace-fe39-4adf-8a87-1ef39f6a20a8", + "node_id": "VKRiez-Edge", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "VKRiez-Edge", + "publisher": { + "createdAt": "2025-03-17T07:22:51.702405Z", + "description": "", + "id": "vkriez", + "logo": "", + "members": [], + "name": "Vadim K.Riez", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/vadimcro/VKRiez-Edge", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "NMWave", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:02.442709Z", + "description": "A small set of useful nodes which aid with the tagging process by splitting tags and strings, alternating tags from multiple sources and removing duplicates.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-Nader-Tagging", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Image Captioning and Tagging Assistor Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/NMWave/ComfyUI-Nader-Tagging", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Tenney95", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:47.492308Z", + "description": "ComfyUI-NodeAligner is a lightweight ComfyUI layout plugin that includes features such as node alignment, distribution, and resizing. This plugin is designed to simplify layout adjustments in visual node editors or custom UI components, making node arrangement more convenient and efficient.", + "downloads": 0, + "github_stars": 131, + "icon": "", + "id": "ComfyUI-NodeAligner", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-NodeAligner", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Tenney95/ComfyUI-NodeAligner", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Ryuukeisyou", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:01.352294Z", + "description": "ComfyUI implemntation for [a/SyncTalk](https://github.com/ZiqiaoPeng/SyncTalk)", + "downloads": 0, + "github_stars": 39, + "icon": "", + "id": "ComfyUI-SyncTalk", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-SyncTalk", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Ryuukeisyou/ComfyUI-SyncTalk", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kijai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:59.790223Z", + "description": "Nodes to use [a/segment-anything-2](https://github.com/facebookresearch/segment-anything-2) for image or video segmentation.", + "downloads": 0, + "github_stars": 991, + "icon": "", + "id": "ComfyUI-segment-anything-2", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-segment-anything-2", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-segment-anything-2", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "leeguandong", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:18.290574Z", + "description": "The latest DIT architecture-based image generation model from Zhipu that supports Chinese text generation.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI_Cogview4", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Cogview4", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/leeguandong/ComfyUI_Cogview4", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "logtd", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:25.466274Z", + "description": "Nodes:Inversed Euler Sampler, Mix Noise with Latent, Combine Latent Noise", + "downloads": 0, + "github_stars": 16, + "icon": "", + "id": "ComfyUI-InversedNoise", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-InversedNoise", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/logtd/ComfyUI-InversedNoise", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-16T11:04:11.785758Z", + "description": "", + "downloads": 435, + "github_stars": 7, + "icon": "", + "id": "comfyui-ajonodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-16T11:04:12.175266Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5801866d-ffc5-405e-b3da-866269902544", + "node_id": "comfyui-ajonodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI-AjoNodes", + "publisher": { + "createdAt": "2025-04-16T09:46:00.333731Z", + "description": "", + "id": "adamreading", + "logo": "", + "members": [], + "name": "AJO-reading", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AJO-reading/ComfyUI-AjoNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:13.319152Z", + "description": "ComfyUI node for [a/Open-Sora-Plan](https://github.com/PKU-YuanGroup/Open-Sora-Plan)", + "downloads": 0, + "github_stars": 50, + "icon": "", + "id": "ComfyUI-Open-Sora-Plan", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Open-Sora-Plan", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-Open-Sora-Plan", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "A4P7J1N7M05OT", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:24.877281Z", + "description": "A barebones ComfyUI wrapper for [a/PixelOE](https://github.com/KohakuBlueleaf/PixelOE).\nI cannot promise any support, if there is someone who wants to make a proper node, please do.", + "downloads": 0, + "github_stars": 11, + "icon": "", + "id": "ComfyUI-PixelOE-Wrapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-PixelOE-Wrapper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/A4P7J1N7M05OT/ComfyUI-PixelOE-Wrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Chan-0312", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:49.940028Z", + "description": "Welcome to ComfyUI Prompt Preview, where you can visualize the styles from [sdxl_prompt_styler](https://github.com/twri/sdxl_prompt_styler).", + "downloads": 0, + "github_stars": 34, + "icon": "", + "id": "ComfyUI-Prompt-Preview", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Prompt-Preview", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Chan-0312/ComfyUI-Prompt-Preview", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "discus0434", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:37.901914Z", + "description": "Simple ComfyUI node that predicts the score of an aesthetic image with SigLIP-based predictor.", + "downloads": 0, + "github_stars": 13, + "icon": "", + "id": "comfyui-aesthetic-predictor-v2-5", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Aesthetic Predictor V2.5", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/discus0434/comfyui-aesthetic-predictor-v2-5", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-15T14:12:34.418056Z", + "description": "shangxiaobao.com deployment platform, turn your comfyUI workflow into an APP on shangxiaobao.com", + "downloads": 790, + "github_stars": 1, + "icon": "", + "id": "comfyui-aiugc", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-15T14:12:38.200652Z", + "dependencies": [ + "aiofiles", + "pydantic", + "opencv-python", + "imageio-ffmpeg", + "# logfire" + ], + "deprecated": false, + "downloadUrl": "", + "id": "47eef87d-342c-40b6-ae15-5a0956326992", + "node_id": "comfyui-aiugc", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-aiugc", + "publisher": { + "createdAt": "2024-09-15T08:24:24.306013Z", + "description": "", + "id": "w00dy", + "logo": "", + "members": [], + "name": "w00dy@shangxiaobao.com", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ronaldzgithub/ComfyUI-aiugc", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-04T13:12:38.736525Z", + "description": "A python port of pixelit by giventofly.", + "downloads": 201, + "github_stars": 1, + "icon": "", + "id": "comfyui-arzumata-pixelit", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-04T13:12:39.228178Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b433c9a8-b5be-4234-b652-914ee17df914", + "node_id": "comfyui-arzumata-pixelit", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ARZUMATA-PixelIt", + "publisher": { + "createdAt": "2025-04-08T07:24:45.111404Z", + "description": "", + "id": "arzumata", + "logo": "", + "members": [], + "name": "ARZUMATA", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ARZUMATA/ComfyUI-ARZUMATA-PixelIt", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "huixingyun", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:54.182561Z", + "description": "Some custom nodes used for pimg (a comfyui controller deployed in huixingyun).", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-HX-Pimg", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-HX-Pimg", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/huixingyun/ComfyUI-HX-Pimg", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:20.603299Z", + "description": "ComfyUI Gemma", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "ComfyUI-Gemma", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Gemma", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-Gemma", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "bear2b", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:35.863054Z", + "description": "This node applies a custom 4x4 color matrix to an image using GPU acceleration via PyTorch.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui-argo-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ColorMatrixGPU Node for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bear2b/comfyui-argo-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-14T13:21:27.110999Z", + "description": "A set of custom nodes that are using Anthropic's Claude models for describing images and transforming texts.", + "downloads": 960, + "github_stars": 4, + "icon": "", + "id": "comfyui-claude", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-14T13:21:30.994373Z", + "dependencies": [ + "anthropic>=0.36.0", + "pillow>=10.2.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e3f6a968-8226-448a-ae44-61c5652cf8c9", + "node_id": "comfyui-claude", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Claude", + "publisher": { + "createdAt": "2024-10-14T11:38:25.307278Z", + "description": "", + "id": "tkreuziger", + "logo": "", + "members": [], + "name": "Tristan Kreuziger", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tkreuziger/comfyui-claude", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:14.190846Z", + "description": "ComfyUI MuseTalk", + "downloads": 0, + "github_stars": 269, + "icon": "", + "id": "ComfyUI-MuseTalk", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-MuseTalk", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-MuseTalk", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "SpaceKendo", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:20.288185Z", + "description": "This is node replaces the init_image conditioning for the [a/Stable Video Diffusion](https://github.com/Stability-AI/generative-models) image to video model with text embeds, together with a conditioning frame. The conditioning frame is a set of latents.", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "ComfyUI-svd_txt2vid", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Text to video for Stable Video Diffusion in ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SpaceKendo/ComfyUI-svd_txt2vid", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-09T21:25:17.764911Z", + "description": "Drift Johnson's XTTS nodes", + "downloads": 799, + "github_stars": 3, + "icon": "", + "id": "DJZ-XTTS", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-09T21:25:18.153404Z", + "dependencies": [ + "coqui-tts" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b230b3fe-a813-4abc-bdbf-3ddef33cee2f", + "node_id": "DJZ-XTTS", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "DJZ-XTTS", + "publisher": { + "createdAt": "2024-08-27T08:12:40.017079Z", + "description": "", + "id": "driftjohnson", + "logo": "", + "members": [], + "name": "Drift Johnson", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MushroomFleet/DJZ-XTTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:16.229525Z", + "description": "ComfyUI [a/AniPortrait](https://github.com/Zejun-Yang/AniPortrait)", + "downloads": 0, + "github_stars": 252, + "icon": "", + "id": "ComfyUI-AniPortrait", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-AniPortrait", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-AniPortrait", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kale4eat", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:20.799393Z", + "description": "Text file utility for ComfyUI", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-text-file-util", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-text-file-util", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kale4eat/ComfyUI-text-file-util", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "k-komarov", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:37.051405Z", + "description": "Save Your Image to BunnyStorage", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui-bunny-cdn-storage", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-bunny-cdn-storage", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/k-komarov/comfyui-bunny-cdn-storage", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "icesun963", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:09.438571Z", + "description": "Download the model from huggingface and put it in any directory.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI_HFDownLoad", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "HFDownLoad Node for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/icesun963/ComfyUI_HFDownLoad", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ai-shizuka", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:36.07339Z", + "description": "Nodes:ImageLoader, ImageSaver, ImagesSaver, ImageResize, ImageSize, GFPGANNode, MaskAddNode, Video Load, ...", + "downloads": 0, + "github_stars": 15, + "icon": "", + "id": "ComfyUI-tbox", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-tbox", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ai-shizuka/ComfyUI-tbox", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "westNeighbor", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:08.446334Z", + "description": "Super fast tensorrt performance with accuate pose estimation of dwpose model, giving the detecting threshold control, plus pose image render and pose json format output. Fine control for pose plotting.", + "downloads": 0, + "github_stars": 15, + "icon": "", + "id": "ComfyUI-ultimate-openpose-estimator", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ultimate-openpose-estimator", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/westNeighbor/ComfyUI-ultimate-openpose-estimator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "talesofai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:05.426811Z", + "description": "This is an image/video/workflow browser and manager for ComfyUI. You could add image/video/workflow to collections and load it to ComfyUI. You will be able to use your collections everywhere.", + "downloads": 0, + "github_stars": 592, + "icon": "", + "id": "comfyui-browser", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Browser", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/talesofai/comfyui-browser", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "fblissjr", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:02.357764Z", + "description": "This custom node set for ComfyUI provides a DatasetBatchNode for automated, sequential processing of datasets, particularly useful for iterative training or batched image/video generation workflows.", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "ComfyUI-DatasetHelper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Dataset Helper & Batch Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fblissjr/ComfyUI-DatasetHelper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-04T02:12:35.822648Z", + "description": "Custom nodes for deforum workflows", + "downloads": 626, + "github_stars": 17, + "icon": "\ud83c\udfc4\u200d\u2642\ufe0f", + "id": "comfyui-deforum", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-30T19:25:35.260269Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b8947efa-2143-4b4d-b900-aa2d13f76d19", + "node_id": "comfyui-deforum", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.4.1" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-Deforum", + "publisher": { + "createdAt": "2025-06-04T01:59:27.085564Z", + "description": "", + "id": "deforum", + "logo": "", + "members": [], + "name": "deforum", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/deforum-art/deforum-comfy-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-11T01:37:38.548659Z", + "description": "A comprehensive ComfyUI extension for creating, previewing, and analyzing DCI (DSG Combined Icons) format files. Supports multi-state icons, multi-tone variants, scaling factors, and advanced metadata analysis with complete Chinese localization. Also provides universal binary file loading/saving and base64 encoding/decoding nodes for general file processing workflows.", + "downloads": 197, + "github_stars": 1, + "icon": "https://raw.githubusercontent.com/zccrs/comfyui-dci/master/resources/icon.svg", + "id": "comfyui-dci", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-11T01:37:38.912308Z", + "dependencies": [ + "Pillow>=8.0.0", + "numpy>=1.19.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "106f7fa3-f8b9-43fb-8c7a-7088b2ac8dc4", + "node_id": "comfyui-dci", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "DCI Image Export Extension", + "publisher": { + "createdAt": "2025-06-10T13:34:54.338089Z", + "description": "", + "id": "zccrs", + "logo": "", + "members": [], + "name": "zccrs", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zccrs/comfyui-dci", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "tags": [] + }, + { + "author": "space-nuko", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:39.2791Z", + "description": "Modularized version of Disco Diffusion for use with ComfyUI.", + "downloads": 0, + "github_stars": 54, + "icon": "", + "id": "ComfyUI-Disco-Diffusion", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Disco Diffusion", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/space-nuko/ComfyUI-Disco-Diffusion", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "0xbitches", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:39.910851Z", + "description": "This custom node implements a Latent Consistency Model sampler in ComfyUI. (LCM)", + "downloads": 0, + "github_stars": 257, + "icon": "", + "id": "ComfyUI-LCM", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Latent Consistency Model for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/0xbitches/ComfyUI-LCM", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Nlar", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:10.165508Z", + "description": "Front end ComfyUI nodes for CartoonSegmentation Based upon the work of the CartoonSegmentation repository this project will provide a front end to some of the features.", + "downloads": 0, + "github_stars": 16, + "icon": "", + "id": "ComfyUI_CartoonSegmentation", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_CartoonSegmentation", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Nlar/ComfyUI_CartoonSegmentation", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chflame163", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:25.761258Z", + "description": "The nodes detached from ComfyUI Layer Style are mainly those with complex requirements for dependency packages.", + "downloads": 0, + "github_stars": 402, + "icon": "", + "id": "ComfyUI_LayerStyle_Advance", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_LayerStyle_Advance", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chflame163/ComfyUI_LayerStyle_Advance", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "logtd", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:33.442849Z", + "description": "ComfyUI nodes to use [a/DiLightNet](https://github.com/iamNCJ/DiLightNet).\nThese nodes can run DiLightNet, but the Dust3r or BlenderPy implementations to create lighting are not included. Expect those to be added to seperate repos when time allows.", + "downloads": 0, + "github_stars": 11, + "icon": "", + "id": "ComfyUI-DiLightNet", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-DiLightNet", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/logtd/ComfyUI-DiLightNet", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "zhongpei", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:29.498298Z", + "description": "Enhancing Image Restoration. (ref:[a/InstructIR](https://github.com/mv-lab/InstructIR))", + "downloads": 0, + "github_stars": 71, + "icon": "", + "id": "ComfyUI-InstructIR", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI for InstructIR", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zhongpei/ComfyUI-InstructIR", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "SimonHeese", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:52.957474Z", + "description": "NODES:Animated Offset Padding, Animated Rotation & Zoom", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI_AnimationNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_AnimationNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SimonHeese/ComfyUI_AnimationNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Tlant", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:52.975624Z", + "description": "Use ollama to generate prompts based on reference text in comfyui.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-OllamaPromptsGeneratorTlant", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-OllamaPromptsGeneratorTlant", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Tlant/ComfyUI-OllamaPromptsGeneratorTlant", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yuvraj108c", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:14.115132Z", + "description": "Transcribe audio and add subtitles to videos using Whisper in ComfyUI", + "downloads": 0, + "github_stars": 121, + "icon": "", + "id": "ComfyUI-Whisper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Whisper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yuvraj108c/ComfyUI-Whisper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yuvraj108c", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:20.404306Z", + "description": "This project provides an experimental Tensorrt implementation for ultra fast face restoration inside ComfyUI.\nNote: This project doesn't do pre/post processing. It only works on cropped faces for now.", + "downloads": 0, + "github_stars": 22, + "icon": "", + "id": "ComfyUI-Facerestore-Tensorrt", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Facerestore TensorRT", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yuvraj108c/ComfyUI-Facerestore-Tensorrt", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-16T01:14:04.665441Z", + "description": "\ud83d\ude80 Picks a random IMAGE file from a directory and provides you with the IMAGE and its filepath as a STRING! This awesome tool brings a touch of randomness to your files and images, making your file management tasks a breeze.", + "downloads": 1455, + "github_stars": 3, + "icon": "\ud83c\udfb2", + "id": "comfyui-get-random-file", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-19T03:10:39.810585Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "6fe3fbd2-0803-465b-8d54-dd965b962334", + "node_id": "comfyui-get-random-file", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Get-Random-File", + "publisher": { + "createdAt": "2024-08-16T00:53:52.116798Z", + "description": "", + "id": "chriscoletech", + "logo": "", + "members": [], + "name": "ChrisColeTech", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ChrisColeTech/ComfyUI-Get-Random-File", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "fmatray", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:55.910381Z", + "description": "Nodes for ComfyUI in order to generate battelmaps", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI_BattlemapGrid", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_BattlemapGrid", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fmatray/ComfyUI_BattlemapGrid", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:29.25691Z", + "description": "This is an ComfyUI implementation of LightGlue to generate motion brush", + "downloads": 0, + "github_stars": 48, + "icon": "", + "id": "ComfyUI-LightGlue", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-LightGlue", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-LightGlue", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "logtd", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:32.738296Z", + "description": "experimental node pack to test using reference videos for their motion.", + "downloads": 0, + "github_stars": 41, + "icon": "", + "id": "ComfyUI-MotionThiefExperiment", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-MotionThiefExperiment", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/logtd/ComfyUI-MotionThiefExperiment", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "logtd", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:28.982358Z", + "description": "Nodes to use [a/Smoothed Energy Guidance](https://github.com/SusungHong/SEG-SDXL) for ComfyUI.", + "downloads": 0, + "github_stars": 39, + "icon": "", + "id": "ComfyUI-SEGAttention", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-SEGAttention", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/logtd/ComfyUI-SEGAttention", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "logtd", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:29.743583Z", + "description": "ComfyUI Nodes to use [a/SSR Encoder:Encoding Selective Subject Representation for Subject-Driven Generation](https://github.com/Xiaojiu-z/SSR_Encoder).", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-SSREncoder", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-SSREncoder", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/logtd/ComfyUI-SSREncoder", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "CC-BryanOttho", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:51.937192Z", + "description": "This package provides three custom nodes designed to streamline workflows involving API requests, dynamic text manipulation based on API responses, and image posting to APIs. These nodes are particularly useful for automating interactions with APIs, enhancing text-based workflows with dynamic data, and facilitating image uploads.", + "downloads": 0, + "github_stars": 23, + "icon": "", + "id": "ComfyUI_API_Manager", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_API_Manager", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/CC-BryanOttho/ComfyUI_API_Manager", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AbyssBadger0", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:56.444007Z", + "description": "Nodes:ImageOverlap-badger, FloatToInt-badger, IntToString-badger, FloatToString-badger, ImageNormalization-badger, ImageScaleToSide-badger, NovelToFizz-badger.", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "ComfyUI_BadgerTools", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_BadgerTools", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AbyssBadger0/ComfyUI_BadgerTools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kinfolk0117", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:48.614276Z", + "description": "Gridswapper takes a batch of latents and spreads them over the necessary amount of grids. It then automatically shuffles the images in the grids for each step. So, a batch of 12 latents for a 2x2 grid will generate 3 grid images in each step. It will then shuffle around the images for the next step. This makes it possible for all images to influence the others during the denoising process. This approach works well for generating 2-4 grids.", + "downloads": 0, + "github_stars": 30, + "icon": "", + "id": "ComfyUI_GridSwapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Gridswapper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kinfolk0117/ComfyUI_GridSwapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-18T16:14:18.270399Z", + "description": "A powerful workflow scheduling extension for ComfyUI that enables automated daily execution of workflows with an intuitive web interface ,Adding shutdown computer after workflow node", + "downloads": 223, + "github_stars": 7, + "icon": "", + "id": "scheduledtask", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-15T12:08:40.939102Z", + "dependencies": [ + "schedule>=1.2.0", + "requests>=2.25.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "265e43d0-13bf-4160-9a4b-912063edaf14", + "node_id": "scheduledtask", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ScheduledTask", + "publisher": { + "createdAt": "2025-06-15T13:14:15.653234Z", + "description": "", + "id": "dseditor", + "logo": "", + "members": [], + "name": "dseditor", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dseditor/ComfyUI-ScheduledTask", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "richinsley", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:09.520588Z", + "description": "Nodes:LFO_Triangle, LFO_Sine, SawtoothNode, SquareNode, PulseNode. ComfyUI custom nodes to create Low Frequency Oscillators.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "Comfy-LFO", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfy-LFO", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/richinsley/Comfy-LFO", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ADDOOR", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:00.804827Z", + "description": "A collection of batch operation toolkits suitable for ComfyUI", + "downloads": 0, + "github_stars": 50, + "icon": "", + "id": "ComfyUI-Addoor", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Addoor", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Eagle-CN/ComfyUI-Addoor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yuvraj108c", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:16.732043Z", + "description": "This extension provides a ComfyUI Custom Node implementation of the [a/Depth-Anything-Tensorrt](https://github.com/spacewalk01/depth-anything-tensorrt) in Python for ultra fast depth map generation", + "downloads": 0, + "github_stars": 108, + "icon": "", + "id": "ComfyUI-Depth-Anything-Tensorrt", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Depth Anything TensorRT", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yuvraj108c/ComfyUI-Depth-Anything-Tensorrt", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jianzhichun", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:37.309839Z", + "description": "ComfyUI-Easyai is a powerful extension for ComfyUI that enables users to share workflows and models to easyai.", + "downloads": 0, + "github_stars": 21, + "icon": "", + "id": "ComfyUI-Easyai", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Easyai", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jianzhichun/ComfyUI-Easyai", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yuvraj108c", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:17.615696Z", + "description": "Convert Text-to-Speech inside ComfyUI using [a/Piper](https://github.com/rhasspy/piper)", + "downloads": 0, + "github_stars": 28, + "icon": "", + "id": "ComfyUI-PiperTTS", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI PiperTTS", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yuvraj108c/ComfyUI-PiperTTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "MyShell", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:15.32782Z", + "description": "This repository provides utility nodes for defining inputs and outputs in ComfyUI workflows. These nodes are essential for running ShellAgent apps with ComfyUI, but they can also be used independently to specify input/output variables and their requirements explicitly.", + "downloads": 0, + "github_stars": 22, + "icon": "", + "id": "ComfyUI-ShellAgent-Plugin", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ShellAgent-Plugin", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/myshell-ai/ComfyUI-ShellAgent-Plugin", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "TZOOTZ", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:35.41493Z", + "description": "The TZOOTZ VHS Effect Node is designed for multimedia creators who want to blend digital precision with analog imperfection \u2194\ufe0f. Inspired by retro VHS aesthetics, this node lets you apply grain, color bleeding, saturation adjustments, and more, giving any image a touch of analog warmth and noise.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-TZOOTZ_VHS", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "TZOOTZ VHS Effect Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TZOOTZ/ComfyUI-TZOOTZ_VHS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "StarAsh042", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:23.483873Z", + "description": "RollingArtist is a ComfyUI node designed to generate artist prompt texts with random weights, suitable for text-to-image generation models. The node reads an artist list from a CSV file and generates combined prompts based on the parameters.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI_RollingArtist", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_RollingArtist", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/StarAsh042/ComfyUI_RollingArtist", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ZHO-ZHO-ZHO", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:31.526467Z", + "description": "Unofficial implementation of BRIA RMBG Model for ComfyUI.", + "downloads": 0, + "github_stars": 812, + "icon": "", + "id": "ComfyUI-BRIA_AI-RMBG", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-BRIA_AI-RMBG", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ZHO-ZHO-ZHO/ComfyUI-BRIA_AI-RMBG", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "JJ", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:44.545824Z", + "description": "An extension for ComfyUI that adds utility functions and nodes not available in the default setup.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-Jtils", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Jtils", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cnbjjj/ComfyUI-Jtils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smthemex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:41.011018Z", + "description": "[a/CSD_MT](https://github.com/Snowfallingplum/CSD-MT) is a method about 'Content-Style Decoupling for Unsupervised Makeup Transfer without Generating Pseudo Ground Truth', you can use it in comfyUI.", + "downloads": 0, + "github_stars": 18, + "icon": "", + "id": "ComfyUI_CSD_MT", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_CSD_MT", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_CSD_MT", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ai-liam", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:00.138562Z", + "description": "Nodes: LiamLibLoadImage, LiamLibImageToGray, LiamLibSaveImg, LiamLibFillImage, PreviewReliefImage, GetBetterDepthImage, LiamLibSaveText", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "comfyui-liam", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "LiamUtil", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ai-liam/comfyui-liam", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-26T05:01:31.585435Z", + "description": "\u8fd9\u662f\u4e00\u4e2a\u7528\u4e8eComfyUI\u7684\u751f\u547d\u6e38\u620f\u81ea\u5b9a\u4e49\u8282\u70b9\uff0c\u652f\u6301\u52a8\u6001\u8fd0\u884c\u548c\u5b9e\u65f6\u63a7\u5236\u3002\nA Conway's Game of Life custom node for ComfyUI with dynamic execution and real-time control\n", + "downloads": 299, + "github_stars": 1, + "icon": "", + "id": "comfyui-lifegame", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-26T05:01:32.0342Z", + "dependencies": [ + "numpy>=1.22.0", + "Pillow>=9.0.0", + "aiohttp>=3.8.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "ccfd1337-660e-43a2-9d09-380661f1a2f8", + "node_id": "comfyui-lifegame", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-LifeGame", + "publisher": { + "createdAt": "2025-03-23T10:37:28.760389Z", + "description": "", + "id": "assemly", + "logo": "", + "members": [], + "name": "\u5361\u8010\u57fa\u7684\u53cd\u590d\u624b", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/assemly/comfyui-lifegame", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "logtd", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:31.318707Z", + "description": "ComfyUI nodes to use [a/4D-Humans](ComfyUI nodes to use 4D-Humans)", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "ComfyUI-4DHumans", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-4DHumans", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/logtd/ComfyUI-4DHumans", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Nourepide", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:41.559008Z", + "description": "Allor is a plugin for ComfyUI with an emphasis on transparency and performance.", + "downloads": 0, + "github_stars": 263, + "icon": "", + "id": "ComfyUI-Allor", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Allor Plugin", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Nourepide/ComfyUI-Allor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "caleboleary", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:03.494812Z", + "description": "This ComfyUI node library builds upon the work done to train the [a/Arc2Face](https://github.com/foivospar/Arc2Face) model by foivospar. It provides a set of nodes for ComfyUI that allow users to extract face embeddings, generate images based on these embeddings, and perform image-to-image transformations.", + "downloads": 0, + "github_stars": 44, + "icon": "", + "id": "ComfyUI-Arc2Face", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Arc2Face ComfyUI Node Library", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/caleboleary/ComfyUI-Arc2Face", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "nux1111", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:17.603614Z", + "description": "Run ComfyUI workflows on multiple local GPUs/networked machines with options to edit the json values within comfyui.\nOriginal repo: [a/city96/ComfyUI_NetDist](https://github.com/city96/ComfyUI_NetDist)", + "downloads": 0, + "github_stars": 31, + "icon": "", + "id": "ComfyUI_NetDist_Plus", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_NetDist_Plus", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nux1111/ComfyUI_NetDist_Plus", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Franck-Demongin", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:58.288928Z", + "description": "A custom node for translating prompts with Google Translate or DeeplL directly in ComfyUI.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "NX_Translator", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "NX_Translator", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Franck-Demongin/NX_Translator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "stormcenter", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:23.302212Z", + "description": "ComfyUI-AutoSplitGridImage is a custom node for ComfyUI that provides intelligent image splitting functionality. It combines edge detection for column splits and uniform division for row splits, offering a balanced approach to grid-based image segmentation.", + "downloads": 0, + "github_stars": 33, + "icon": "", + "id": "ComfyUI-AutoSplitGridImage", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-AutoSplitGridImage", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/stormcenter/ComfyUI-AutoSplitGridImage", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Tr1dae", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:16.478997Z", + "description": "Simple addition to add noise to an image. Found on reddit", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-Dequality", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Dequality", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Tr1dae/ComfyUI-Dequality", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "GeekyGhost", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:04.914305Z", + "description": "A powerful and feature-rich custom node collection for ComfyUI that integrates the Kokoro TTS (Text-to-Speech) system with advanced voice modification capabilities. This package allows you to generate natural-sounding speech and apply various voice effects within ComfyUI workflows.", + "downloads": 0, + "github_stars": 32, + "icon": "", + "id": "ComfyUI-Geeky-Kokoro-TTS", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Geeky-Kokoro-TTS", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/GeekyGhost/ComfyUI-Geeky-Kokoro-TTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AuroBit", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:38.66788Z", + "description": "A ComfyUI custom node that simply integrates the [a/OOTDiffusion](https://github.com/levihsu/OOTDiffusion) functionality.", + "downloads": 0, + "github_stars": 462, + "icon": "", + "id": "ComfyUI-OOTDiffusion", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI OOTDiffusion", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AuroBit/ComfyUI-OOTDiffusion", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yuvraj108c", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:21.910178Z", + "description": "This project is an unofficial ComfyUI implementation of [a/Video Depth Anything](https://github.com/DepthAnything/Video-Depth-Anything), for depth estimation on long videos without compromising quality, consistency, or generalization ability.", + "downloads": 0, + "github_stars": 30, + "icon": "", + "id": "ComfyUI-Video-Depth-Anything", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Video Depth Anything", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yuvraj108c/ComfyUI-Video-Depth-Anything", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-14T13:34:55.604426Z", + "description": "A simple password to protect ComfyUI.", + "downloads": 1319, + "github_stars": 176, + "icon": "", + "id": "comfyui-login", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-14T13:34:55.896946Z", + "dependencies": [ + "aiohttp", + "aiohttp_session[secure]", + "Jinja2", + "bcrypt", + "pycryptodome" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6a1eaa17-f19b-455b-a7bf-8f0bb8768d2b", + "node_id": "comfyui-login", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-Login", + "publisher": { + "createdAt": "2024-06-06T03:23:40.036774Z", + "description": "", + "id": "liusida", + "logo": "", + "members": [], + "name": "liusida", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/liusida/ComfyUI-Login", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-25T13:51:12.899615Z", + "description": "Support for directly inputting Chinese characters in the CLIP text box. The system will automatically translate them into English and replace the punctuation marks as well.", + "downloads": 556, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-Chinese-CLIP", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-25T13:51:13.317836Z", + "dependencies": [ + "translate" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7c2dad2b-bdff-4291-8583-6bd62ff11321", + "node_id": "ComfyUI-Chinese-CLIP", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Chinese-CLIP", + "publisher": { + "createdAt": "2025-03-25T13:44:38.513325Z", + "description": "", + "id": "leeneo", + "logo": "", + "members": [], + "name": "leeneo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/leeneo/ComfyUI-Chinese-CLIP", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "logtd", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:35.62713Z", + "description": "ComfyUI nodes for image editing with Flux, such as RF-Inversion and more", + "downloads": 0, + "github_stars": 1352, + "icon": "", + "id": "ComfyUI-Fluxtapoz", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Fluxtapoz", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/logtd/ComfyUI-Fluxtapoz", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "shiimizu", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:51.096752Z", + "description": "ComfyUI reference implementation for [a/PhotoMaker](https://github.com/TencentARC/PhotoMaker) models.\nNOTE: PhotoMaker V2 is supported.", + "downloads": 0, + "github_stars": 286, + "icon": "", + "id": "ComfyUI-PhotoMaker-Plus", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI PhotoMaker Plus", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shiimizu/ComfyUI-PhotoMaker-Plus", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "bradsec", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:05.288298Z", + "description": "A custom node for Stable Diffusion ComfyUI to enable easy selection of image resolutions for SDXL SD15 SD21", + "downloads": 0, + "github_stars": 12, + "icon": "", + "id": "ComfyUI_ResolutionSelector", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ResolutionSelector for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bradsec/ComfyUI_ResolutionSelector", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yytdfc", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:03.651836Z", + "description": "Amazon Bedrock is a fully managed service that offers a choice of high-performing foundation models (FMs) from leading AI companies. This repo is the ComfyUI nodes for Bedrock service. You could invoke the foundation model in your ComfyUI pipeline.", + "downloads": 0, + "github_stars": 26, + "icon": "", + "id": "comfyui-llm-node-for-amazon-bedrock", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Amazon Bedrock nodes for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/aws-samples/comfyui-llm-node-for-amazon-bedrock", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "mikkel", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:52.610097Z", + "description": "The ComfyUI Mask Bounding Box Plugin provides functionalities for selecting a specific size mask from an image. Can be combined with ClipSEG to replace any aspect of an SDXL image with an SD1.5 output.", + "downloads": 0, + "github_stars": 30, + "icon": "", + "id": "comfyui-mask-boundingbox", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI - Mask Bounding Box", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mikkel/comfyui-mask-boundingbox", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "mozman", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:30.84497Z", + "description": "This extension provides styler nodes for SDXL.\n\nNOTE: Due to the dynamic nature of node name definitions, ComfyUI-Manager cannot recognize the node list from this extension. The Missing nodes and Badge features are not available for this extension.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI_mozman_nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_mozman_nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mozman/ComfyUI_mozman_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ShmuelRonen", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:14.228555Z", + "description": "A ComfyUI custom node wrapper for JoyHallo - One-Shot Audio-Driven Talking Head Generation.", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "ComfyUI-JoyHallo_wrapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-JoyHallo_wrapper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShmuelRonen/ComfyUI-JoyHallo_wrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "TripleHeadedMonkey", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:24.52508Z", + "description": "This extension provides various SDXL Prompt Stylers. See: [a/youtube](https://youtu.be/WBHI-2uww7o?si=dijvDaUI4nmx4VkF)", + "downloads": 0, + "github_stars": 58, + "icon": "", + "id": "ComfyUI_MileHighStyler", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_MileHighStyler", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TripleHeadedMonkey/ComfyUI_MileHighStyler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "StartHua", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:33.295197Z", + "description": "SegFormer model fine-tuned on ATR dataset for clothes segmentation but can also be used for human segmentation!\nDownload the weight and put it under checkpoints: [a/https://huggingface.co/mattmdjaga/segformer_b2_clothes](https://huggingface.co/mattmdjaga/segformer_b2_clothes)", + "downloads": 0, + "github_stars": 91, + "icon": "", + "id": "Comfyui_segformer_b2_clothes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui_segformer_b2_clothes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/StartHua/Comfyui_segformer_b2_clothes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-30T10:11:05.265945Z", + "description": "This extension collapses 'future warning' messages in your Console", + "downloads": 804, + "github_stars": 3, + "icon": "", + "id": "comfyui-futurewarningignore", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-30T10:11:05.558779Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "28547fce-d01c-41fa-a4d9-b98229431b92", + "node_id": "comfyui-futurewarningignore", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-FutureWarningIgnore", + "publisher": { + "createdAt": "2024-05-30T09:36:45.831776Z", + "description": "", + "id": "gourieff", + "logo": "", + "members": [], + "name": "\u0415\u0432\u0433\u0435\u043d\u0438\u0439 \u0413\u0443\u0440\u044c\u0435\u0432 | Eugene Gourieff | \u53e4\u4ec1 ", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Gourieff/ComfyUI-FutureWarningIgnore", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "spro", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:14.821011Z", + "description": "Nodes: Latent Mirror. Node to mirror a latent along the Y (vertical / left to right) or X (horizontal / top to bottom) axis.", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "comfyui-mirror", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Latent Mirror node for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/spro/comfyui-mirror", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jax-explorer", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:30.739088Z", + "description": "for comfyonline dynamic loader\ncomfyonline is comfyui cloud website", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "comfyui-model-dynamic-loader", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-model-dynamic-loader", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jax-explorer/comfyui-model-dynamic-loader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-08T22:19:09.311137Z", + "description": "A ComfyUI extension that enables seamless sharing of AI-generated images and videos directly to Discord.", + "downloads": 535, + "github_stars": 10, + "icon": "", + "id": "comfyui-discordsend", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-08T22:19:09.689408Z", + "dependencies": [ + "requests>=2.25.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "0bd0d67f-6b9f-4802-843d-b5c149f2a500", + "node_id": "comfyui-discordsend", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-DiscordSend", + "publisher": { + "createdAt": "2024-12-21T21:30:01.317798Z", + "description": "", + "id": "aemotionstudio", + "logo": "", + "members": [], + "name": "AEmotionStudio", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AEmotionStudio/ComfyUI-DiscordSend", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "FizzleDorf", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:48.703952Z", + "description": "A ComfyUI implementation of Facebook Meta's [a/AITemplate](https://github.com/facebookincubator/AITemplate) repo for faster inference using cpp/cuda. This new repo is behind the old version but is a much more stable foundation to keep AIT online. Please be patient as the repo will eventually include the same features as before.\nNOTE: You can find the old AIT extension in the legacy channel.", + "downloads": 0, + "github_stars": 52, + "icon": "", + "id": "ComfyUI-AIT", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-AIT", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/FizzleDorf/ComfyUI-AIT", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-23T04:12:04.609486Z", + "description": "DRMN became DataSet\n\nComfyUI-DataSet\n\nhttps://github.com/daxcay/ComfyUI-DataSet", + "downloads": 827, + "github_stars": 52, + "icon": "images/logo.png", + "id": "comfyui-drmn", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-23T04:12:04.878593Z", + "dependencies": [ + "matplotlib", + "wordcloud", + "networkx", + "pygraphviz", + "pandas" + ], + "deprecated": true, + "downloadUrl": "", + "id": "a05dd032-0618-4cc0-b29b-692be1c95b53", + "node_id": "comfyui-drmn", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "LICENSE", + "name": "Don't Download this", + "publisher": { + "createdAt": "2024-05-23T03:32:31.512265Z", + "description": "", + "id": "daxcay", + "logo": "", + "members": [], + "name": "Daxton Caylor", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/daxcay/ComfyUI-DataSet", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "bmad4ever", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:45.526075Z", + "description": "ComfyUI extension that adds undo (and redo) functionality.", + "downloads": 0, + "github_stars": 47, + "icon": "", + "id": "ComfyUI-Bmad-DirtyUndoRedo", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Bmad-DirtyUndoRedo", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bmad4ever/ComfyUI-Bmad-DirtyUndoRedo", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "magic-quill", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:35.97597Z", + "description": "Towards GPT-4 like large language and visual assistant.", + "downloads": 0, + "github_stars": 121, + "icon": "", + "id": "ComfyUI_MagicQuill", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_MagicQuill", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/magic-quill/ComfyUI_MagicQuill", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "nisimjoseph", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:28.952937Z", + "description": "A custom node for ComfyUI that generates creative and detailed prompts using OpenAI's GPT models.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI_OpenAI-Prompter", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI OpenAI Prompter", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nisimjoseph/ComfyUI_OpenAI-Prompter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kinfolk0117", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:45.615714Z", + "description": "Nodes:TileSplit, TileMerge.", + "downloads": 0, + "github_stars": 56, + "icon": "", + "id": "ComfyUI_SimpleTiles", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "SimpleTiles", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kinfolk0117/ComfyUI_SimpleTiles", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "NicholasMcCarthy", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:40.318871Z", + "description": "ComfyUI custom nodes to apply various latent travel techniques.", + "downloads": 0, + "github_stars": 15, + "icon": "", + "id": "ComfyUI_TravelSuite", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_TravelSuite", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/NicholasMcCarthy/ComfyUI_TravelSuite", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ray", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:53.087795Z", + "description": "Nodes:Load ICLight Model,Apply ICLight,Simple Light Source,Calculate Normal Map", + "downloads": 0, + "github_stars": 51, + "icon": "", + "id": "ComfyUI-Gaffer", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui's gaffer(ComfyUI native implementation of IC-Light. )", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/huagetai/ComfyUI-Gaffer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "holchan", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:51.175228Z", + "description": "A ComfyUI node to download models(Checkpoints and LoRA) from external links and act as an output standalone node.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-ModelDownloader", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ModelDownloader", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/holchan/ComfyUI-ModelDownloader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "logtd", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:36.377624Z", + "description": "ComfyUI nodes to edit videos using Genmo Mochi", + "downloads": 0, + "github_stars": 293, + "icon": "", + "id": "ComfyUI-MochiEdit", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-MochiEdit", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/logtd/ComfyUI-MochiEdit", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "hinablue", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:10.142176Z", + "description": "Nodes:3D Pose Editor", + "downloads": 0, + "github_stars": 203, + "icon": "", + "id": "ComfyUI_3dPoseEditor", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI 3D Pose Editor", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hinablue/ComfyUI_3dPoseEditor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "shadowcz007", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:35.954168Z", + "description": "Nodes:Edit Mask", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "comfyui-edit-mask", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-edit-mask", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shadowcz007/comfyui-edit-mask", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "exectails", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:06.244371Z", + "description": "Nodes that facilitate simpler information providing and gathering, such as Text Box, Show Data and Token Counter nodes.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "comfyui-et_infoutils", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Info Utils", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/exectails/comfyui-et_infoutils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Jash-Vora", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:32.072257Z", + "description": "[a/FitDiT](https://arxiv.org/abs/2411.10499): Advancing the Authentic Garment Details for High-fidelity Virtual Try-onon", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-GarmentDiT", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "FitDiT", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Jash-Vora/ComfyUI-GarmentDiT", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "rhplus0831", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:32.808148Z", + "description": "Another mobile frontend for ComfyUI", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyMepi", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyMepi", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/rhplus0831/ComfyMepi", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "githubYiheng", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:45.114435Z", + "description": "Nodes:Change Image Border", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI_Change_IMAGE_BOREDER", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Change_IMAGE_BOREDER", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/githubYiheng/ComfyUI_Change_IMAGE_BOREDER", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "leeguandong", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:09.073891Z", + "description": "ComfyUI for [a/LLaSM](https://huggingface.co/spaces/LinkSoul/LLaSM)", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI_LLaSM", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_LLaSM", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/leeguandong/ComfyUI_LLaSM", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "an90ray", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:58.274233Z", + "description": "Nodes: RErouter, String (RE), Int (RE)", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI_RErouter_CustomNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_RErouter_CustomNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/an90ray/ComfyUI_RErouter_CustomNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "massao000", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:08.994957Z", + "description": "Aspect ratio selector for ComfyUI based on [a/sd-webui-ar](https://github.com/alemelis/sd-webui-ar?tab=readme-ov-file).", + "downloads": 0, + "github_stars": 10, + "icon": "", + "id": "ComfyUI_aspect_ratios", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_aspect_ratios", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/massao000/ComfyUI_aspect_ratios", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-24T13:09:50.701872Z", + "description": "Nodes to use [a/faster-whisper](https://github.com/SYSTRAN/faster-whisper) for transcription.", + "downloads": 914, + "github_stars": 7, + "icon": "", + "id": "comfyui-faster-whisper", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-24T13:09:54.458739Z", + "dependencies": [ + "faster-whisper==1.0.3", + "soundfile" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e18951c6-19ef-4d28-9743-6bae5f17cf30", + "node_id": "comfyui-faster-whisper", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-faster-whisper", + "publisher": { + "createdAt": "2024-08-24T13:04:03.484731Z", + "description": "", + "id": "jhj0517", + "logo": "", + "members": [], + "name": "jhj0517", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jhj0517/ComfyUI-faster-whisper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "bronkula", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:14.423837Z", + "description": "Nodes:Fit Size From Int/Image/Resize, Load Image And Resize To Fit, Pick Image From Batch/List, Crop Image Into Even Pieces, Image Region To Mask... A simple set of nodes for making an image fit within a bounding box", + "downloads": 0, + "github_stars": 49, + "icon": "", + "id": "comfyui-fitsize", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-fitsize", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bronkula/comfyui-fitsize", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-29T11:25:35.757018Z", + "description": "Movie Tools is a set of custom nodes, designed to simplify saving and loading batches of images with enhanced functionality like subfolder management and batch image handling.", + "downloads": 1577, + "github_stars": 3, + "icon": "", + "id": "comfyui-movie-tools", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-29T11:25:39.53868Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a094028a-9958-457f-84fd-cc00ec286e43", + "node_id": "comfyui-movie-tools", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Movie-Tools", + "publisher": { + "createdAt": "2024-06-21T07:46:02.481672Z", + "description": "", + "id": "nazgut", + "logo": "", + "members": [], + "name": "Big Idea Technology", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Big-Idea-Technology/ComfyUI-Movie-Tools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AuroBit", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:39.356528Z", + "description": "A ComfyUI custom node that simply integrates the [a/animate-anyone-reproduction](https://github.com/bendanzzc/AnimateAnyone-reproduction) functionality.", + "downloads": 0, + "github_stars": 37, + "icon": "", + "id": "ComfyUI-AnimateAnyone-reproduction", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-AnimateAnyone-reproduction", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AuroBit/ComfyUI-AnimateAnyone-reproduction", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chandlergis", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:11.695408Z", + "description": "Nodes:ImageRequestNode", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-IMG_Query", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-IMG_Query", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chandlergis/ComfyUI-IMG_Query", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "l1yongch1", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:00.598876Z", + "description": "In addition to achieving conventional single-image, single-round reverse engineering, it can also achieve single-image multi-round and multi-image single-round reverse engineering. Moreover, the Phi model has a better understanding of prompts.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI_PhiCaption", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_PhiCaption", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/l1yongch1/ComfyUI_PhiCaption", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "KoreTeknology", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:40.771246Z", + "description": "This is set of custom nodes for your ComfyUI local installation. It offers the very basic nodes that are missing in the official 'Vanilla' package. It is a research Node based project on Artificial Intelligence using ComfyUI visual editor. This repository also includes a set of workflows to test the nodes.\nNOTE:Renamed from 'ComfyUI-Compositing-Nodes-Pack'", + "downloads": 0, + "github_stars": 10, + "icon": "", + "id": "ComfyUI-Nai-Production-Nodes-Pack", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Production Nodes Pack", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/KoreTeknology/ComfyUI-Nai-Production-Nodes-Pack", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "nchenevey1", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:05.85899Z", + "description": "Provides nodes geared towards using GIMP as a frontend for ComfyUI.", + "downloads": 0, + "github_stars": 9, + "icon": "", + "id": "comfyui-gimp-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-gimp-nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nchenevey1/comfyui-gimp-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-08T22:00:40.075314Z", + "description": "comfy ui custom node that returns an image from a batch based on selected criteria such as RGB value, brightness, etc (credits to chris goringe's custom nodes tutorial ).", + "downloads": 1412, + "github_stars": 0, + "icon": "", + "id": "comfyui-hh-image-selector", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-08T22:03:19.783033Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "95584472-d1b6-497a-80d9-75cb3aed42a5", + "node_id": "comfyui-hh-image-selector", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "LICENSE", + "name": "ComfyUI-HH-Image-Selector", + "publisher": { + "createdAt": "2024-07-08T21:48:47.84297Z", + "description": "", + "id": "haohaocreatesss", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/haohaocreates/ComfyUI-HH-Image-Selector", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Easymode-ai", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:51.997453Z", + "description": "Comfyui [a/BPT](https://github.com/whaohan/bpt) Wrapper (Trimesh in/out connections)", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "ComfyUI-BPT", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-BPT", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Easymode-ai/ComfyUI-BPT", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Fantaxico", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:16.166318Z", + "description": "Node:GCP Storage Node. Support google-cloud-storage.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-GCP-Storage", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-GCP-Storage", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Fantaxico/ComfyUI-GCP-Storage", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-02T12:50:00.370258Z", + "description": "A custom node for ComfyUI that enables integration with Google Sheets. It allows reading from and writing to Google Sheets directly from ComfyUI workflows, making it easy to import and export data.", + "downloads": 832, + "github_stars": 8, + "icon": "", + "id": "comfyui-google-sheets-integration", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-02T14:55:20.284148Z", + "dependencies": [ + "google-auth-oauthlib>=0.4.6", + "google-auth-httplib2>=0.1.0", + "google-api-python-client>=2.0.0", + "cryptography>=36.0.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "123ec43f-c0a4-4ffd-948f-0b636f9d79f6", + "node_id": "comfyui-google-sheets-integration", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Google Sheets Integration - by PabloGFX", + "publisher": { + "createdAt": "2024-09-23T16:40:33.561343Z", + "description": "", + "id": "pablogfx", + "logo": "", + "members": [], + "name": "PabloGFX", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lazniak/comfyui_google_sheets_integration", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "hiforce", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:45.167342Z", + "description": "Custom nodes pack provided by [a/HiFORCE](https://www.hiforce.net/) for ComfyUI. This custom node helps to conveniently enhance images through Sampler, Upscaler, Mask, and more.\nNOTE:You should install [a/ComfyUI-Impact-Pack](https://github.com/ltdrdata/ComfyUI-Impact-Pack). Many optimizations are built upon the foundation of ComfyUI-Impact-Pack.", + "downloads": 0, + "github_stars": 9, + "icon": "", + "id": "comfyui-hiforce-plugin", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui HiFORCE Plugin", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hiforce/comfyui-hiforce-plugin", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "cdb-boop", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:03.900772Z", + "description": "A simple node to round an input image up (pad) or down (crop) to the nearest integer multiple. Padding offset from left/bottom and the padding value are adjustable.", + "downloads": 0, + "github_stars": 10, + "icon": "", + "id": "comfyui-image-round", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-image-round", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cdb-boop/comfyui-image-round", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "dafeng012", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:49.625802Z", + "description": "This extension integrates ebsynth_utility into comfyui, and I've written some of my own nodes for secondary use.", + "downloads": 0, + "github_stars": 15, + "icon": "", + "id": "comfyui-imgmake", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-imgmake", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dafeng012/comfyui-imgmake", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ZHO-ZHO-ZHO", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:37.781463Z", + "description": "ComfyUI-DeepSeek-JanusPro", + "downloads": 0, + "github_stars": 103, + "icon": "", + "id": "ComfyUI-DeepSeek-JanusPro", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-DeepSeek-JanusPro", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ZHO-ZHO-ZHO/ComfyUI-DeepSeek-JanusPro", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "magekinnarus", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:24.185074Z", + "description": "Node to set v-prediction sampling when using SDXL and other models that may not have the necessary metadata to identify it as a v-prediction model. This node is useful for quantized models since they lack the necessary metadata.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-V-Prediction-Node", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-V-Prediction-Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/magekinnarus/ComfyUI-V-Prediction-Node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "HM-RunningHub", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:50.188745Z", + "description": "ComfyUI_RH_OminiControl is a ComfyUI plugin based on OminiControl By splitting the pipeline load, the plugin efficiently runs on NVIDIA RTX 4090 GPUs. Additionally, the spatial and fill functionalities are generated using the schnell model, reducing the number of sampling steps and improving overall efficiency.", + "downloads": 0, + "github_stars": 137, + "icon": "", + "id": "ComfyUI_RH_OminiControl", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_RH_OminiControl", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/HM-RunningHub/ComfyUI_RH_OminiControl", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "tzwm", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:39.02463Z", + "description": "Calculate the execution time of all nodes.", + "downloads": 0, + "github_stars": 158, + "icon": "", + "id": "comfyui-profiler", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Profiler", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tzwm/comfyui-profiler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jeffrey2212", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:40.438764Z", + "description": "The Pony Character Prompt Picker node reads an Excel file specified by the user, allows manual selection of a tab, and randomly picks a cell value from a specified column, starting from row 3 to the end. The selected value is output as a string to the next node in the ComfyUI workflow.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-PonyCharacterPrompt", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Pony Character Prompt Picker for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jeffrey2212/ComfyUI-PonyCharacterPrompt", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "mirabarukaso", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:19.333499Z", + "description": "Slice regions of the canvas and convert them to masks for regional conditions widh PNG preview output. And a few support nodes.", + "downloads": 0, + "github_stars": 134, + "icon": "", + "id": "ComfyUI_Mira", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Mira", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mirabarukaso/ComfyUI_Mira", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chflame163", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:28.157756Z", + "description": "ComfyUI custom node of OmniGen project.", + "downloads": 0, + "github_stars": 142, + "icon": "", + "id": "ComfyUI_OmniGen_Wrapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_OmniGen_Wrapper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chflame163/ComfyUI_OmniGen_Wrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "shahkoorosh", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:16.673893Z", + "description": "This is a ComfyUI plugin that makes it easier to call and run workflows from RunningHub in your local ComfyUI setup.", + "downloads": 0, + "github_stars": 80, + "icon": "", + "id": "ComfyUI_RH_APICall", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_RH_APICall", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/HM-RunningHub/ComfyUI_RH_APICall", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "leeguandong", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:12.043499Z", + "description": "ComfyUI for [a/style-aligned](https://github.com/google/style-aligned)", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI_Style_Aligned", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI nodes to use Style-Aligned", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/leeguandong/ComfyUI_Style_Aligned", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-24T09:47:12.438513Z", + "description": "A prompt helper for ComfyUI, based on prompter.fofr.ai", + "downloads": 908, + "github_stars": 75, + "icon": "\ud83e\udeb4", + "id": "comfyui-prompter-fofrai", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-10T16:40:11.584065Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "93c1e0b5-82a8-4bbd-80c5-152b1ebacd94", + "node_id": "comfyui-prompter-fofrai", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Prompter-fofrAI", + "publisher": { + "createdAt": "2024-06-20T11:47:18.175863Z", + "description": "", + "id": "fofr", + "logo": "", + "members": [], + "name": "fofr", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fofr/comfyui-prompter-fofrai", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Taremin", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:50.168349Z", + "description": "Instead of LoraLoader or HypernetworkLoader, it receives a prompt and loads and applies LoRA or HN based on the specifications within the prompt. The main purpose of this custom node is to allow changes without reconnecting the LoraLoader node when the prompt is randomly altered, etc.", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "comfyui-prompt-extranetworks", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Prompt ExtraNetworks", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Taremin/comfyui-prompt-extranetworks", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Intersection98", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:06.721959Z", + "description": "A collection of post processing nodes for ComfyUI, dds image post-processing adjustment capabilities to the ComfyUI.", + "downloads": 0, + "github_stars": 13, + "icon": "", + "id": "ComfyUI_MX_post_processing-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-MX-post-processing-nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Intersection98/ComfyUI_MX_post_processing-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "violet-chen", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:34.565502Z", + "description": "Nodes: Psd2Png.", + "downloads": 0, + "github_stars": 20, + "icon": "", + "id": "comfyui-psd2png", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-psd2png", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/violet-chen/comfyui-psd2png", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ruiqutech", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:54.264654Z", + "description": "Nodes of EvaluateMultiple1, EvaluateMultiple3...\nSupport the execution of any fragment of Python code, generating multiple outputs from multiple inputs.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-RuiquNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "RuiquNodes for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ruiqutech/ComfyUI-RuiquNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "leeguandong", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:13.025413Z", + "description": "NODES:HF ModelLoader, Show Images, Text2Image Inference, Decode Latent, Show CrossAttn Map, Show SelfAttn Map", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "ComfyUI_VisualAttentionMap", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_VisualAttentionMap", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/leeguandong/ComfyUI_VisualAttentionMap", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "prozacgod", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:59.403576Z", + "description": "A simple, quick, and dirty implementation of multiple workspaces within ComfyUI.", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "comfyui-pzc-multiworkspace", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Multi-Workspace", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/prozacgod/comfyui-pzc-multiworkspace", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Inzaniak", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:01.384274Z", + "description": "Ranbooru is an extension for the comfyUI. The purpose of this extension is to add a node that gets a random set of tags from boorus pictures. This is mostly being used to help me test my checkpoints on a large variety of", + "downloads": 0, + "github_stars": 19, + "icon": "", + "id": "comfyui-ranbooru", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Ranbooru for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Inzaniak/comfyui-ranbooru", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "aisabervisionlab", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:50.032186Z", + "description": "This is a simple node for connecting images. For pictures of the same size, users can choose to fill in vertical in the parameter to connect the pictures vertically or fill in horizontal to connect the pictures horizontally.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI_merge_ASVL", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_merge_ASVL", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/aisabervisionlab/ComfyUI_merge_ASVL", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Zeks", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:19.676518Z", + "description": "A set of nodes for rapidfiring the half backed latents, cleaning up obvious bad generations and automatically queueing the rest to fully generate.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui-rapidfire", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-rapidfire", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Zeks/comfyui-rapidfire", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "TheBarret", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:02.323165Z", + "description": "Nodes:Prompter, RF Noise, SeedMod.", + "downloads": 0, + "github_stars": 9, + "icon": "", + "id": "ZSuite", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ZSuite", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TheBarret/ZSuite", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "gisu", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:46.692757Z", + "description": "Collection of nodes for the automation of workflows", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "comfyui-foxpack", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "foxpack", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gisu/comfyui-foxpack", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-04T16:27:28.03716Z", + "description": "ComfyUI custom nodes for refiners models", + "downloads": 1222, + "github_stars": 832, + "icon": "https://raw.githubusercontent.com/finegrain-ai/refiners/main/assets/dropy.png", + "id": "comfyui-refiners", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-20T19:06:06.674806Z", + "dependencies": [ + "refiners @ git+https://github.com/finegrain-ai/refiners.git", + "huggingface_hub>=0.25.0", + "transformers>=4.40.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6a7548b9-05e9-443f-a8b7-7a32600cf465", + "node_id": "comfyui-refiners", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "refiners", + "publisher": { + "createdAt": "2024-09-04T16:24:24.606467Z", + "description": "", + "id": "finegrain", + "logo": "", + "members": [], + "name": "Finegrain.ai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/finegrain-ai/refiners", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "linshier", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:15.463848Z", + "description": "Node:SendBase64ToRemote. To connect to another ComfyUI server.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "comfyui-remote-tools", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-remote-tools", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/linshier/comfyui-remote-tools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kijai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:02.362763Z", + "description": "Wrapper for PyramidFlow -models: [a/https://github.com/jy0205/Pyramid-Flow](https://github.com/jy0205/Pyramid-Flow)", + "downloads": 0, + "github_stars": 369, + "icon": "", + "id": "ComfyUI-PyramidFlowWrapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI PyramidFlow Wrapper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-PyramidFlowWrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "cubiq", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:55.152772Z", + "description": "custom node for ComfyUI to perform simple math operations", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI_SimpleMath", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Simple Math", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cubiq/ComfyUI_SimpleMath", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "spacepxl", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:28.148939Z", + "description": "Unofficial ComfyUI implementation of [a/RAVE](https://rave-video.github.io/)", + "downloads": 0, + "github_stars": 93, + "icon": "", + "id": "ComfyUI-RAVE", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-RAVE", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/spacepxl/ComfyUI-RAVE", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:46.631029Z", + "description": "a comfyui custom node for [a/Retrieval-based-Voice-Conversion-WebUI](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI.git), you can Voice-Conversion in comfyui now!\nNOTE: make sure ffmpeg is worked in your commandline for Linux", + "downloads": 0, + "github_stars": 24, + "icon": "", + "id": "ComfyUI-RVC", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-RVC", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/ComfyUI-RVC", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kinfolk0117", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:47.724754Z", + "description": "Use [a/Pilgram2](https://github.com/mgineer85/pilgram2) filters in ComfyUI", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "ComfyUI_Pilgram", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Pilgram", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kinfolk0117/ComfyUI_Pilgram", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "StartHua", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:31.597305Z", + "description": "Nodes:segformer_clothes, segformer_agnostic, segformer_remove_bg, stabel_vition. Nodes for model dress up.", + "downloads": 0, + "github_stars": 215, + "icon": "", + "id": "ComfyUI_Seg_VITON", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Seg_VITON", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/StartHua/ComfyUI_Seg_VITON", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "sweetndata", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:11.525231Z", + "description": "NODES:Sticker Compositer.\nbackground frame + sticker", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI_Sticker_Compositer", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Sticker_Compositer", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sweetndata/ComfyUI_Sticker_Compositer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Miyuutsu", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:57.253169Z", + "description": "Simple ComfyUI Custom Node to enable saving checkpoints with V-Pred ZTSNR tensors and metadata.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "comfyui-save-vpred", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-save-vpred", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Miyuutsu/comfyui-save-vpred", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jjkramhoeft", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:06.994489Z", + "description": "Nodes: SDXLRecommendedImageSize, JjkText, JjkShowText, JjkConcat. A set of custom nodes for ComfyUI - focused on text and parameter utility", + "downloads": 0, + "github_stars": 27, + "icon": "", + "id": "ComfyUI-Jjk-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Jjk-Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jjkramhoeft/ComfyUI-Jjk-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Poseidon-fan", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:54.771605Z", + "description": "ComfyUI custom_node that publish output image to rabbit_mq", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-RabbitMQ-Publisher", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-RabbitMQ-Publisher", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Poseidon-fan/ComfyUI-RabbitMQ-Publisher", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ali1234", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:22.709447Z", + "description": "Implements iteration over sequences within a single workflow run. [w/NOTE: This node replaces the execution of ComfyUI for iterative processing functionality.]", + "downloads": 0, + "github_stars": 116, + "icon": "", + "id": "comfyui-job-iterator", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-job-iterator", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ali1234/comfyui-job-iterator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-23T15:25:07.772651Z", + "description": "ComfyUI-KokoroTTS is a powerful text-to-speech node for ComfyUI. It leverages the KokoroTTS to convert text into natural-sounding speech, supporting multiple languages.", + "downloads": 942, + "github_stars": 12, + "icon": "", + "id": "comfyui-kokorotts", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-24T14:17:07.350815Z", + "dependencies": [ + "kokoro>=0.3.4", + "torch>=1.7.0", + "torchaudio>=0.7.0", + "numpy>=1.19.0", + "soundfile>=0.10.3", + "huggingface_hub", + "requests" + ], + "deprecated": false, + "downloadUrl": "", + "id": "ee6cea7e-e4cc-48c1-880a-448ad5caee8e", + "node_id": "comfyui-kokorotts", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-KokoroTTS", + "publisher": { + "createdAt": "2024-07-01T23:11:45.570672Z", + "description": "", + "id": "ailab", + "logo": "", + "members": [], + "name": "AILab", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/1038lab/ComfyUI-KokoroTTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-25T13:25:48.656692Z", + "description": "The system selects and loads preset.", + "downloads": 782, + "github_stars": 1, + "icon": "", + "id": "comfyui-mittimi-load-preset", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-25T13:25:52.451889Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b4a640ed-2b0e-42cd-8deb-47af06b71770", + "node_id": "comfyui-mittimi-load-preset", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_mittimiLoadPreset", + "publisher": { + "createdAt": "2024-08-25T10:31:13.036141Z", + "description": "", + "id": "mittimi", + "logo": "", + "members": [], + "name": "mittimi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mittimi/ComfyUI_mittimiLoadPreset", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "motivated3", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:18.047854Z", + "description": "With the MiaoShua creator's end, you can use this plugin to upload debugged workflows for consumer end users to use.", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "comfyui-shua-creator", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI MiaoShua Creator", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/motivated3/comfyui-shua-creator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "blepping", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:27.192699Z", + "description": "ComfyUI node to apply the ResAdapter Unet patch for SD1.5 models", + "downloads": 0, + "github_stars": 31, + "icon": "", + "id": "ComfyUI-ApplyResAdapterUnet", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ApplyResAdapterUnet", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/blepping/ComfyUI-ApplyResAdapterUnet", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-19T08:05:04.306904Z", + "description": "Simple box padding for Comfyui [Simple Padding](https://github.com/alexlawford/comfyui-simple-padding).", + "downloads": 604, + "github_stars": 0, + "icon": "", + "id": "comfyui-simple-padding", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-19T09:06:34.901116Z", + "dependencies": [ + "" + ], + "deprecated": false, + "downloadUrl": "", + "id": "8fcdc90c-dfb3-49e1-8127-54f0fe242990", + "node_id": "comfyui-simple-padding", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Simple-Padding", + "publisher": { + "createdAt": "2025-02-19T07:42:28.986103Z", + "description": "", + "id": "alexlawford", + "logo": "", + "members": [], + "name": "Alex Lawford", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alexlawford/comfyui-simple-padding", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "teward", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:55.219795Z", + "description": "Nodes: HelperNodes_MultilineStringLiteral, HelperNodes_StringLiteral, HelperNodes_Steps, HelperNodes_CfgScale, HelperNodes_WidthHeight, HelperNodes_SchedulerSelector, HelperNodes_SamplerSelector, ...", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "ComfyUI-Helper-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Helper-Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/teward/ComfyUI-Helper-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "logtd", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:28.283784Z", + "description": "A set of nodes to use Reference UNets", + "downloads": 0, + "github_stars": 45, + "icon": "", + "id": "ComfyUI-RefUNet", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-RefUNet", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/logtd/ComfyUI-RefUNet", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kevinmcmahondev", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:11.026552Z", + "description": "A ComfyUI node that detects the skin tone of a person in an image and matches it to the standard emoji skin tone palette.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "comfyui-skin-tone-detector", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Skin Tone Detector for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kevinmcmahondev/comfyui-skin-tone-detector", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "raindrop313", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:19.259648Z", + "description": "ComfyUI nodes that support SD3/SD3.5 in FlowEdit", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "ComfyUI_SD3_Flowedit", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_SD3_Flowedit", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/raindrop313/ComfyUI_SD3_Flowedit", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Aegis72", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:14.887734Z", + "description": "This is a straight clone of Azazeal04's all-in-one styler menu, which was removed from gh on Jan 21, 2024. I have made no changes to the files at all.", + "downloads": 0, + "github_stars": 52, + "icon": "", + "id": "comfyui-styles-all", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-styles-all", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/aegis72/comfyui-styles-all", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kijai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:45.36773Z", + "description": "Preliminary use of SVD in ComfyUI.\nNOTE: Quick Implementation, Unstable. See details on repositories.", + "downloads": 0, + "github_stars": 163, + "icon": "", + "id": "ComfyUI-SVD", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-SVD", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-SVD", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "shahkoorosh", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:15.699453Z", + "description": "ComfyUI nodes for 3D visualization.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "comfyui-sunflower-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-sunflower-nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/andygill/comfyui-sunflower-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "pkpkTech", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:54.313401Z", + "description": "Add a button to the menu to save and load the running queue and the pending queues.\nThis is intended to be used when you want to exit ComfyUI with queues still remaining.", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "ComfyUI-SaveQueues", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-SaveQueues", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pkpkTech/ComfyUI-SaveQueues", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AkashKarnatak", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:26.03572Z", + "description": "ComfyUI nodes for our product Faishme", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI_faishme", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_faishme", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AkashKarnatak/ComfyUI_faishme", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "davidgressett", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:48.839547Z", + "description": "This custom node allows you to load data from one or more CSV files, then feed that data into subsequent nodes in a ComfyUI workflow.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui-systemlevel", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "CartesianCSVNode for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/davidgressett/comfyui-systemlevel", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "GorillaFrame", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:21.931039Z", + "description": "This custom node for ComfyUI provides advanced background removal capabilities using the briaai/RMBG-2.0 model. It is designed to seamlessly integrate into the ComfyUI environment, offering users a powerful tool for image processing tasks.", + "downloads": 0, + "github_stars": 30, + "icon": "", + "id": "GF_nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "GFrbmg2", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gorillaframeai/GF_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "cubiq", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:58.431809Z", + "description": "This is an (very) advanced and (very) experimental custom node for the ComfyUI. It allows you to iteratively change the blocks weights of Flux models and check the difference each value makes.", + "downloads": 0, + "github_stars": 83, + "icon": "", + "id": "Block_Patcher_ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Flux blocks patcher sampler", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cubiq/Block_Patcher_ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-24T07:06:22.50854Z", + "description": "Run Python code, Outline, List, Four-quadrant grid, Nine-square grid", + "downloads": 1369, + "github_stars": 10, + "icon": "", + "id": "comfyui-teeth", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-07T05:17:21.827892Z", + "dependencies": [ + "opencv-python", + "torch", + "numpy", + "Pillow", + "google-genai" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d0b9f68a-8b25-4d34-9fe6-029f14557f6e", + "node_id": "comfyui-teeth", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Teeth", + "publisher": { + "createdAt": "2024-12-24T05:08:43.723792Z", + "description": "", + "id": "yashu", + "logo": "", + "members": [], + "name": "yashu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/steelan9199/ComfyUI-Teeth", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "un-seen", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:08.862613Z", + "description": "Nodes to perform tensor operations in ComfyUI", + "downloads": 0, + "github_stars": 28, + "icon": "", + "id": "comfyui-tensorops", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-tensorop", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/un-seen/comfyui-tensorops", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-11T21:30:32.169253Z", + "description": "HTML gives me a textarea like piece of shit.", + "downloads": 162, + "github_stars": 0, + "icon": "", + "id": "comfyui-textarea-is-shit", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-03T11:53:01.521761Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5f8f7b9c-d4f5-4e61-960d-746fdc5fba70", + "node_id": "comfyui-textarea-is-shit", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.13" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-textarea-is-shit", + "publisher": { + "createdAt": "2024-07-03T02:48:16.838562Z", + "description": "", + "id": "shinich39", + "logo": "", + "members": [], + "name": "shinich39", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shinich39/comfyui-textarea-is-shit", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Sieyalixnet", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:50.352711Z", + "description": "An easy custom node that makes the some loaders' input as Text instead of file selector.\nFor example, there are many characters in different loras respectively. If you want to generate different characters' pictures, you have to select corresponding lora, and then edit the prompt. It may cost much time.\nTo solve this problem, You can use it with a chrome extension https://github.com/Sieyalixnet/ComfyUI-Prompt-Formatter-Extension that makes the queue prompt easier when you dealing with massive loras and prompt.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI_Textarea_Loaders", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Textarea_Loaders", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Sieyalixnet/ComfyUI_Textarea_Loaders", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "leeguandong", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:10.155399Z", + "description": "Nodes:Load Video to Images, Image to Canny, ControlNet Model Loader, VEDit Model Loader, VEdit Sampler. [a/https://github.com/SingleZombie/DiffusersExample/tree/main/ReplaceAttn](https://github.com/SingleZombie/DiffusersExample/tree/main/ReplaceAttn)", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI_VideoEditing", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI nodes to use VideoEditing", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/leeguandong/ComfyUI_VideoEditing", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "morino-kumasan", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:57.650907Z", + "description": "Encode Prompt in TOML for ComfyUI.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui-toml-prompt", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-toml-prompt", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/morino-kumasan/comfyui-toml-prompt", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "nat-chan", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:26.175178Z", + "description": "Transceiver is a python library that swiftly exchanges fundamental data structures, specifically numpy arrays, between processes, optimizing AI inference tasks that utilize ComfyUI.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "comfyui-transceiver", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Transceiver\ud83d\udce1", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nat-chan/comfyui-transceiver", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-11T04:27:09.688842Z", + "description": "TensorRT Upscaler for ComfyUI", + "downloads": 572, + "github_stars": 1, + "icon": "", + "id": "comfyui-trtupscaler", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-11T04:27:10.070761Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "9898fb36-5fa9-4c46-9487-b08d34390ed1", + "node_id": "comfyui-trtupscaler", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "comfyui-trtupscaler", + "publisher": { + "createdAt": "2024-05-23T02:14:53.032875Z", + "description": "", + "id": "sugarknight", + "logo": "", + "members": [], + "name": "Sugar Knight", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sugarkwork/comfyui-trtupscaler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-30T12:08:01.657389Z", + "description": "An implementation to detect underage subjects in images for ComfyUI.", + "downloads": 230, + "github_stars": 0, + "icon": "", + "id": "comfyui-underage-filter", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-30T12:08:02.08763Z", + "dependencies": [ + "transformers==4.37.2", + "pillow==10.2.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "78267db1-96f4-46d8-ab94-dbb9c1424e45", + "node_id": "comfyui-underage-filter", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Underage Filter", + "publisher": { + "createdAt": "2025-05-04T06:45:20.212823Z", + "description": "", + "id": "mrcuddle", + "logo": "", + "members": [], + "name": "T.Ph", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/T-Ph525/ComfyUI-Underage-Filter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-23T15:03:26.88294Z", + "description": "TripoSG: High-Fidelity 3D Shape Synthesis using Large-Scale Rectified Flow Models", + "downloads": 831, + "github_stars": 0, + "icon": "", + "id": "comfyui-triposg", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-25T08:39:35.012783Z", + "dependencies": [ + "diffusers", + "transformers", + "einops", + "huggingface_hub", + "opencv-python", + "trimesh", + "omegaconf", + "scikit-image", + "numpy>=1.22.3", + "peft", + "jaxtyping", + "typeguard", + "diso", + "pymeshlab" + ], + "deprecated": false, + "downloadUrl": "", + "id": "0e365f8b-dc72-4bf9-861a-9b008cfd1fd6", + "node_id": "comfyui-triposg", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.1" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI-TripoSG", + "publisher": { + "createdAt": "2025-04-23T14:47:41.339669Z", + "description": "", + "id": "tungnguyen", + "logo": "", + "members": [], + "name": "Tung Nguyen", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tungnguyensipher/ComfyUI-TripoSG", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "VangengLab", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:01.734461Z", + "description": "We developed a custom_node for Liveportrait_v3 that enables flexible use on Comfyui to drive image-based emoji generation from photos.", + "downloads": 0, + "github_stars": 22, + "icon": "", + "id": "ComfyUI-LivePortrait_v3", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-LivePortrait_v3", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/VangengLab/ComfyUI-LivePortrait_v3", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "cenzijing", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:40.248391Z", + "description": "A ComfyUI custom node for creating mindmaps from markdown", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-Markmap", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Markmap", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cenzijing/ComfyUI-Markmap", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "shadowcz007", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:31.855496Z", + "description": "Nodes:Detect By Label.", + "downloads": 0, + "github_stars": 34, + "icon": "", + "id": "comfyui-ultralytics-yolo", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-ultralytics-yolo", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shadowcz007/comfyui-ultralytics-yolo", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-24T21:49:30.531034Z", + "description": "Use LibreTranslation in ComfyUI [a/https://github.com/LibreTranslate/LibreTranslate](https://github.com/LibreTranslate/LibreTranslate)", + "downloads": 1290, + "github_stars": 2, + "icon": "", + "id": "comfyui_libretranslate", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-24T21:49:30.813053Z", + "dependencies": [], + "deprecated": true, + "downloadUrl": "", + "id": "170af1b3-13ea-41a9-8241-b6f2fd34f6ef", + "node_id": "comfyui_libretranslate", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "LICENSE", + "name": "ComfyUI_LibreTranslate", + "publisher": { + "createdAt": "2024-06-24T21:35:09.610369Z", + "description": "", + "id": "seghier", + "logo": "", + "members": [], + "name": "seghier", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/seghier/ComfyUI_LibreTranslate", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "theally", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:57.126269Z", + "description": "Custom nodes for ComfyUI by TheAlly.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "19625", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "TheAlly's Custom Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://civitai.com/models/19625?modelVersionId=23296", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "leoleelxh", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:42.456853Z", + "description": "A minimalist node that calls LLMs, combined with one API, can call all language models, including local models.", + "downloads": 0, + "github_stars": 50, + "icon": "", + "id": "ComfyUI-LLMs", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-LLMs", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/leoleelxh/ComfyUI-LLMs", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "royceschultz", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:02.796499Z", + "description": "Send notifications when a workflow completes.", + "downloads": 0, + "github_stars": 15, + "icon": "", + "id": "ComfyUI-Notifications", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Notifications", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/royceschultz/ComfyUI-Notifications", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "lenskikh", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:19.10316Z", + "description": "Node:Prompt Worker. A text manipulation node for postprocessing of prompt.", + "downloads": 0, + "github_stars": 14, + "icon": "", + "id": "ComfyUI-Prompt-Worker", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Propmt Worker", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lenskikh/ComfyUI-Prompt-Worker", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ttulttul", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:43.181495Z", + "description": "This repo contains nodes for ComfyUI that implement some helpful operations on tensors, such as normalization.", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "ComfyUI-Tensor-Operations", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Tensor-Operations", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ttulttul/ComfyUI-Tensor-Operations", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ShmuelRonen", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:01.989304Z", + "description": "ComfyUI_Gemini_Flash is a custom node for ComfyUI, integrating the capabilities of the Gemini 1.5 Flash model. This node supports text and vision-based prompts, allowing users to analyze and adapt images to text prompts for text2image tasks.", + "downloads": 0, + "github_stars": 31, + "icon": "", + "id": "ComfyUI_Gemini_Flash", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Gemini_Flash", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShmuelRonen/ComfyUI_Gemini_Flash", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "shiimizu", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:50.386846Z", + "description": "The extension enables large image drawing & upscaling with limited VRAM via the following techniques:\n1.Two SOTA diffusion tiling algorithms: [a/Mixture of Diffusers](https://github.com/albarji/mixture-of-diffusers) and [a/MultiDiffusion](https://github.com/omerbt/MultiDiffusion)\n2.pkuliyi2015's Tiled VAE algorithm.", + "downloads": 0, + "github_stars": 460, + "icon": "", + "id": "ComfyUI-TiledDiffusion", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Tiled Diffusion & VAE for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shiimizu/ComfyUI-TiledDiffusion", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ChenDarYen", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:50.533949Z", + "description": "This is a ComfyUI implementation of the timestep shift technique used in [a/NitroFusion: High-Fidelity Single-Step Diffusion through Dynamic Adversarial Training.](https://arxiv.org/abs/2412.02030)\nFor more details, visit the official [a/NitroFusion GitHub repository](https://github.com/ChenDarYen/NitroFusion).", + "downloads": 0, + "github_stars": 9, + "icon": "", + "id": "ComfyUI-TimestepShiftModel", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-TimestepShiftModel", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ChenDarYen/ComfyUI-TimestepShiftModel", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "xuhongming251", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:22.742697Z", + "description": "ComfyUI processes local real-time camera feed and provides real-time preview of the result.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI_Camera", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Camera", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/xuhongming251/ComfyUI_Camera", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ronsantash", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:20.405662Z", + "description": "FlexiLoRALoader - A ComfyUI custom node for dynamic LoRA weight management. Apply multiple LoRAs with flexible weight patterns and randomization features for creative AI image generation.\nFeatures: \u2022 Multiple LoRA handling (up to 3) \u2022 Weight pattern presets \u2022 Random/Sequential mode \u2022 Debug logging support", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "Comfyui-flexi-lora-loader", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUIFlexiLoRALoader", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ronsantash/Comfyui-flexi-lora-loader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yolanother", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:00.572207Z", + "description": "Nodes: Prompt Agent, Prompt Agent (String). This script provides a prompt agent node for the Comfy UI stable diffusion client.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "DTAIComfyPromptAgent", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfy UI Prompt Agent", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yolanother/DTAIComfyPromptAgent", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yolanother", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:03.545183Z", + "description": "This extension introduces QR code nodes for the Comfy UI stable diffusion client. NOTE: ComfyUI qrcode extension required.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "DTAIComfyQRCodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfy UI QR Codes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yolanother/DTAIComfyQRCodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Jurdn", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:27.398957Z", + "description": "This node utilizes the Groq.com API to enhance prompts. (Place API key and main system prompt in the groq_config.json)", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-Jurdns-Groq-Node", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Jurdns Groq API Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jurdnisglobby/ComfyUI-Jurdns-Groq-Node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "troyxmccall", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:04.698661Z", + "description": "NODES:ScaleToTargetMegapixels.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-ScaleToTargetMegapixels", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ScaleToTargetMegapixels", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/troyxmccall/ComfyUI-ScaleToTargetMegapixels", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Makeezi", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:07.325828Z", + "description": "connection nodes for api requests, fully supports promptLAB", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-promptLAB", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-promptLAB", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Makeezi/ComfyUI-promptLAB", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "logtd", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:34.146516Z", + "description": "ComfyUI nodes to use [a/ViewCrafter](https://github.com/Drexubery/ViewCrafter/tree/main) for novel view synthesis.", + "downloads": 0, + "github_stars": 12, + "icon": "", + "id": "ComfyUI-ViewCrafter", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ViewCrafter", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/logtd/ComfyUI-ViewCrafter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "czcz1024", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:40.303623Z", + "description": "Nodes:FaceCompare", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "Comfyui-FaceCompare", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Face Compare", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/czcz1024/Comfyui-FaceCompare", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yuvraj108c", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:16.020863Z", + "description": "Nodes:Upscale Video Tensorrt", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-Vsgan", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Vsgan", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yuvraj108c/ComfyUI-Vsgan", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-06T14:23:04.042856Z", + "description": "Nodes:BBOXPadding, BBOXResize, ResizeKeepRatio.", + "downloads": 993, + "github_stars": 2, + "icon": "\u24c2\ufe0e", + "id": "comfyui_met_suit", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-06T14:23:05.75279Z", + "dependencies": [ + "pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a22be440-00de-4147-a11c-2d6b4f8777f9", + "node_id": "comfyui_met_suit", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "comfyui_met_suit", + "publisher": { + "createdAt": "2024-07-06T14:11:37.70238Z", + "description": "", + "id": "metncelik", + "logo": "", + "members": [], + "name": "Metin Celik", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/metncelik/comfyui_met_suit", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "thecooltechguy", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:16.045795Z", + "description": "Easily use Stable Video Diffusion inside ComfyUI!", + "downloads": 0, + "github_stars": 362, + "icon": "", + "id": "ComfyUI-Stable-Video-Diffusion", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Stable Video Diffusion", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/thecooltechguy/ComfyUI-Stable-Video-Diffusion", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-31T02:22:52.023396Z", + "description": "Image Browsing: browsing, download and delete.", + "downloads": 1634, + "github_stars": 16, + "icon": "", + "id": "comfyui-image-browsing", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-01T04:06:47.439426Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "188ea25d-fe10-4011-8132-b16e87e3c953", + "node_id": "comfyui-image-browsing", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.2.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Image-Browsing", + "publisher": { + "createdAt": "2024-09-27T03:24:28.19546Z", + "description": "", + "id": "hayden", + "logo": "", + "members": [], + "name": "hayden", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hayden-fr/ComfyUI-Image-Browsing", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "vahlok-alunmid", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:28.167433Z", + "description": "This extension provides two nodes to use with my experimental [a/ip-adapter finetune](https://civitai.com/models/1233692?modelVersionId=1390253) for NoobAI-XL style transfer. [a/Here](https://github.com/vahlok-alunmid/reForge-preprocessor_bigG_448) is the counterpart extension for Reforge WebUI.", + "downloads": 0, + "github_stars": 12, + "icon": "", + "id": "ComfyUI-ExtendIPAdapterClipVision", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ExtendIPAdapterClipVision", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/vahlok-alunmid/ComfyUI-ExtendIPAdapterClipVision", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "rohitsainier", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:29.131801Z", + "description": "A ComfyUI custom node package that allows downloading and organizing Instagram content directly in your ComfyUI Output folder", + "downloads": 0, + "github_stars": 18, + "icon": "", + "id": "ComfyUI-InstagramDownloader", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-InstagramDownloader", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/rohitsainier/ComfyUI-InstagramDownloader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T19:40:46.304952Z", + "description": "Kokoro is an open-weight TTS model with 82 million parameters.", + "downloads": 451, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-kokoro-TTS", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-12T19:40:46.696914Z", + "dependencies": [ + "onnxruntime-gpu", + "kokoro-onnx" + ], + "deprecated": false, + "downloadUrl": "", + "id": "36487e22-a7d3-4fc4-964e-712bf6e213f5", + "node_id": "ComfyUI-kokoro-TTS", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-kokoro-TTS", + "publisher": { + "createdAt": "2025-01-28T14:37:07.362488Z", + "description": "", + "id": "apacheone", + "logo": "", + "members": [], + "name": "apacheone", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Apache0ne/ComfyUI-kokoro", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-27T19:03:24.947594Z", + "description": "", + "downloads": 299, + "github_stars": 1, + "icon": "", + "id": "ComfyUI_KurtHokke_Nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-27T19:05:02.423026Z", + "dependencies": [ + "black" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1ce68716-a9b9-49ee-a651-d8386d4b71cf", + "node_id": "ComfyUI_KurtHokke_Nodes", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_KurtHokke_Nodes", + "publisher": { + "createdAt": "2025-03-05T18:35:56.006407Z", + "description": "", + "id": "kurthokke", + "logo": "", + "members": [], + "name": "KurtHokke", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/KurtHokke/ComfyUI_KurtHokke_Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-10T07:25:14.184101Z", + "description": "", + "downloads": 843, + "github_stars": 0, + "icon": "", + "id": "opttools", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-10T07:25:17.858352Z", + "dependencies": [ + "google-auth", + "google-auth-oauthlib", + "google-api-python-client", + "gspread", + "argostranslate" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c971d654-14ac-47dc-b0f4-7a4ad29be14b", + "node_id": "opttools", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "", + "name": "optTools", + "publisher": { + "createdAt": "2025-01-10T01:59:14.460986Z", + "description": "", + "id": "oputo", + "logo": "", + "members": [], + "name": "oputo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "SirWillance", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:03.913932Z", + "description": "Beginner-friendly nodes for prompt refinement in ComfyUI, including custom nodes for weighting, splitting, combining, catalogues, and the PromptRefiner for a simple prompt interface. For more info, join me on https://www.twitch.tv/sirwillance. Be one of the first 50 followers to get a FREE upgrade to the Standard Tier!", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "FoW_Suite_LIGHT", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Force of Will Suite Light", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SirWillance/FoW_Suite_LIGHT", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-08T13:44:49.157782Z", + "description": "ComfyUI nodes I need but cannot find.", + "downloads": 821, + "github_stars": 0, + "icon": "", + "id": "comfyui-zyd232-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-08T13:44:52.663401Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "839fa69f-5344-4ee4-996d-edbfbd282f47", + "node_id": "comfyui-zyd232-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-zyd232-Nodes", + "publisher": { + "createdAt": "2025-01-08T12:46:43.315828Z", + "description": "", + "id": "zyd232", + "logo": "", + "members": [], + "name": "zyd232", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zyd232/ComfyUI-zyd232-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-12T02:23:27.081555Z", + "description": "Custom nodes for connecting 3D scenes and ComfyUI workflows.", + "downloads": 822, + "github_stars": 21, + "icon": "", + "id": "playbook-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-12T02:23:30.986649Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "463d53ce-4a35-4f36-b742-62a0ce8c2bcd", + "node_id": "playbook-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "playbook-nodes", + "publisher": { + "createdAt": "2024-10-11T00:24:23.998762Z", + "description": "", + "id": "playbook", + "logo": "", + "members": [], + "name": "Playbook", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/playbook3d/playbook-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "conquestace", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:10.87138Z", + "description": "Upload images automatically to image hosting sites.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-ImageUploader", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Image Uploader", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/conquestace/ComfyUI-ImageUploader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Kayarte", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:55.398051Z", + "description": "GIS Processing Nodes for ComfyUI", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "GeoNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "GeoNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Kayarte/GeoNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Wakfull33", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:46.267749Z", + "description": "A custom node allowing to save images with CIVITAI readable datas", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-SaveImageCivitAI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-SaveImageCivitAI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Wakfull33/ComfyUI-SaveImageCivitAI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "shiimizu", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:51.869174Z", + "description": "ComfyUI node for Semantic-aware Guidance based on the [a/paper](https://arxiv.org/abs/2404.05384) 'Rethinking the Spatial Inconsistency in Classifier-Free Diffusion Guidance'", + "downloads": 0, + "github_stars": 12, + "icon": "", + "id": "ComfyUI-semantic-aware-guidance", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Semantic-aware Guidance (S-CFG)", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shiimizu/ComfyUI-semantic-aware-guidance", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yolanother", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:01.405424Z", + "description": "Nodes: Image URL to Text, Image to Text.", + "downloads": 0, + "github_stars": 20, + "icon": "", + "id": "DTAIImageToTextNode", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Image to Text Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yolanother/DTAIImageToTextNode", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kale4eat", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:20.077733Z", + "description": "String utility for ComfyUI", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-string-util", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-string-util", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kale4eat/ComfyUI-string-util", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "1zhangyy1", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:55.953122Z", + "description": "This is a ComfyUI node package that integrates with VIDU API, supporting features such as text-to-video, image-to-video, character-to-video generation, and video super-resolution.", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "comfyui-vidu-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI VIDU", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/1zhangyy1/comfyui-vidu-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AconexOfficial", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:38.421441Z", + "description": "Nodes to level up your workflows performance and streamline specific functions.", + "downloads": 0, + "github_stars": 9, + "icon": "", + "id": "ComfyUI_GOAT_Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI GOAT Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AconexOfficial/ComfyUI_GOAT_Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "shinich39", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:04.542726Z", + "description": "Load model generation data from civitai.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui-view-recommendations", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-view-recommendations", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shinich39/comfyui-view-recommendations", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "duchamps0305", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:41.298339Z", + "description": "a simple white extractor node for comfyui.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui-white-extractor", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-white-extractor", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/duchamps0305/comfyui-white-extractor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "meanin2", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:20.411645Z", + "description": "This custom node allows you to overlay a watermark image onto an existing image within ComfyUI.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "comfyui-watermarking", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Watermark Image Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/meanin2/comfyui-watermarking", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-23T18:59:28.576897Z", + "description": "Some additional audio utilites for use on top of Sample Diffusion ComfyUI Extension", + "downloads": 1113, + "github_stars": 4, + "icon": "", + "id": "comfyui-waveform-extensions", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-23T18:59:28.894441Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ba69d376-3699-4b52-a935-46e89b26341d", + "node_id": "comfyui-waveform-extensions", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-Waveform-Extensions", + "publisher": { + "createdAt": "2024-06-23T18:47:40.771378Z", + "description": "", + "id": "neural-not-work", + "logo": "", + "members": [], + "name": "NeuralNotWork", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/NeuralNotW0rk/ComfyUI-Waveform-Extensions", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Dr.Positliver", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:55.52847Z", + "description": "comfyui share models to oss conveniently.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "comfyui-zegr", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-zegr", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Positliver/comfyui-zegr", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-09T18:00:08.454253Z", + "description": "Generate random prompts easily for FMJ.", + "downloads": 284, + "github_stars": 4, + "icon": "", + "id": "comfyui_FMJ", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-16T12:57:24.997757Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "22357e8c-de7d-4cf7-90ec-47107c1e02ac", + "node_id": "comfyui_FMJ", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.6.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_FMJ", + "publisher": { + "createdAt": "2025-05-30T12:40:38.399521Z", + "description": "", + "id": "bulldog63", + "logo": "", + "members": [], + "name": "Bulldog68", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bulldog68/ComfyUI_FMJ", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-04T02:55:31.357334Z", + "description": "API call node for Third-party platforms both official and local. Support VLMs LLMs Dalle3 Flux-Pro(Support kontext now!!) etc(new Support gpt-image-1!!). And some little tools: img to b64 url, b64 url to img, b64 url to b64 data, reg text to word and ',' only, etc.", + "downloads": 769, + "github_stars": 10, + "icon": "", + "id": "comfyui_billbum_api_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-25T05:15:42.837686Z", + "dependencies": [ + "tenacity", + "openai", + "pillow", + "requests", + "torch", + "numpy", + "tiktoken" + ], + "deprecated": false, + "downloadUrl": "", + "id": "db8f046e-e39b-4998-8e91-484630556b64", + "node_id": "comfyui_billbum_api_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_BillBum_Nodes", + "publisher": { + "createdAt": "2024-10-22T04:04:40.717681Z", + "description": "", + "id": "billbum", + "logo": "", + "members": [], + "name": "billbum", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AhBumm/ComfyUI_BillBum_APIset_Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "ZHO-ZHO-ZHO", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:21.789784Z", + "description": "Unofficial implementation of APISR for ComfyUI, both image and video", + "downloads": 0, + "github_stars": 376, + "icon": "", + "id": "ComfyUI-APISR", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "APISR IN COMFYUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ZHO-ZHO-ZHO/ComfyUI-APISR", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-23T10:41:17.747328Z", + "description": "A modular system that adds randomness to prompt generation", + "downloads": 1625, + "github_stars": 0, + "icon": "", + "id": "comfyui-prompt-factory", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-26T21:14:32.937346Z", + "dependencies": [ + "dpath==2.2.0", + "numpy==2.1.3" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f2d07568-9d45-4dbc-ac91-d472b39597e6", + "node_id": "comfyui-prompt-factory", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Prompt Factory", + "publisher": { + "createdAt": "2024-11-23T10:18:21.428277Z", + "description": "", + "id": "satche", + "logo": "", + "members": [], + "name": "Satche", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/satche/comfyui-prompt-factory", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "wentao-uw", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:58.346229Z", + "description": "This project is a ComfyUI version of [a/https://github.com/cozheyuanzhangde/Invariant-TemplateMatching](https://github.com/cozheyuanzhangde/Invariant-TemplateMatching).", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-template-matching", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI template matching", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wentao-uw/ComfyUI-template-matching", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "PixelFunAI", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:34.578697Z", + "description": "This collection provides four additional nodes for loading and managing Hunyuan Video LoRAs in ComfyUI", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI_PixelFun", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Hunyuan LoRA Loader Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/PixelFunAI/ComfyUI_PixelFun", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "zubenelakrab", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:50.827528Z", + "description": "An advanced ComfyUI extension that enables multi-agent LLM conversations using Ollama models.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI_xObiomesh", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Neural Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/xobiomesh/ComfyUI_xObiomesh", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "StartHua", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:35.767787Z", + "description": "Phi-3.5-vision-instruct fast talk with image !\nFast , Fast ,Fast!\n1.Phi-3.5-vision-instruct", + "downloads": 0, + "github_stars": 16, + "icon": "", + "id": "Comfyui_CXH_Phi_3.5", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui_CXH_Phi_3.5", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/StartHua/Comfyui_CXH_Phi_3.5", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yolanother", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:02.851414Z", + "description": "A ComfyAI submit node to upload images to DoubTech.ai", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "DTAIComfyImageSubmit", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfy AI DoubTech.ai Image Sumission Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yolanother/DTAIComfyImageSubmit", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "dymokomi", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:12.26572Z", + "description": "NODES: DY Image Quantize, DY Image Cluster, DY Image Palette, DY Image Masks, Image List to Grid, DY Image Scaler, DY Random Lines, DY Adaptive Color Lines, DY Adaptive Color Circles, DY Adaptive Color Rectangles, DY Binary Pattern Stamper", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "comfyui_dygen", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui_dygen", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dymokomi/comfyui_dygen", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "juehackr", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:11.368783Z", + "description": "\ud83e\udd17\ud83e\udd17\ud83e\udd17Comfyui Universal Translation Plugin (no longer requires adding various nodes, directly add translation function on the existing nodes), allowing Comfyui to support Chinese input and automatic translation for any long text input box, while adding error translation function (calling Baidu Translate), achieving translation freedom!", + "downloads": 0, + "github_stars": 428, + "icon": "", + "id": "comfyui_fk_server", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui_fk_server", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/juehackr/comfyui_fk_server", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "LING-APE", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:26.696592Z", + "description": "Simple resuluition calculator to convert pixel resolution and aspect ratio to laten friendlt pixel width and height size.", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "ComfyUI-PixelResolutionCalculator", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-PixelResolutionCalculator", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Ling-APE/ComfyUI-PixelResolutionCalculator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ParmanBabra", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:53.422743Z", + "description": "Nodes:Multi Lora Loader, Random (Prompt), Combine (Prompt), CSV Prompts Loader", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-Malefish-Custom-Scripts", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Malefish-Custom-Scripts", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ParmanBabra/ComfyUI-Malefish-Custom-Scripts", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "bartly", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:04.148984Z", + "description": "This is a node to remove background of human picture.", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "Comfyui_babel_removebg_api", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Babel Removebg Api Node for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bartly/Comfyui_babel_removebg_api", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-09T21:32:58.781501Z", + "description": "FiveBelowFive Community Custom Node Collection (ComfyUI)", + "downloads": 675, + "github_stars": 0, + "icon": "", + "id": "FBF-Collective-Pack", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-09T21:32:59.164218Z", + "dependencies": [ + "numpy", + "torch", + "librosa", + "matplotlib", + "scipy", + "opencv-python", + "tqdm", + "Pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d6f3451a-1539-42c3-8e63-b88a3a0e2956", + "node_id": "FBF-Collective-Pack", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "FBF-Collective", + "publisher": { + "createdAt": "2024-08-27T08:12:40.017079Z", + "description": "", + "id": "driftjohnson", + "logo": "", + "members": [], + "name": "Drift Johnson", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MushroomFleet/FBF-Collective", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-01T00:22:29.48663Z", + "description": "ComfyUI Frontend Vue Basic is custom node that demonstrate how to use vue as frontend framework along with primevue and vue-i18n, cooperating with ComfyUI API", + "downloads": 336, + "github_stars": 4, + "icon": "", + "id": "comfyui_frontend_vue_basic", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-30T00:02:59.800611Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5a7d071f-d869-4c13-8577-d3af6e96ab77", + "node_id": "comfyui_frontend_vue_basic", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.14" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Frontend Vue Basic", + "publisher": { + "createdAt": "2024-06-15T12:22:05.599707Z", + "description": "", + "id": "jtydhr88", + "logo": "", + "members": [], + "name": "Terry Jia", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jtydhr88/ComfyUI_frontend_vue_basic", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-17T01:26:36.913102Z", + "description": "Abstract Syntax Trees Evaluated Restricted Run (ASTERR) is a Python Script executor for ComfyUI. [w/Warning:ASTERR runs Python Code from a Web Interface! It is highly recommended to run this in a closed-off environment, as it could have potential security risks.]", + "downloads": 1517, + "github_stars": 30, + "icon": "", + "id": "asterr", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-17T01:26:37.202291Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c2465d56-ccbf-41e5-8ccc-e7e5b926a7b0", + "node_id": "asterr", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ASTERR", + "publisher": { + "createdAt": "2024-06-17T00:47:38.837695Z", + "description": "", + "id": "was", + "logo": "", + "members": [], + "name": "WAS", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/WASasquatch/ASTERR", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "StartHua", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:36.49252Z", + "description": "NODES:CXH_DeepLX_Free, CXH_DeepLX_translate", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "Comfyui_CXH_DeepLX", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui_CXH_DeepLX", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/StartHua/Comfyui_CXH_DeepLX", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yolanother", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:04.262387Z", + "description": "Nodes: String, Int, Float, Short String, CLIP Text Encode (With Variables), String Format, Short String Format. This extension introduces quality of life improvements by providing variable nodes and shared global variables.", + "downloads": 0, + "github_stars": 12, + "icon": "", + "id": "DTAIComfyVariables", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Variables for Comfy UI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yolanother/DTAIComfyVariables", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "s1dlx", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:36.819967Z", + "description": "Advanced merging methods.", + "downloads": 0, + "github_stars": 16, + "icon": "", + "id": "comfy_meh", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfy_meh", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/s1dlx/comfy_meh", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "fexploit", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:13.779812Z", + "description": "ComfyUI-AutoLabel is a custom node for ComfyUI that uses BLIP (Bootstrapping Language-Image Pre-training) to generate detailed descriptions of the main object in an image. This node leverages the power of BLIP to provide accurate and context-aware captions for images.", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "ComfyUI-AutoLabel", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-AutoLabel", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fexploit/ComfyUI-AutoLabel", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "PCMonsterx", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:54.576893Z", + "description": "CSV Loader for prompt building within ComfyUI interface. Allows access to positive/negative prompts associated with a name. Selections are being pulled from CSV files.", + "downloads": 0, + "github_stars": 16, + "icon": "", + "id": "ComfyUI-CSV-Loader", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-CSV-Loader", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/PCMonsterx/ComfyUI-CSV-Loader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "hanoixan", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:51.99284Z", + "description": "This extension provides convenience nodes for batch processing.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-DataBeast", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI DataBeast", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hanoixan/ComfyUI-DataBeast", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "maracman", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:53.006015Z", + "description": "Store a CSV of prompts where the style can change for each subject. The CSV node initialises with the column (style) and row (subject) names for easy interpretability.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-SubjectStyle-CSV", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-SubjectStyle-CSV", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/maracman/ComfyUI-SubjectStyle-CSV", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ryanontheinside", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:47.639179Z", + "description": "Play Doom in ComfyUI.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI_Doom", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Doom", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ryanontheinside/ComfyUI_Doom", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Cyber-Blacat", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:28.236385Z", + "description": "Some simple&practical ComfyUI image processing nodes.", + "downloads": 0, + "github_stars": 11, + "icon": "", + "id": "Cyber-Blacat_ComfyUI-Yuan", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Yuan", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Cyber-Blacat/ComfyUI-Yuan", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Franck-Demongin", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:56.534234Z", + "description": "A custom node for ComfyUI to create a prompt based on a list of keywords saved in CSV files.", + "downloads": 0, + "github_stars": 9, + "icon": "", + "id": "NX_PromptStyler", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "NX_PromptStyler", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Franck-Demongin/NX_PromptStyler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "438443467", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:53.789981Z", + "description": "Nodes:GPT4V-Image-Captioner", + "downloads": 0, + "github_stars": 27, + "icon": "", + "id": "ComfyUI-GPT4V-Image-Captioner", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-GPT4V-Image-Captioner", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/438443467/ComfyUI-GPT4V-Image-Captioner", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ai-liam", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:59.426337Z", + "description": "Nodes: LiamLoadImage. This node provides the capability to load images from a URL.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "comfyui_liam_util", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "LiamUtil (single node)", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ai-liam/comfyui_liam_util", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Hellrunner2k", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:29.983652Z", + "description": "Nodes:Magical Save Node, Thermal Latenator. This package contains a collection of neat nodes that are supposed to ease your comfy-flow.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-HellrunnersMagicalNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Hellrunner's Magical Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Hellrunner2k/ComfyUI-HellrunnersMagicalNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "whmc76", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:58.553408Z", + "description": "Nodes:Openpose Editor Plus", + "downloads": 0, + "github_stars": 38, + "icon": "", + "id": "ComfyUI-Openpose-Editor-Plus", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Openpose-Editor-Plus", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/whmc76/ComfyUI-Openpose-Editor-Plus", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "RyanOnTheInside", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:46.902119Z", + "description": "A ComfyUI implementation of [a/EfficientTAM](https://github.com/yformer/EfficientTAM)", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI_EfficientTAM", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-EfficientTAM", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ryanontheinside/ComfyUI_EfficientTAM", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "diSty", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:13.833038Z", + "description": "This node creates a sequence of frames by moving and scaling a subject image over a background image.", + "downloads": 0, + "github_stars": 22, + "icon": "", + "id": "ComfyUI_FrameMaker", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Frame Maker", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/diStyApps/ComfyUI_FrameMaker", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-01T11:17:40.429132Z", + "description": "Template repository for custom nodes from [ComfyUI-CustomNodes-Template](https://github.com/jhj0517/ComfyUI-CustomNodes-Template).", + "downloads": 860, + "github_stars": 29, + "icon": "", + "id": "comfyui-customnodes-template", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-01T11:17:44.18511Z", + "dependencies": [ + "" + ], + "deprecated": false, + "downloadUrl": "", + "id": "bd622d3c-7739-47fe-88f2-6a0d9f4532f6", + "node_id": "comfyui-customnodes-template", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-CustomNodes-Template", + "publisher": { + "createdAt": "2024-08-24T13:04:03.484731Z", + "description": "", + "id": "jhj0517", + "logo": "", + "members": [], + "name": "jhj0517", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jhj0517/ComfyUI-CustomNodes-Template", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-22T14:25:52.770441Z", + "description": "This node can easily switch between text or prompts by saving presets.", + "downloads": 829, + "github_stars": 1, + "icon": "", + "id": "comfyui_mittimi_load_text", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-22T14:32:48.560656Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3d512431-a557-4302-911b-4d86756c87fe", + "node_id": "comfyui_mittimi_load_text", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_mittimiLoadText", + "publisher": { + "createdAt": "2024-08-25T10:31:13.036141Z", + "description": "", + "id": "mittimi", + "logo": "", + "members": [], + "name": "mittimi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mittimi/ComfyUI_mittimiLoadText", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "evanspearman", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:07.345714Z", + "description": "Provides Math Nodes for ComfyUI. Boolean Logic, Integer Arithmetic, Floating Point Arithmetic and Functions, Vec2, Vec3, and Vec4 Arithmetic and Functions", + "downloads": 0, + "github_stars": 129, + "icon": "", + "id": "ComfyMath", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyMath", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/evanspearman/ComfyMath", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Chan-0312", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:44.853562Z", + "description": "Nodes:Easy2DDeforum (Chan)", + "downloads": 0, + "github_stars": 11, + "icon": "", + "id": "ComfyUI-EasyDeforum", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-EasyDeforum", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Chan-0312/ComfyUI-EasyDeforum", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chandlergis", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:54.927644Z", + "description": "Nodes:Image Emoji Overlay", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI_EmojiOverlay", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_EmojiOverlay", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chandlergis/ComfyUI_EmojiOverlay", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "nathannlu", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:57.873869Z", + "description": "Play with your pet while your workflow generates!", + "downloads": 0, + "github_stars": 47, + "icon": "", + "id": "ComfyUI-Pets", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Pets", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nathannlu/ComfyUI-Pets", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "TheAIDoctor", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:40.916613Z", + "description": "Nodes: Multi Int and Multi Text; allows for the creation of multiple int and multiple string storage and output from a single node. Multi Float coming soon.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI_AIDocsClinicalTools", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "The AI Doctors Clinical Tools", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BlueprintCoding/ComfyUI_AIDocsClinicalTools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "wolfden", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:11.873476Z", + "description": "This custom node provides the capability to manipulate multiple string inputs.", + "downloads": 0, + "github_stars": 10, + "icon": "", + "id": "ComfyUi_String_Function_Tree", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUi_String_Function_Tree", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wolfden/ComfyUi_String_Function_Tree", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "StartHua", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:38.85828Z", + "description": "NODES:CXH_Gemini2_TX, CXH_Gemini2_Vision, CXH_Local_Prompt", + "downloads": 0, + "github_stars": 16, + "icon": "", + "id": "Comfyui_Gemini2", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui_Gemini2", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/StartHua/Comfyui_Gemini2", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Chan-0312", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:44.034647Z", + "description": "This is a project that generates videos frame by frame based on IPAdapter+ControlNet. Unlike [a/Steerable-motion](https://github.com/banodoco/Steerable-Motion), we do not rely on AnimateDiff. This decision is primarily due to the fact that the videos generated by AnimateDiff are often blurry. Through frame-by-frame control using IPAdapter+ControlNet, we can produce higher definition and more controllable videos.", + "downloads": 0, + "github_stars": 74, + "icon": "", + "id": "ComfyUI-IPAnimate", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-IPAnimate", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Chan-0312/ComfyUI-IPAnimate", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "LonicaMewinsky", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:01.646326Z", + "description": "Nodes:BreakFrames, GetKeyFrames, MakeGrid.", + "downloads": 0, + "github_stars": 29, + "icon": "", + "id": "ComfyUI-MakeFrame", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyBreakAnim", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LonicaMewinsky/ComfyUI-MakeFrame", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Shadetail", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:38.301822Z", + "description": "Custom nodes for ComfyUI by Eagleshadow.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI_Eagleshadow", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Eagleshadow Custom Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Shadetail/ComfyUI_Eagleshadow", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-12T15:00:42.71591Z", + "description": "some comfyui custom nodes to make effect shatter", + "downloads": 433, + "github_stars": 0, + "icon": "", + "id": "comfyui_node_ymc_effect_shatter", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-12T15:00:43.089991Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "41908c1c-2cd7-4958-9555-2cda00c18bc5", + "node_id": "comfyui_node_ymc_effect_shatter", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_node_ymc_effect_shatter", + "publisher": { + "createdAt": "2024-07-14T11:57:33.810062Z", + "description": "", + "id": "ymc-github", + "logo": "", + "members": [], + "name": "yemiancheng", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ymc-github/comfyui_node_ymc_effect_shatter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Raapys", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:32.5773Z", + "description": "Simple latent-passthrough node for running a full VRAM cleanup between workflow stages.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-LatentGC_Aggressive", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "LatentGC Aggressive", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Raapys/ComfyUI-LatentGC_Aggressive", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "hustille", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:49.302153Z", + "description": "Nodes: KSampler With Refiner (Fooocus). The KSampler from [a/Fooocus](https://github.com/lllyasviel/Fooocus) as a ComfyUI node [w/NOTE: This patches basic ComfyUI behaviour - don't use together with other samplers. Or perhaps do? Other samplers might profit from those changes ... ymmv.]", + "downloads": 0, + "github_stars": 63, + "icon": "", + "id": "ComfyUI_Fooocus_KSampler", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Fooocus_KSampler", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hustille/ComfyUI_Fooocus_KSampler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Smuzzies", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:42.195174Z", + "description": "Meme Maker Node for ComfyUI.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "comfyui_meme_maker", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui_meme_maker", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Smuzzies/comfyui_meme_maker", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-29T07:17:35.152087Z", + "description": "This node can easily switch between models and prompts by saving presets.", + "downloads": 810, + "github_stars": 1, + "icon": "", + "id": "comfyui_mittimi_load_preset", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-29T07:17:36.883242Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "36389955-f5b4-4fb4-a6e7-70bc1a561195", + "node_id": "comfyui_mittimi_load_preset", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI_mittimiLoadPreset", + "publisher": { + "createdAt": "2024-08-25T10:31:13.036141Z", + "description": "", + "id": "mittimi", + "logo": "", + "members": [], + "name": "mittimi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mittimi/ComfyUI_mittimiLoadPreset", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-01T01:42:30.647583Z", + "description": "Some extra nodes", + "downloads": 502, + "github_stars": 0, + "icon": "", + "id": "comfyui_molook_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-31T02:17:03.059948Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "42f54783-6557-4ea3-b8c7-3c7d894b8b62", + "node_id": "comfyui_molook_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.2.4" + }, + "license": "{\"text\": \"GNU General Public License v3\"}", + "name": "ComfyUI-molook-nodes", + "publisher": { + "createdAt": "2025-02-28T16:43:55.768037Z", + "description": "", + "id": "techidsk", + "logo": "", + "members": [], + "name": "techidsk", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "storyicon", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:15.962261Z", + "description": "Nodes:MuseVImg2Vid (comfyui_musev_evolved)\nNOTE: Download [a/MuseV](https://huggingface.co/TMElyralab/MuseV) to ComfyUI/models/diffusers", + "downloads": 0, + "github_stars": 26, + "icon": "", + "id": "comfyui_musev_evolved", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI MuseV Evolved", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/storyicon/comfyui_musev_evolved", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "runtime44", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:37.507093Z", + "description": "Nodes: Runtime44Upscaler, Runtime44ColorMatch, Runtime44DynamicKSampler, Runtime44ImageOverlay, Runtime44ImageResizer, Runtime44ImageToNoise, Runtime44MaskSampler, Runtime44TiledMaskSampler, Runtime44IterativeUpscaleFactor, Runtime44ImageEnhance, Runtime44FilmGrain", + "downloads": 0, + "github_stars": 41, + "icon": "", + "id": "comfyui_r44_nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Runtime44 ComfyUI Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/runtime44/comfyui_r44_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "11dogzi", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:02.169052Z", + "description": "This is a hierarchical auxiliary project of the IPAdapter project, which uses a slider to quickly control the hierarchical weights and add fully random and semi random modes", + "downloads": 0, + "github_stars": 39, + "icon": "", + "id": "ComfUI-EGAdapterMadAssistant", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfUI-EGAdapterMadAssistant", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/11dogzi/ComfUI-EGAdapterMadAssistant", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-08T19:02:36.731502Z", + "description": "Generate NovelAI image and convert weight local to NAI or reverse .", + "downloads": 238, + "github_stars": 2, + "icon": "", + "id": "comfyui_rs_nai_api_request", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-29T23:16:25.551439Z", + "dependencies": [ + "python-dotenv" + ], + "deprecated": false, + "downloadUrl": "", + "id": "53da9b65-6677-4034-9878-c67fd64ed128", + "node_id": "comfyui_rs_nai_api_request", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_RS_NAI_API_Request", + "publisher": { + "createdAt": "2024-12-26T08:43:48.717119Z", + "description": "", + "id": "raspie10032", + "logo": "", + "members": [], + "name": "raspie10032", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/raspie10032/ComfyUI_RS_NAI_API_Request", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "TMElyralab", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:42.563418Z", + "description": "[a/MusePose](https://github.com/TMElyralab/MusePose) is an image-to-video generation framework for virtual human under control signal such as pose.\nNOTE: You need to download weigths manually from: [a/https://huggingface.co/TMElyralab/MusePose](https://huggingface.co/TMElyralab/MusePose).[w/The repository name has changed. If you are not receiving updates, please delete the existing node and reinstall it.]", + "downloads": 0, + "github_stars": 417, + "icon": "", + "id": "Comfyui-MusePose", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui-MusePose", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TMElyralab/Comfyui-MusePose", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "folkghost", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:51.695666Z", + "description": "This repository contains a custom node for ComfyUI that allows searching for a keyword in the first column of a CSV file and returning a value from a specified column in that row. The node is designed to be modular and fit within the node-based workflow of ComfyUI.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "comfyui_search_csv", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "CSV Search Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/folkghost/comfyui_search_csv", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-02T14:45:42.947808Z", + "description": "This extension provides a node that allows you use any type's font:truetype,jpg,gif,video,api,...", + "downloads": 779, + "github_stars": 4, + "icon": "", + "id": "comfyui-font", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-02T14:45:43.330968Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "9d165d4d-11f6-4a53-9c8c-9c605ff47516", + "node_id": "comfyui-font", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI-Font", + "publisher": { + "createdAt": "2025-01-18T03:00:25.046856Z", + "description": "", + "id": "zwai", + "logo": "", + "members": [], + "name": "zwai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ziwang-com/comfyui-fonts", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jsonL", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:24.432411Z", + "description": "Nodes to use Florence2 VLM for image vision tasks: object detection, captioning, segmentation and ocr", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "comfyui_tagger", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-tagger", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/StarMagicAI/comfyui_tagger", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-08T15:26:09.29024Z", + "description": "Custom nodes intended to improve usability.", + "downloads": 1253, + "github_stars": 0, + "icon": "", + "id": "comfyui_usability", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-08T15:32:12.145194Z", + "dependencies": [ + "watchdog==3.0.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "8926fcaa-dfee-4c69-a0e8-423cde55d642", + "node_id": "comfyui_usability", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Usability", + "publisher": { + "createdAt": "2024-08-08T14:53:20.391112Z", + "description": "", + "id": "kappa54", + "logo": "", + "members": [], + "name": "kappa54", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kappa54m/ComfyUI_Usability", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-16T18:23:38.115063Z", + "description": "A ComfyUI extension that enhances touchpad navigation by redirecting two-finger scrolling over to the canvas, including over textareas. This can prevent accidental back/forward browser navigation when using horizontal touchpad gestures and provides smooth zooming and panning for Mac and other touchpad users.", + "downloads": 429, + "github_stars": 0, + "icon": "", + "id": "comfyui_touchpad_scroll_controller", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-18T02:31:02.147114Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "48731ae8-2f30-41a6-b0f0-d78f73d2be85", + "node_id": "comfyui_touchpad_scroll_controller", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.3.0" + }, + "license": "{\"text\": \"GNU General Public License v3\"}", + "name": "ComfyUI Touchpad Scroll Controller", + "publisher": { + "createdAt": "2025-03-09T18:10:02.517686Z", + "description": "", + "id": "joreyaesh", + "logo": "", + "members": [], + "name": "Josh Whaley", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/joreyaesh/comfyui_touchpad_scroll_controller", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-27T00:34:16.18012Z", + "description": "ComfyUI HTML Renderer Node - Display rich HTML content within ComfyUI nodes", + "downloads": 190, + "github_stars": 2, + "icon": "", + "id": "comfyui_ui_render", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-27T00:34:16.560798Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "2947cb92-bf96-4405-81c2-b82b71f76713", + "node_id": "comfyui_ui_render", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_ui_render", + "publisher": { + "createdAt": "2025-05-27T00:09:36.657516Z", + "description": "", + "id": "gabe-init", + "logo": "", + "members": [], + "name": "Gabe", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gabe-init/comfyui_ui_render", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "burnsbert", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:31.571455Z", + "description": "Custom nodes for enhancing and manipulating prompts in ComfyUI. Includes nodes for random color palette generation following different color theory methodologies, prompt text replacement and randomization, list sampling, loading files into strings, and season/weather/time-of-day generation.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-EBU-PromptHelper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "EBU PromptHelper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/burnsbert/ComfyUI-EBU-PromptHelper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "risunobushi", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:57.07148Z", + "description": "NODES: Extract Displacement Map Node, Displace Logo", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI_DisplacementMapTools", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_DisplacementMapTools", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/risunobushi/ComfyUI_DisplacementMapTools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "M1kep", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:32.459377Z", + "description": "Nodes: Range(Step), Range(Num Steps), List Length, Image Overlay, Stack Images, Empty Images, Join Image Lists, Join Float Lists. This extension provides various list manipulation nodes", + "downloads": 0, + "github_stars": 47, + "icon": "", + "id": "Comfy_KepListStuff", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfy_KepListStuff", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/M1kep/Comfy_KepListStuff", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "M1kep", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:35.910271Z", + "description": "This extension provides a custom node that allows the use of [a/Matte Anything](https://github.com/hustvl/Matte-Anything) in ComfyUI.", + "downloads": 0, + "github_stars": 11, + "icon": "", + "id": "Comfy_KepMatteAnything", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfy_KepMatteAnything", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/M1kep/Comfy_KepMatteAnything", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "CozyMantis", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:10.619573Z", + "description": "Various cozy nodes, made with \ud83d\udc9a by the CozyMantis squad.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "cozy-utils-comfyui-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Cozy Utils", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cozymantis/cozy-utils-comfyui-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "OuticNZ", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:35.745248Z", + "description": "Nodes:Text Switch 2 Way, Prompt Tidy, Text With Context.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-Simple-Of-Complex", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Simple-Of-Complex", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/OuticNZ/ComfyUI-Simple-Of-Complex", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-17T19:07:21.845988Z", + "description": "Example of a Combo widget changing Node appearance", + "downloads": 84, + "github_stars": 1, + "icon": "https://raw.githubusercontent.com/Amorano/Jovimetrix-examples/refs/heads/master/res/logo-cozy-comfyui.png", + "id": "cozy_combo_dynamic", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-17T19:07:22.238076Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b7d22635-4642-4115-9207-bb56d5bd96cc", + "node_id": "cozy_combo_dynamic", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Cozy Combo Dynamic", + "publisher": { + "createdAt": "2024-05-17T04:16:25.445017Z", + "description": "", + "id": "amorano", + "logo": "", + "members": [], + "name": "Joviex", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cozy-comfyui/cozy_combo_dynamic", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-09T05:25:54.119842Z", + "description": "Dynamic Node examples for ComfyUI", + "downloads": 876, + "github_stars": 34, + "icon": "https://raw.githubusercontent.com/Amorano/Jovimetrix-examples/refs/heads/master/res/logo-cozy-comfyui.png", + "id": "cozy_ex_dynamic", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-24T20:22:55.452442Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4d7786a3-e693-49ec-a37f-64270ee403f4", + "node_id": "cozy_ex_dynamic", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Cozy Dynamic", + "publisher": { + "createdAt": "2024-05-17T04:16:25.445017Z", + "description": "", + "id": "amorano", + "logo": "", + "members": [], + "name": "Joviex", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cozy-comfyui/cozy_ex_dynamic", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-16T22:14:16.850857Z", + "description": "Quality of life nodes to organize a Lora Training Dataset.", + "downloads": 1221, + "github_stars": 0, + "icon": "https://imagedelivery.net/YCQ3OFRYiR1R_AeUslNHiw/9e18543b-6132-48fd-725f-6f20e9d1b200/w=300,h=300,fit=crop", + "id": "comfy-ui-lora-dataset-tools", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-14T22:35:36.376682Z", + "dependencies": [ + "charloratools" + ], + "deprecated": false, + "downloadUrl": "", + "id": "94f45cef-faef-4bd3-a0c2-0cf1e8a0fcc1", + "node_id": "comfy-ui-lora-dataset-tools", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.4.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfy-ui-lora-dataset-tools", + "publisher": { + "createdAt": "2024-09-16T18:45:24.612798Z", + "description": "", + "id": "svdc", + "logo": "", + "members": [], + "name": "svdc", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/svdC1/comfy-ui-lora-dataset-tools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "hay86", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:52.535909Z", + "description": "Unofficial implementation of [a/hallo](https://github.com/fudan-generative-vision/hallo) for ComfyUI", + "downloads": 0, + "github_stars": 21, + "icon": "", + "id": "ComfyUI_Hallo", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Hallo", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hay86/ComfyUI_Hallo", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-25T17:59:15.307057Z", + "description": "A node to replicate https://huggingface.co/spaces/latentexplorers/latentnavigation-flux, the initial node is made by https://github.com/RhizoNymph/ComfyUI-CLIPSli der created, I made a few changes to make it more in line with my needs.", + "downloads": 1192, + "github_stars": 0, + "icon": "", + "id": "comfyui-clipslider-sc", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-30T05:27:07.541451Z", + "dependencies": [ + "diffusers" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5d934dbc-e1af-4c2a-b025-5b8621fe0b01", + "node_id": "comfyui-clipslider-sc", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-CLIPSlider-SC", + "publisher": { + "createdAt": "2024-09-19T05:47:44.255279Z", + "description": "", + "id": "shichen", + "logo": "", + "members": [], + "name": "shichen", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chenbaiyujason/ComfyUI-CLIPSlider-SC", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "M1kep", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:36.878119Z", + "description": "Nodes: KepRotateImage", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "Comfy_KepKitchenSink", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfy_KepKitchenSink", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/M1kep/Comfy_KepKitchenSink", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "xuhongming251", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:21.120943Z", + "description": "Nodes:FaceEnhancement. Based on modelscope pipeline.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-GPEN", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-GPEN", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/xuhongming251/ComfyUI-GPEN", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Auttasak-L", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:18.895658Z", + "description": "Nodes:Image cropping tool", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-ImageCropper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ImageCropper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Auttasak-L/ComfyUI-ImageCropper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "BXYMartin", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:03.206709Z", + "description": "Nodes:Multi-ControlNet Converter, List of Images, Convert PIL to Tensor (NHWC), Convert Tensor (NHWC) to (NCHW), Convert Tensor (NHWC) to PIL", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-InstantIDUtils", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-InstantIDUtils", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BXYMartin/ComfyUI-InstantIDUtils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "xuhongming251", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:22.068872Z", + "description": "MuseTalk ComfyUI Preprocess and Postprocess Nodes", + "downloads": 0, + "github_stars": 21, + "icon": "", + "id": "ComfyUI-MuseTalkUtils", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-MuseTalkUtils", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/xuhongming251/ComfyUI-MuseTalkUtils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "romeobuilderotti", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:03.015979Z", + "description": "Add custom Metadata fields to your saved PNG files.", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "ComfyUI-PNG-Metadata", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI PNG Metadata", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/romeobuilderotti/ComfyUI-PNG-Metadata", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Billius-AI", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:55.822963Z", + "description": "Nodes:Create Project Root, Add Folder, Add Folder Advanced, Add File Name Prefix, Add File Name Prefix Advanced, ShowPath", + "downloads": 0, + "github_stars": 18, + "icon": "", + "id": "ComfyUI-Path-Helper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Path-Helper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Billius-AI/ComfyUI-Path-Helper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "TTPlanetPig", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:03.876493Z", + "description": "NODES:TTP_Hunyuan3DNode, TTP_SquareImage, TTP_GIFViewer", + "downloads": 0, + "github_stars": 28, + "icon": "", + "id": "Comfyui_Hunyuan3D", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui_Hunyuan3D", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TTPlanetPig/Comfyui_Hunyuan3D", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-06T22:49:40.762823Z", + "description": "Decor8 AI Virtual Staging, Interior Design, and Design Inspirations (Requires API key from www.decor8.ai). Requires a valid pay-as-you go subscription plan or credits bundle. Reach out to decor8@immex.tech if you have any questions or need test credits.", + "downloads": 735, + "github_stars": 33, + "icon": "\ud83c\udfe0", + "id": "decor8ai-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-07T22:21:27.994078Z", + "dependencies": [ + "requests>=2.31.0", + "torch>=2.6.0", + "Pillow>=9.5.0", + "numpy>=1.26.4" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e03bacd8-e61e-48f5-9768-5300ebf1b1c1", + "node_id": "decor8ai-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Decor8 AI Virtual Staging", + "publisher": { + "createdAt": "2025-02-06T19:29:16.39458Z", + "description": "", + "id": "decor8ai-virtual-staging-interior-design", + "logo": "", + "members": [], + "name": "Decor8 AI Virtual Staging & Interior Design", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/immex-tech/decor8ai-sdk", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ramyma", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:24.671881Z", + "description": "Nodes: Base64Image Input Node, Base64Image Output Node. [a/A8R8](https://github.com/ramyma/a8r8) supporting nodes to integrate with ComfyUI", + "downloads": 0, + "github_stars": 63, + "icon": "", + "id": "A8R8_ComfyUI_nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "A8R8 ComfyUI Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ramyma/A8R8_ComfyUI_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "GamingDaveUk", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:52.959582Z", + "description": "Nodes that I needed but couldnt find, so ended up making.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "daves_nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Daves Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/GamingDaveUk/daves_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "TTPlanetPig", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:04.663394Z", + "description": "This is an experimental project focused on Stable Diffusion (SD) models. In a single generated image, the same object or character consistently maintains a very high level of consistency. I had already attempted to address this issue in the SDXL model.", + "downloads": 0, + "github_stars": 752, + "icon": "", + "id": "Comfyui_Object_Migration", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Clothing Migration Kit", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TTPlanetPig/Comfyui_Object_Migration", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-23T13:26:48.711242Z", + "description": "ComfyUI nodes for StableAnimator", + "downloads": 602, + "github_stars": 16, + "icon": "", + "id": "HJH_StableAnimator", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-21T12:14:23.935297Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "6614fd94-78c6-4bd9-af13-125de1e4f33e", + "node_id": "HJH_StableAnimator", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_StableAnimator", + "publisher": { + "createdAt": "2025-02-20T03:27:57.859548Z", + "description": "", + "id": "hjh-ailab", + "logo": "", + "members": [], + "name": "HJH-AILab", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/HJH-AILab/ComfyUI_StableAnimator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-04T09:22:38.539827Z", + "description": "Connect to any Draw Things gRPCServerCLI and let ComfyUI generate and provide DT with images for ControlNet without needing to set them in DT itself.", + "downloads": 376, + "github_stars": 10, + "icon": "", + "id": "drawthings-grpc", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-13T15:45:15.010061Z", + "dependencies": [ + "numpy", + "pillow", + "torch", + "torchvision", + "grpcio>=1.71.0", + "flatbuffers>=25.2.10", + "protobuf>=5.29.0", + "typing_extensions=>4.12.2" + ], + "deprecated": false, + "downloadUrl": "", + "id": "ccbb8eff-4328-4057-aadc-9cd0df7cb1fb", + "node_id": "drawthings-grpc", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.4.0" + }, + "license": "{\"text\": \"GNU General Public License v3\"}", + "name": "ComfyUI-DrawThings-gRPC", + "publisher": { + "createdAt": "2025-06-03T09:15:30.746112Z", + "description": "", + "id": "jokimbe", + "logo": "", + "members": [], + "name": "Jokimbe", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Jokimbe/ComfyUI-DrawThings-gRPC", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "Style-Mosaic", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:10.253593Z", + "description": "A ComfyUI node that integrates DINO-X API for object detection and segmentation. This node allows you to detect and segment objects in images using text prompts.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "dino-x-comfyui-node", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI DINO-X Detector Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Style-Mosaic/dino-x-comfyui-node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "VangengLab", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:00.735809Z", + "description": "We developed a custom_node for Liveportrait_v2 that enables flexible use on Comfyui to drive animal image-based emoji generation from videos.", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "ComfyUI-LivePortrait_v2", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-LivePortrait_v2", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/VangengLab/ComfyUI-LivePortrait_v2", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "atmaranto", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:05.405627Z", + "description": "A version of ComfyUI-to-Python-Extension that works as a custom node. Adds a button in the UI that saves the current workflow as a Python file, a CLI for converting workflows, and slightly better custom node support.", + "downloads": 0, + "github_stars": 145, + "icon": "", + "id": "ComfyUI-SaveAsScript", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "SaveAsScript", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/atmaranto/ComfyUI-SaveAsScript", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "lks-ai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:24.839318Z", + "description": "Nodes: StableAudioSampler. Wraps the new Stable Audio Open Model in the sampler that dropped Jun 5th. See Github for Features", + "downloads": 0, + "github_stars": 252, + "icon": "", + "id": "ComfyUI-StableAudioSampler", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Stable Audio Open 1.0 Sampler", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lks-ai/ComfyUI-StableAudioSampler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "aiXander", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:49.983618Z", + "description": "Maintained by Eden.art, this is a growing suite of custom nodes for building advanced pipelines.", + "downloads": 0, + "github_stars": 93, + "icon": "", + "id": "eden_comfy_pipelines", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Eden.art nodesuite", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/edenartlab/eden_comfy_pipelines", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "spacepxl", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:30.723243Z", + "description": "Based on [a/https://github.com/apple/ml-depth-pro](https://github.com/apple/ml-depth-pro)", + "downloads": 0, + "github_stars": 187, + "icon": "", + "id": "ComfyUI-Depth-Pro", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Depth-Pro", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/spacepxl/ComfyUI-Depth-Pro", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-03T23:19:37.03876Z", + "description": "A collection of custom nodes for ComfyUI", + "downloads": 819, + "github_stars": 0, + "icon": "", + "id": "example_custom_nodepack", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-03T23:19:38.857048Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "dc6df77c-98bb-4508-a652-382e399c456c", + "node_id": "example_custom_nodepack", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.1" + }, + "license": "{\"text\": \"GNU General Public License v3\"}", + "name": "Example Custom Nodepack", + "publisher": { + "createdAt": "2024-09-25T07:02:23.867085Z", + "description": "", + "id": "robinken", + "logo": "", + "members": [], + "name": "Robin Huang d", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "SozeInc", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:37.206771Z", + "description": "Nodes: Ultimate Concat (Mobile), Send Notification (Mobile), Settings Launcher (Mobile), Settings Launcher Outputs (Mobile)", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-Mobile", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Mobile", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SozeInc/ComfyUI-Mobile", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jax-explorer", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:30.057437Z", + "description": "Nodes:FastImageListToImageBatch", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "fast_video_comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "fast_video_comfyui", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jax-explorer/fast_video_comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "mihaiiancu", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:18.770589Z", + "description": "Nodes: InpaintMediapipe. This node provides a simple interface to inpaint.", + "downloads": 0, + "github_stars": 9, + "icon": "", + "id": "ComfyUI_Inpaint", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "mihaiiancu/Inpaint", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mihaiiancu/ComfyUI_Inpaint", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-07T21:15:02.208888Z", + "description": "OpenImageIO plugin for ComfyUI", + "downloads": 0, + "github_stars": 0, + "icon": "https://avatars.githubusercontent.com/u/7041726?v=4", + "id": "comfy-oiio", + "latest_version": { + "version": "nightly" + }, + "license": "{\"text\": \"MIT\"}", + "name": "OpenImageIO for Comfy", + "publisher": { + "createdAt": "2024-05-21T10:23:48.50106Z", + "description": "", + "id": "mel", + "logo": "", + "members": [], + "name": "mel", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "shadowcz007", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:34.054257Z", + "description": "[a/ImageReward](https://github.com/THUDM/ImageReward): Human preference learning in text-to-image generation. This is a [a/paper](https://arxiv.org/abs/2304.05977) from NeurIPS 2023", + "downloads": 0, + "github_stars": 31, + "icon": "", + "id": "comfyui-Image-reward", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-Image-reward", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shadowcz007/comfyui-Image-reward", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "fitCorder", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:34.572916Z", + "description": "fcFloatMatic is a custom module, that when configured correctly will increment through the lines generating you loras at different strengths. The JSON file will load the config.", + "downloads": 0, + "github_stars": 11, + "icon": "", + "id": "fcSuite", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "fcSuite", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fitCorder/fcSuite", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-10T15:28:47.801553Z", + "description": "ComfyUI-Simple_Image_To_Prompt", + "downloads": 0, + "github_stars": 3, + "icon": "https:///github.com/zentrocdot/ComfyUI-Simple_Image_To_Prompt/blob/main/images/original_logo_512x512.png", + "id": "ComfyUI-Simple_Image_To_Prompt", + "latest_version": { + "version": "nightly" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Simple_Image_To_Prompt", + "publisher": { + "createdAt": "2025-02-03T19:12:00.551657Z", + "description": "", + "id": "zentrocdot", + "logo": "", + "members": [], + "name": "zentrocdot", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zentrocdot/ComfyUI-Simple_Image_To_Prompt", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-03T19:59:56.999752Z", + "description": "", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "circle_detection", + "latest_version": { + "version": "nightly" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Circle_Detection", + "publisher": { + "createdAt": "2025-02-03T19:12:00.551657Z", + "description": "", + "id": "zentrocdot", + "logo": "", + "members": [], + "name": "zentrocdot", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zentrocdot/ComfyUI_Circle_Detection", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Feidorian", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:09.318121Z", + "description": "This extension provides various custom nodes. literals, loaders, logic, output, switches", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "feidorian-ComfyNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "feidorian-ComfyNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Feidorian/feidorian-ComfyNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-18T08:28:03.493978Z", + "description": "", + "downloads": 778, + "github_stars": 0, + "icon": "", + "id": "gliacloud-omniverse", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-18T08:28:07.285551Z", + "dependencies": [], + "deprecated": true, + "downloadUrl": "", + "id": "9e32f0a8-76d4-4f46-b47e-9f676a0cc495", + "node_id": "gliacloud-omniverse", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "", + "name": "", + "publisher": { + "createdAt": "2024-12-18T08:09:58.517223Z", + "description": "", + "id": "mialana", + "logo": "", + "members": [], + "name": "Amy Liu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "adbrasi", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:54.35192Z", + "description": "ComfyUI-TrashNodes-DownloadHuggingface is a ComfyUI node designed to facilitate the download of models you have just trained and uploaded to Hugging Face. This node is particularly useful for users who employ Google Colab for training and need to quickly download their models for deployment.", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "ComfyUI-TrashNodes-DownloadHuggingface", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-TrashNodes-DownloadHuggingface", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/adbrasi/ComfyUI-TrashNodes-DownloadHuggingface", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "BIMer-99", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:25.875964Z", + "description": "This is a custom node designed to simplify the use of Hunyuan3D in ComfyUI", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "Comfyui_Hunyuan3D_EX", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui_Hunyuan3D_EX", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BIMer-99/Comfyui_Hunyuan3D_EX", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-05T15:40:59.913642Z", + "description": "", + "downloads": 858, + "github_stars": 0, + "icon": "https://mojen.ai/logo/corgi-logo-dark.svg", + "id": "comfyui-mojen-nodeset", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-03T08:30:08.033258Z", + "dependencies": [ + "annotated-types==0.7.0", + "blis==1.0.1", + "catalogue==2.0.10", + "certifi==2024.8.30", + "charset-normalizer==3.4.0", + "click==8.1.7", + "cloudpathlib==0.20.0", + "confection==0.1.5", + "cymem==2.0.10", + "en_core_web_sm @ https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-3.8.0/en_core_web_sm-3.8.0-py3-none-any.whl#sha256=1932429db727d4bff3deed6b34cfc05df17794f4a52eeb26cf8928f7c1a0fb85", + "idna==3.10", + "Jinja2==3.1.4", + "langcodes==3.5.0", + "language_data==1.3.0", + "marisa-trie==1.2.1", + "markdown-it-py==3.0.0", + "MarkupSafe==3.0.2", + "mdurl==0.1.2", + "murmurhash==1.0.11", + "packaging==24.2", + "preshed==3.0.9", + "pydantic==2.10.3", + "pydantic_core==2.27.1", + "Pygments==2.18.0", + "requests==2.32.3", + "rich==13.9.4", + "shellingham==1.5.4", + "smart-open==7.0.5", + "spacy==3.8.2", + "spacy-legacy==3.0.12", + "spacy-loggers==1.0.5", + "srsly==2.4.8", + "thinc==8.3.2", + "tqdm==4.67.1", + "typer==0.15.1", + "typing_extensions==4.12.2", + "urllib3==2.2.3", + "wasabi==1.1.3", + "weasel==0.4.1", + "wrapt==1.17.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "84a69c0f-b7f5-4395-a070-5d99b782fc60", + "node_id": "comfyui-mojen-nodeset", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.9" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Mojen-Nodeset", + "publisher": { + "createdAt": "2024-12-05T14:33:14.106645Z", + "description": "", + "id": "faisalw14", + "logo": "", + "members": [], + "name": "FaisalW14", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShahFaisalWani/ComfyUI-Mojen-Nodeset", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "wTechArtist", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:02.446733Z", + "description": "Nodes:StableDelight-weiweiliang", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-StableDelight-weiweiliang", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-StableDelight-weiweiliang", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wTechArtist/ComfyUI-StableDelight-weiweiliang", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "FinetunersAI", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:52.834392Z", + "description": "A suite of nodes for ComfyUI that helps making ComfyUI more accesible for artists", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI_Finetuners_Suite", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Finetuners_Suite", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/FinetunersAI/ComfyUI_Finetuners_Suite", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "hay86", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:55.625943Z", + "description": "Unofficial implementation of [a/LatentSync](https://github.com/bytedance/LatentSync) for ComfyUI", + "downloads": 0, + "github_stars": 16, + "icon": "", + "id": "ComfyUI_LatentSync", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI LatentSync", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hay86/ComfyUI_LatentSync", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "zcfrank1st", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:04.722096Z", + "description": "Nodes:Preview Json, Save Json, Test Json Preview, ... preview and save nodes", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "Comfyui-Toolbox", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui-Toolbox", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zcfrank1st/Comfyui-Toolbox", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yichengup", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:10:43.00494Z", + "description": "NODES:Canvas View", + "downloads": 0, + "github_stars": 99, + "icon": "", + "id": "Comfyui-Ycanvas", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui-Ycanvas", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yichengup/Comfyui-Ycanvas", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ExterminanzHS", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:42.551632Z", + "description": "Custom nodes for ComfyUI to automatically send generated images to Discord channels.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "Gecco-Discord-Autosend", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Gecco Discord Autosend", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ExterminanzHS/Gecco-Discord-Autosend", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-17T16:21:24.642967Z", + "description": "This extension provides object segmentation capabilities for ComfyUI workflows", + "downloads": 1017, + "github_stars": 0, + "icon": "", + "id": "sam2_realtime_forktest", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-17T23:31:02.873432Z", + "dependencies": [ + "torch>=2.3.1", + "torchvision>=0.18.1", + "pyyaml", + "numpy>=1.24.4", + "tqdm>=4.66.1", + "hydra-core>=1.3.2", + "iopath>=0.1.10", + "pillow>=9.4.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f921f6db-2644-46b1-9ca9-53bb8b76c465", + "node_id": "sam2_realtime_forktest", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.26" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI SAM2 Realtime TEST", + "publisher": { + "createdAt": "2025-01-16T15:53:29.234465Z", + "description": "", + "id": "eliteprox", + "logo": "", + "members": [], + "name": "GH Publisher", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/eliteprox/ComfyUI-SAM2-Realtime", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Jin Liu", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:40.025355Z", + "description": "Edit images in the Photopea editor directly within ComfyUI.", + "downloads": 0, + "github_stars": 156, + "icon": "", + "id": "ComfyUI-Photopea", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Photopea", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/coolzilj/ComfyUI-Photopea", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-12T08:01:28.922541Z", + "description": "Various auxiliary nodes, continue to increase when there is free time", + "downloads": 1404, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-TypeAux", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-12T08:01:29.406114Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ff163b00-1cc7-4cbe-acd5-4cd7e19b3232", + "node_id": "ComfyUI-TypeAux", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI-TypeAux", + "publisher": { + "createdAt": "2025-02-12T07:23:20.033396Z", + "description": "", + "id": "sleechengn", + "logo": "", + "members": [], + "name": "Der.L", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sleechengn/ComfyUI-TypeAux", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "LonicaMewinsky", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:11.159045Z", + "description": "Nodes:SaveTifImage. ComfyUI custom node for purpose of saving image as uint16 tif file.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-RawSaver", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-RawSaver", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LonicaMewinsky/ComfyUI-RawSaver", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "duskfallcrew", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:53.679674Z", + "description": "Extremely inspired and forked from: [a/https://github.com/klimaleksus/stable-diffusion-webui-embedding-merge](https://github.com/klimaleksus/stable-diffusion-webui-embedding-merge)", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "Comfyui_EmbeddingMerge_Node", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Embedding Merge for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/duskfallcrew/Comfyui_EmbeddingMerge_Node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "TTPlanetPig", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:02.421079Z", + "description": "Adapt for Hunyuan now\nNOTE: The files in the repo are not organized, which may lead to update issues.", + "downloads": 0, + "github_stars": 29, + "icon": "", + "id": "Comfyui_TTP_CN_Preprocessor", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "for comfyui image proprocessor", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TTPlanetPig/Comfyui_TTP_CN_Preprocessor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-09T15:03:13.537809Z", + "description": "Easily download and install 2D to 3D and Flux models from Hugging Face", + "downloads": 370, + "github_stars": 2, + "icon": "", + "id": "hf-model-downloader", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-07T17:08:37.583978Z", + "dependencies": [ + "huggingface_hub>=0.19.0", + "aiohttp>=3.8.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a8617645-39e7-4b22-b17e-8ec1f4c04e29", + "node_id": "hf-model-downloader", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.2.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-HF-Model-Downloader", + "publisher": { + "createdAt": "2025-04-03T23:28:20.435462Z", + "description": "", + "id": "michaelgold", + "logo": "", + "members": [], + "name": "Michael Gold", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/michaelgold/ComfyUI-HF-Model-Downloader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "bitaffinity", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:40.640153Z", + "description": "Unofficial support for Hugging Face's hosted inference.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI_HF_Inference", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_HF_Inference", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bitaffinity/ComfyUI_HF_Inference", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-19T05:26:55.032558Z", + "description": "", + "downloads": 805, + "github_stars": 0, + "icon": "", + "id": "gliacloud-omniverse2", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-19T05:26:56.771011Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "aa56457d-b0d6-4136-8096-a3dbada3f3a6", + "node_id": "gliacloud-omniverse2", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "GliaCloud-Omniverse2", + "publisher": { + "createdAt": "2024-12-18T08:09:58.517223Z", + "description": "", + "id": "mialana", + "logo": "", + "members": [], + "name": "Amy Liu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "concarne000", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:12.946485Z", + "description": "Nodes:Bing Image Grabber, Zephyr chat, Hermes Chat", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ConCarneNode", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ConCarneNode", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/concarne000/ConCarneNode", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yolanother", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:02.1418Z", + "description": "Nodes: Submit Image (Parameters), Submit Image. A collection of loaders that use a shared common online data source rather than relying on the files to be present locally.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "DTAIComfyLoaders", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfy UI Online Loaders", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yolanother/DTAIComfyLoaders", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "LZC", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:45.554203Z", + "description": "Nodes:tensor_trans_pil, Make Transparent mask, MergeImages, words_generatee, load_PIL image", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "hayo_comfyui_nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Hayo comfyui nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/1shadow1/hayo_comfyui_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "hben35096", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:48.202795Z", + "description": "Nodes:commonly_node.", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "hben35096_ComfyUI-ToolBox", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ToolBox", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hben35096/ComfyUI-ToolBox", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "CozyMantis", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:09.190517Z", + "description": "A ComfyUI node to automatically extract masks for body regions and clothing/fashion items. Made with \ud83d\udc9a by the CozyMantis squad.", + "downloads": 0, + "github_stars": 107, + "icon": "", + "id": "human-parser-comfyui-node", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Cozy Human Parser", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cozymantis/human-parser-comfyui-node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "l20richo", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:44.439956Z", + "description": "ComfyUI-Azure-Blob-Storage seamlessly integrates with [a/Azure Blob Storage](https://azure.microsoft.com/en-us/products/storage/blobs/) in ComfyUI. This open-source project provides custom nodes for effortless loading and saving of images, videos, and checkpoint models directly from Azure blob containers within the ComfyUI graph interface.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-Azure-Blob-Storage", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Azure-Blob-Storage", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/l20richo/ComfyUI-Azure-Blob-Storage", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-28T16:28:47.453125Z", + "description": "", + "downloads": 202, + "github_stars": 0, + "icon": "", + "id": "image_loopback", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-28T16:28:47.924282Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "062cd9bd-6f49-4b3f-a8d2-6a7e6d6fd452", + "node_id": "image_loopback", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Image Loopback", + "publisher": { + "createdAt": "2025-04-13T16:08:54.770491Z", + "description": "", + "id": "pone", + "logo": "", + "members": [], + "name": "Pone", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/leocbehe/image_loopback", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "markuryy", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:52.821263Z", + "description": "Metadata for loaded models", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-SuperLoader", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Super Loader", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/markuryy/ComfyUI-SuperLoader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "VykosX", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:05:55.450717Z", + "description": "Custom nodes to improve flow control and logic + several utilities to enhance capabilities", + "downloads": 0, + "github_stars": 123, + "icon": "", + "id": "ControlFlowUtils", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ControlFlowUtils", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/VykosX/ControlFlowUtils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-25T20:01:34.49534Z", + "description": "Custom node that allows automatic import and tagging of images generated by ComfyUI directly to the Hydrus (https://github.com/hydrusnetwork/hydrus) API.", + "downloads": 850, + "github_stars": 0, + "icon": "", + "id": "import-to-hydrus", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-01T22:21:34.816499Z", + "dependencies": [ + "hydrus-api" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7c3afcca-0b4a-4265-97df-fbe3fd1a977d", + "node_id": "import-to-hydrus", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.0" + }, + "license": "LICENSE", + "name": "import-to-hydrus", + "publisher": { + "createdAt": "2024-05-25T18:35:01.840295Z", + "description": "", + "id": "ryphon", + "logo": "", + "members": [], + "name": "Ryphon", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ryphon/import-to-hydrus.git", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-13T07:16:33.512074Z", + "description": "Presets for ComfyUI Nodes with user persistance", + "downloads": 163, + "github_stars": 1, + "icon": "https://raw.githubusercontent.com/Amorano/Jovimetrix-examples/refs/heads/master/res/logo-jovi_preset.png", + "id": "jovi_preset", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-23T19:13:27.837534Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "f1ce3784-2613-4c18-8138-02b1b16075be", + "node_id": "jovi_preset", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Jovi Preset", + "publisher": { + "createdAt": "2024-05-17T04:16:25.445017Z", + "description": "", + "id": "amorano", + "logo": "", + "members": [], + "name": "Joviex", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Amorano/Jovi_Preset", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-02T07:12:18.965892Z", + "description": "Kokoro TTS's Chinese comfyui node, 100 speakers", + "downloads": 233, + "github_stars": 1, + "icon": "", + "id": "kokorotts-zh", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-02T07:12:19.342183Z", + "dependencies": [ + "kokoro", + "soundfile", + "tqdm", + "misaki" + ], + "deprecated": false, + "downloadUrl": "", + "id": "57a68b00-bd37-4e32-af2b-25e6ef876628", + "node_id": "kokorotts-zh", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-KokoroTTS-Zh", + "publisher": { + "createdAt": "2025-05-02T02:48:24.87846Z", + "description": "", + "id": "alun123", + "logo": "", + "members": [], + "name": "alun123", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ruanjianlun/ComfyUI-KokoroTTS-Zh", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "akspa0", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:03.861916Z", + "description": "This is an audio processing script that applies soft limiting, optional loudness normalization, and optional slicing for transcription. It can also produce stereo-mixed outputs with optional audio appended to the end. The script organizes processed files into structured folders with sanitized filenames and retains original timestamps for continuity.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-FapMixPlus", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-FapMixPlus", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/akspa0/ComfyUI-FapMixPlus", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-31T08:21:08.583932Z", + "description": "A node pack for cerebras, groq, and SambNova hosted models.", + "downloads": 1134, + "github_stars": 0, + "icon": "", + "id": "apachellmpack", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-31T08:21:08.964454Z", + "dependencies": [ + "groq" + ], + "deprecated": false, + "downloadUrl": "", + "id": "bd2ea86f-ea65-433f-a2bd-79a26fde20b9", + "node_id": "apachellmpack", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "apachellmpack", + "publisher": { + "createdAt": "2025-01-28T14:37:07.362488Z", + "description": "", + "id": "apacheone", + "logo": "", + "members": [], + "name": "apacheone", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Apache0ne/apachellmpack", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Bin-sam", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:00.589019Z", + "description": "NODES:pose_extraction, Load_reference_unet, Load_denoising_unet, Load_Pose_Guider, Pose_Guider_Encode, DynamicPose_Sampler, load_pose_model, align", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "DynamicPose-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "DynamicPose-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Bin-sam/DynamicPose-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "katalist-ai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:04.243807Z", + "description": "Nodes: NudenetDetector", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "katalist-ai_comfyUI-nsfw-detection", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyUI-nsfw-detection", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/katalist-ai/comfyUI-nsfw-detection", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kingzcheung", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:25.299407Z", + "description": "These nodes are mainly used to translate prompt words from other languages into English. PromptTranslateToText implements prompt word translation based on Helsinki NLP translation model.It doesn't require internet connection\u3002", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "kingzcheung_ComfyUI_kkTranslator_nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_kkTranslator_nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIGCTeam/ComfyUI_kkTranslator_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ifmylove2011", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:26.316148Z", + "description": "NODES: TrimBG, TrimBG Advanced, Image Queue Loader, Load Image Alpha.\nA few tools for ComfyUI, perhaps it's exactly what you need.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "comfyui-missing-tool", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-missing-tool", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ifmylove2011/comfyui-missing-tool", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ParisNeo", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:13.257197Z", + "description": "lollms_nodes_suite is a set of nodes for comfyui that harnesses the power of lollms, a state-of-the-art AI text generation tool, to improve the quality of image generation.", + "downloads": 0, + "github_stars": 11, + "icon": "", + "id": "lollms_nodes_suite", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "lollms_nodes_suite", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ParisNeo/lollms_nodes_suite", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "lordgasmic", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:35.692188Z", + "description": "Nodes:CLIPTextEncodeWithWildcards. This wildcard node is a wildcard node that operates based on the seed.", + "downloads": 0, + "github_stars": 10, + "icon": "", + "id": "lordgasmic_ComfyUI-Wildcards", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Wildcards", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lordgasmic/ComfyUI-Wildcards", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ShmuelRonen", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:54:03.653432Z", + "description": "ComfyUI-FreeMemory is a custom node extension for ComfyUI that provides advanced memory management capabilities within your image generation workflows. It aims to help prevent out-of-memory errors and optimize resource usage during complex operations.", + "downloads": 0, + "github_stars": 108, + "icon": "", + "id": "ComfyUI-FreeMemory", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-FreeMemory", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShmuelRonen/ComfyUI-FreeMemory", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "vanche1212", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:47.062378Z", + "description": "Nodes:ApiRequestNode, LoadVideoNode, JsonParserNode, OllamaRequestNode, OldPhotoColorizationNode.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-ZMG-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ZMG PLUGIN", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/vanche1212/ComfyUI-ZMG-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "eesahe", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:53.632953Z", + "description": "InstantX's Flux union ControlNet loader and implementation", + "downloads": 0, + "github_stars": 70, + "icon": "", + "id": "ComfyUI-eesahesNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-eesahesNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/EeroHeikkinen/ComfyUI-eesahesNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "drago87", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:13.701808Z", + "description": "Nodes:File Padding, Image Info, VAE Loader With Name", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI_Dragos_Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Dragos_Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/drago87/ComfyUI_Dragos_Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ramesh-x90", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:03.507448Z", + "description": "This repository provides custom nodes for ComfyUI designed to process audio files, performing speaker diarization and integrating speaker data into whisper-transcribed segments. These nodes utilize the PyAnnote library for speaker identification and pandas for efficient data handling.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI_pyannote", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_pyannote", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ramesh-x90/ComfyUI_pyannote", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "M1kep", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:33.786801Z", + "description": "Nodes: Int, Float, String, Operation, Checkpoint", + "downloads": 0, + "github_stars": 56, + "icon": "", + "id": "ComfyLiterals", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyLiterals", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/M1kep/ComfyLiterals", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "maximclouser", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:11.458111Z", + "description": "Inference-time techniques to enhance diffusion-based image generation quality through random search and zero-order optimization algorithms", + "downloads": 0, + "github_stars": 21, + "icon": "", + "id": "maximclouser_ComfyUI-InferenceTimeScaling", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-InferenceTimeScaling", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/YRIKKA/ComfyUI-InferenceTimeScaling", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-05T14:38:04.782869Z", + "description": "NODES: 'Load One Image with Name, Title, Description', 'Load Multiple Images with Name, Directory, Title, Description'", + "downloads": 237, + "github_stars": 0, + "icon": "", + "id": "milan-nodes-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-05T14:38:05.18339Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "cd54cdf2-e16e-4641-9fe4-5736bb0b4a68", + "node_id": "milan-nodes-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "milan-nodes-comfyui", + "publisher": { + "createdAt": "2025-06-05T14:13:30.701646Z", + "description": "", + "id": "matorzhin", + "logo": "", + "members": [], + "name": "milan", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/matorzhin/milan-nodes-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "meshmesh-io", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:07.162004Z", + "description": "Nodes:Loop, LoopStart, LoopEnd, LoopStart_SEGIMAGE, LoopEnd_SEGIMAGE", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "mm-comfyui-loopback", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "mm-comfyui-loopback", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/meshmesh-io/mm-comfyui-loopback", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "LatentSpaceDirective", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:07.585803Z", + "description": "These are companion nodes for Texturaizer, a Blender plugin that connects complex 3D data to ComfyUI. https://texturaizer.com", + "downloads": 0, + "github_stars": 15, + "icon": "", + "id": "ComfyUI-Texturaizer", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Texturaizer", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LatentSpaceDirective/ComfyUI-Texturaizer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "SoftMeng", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:44.794941Z", + "description": "Nodes: ComfyUI_ImageToText", + "downloads": 0, + "github_stars": 14, + "icon": "", + "id": "ComfyUI_ImageToText", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_ImageToText", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SoftMeng/ComfyUI_ImageToText", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:01.273019Z", + "description": "a custom node for [a/FancyVideo](https://github.com/360CVGroup/FancyVideo)", + "downloads": 0, + "github_stars": 36, + "icon": "", + "id": "FancyVideo-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "FancyVideo-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/FancyVideo-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:00.578096Z", + "description": "a comfyui custom node for [a/GPT-SoVITS](https://github.com/RVC-Boss/GPT-SoVITS)", + "downloads": 0, + "github_stars": 41, + "icon": "", + "id": "GSTTS-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "GSTTS-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/GSTTS-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-27T00:23:17.942886Z", + "description": "A custom node for ComfyUI that allows you to interact with OpenRouter's chat/completion API, providing access to a wide range of LLM models including GPT-4, Claude, Llama, Mistral, and more.", + "downloads": 451, + "github_stars": 8, + "icon": "", + "id": "openrouter_node", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-27T00:23:32.933537Z", + "dependencies": [ + "requests", + "tiktoken", + "Pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6e1d29c6-f2a7-46b2-9660-09d9d74e6cde", + "node_id": "openrouter_node", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Openrouter_node", + "publisher": { + "createdAt": "2025-05-27T00:09:36.657516Z", + "description": "", + "id": "gabe-init", + "logo": "", + "members": [], + "name": "Gabe", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gabe-init/ComfyUI-Openrouter_node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "thecooltechguy", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:16.801303Z", + "description": "Easily use Magic Animate within ComfyUI!\n[w/WARN: This extension requires 15GB disk space.]", + "downloads": 0, + "github_stars": 223, + "icon": "", + "id": "ComfyUI-MagicAnimate", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-MagicAnimate", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/thecooltechguy/ComfyUI-MagicAnimate", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "space-nuko", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:40.861161Z", + "description": "NODES: Dynamic Prompts Text Encode, Feeling Lucky Text Encode, Output String", + "downloads": 0, + "github_stars": 11, + "icon": "", + "id": "nui-suite", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "nui suite", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/space-nuko/nui-suite", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-03T15:06:11.28006Z", + "description": "ComfyUI integration for Pollinations API - Generate images and text with free and premium models (gptimage, kontext)", + "downloads": 1122, + "github_stars": 37, + "icon": "", + "id": "comfyui-Pollinations", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-07T07:11:41.117282Z", + "dependencies": [ + "requests>=2.25.1", + "pydub>=0.25.1" + ], + "deprecated": false, + "downloadUrl": "", + "id": "94634cb4-51ea-48b0-a046-d21cbc329efc", + "node_id": "comfyui-Pollinations", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.3.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Pollinations", + "publisher": { + "createdAt": "2024-07-01T23:11:45.570672Z", + "description": "", + "id": "ailab", + "logo": "", + "members": [], + "name": "AILab", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/1038lab/ComfyUI-Pollinations", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "JPrevots", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:57.484257Z", + "description": "Nodes:PhyCV - Phase-Stretch Transform (PST), PhyCV - VEViD, PhyCV - Page.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-PhyCV", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-PhyCV", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/JPrevots/ComfyUI-PhyCV", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "tungdop2", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:10:55.092784Z", + "description": "The Joy Caption Alpha Two node for ComfyUI, based on https://huggingface.co/spaces/fancyfeast/joy-caption-alpha-two", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "Comfyui_joy-caption-alpha-two", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Joy Caption Alpha Two for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tungdop2/Comfyui_joy-caption-alpha-two", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T14:41:42.58007Z", + "description": "Advanced color manipulation and image processing nodes for ComfyUI: color extraction, contrast analysis, gradient generation, and image layout.", + "downloads": 991, + "github_stars": 8, + "icon": "", + "id": "comfyui_baikong_node", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-12T15:28:08.847644Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a8fe5e96-09ad-43d6-8a03-98f03da8a81c", + "node_id": "comfyui_baikong_node", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.4.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_BaiKong_Node", + "publisher": { + "createdAt": "2024-06-20T14:26:34.480667Z", + "description": "", + "id": "baikong", + "logo": "", + "members": [], + "name": "BaiKong", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/JayLyu/ComfyUI_BaiKong_Node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "ostris", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:38.893547Z", + "description": "This is a collection of custom nodes for ComfyUI that I made for some QOL. I will be adding much more advanced ones in the future once I get more familiar with the API.", + "downloads": 0, + "github_stars": 30, + "icon": "", + "id": "ostris_nodes_comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Ostris Nodes ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ostris/ostris_nodes_comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "prodogape", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:21.6877Z", + "description": "This plugin is mainly based on Minio, implementing the ability to read images from Minio, save images, facilitating expansion and connection across multiple machines.", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "ComfyUI-Minio", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui-Minio", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/prodogape/ComfyUI-Minio", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "mephisto83", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:50.549282Z", + "description": "An integration between comfy ui and petty paint", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "petty-paint-comfyui-node", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "petty-paint-comfyui-node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mephisto83/petty-paint-comfyui-node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-12T14:57:42.462221Z", + "description": "ComfyUI simple square masks creation.", + "downloads": 0, + "github_stars": 0, + "icon": "https://github.com/zentrocdot/ComfyUI_Square_Masks/blob/main/images/original_logo_512x512.png", + "id": "ComfyUI-Simple_Square_Masks", + "latest_version": { + "version": "nightly" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Simple_Square_Masks_Nodes", + "publisher": { + "createdAt": "2025-02-03T19:12:00.551657Z", + "description": "", + "id": "zentrocdot", + "logo": "", + "members": [], + "name": "zentrocdot", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zentrocdot/ComfyUI_Square_Masks", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-02T15:06:09.21711Z", + "description": "Create a painting by colors image from an image", + "downloads": 110, + "github_stars": 0, + "icon": "", + "id": "painting-by-colors-generator", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-03T07:57:07.948805Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4834e09c-c15f-40f9-9584-4a31af184264", + "node_id": "painting-by-colors-generator", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"text\": \"GNU General Public License v3\"}", + "name": "painting-by-colors-generator", + "publisher": { + "createdAt": "2025-06-02T14:26:30.833717Z", + "description": "", + "id": "chrisvenator", + "logo": "", + "members": [], + "name": "Chrisvenator", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Chrisvenator/ComfyUI-Painting-by-colors-generator/", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "prodogape", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:23.216474Z", + "description": "This node is mainly based on [a/OmDet](https://github.com/om-ai-lab/OmDet) for object detection, and it outputs related images, masks, and Labelme JSON information.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-OmDet", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-OmDet", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/prodogape/ComfyUI-OmDet", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Doctor Diffusion", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:11.412913Z", + "description": "Nodes:Whisper Node, Prompt Schedule Converter. Convert song lyrics into a useable prompt travel schedule within comfyUI. Includes whisper large-v2.", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "ComfyUI-Schedulizer", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Schedulizer", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DoctorDiffusion/ComfyUI-Schedulizer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Lasse Lauwerys", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:08.316891Z", + "description": "Implements proper multitouch zooming and panning into ComfyUI to make it more usable on mobile devices.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-Touch-Gestures", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Touch screen gesture support", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Iemand005/ComfyUI-Touch-Gestures", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-05T09:25:20.566807Z", + "description": "\u96c6\u6210llama-joycaption-beta-one-hf-llava\uff0c\u63d0\u4f9b\u672c\u5730\u3001\u8fdc\u7a0b\u8c03\u7528\u751f\u6210\u56fe\u7247\u63cf\u8ff0\u53ca\u4e2d\u82f1\u6587\u4e92\u8bd1\u529f\u80fd\u3002\nIt integrates the llama-joycaption-beta-one-hf-llava model and offers both local and remote invocation capabilities to generate image descriptions and perform Chinese-English translation.\nPillar_For_ComfyUI", + "downloads": 363, + "github_stars": 2, + "icon": "https://github.com/aicoder-max/Pillar_For_ComfyUI/blob/main/icon.png", + "id": "pillar_for_comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-05T09:40:38.297578Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "793c58c6-a42f-4a78-92f2-afc9a6359fef", + "node_id": "pillar_for_comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Pillar_For_ComfyUI", + "publisher": { + "createdAt": "2025-05-29T14:41:50.722465Z", + "description": "", + "id": "jack-liu", + "logo": "", + "members": [], + "name": "aicoder-max", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/aicoder-max/Pillar_For_ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "fssorc", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:18.3042Z", + "description": "Match two faces' shape before using other face swap nodes\nFace-swapping tools typically only replace facial features during the swap, without altering the facial shape. When there is a significant difference in facial shape between the target person and the person in the original photo, the result of the face swap is less satisfactory.\nThis project is a small script that can first liquefy and stretch the face in the original photo according to the horizontal and vertical proportions of the target person's facial contour. The resulting image can be used as input for other face-swapping nodes.", + "downloads": 0, + "github_stars": 171, + "icon": "", + "id": "ComfyUI_FaceShaper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_FaceShaper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fssorc/ComfyUI_FaceShaper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Smuzzies", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:43.80014Z", + "description": "Nodes: Chatbox Overlay. Custom node for ComfyUI to add a text box over a processed image before save node.", + "downloads": 0, + "github_stars": 21, + "icon": "", + "id": "comfyui_chatbox_overlay", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Chatbox Overlay node for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Smuzzies/comfyui_chatbox_overlay", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "aidec", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:37.962493Z", + "description": "The Text Queue Processor can split text into groups line by line for batch processing (unfinished, with noticeable bugs still being fixed). Currently, on the first run, it may only process one item. Once that is completed, running it again usually works fine. After each run, the `start_index` needs to be manually reset. Occasionally, strange issues occur, such as multiple queues being added at once, while other times it works perfectly fine. The potential causes are still under investigation.", + "downloads": 0, + "github_stars": 9, + "icon": "", + "id": "Comfyui_TextBatch_aidec", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui_TextBatch_aidec", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/aidec/Comfyui_TextBatch_aidec", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Playbook", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:53.46781Z", + "description": "Custom nodes for connecting 3D scenes and ComfyUI workflows.", + "downloads": 0, + "github_stars": 21, + "icon": "", + "id": "playbook3d-comfyui-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Playbook Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/playbook3d/playbook3d-comfyui-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Chengym2023", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:54.200002Z", + "description": "NODES: SiliconCloudReasoning, DeepSeekOnline", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-DeepSeek_Online", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-DeepSeek_Online", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Chengym2023/ComfyUI-DeepSeek_Online", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "sugarkwork", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:31.480459Z", + "description": "This is a node for using cohere (Command R+) from ComfyUI. You need to edit the startup .bat file of ComfyUI and describe the API key obtained from Cohere as follows.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "comfyui_cohere", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui_cohere", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sugarkwork/comfyui_cohere", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "42lux", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:18.746059Z", + "description": "Just a bunch of QOL nodes. Normalized Flux Sampling, High Res Latent Picker, Textbox with Token Counter.", + "downloads": 0, + "github_stars": 15, + "icon": "", + "id": "ComfyUI-42lux", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Just a bunch of QOL nodes by 42lux", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/42lux/ComfyUI-42lux", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "M1kep", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:37.65003Z", + "description": "Nodes: TAESD VAE Decode", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-OtherVAEs", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-OtherVAEs", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/M1kep/ComfyUI-OtherVAEs", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "CozyMantis", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:09.882935Z", + "description": "Generate OpenPose face/body reference poses in ComfyUI with ease. Made with \ud83d\udc9a by the CozyMantis squad.", + "downloads": 0, + "github_stars": 83, + "icon": "", + "id": "pose-generator-comfyui-node", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Cozy Reference Pose Generator", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cozymantis/pose-generator-comfyui-node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kraglik", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:40.759721Z", + "description": "A prompt generation system that manages relationships between prompt components to maintain logical consistency. Integrates with ComfyUI as a custom node.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "prompt_collapse", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "PromptCollapse", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kraglik/prompt_collapse", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Doctor Diffusion", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:13.552632Z", + "description": "Remove backgrounds from images with [a/BEN](https://huggingface.co/PramaLLC/BEN) in ComfyUI", + "downloads": 0, + "github_stars": 41, + "icon": "", + "id": "ComfyUI-BEN", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI BEN - Background Erase Network", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DoctorDiffusion/ComfyUI-BEN", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "robtl2", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:15.006553Z", + "description": "A socket service that helps third-party DCC software maintain long-term image exchange with comfyUI.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-ComfyBridge", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ComfyBridge", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/robtl2/ComfyUI-ComfyBridge", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "uarefans", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:39.505296Z", + "description": "Nodes: Fans Styler (Max 10 Style), Fans Text Concat (Until 10 text), Fans Prompt Styler Postive (Can replace {prompt} word in your csv files), Fans Prompt Styler Negative (With sentence structure).", + "downloads": 0, + "github_stars": 17, + "icon": "", + "id": "ComfyUI-Fans", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Fans", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/uarefans/ComfyUI-Fans", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "M1kep", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:38.772952Z", + "description": "ComfyUI-KepOpenAI is a user-friendly node that serves as an interface to the GPT-4 with Vision (GPT-4V) API. This integration facilitates the processing of images coupled with text prompts, leveraging the capabilities of the OpenAI API to generate text completions that are contextually relevant to the provided inputs.", + "downloads": 0, + "github_stars": 30, + "icon": "", + "id": "ComfyUI-KepOpenAI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-KepOpenAI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/M1kep/ComfyUI-KepOpenAI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jmkl", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:23.395785Z", + "description": "ComfyUI custom user.css and some script stuff. mainly for web interface.", + "downloads": 0, + "github_stars": 10, + "icon": "", + "id": "ComfyUI-ricing", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Ricing", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jmkl/ComfyUI-ricing", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "lrzjason", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:12.476617Z", + "description": "NODES: Save Weight As Kolors Unet, Save Kolors", + "downloads": 0, + "github_stars": 17, + "icon": "", + "id": "Comfyui-Kolors-Utils", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui Kolors Utils", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lrzjason/Comfyui-Kolors-Utils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "xs315431", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:26.276001Z", + "description": "NODES: Get Prompt_Id, Success Callback\nget comfyui task id and Callback for successful image generation, in conjunction with the back-end", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "Comfyui_Get_promptId", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui_Get_promptId", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/xs315431/Comfyui_Get_promptId", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-17T23:04:08.056849Z", + "description": "This extension provides object segmentation capabilities for ComfyUI workflows", + "downloads": 739, + "github_stars": 0, + "icon": "", + "id": "realtime_forktest_test", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-17T23:04:09.524946Z", + "dependencies": [ + "torch>=2.3.1", + "torchvision>=0.18.1", + "pyyaml", + "numpy>=1.24.4", + "tqdm>=4.66.1", + "hydra-core>=1.3.2", + "iopath>=0.1.10", + "pillow>=9.4.0" + ], + "deprecated": true, + "downloadUrl": "", + "id": "690e1701-291e-4137-8269-bf98326d27a7", + "node_id": "realtime_forktest_test", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "realtime_forktest", + "publisher": { + "createdAt": "2025-01-16T15:53:29.234465Z", + "description": "", + "id": "eliteprox", + "logo": "", + "members": [], + "name": "GH Publisher", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/eliteprox/ComfyUI-SAM2-Realtime", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chakib-belgaid", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:51.75931Z", + "description": "A ComfyUI utility plugin designed to optimize the latent space for generating high-quality results. It approximates the closest size model for better generation results.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-autosize", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-autosize", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chakib-belgaid/ComfyUI-autosize", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-22T19:01:02.005443Z", + "description": "Comprehensive PyTorch nodes for ComfyUI - Neural network training, inference, and ML workflows", + "downloads": 192, + "github_stars": 1, + "icon": "https://avatars.githubusercontent.com/u/154278219?s=48&v=4", + "id": "pytorch-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-22T19:25:11.8489Z", + "dependencies": [ + "torch>=2.0.0", + "torchvision>=0.15.0", + "torchaudio>=2.0.0", + "numpy>=1.24.0", + "scipy>=1.11.0", + "scikit-learn>=1.3.0", + "tqdm>=4.64.0", + "pyyaml>=6.0.0", + "packaging>=23.1", + "coqpit>=0.0.16", + "h5py", + "transformers>=4.33.0", + "einops>=0.6.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "2a1891a2-fb3d-41ba-ba40-b8da902144e9", + "node_id": "pytorch-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "EternalKernel PyTorch Nodes", + "publisher": { + "createdAt": "2024-06-24T06:41:24.413766Z", + "description": "", + "id": "hmg", + "logo": "", + "members": [], + "name": "HMG", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TashaSkyUp/EternalKernelPytorchNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-23T14:04:12.956664Z", + "description": "Make ComfyUI get correct memory information in the container/docker (psutil monkey path)", + "downloads": 214, + "github_stars": 0, + "icon": "", + "id": "psutil-container-memory-patch", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-23T15:10:51.849226Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "663e5c67-1d66-4d06-8f33-94c6e83d9b60", + "node_id": "psutil-container-memory-patch", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.1" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "Psutil Container Memory Patch", + "publisher": { + "createdAt": "2025-04-23T11:42:07.898074Z", + "description": "", + "id": "springjk", + "logo": "", + "members": [], + "name": "springjk", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/springjk/ComfyUI-Psutil-Container-Memory-Patch", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Doctor Diffusion", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:12.012053Z", + "description": "A node suite for downloading audio and video from youtube as we all sevral useful video utilits such as a final frame selector and a node that merges two videos into one.", + "downloads": 0, + "github_stars": 19, + "icon": "", + "id": "ComfyUI-MediaMixer", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "MediaMixer", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DoctorDiffusion/ComfyUI-MediaMixer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-30T18:56:38.466595Z", + "description": "Qwen2.5-Omni in ComfyUI", + "downloads": 163, + "github_stars": 1, + "icon": "https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen2.5-Omni/Omni_logo.png", + "id": "qwen2_5-omni", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-30T18:56:38.852186Z", + "dependencies": [ + "qwen-omni-utils", + "qwen-omni-utils[decord]", + "transformers>=4.52.3" + ], + "deprecated": false, + "downloadUrl": "", + "id": "59531cec-bff1-4173-9641-e41ca089aa96", + "node_id": "qwen2_5-omni", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Qwen2_5-Omni", + "publisher": { + "createdAt": "2024-07-27T15:18:06.489076Z", + "description": "", + "id": "makki-shizu", + "logo": "", + "members": [], + "name": "Makki_Shizu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MakkiShizu/ComfyUI-Qwen2_5-Omni", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "NumZ", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:05.463Z", + "description": "Convert your workflows into node and chain them.", + "downloads": 0, + "github_stars": 154, + "icon": "", + "id": "Comfyui-FlowChain", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-FlowChain", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/numz/Comfyui-FlowChain", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "bombax-xiaoice", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:17.607598Z", + "description": "Another comfy implementation for the short video generation project hpcaitech/Open-Sora, supporting latest V2 and V3 models as well as image to video functions, etc.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-Open-Sora-I2V", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Open-Sora-I2V", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bombax-xiaoice/ComfyUI-Open-Sora-I2V", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-09T10:49:53.922747Z", + "description": "A matting toolkit based on ComfyUI, supporting multiple matting models and detail processing methods.", + "downloads": 356, + "github_stars": 3, + "icon": "", + "id": "removebackgroundsuite", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-11T10:11:29.61576Z", + "dependencies": [ + "torch", + "numpy", + "Pillow", + "torchvision", + "opencv-python", + "scipy", + "transformers", + "tqdm", + "pymatting", + "guided-filter", + "vitmatte", + "timm" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a51e2a48-bf6c-452a-9a1d-31cfc6ae7059", + "node_id": "removebackgroundsuite", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-RemoveBackgroundSuite", + "publisher": { + "createdAt": "2025-06-09T10:29:05.911191Z", + "description": "", + "id": "whmc76", + "logo": "", + "members": [], + "name": "Cyber Dick Lang", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/whmc76/ComfyUI-RemoveBackgroundSuite", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "mullakhmetov", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:44.188433Z", + "description": "ComfyS3 helpful util nodes for dynamic workflows", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui_dynamic_util_nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui_dynamic_util_nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mullakhmetov/comfyui_dynamic_util_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-24T23:13:02.613181Z", + "description": "aaaa.", + "downloads": 763, + "github_stars": 0, + "icon": "", + "id": "comfyui-ultimate-openpose-editor", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-24T23:13:04.56986Z", + "dependencies": [ + "torch", + "polygraphy", + "numpy", + "opencv-python", + "matplotlib" + ], + "deprecated": false, + "downloadUrl": "", + "id": "ce7d300c-0e6d-4dfa-a1f0-2192ffdf8d23", + "node_id": "comfyui-ultimate-openpose-editor", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.7" + }, + "license": "", + "name": "aaaa", + "publisher": { + "createdAt": "2025-01-11T22:15:39.850821Z", + "description": "", + "id": "west-neighbor", + "logo": "", + "members": [], + "name": "westNeighbor", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-27T00:45:34.68816Z", + "description": "ComfyUI node for consuming and processing repository content", + "downloads": 123, + "github_stars": 0, + "icon": "", + "id": "repo_eater", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-27T01:06:21.619397Z", + "dependencies": [ + "gitingest>=0.1.0", + "tiktoken>=0.5.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "9e1d7a41-3edb-47c1-ace5-aeaf9da72e52", + "node_id": "repo_eater", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Repo-Eater", + "publisher": { + "createdAt": "2025-05-27T00:09:36.657516Z", + "description": "", + "id": "gabe-init", + "logo": "", + "members": [], + "name": "Gabe", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gabe-init/ComfyUI-Repo-Eater", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "MushroomFleet", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:40.466112Z", + "description": "This project provides a collection of custom nodes designed for enhanced audio effects in ComfyUI. With an intuitive pedalboard interface, users can easily integrate and manipulate various audio effects within their workflows.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "DJZ-Pedalboard", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "DJZ-Pedalboard", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MushroomFleet/DJZ-Pedalboard", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "tudal", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:37.526286Z", + "description": "Mainly its prompt generating by custom syntax. Prompt Parser, Prompt tags, Random Line, Calculate Upscale, Image size to string, Type Converter, Image Resize To Height/Width, Load Random Image, Load Text", + "downloads": 0, + "github_stars": 63, + "icon": "", + "id": "Hakkun-ComfyUI-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Hakkun-ComfyUI-nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tudal/Hakkun-ComfyUI-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-10T21:36:49.164683Z", + "description": "Nodes: Ruben-BilboX's PromptGeek Photo Prompt. This provides a convenient way to compose photorealistic prompts into ComfyUI. Post-Processing: adds various post processing effects. Bonus: Option to show a distant server shutdown menu.", + "downloads": 916, + "github_stars": 9, + "icon": "", + "id": "ruben-bilbox-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-03T04:40:00.832423Z", + "dependencies": [ + "colour-science>=0.4.3", + "numpy>=1.19.0", + "imageio>=2.31.0", + "opencv-python>=4.8.1.78" + ], + "deprecated": false, + "downloadUrl": "", + "id": "0719f017-40af-426a-b9d2-dfa050dc9e2b", + "node_id": "ruben-bilbox-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ruben-bilbox-comfyui", + "publisher": { + "createdAt": "2025-04-10T21:29:57.591548Z", + "description": "", + "id": "rubenalba95", + "logo": "", + "members": [], + "name": "Rubendario Albarran Gonzalez", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/RubenAlba95/ruben-bilbox-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ShinChven", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:32.319192Z", + "description": "This project contains custom nodes for ComfyUI, developed by ShinChven. The nodes in this package extend the functionality of ComfyUI by providing additional features and utilities.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "sc-comfy-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ShinChven's Custom Nodes Package", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShinChven/sc-comfy-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ManglerFTW", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:41.333037Z", + "description": "A set of custom nodes to perform image 2 image functions in ComfyUI.", + "downloads": 0, + "github_stars": 175, + "icon": "", + "id": "ComfyI2I", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyI2I", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ManglerFTW/ComfyI2I", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-29T07:23:03.041289Z", + "description": "\u5bf9 photodoodle \u7684 comfyui \u539f\u751f\u5b9e\u73b0", + "downloads": 293, + "github_stars": 32, + "icon": "", + "id": "sc-photodoodle", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-29T16:05:46.23954Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a69c145f-2325-489c-93f5-567c7f931d1d", + "node_id": "sc-photodoodle", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-SC-PhotoDoodle", + "publisher": { + "createdAt": "2024-09-19T05:47:44.255279Z", + "description": "", + "id": "shichen", + "logo": "", + "members": [], + "name": "shichen", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/latentcat/ComfyUI-SC-PhotoDoodle", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AiMiDi", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:34.501557Z", + "description": "Nodes:Merge Tag, Clear Tag, Add Tag, Load Images Pair Batch, Save Images Pair", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-Aimidi-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Aimidi-nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AiMiDi/ComfyUI-Aimidi-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "aiXander", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:50.91794Z", + "description": "Maintained by Eden.art, this is a very fast, well tuned trainer for SDXL and SD15", + "downloads": 0, + "github_stars": 56, + "icon": "", + "id": "sd-lora-trainer", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Eden.art LoRa Trainer", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/edenartlab/sd-lora-trainer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ZHO-ZHO-ZHO", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:25.922438Z", + "description": "Unofficial implementation of [a/InstantID](https://github.com/InstantID/InstantID) for ComfyUI", + "downloads": 0, + "github_stars": 1425, + "icon": "", + "id": "ComfyUI-InstantID", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-InstantID", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ZHO-ZHO-ZHO/ComfyUI-InstantID", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ZHO-ZHO-ZHO", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:28.964384Z", + "description": "Unofficial implementation of [a/SegMoE: Segmind Mixture of Diffusion Experts](https://github.com/segmind/segmoe) for ComfyUI", + "downloads": 0, + "github_stars": 79, + "icon": "", + "id": "ComfyUI-SegMoE", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI SegMoE", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ZHO-ZHO-ZHO/ComfyUI-SegMoE", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "LarryJane491", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:48.542051Z", + "description": "The LoRA Caption custom nodes, just like their name suggests, allow you to caption images so they are ready for LoRA training.", + "downloads": 0, + "github_stars": 67, + "icon": "", + "id": "Image-Captioning-in-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Image-Captioning-in-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LarryJane491/Image-Captioning-in-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ginlov", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:43.393285Z", + "description": "Nodes:SegToMask", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "segment_to_mask_comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "segment_to_mask_comfyui", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ginlov/segment_to_mask_comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-10T08:08:43.88314Z", + "description": "Sing to Midi \ud83c\udfb6", + "downloads": 193, + "github_stars": 5, + "icon": "", + "id": "some-mw", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-10T08:08:44.316868Z", + "dependencies": [ + "einops", + "fairseq", + "librosa", + "lightning", + "mido", + "praat-parselmouth", + "PyYAML", + "scipy", + "torchmetrics", + "tqdm" + ], + "deprecated": false, + "downloadUrl": "", + "id": "0308708c-30e3-4a67-b0b3-e1d097caa41a", + "node_id": "some-mw", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_SOME", + "publisher": { + "createdAt": "2025-01-06T14:10:29.10336Z", + "description": "", + "id": "mw", + "logo": "", + "members": [], + "name": "MW", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/billwuhao/ComfyUI_SOME", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "Umikaze-job", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:07.910686Z", + "description": "This extension simply connects the nodes and specifies the output path of the generated images to a manageable path.", + "downloads": 0, + "github_stars": 6, + "icon": "", + "id": "select_folder_path_easy", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "select_folder_path_easy", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Umikaze-job/select_folder_path_easy", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Jannchie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:39.032384Z", + "description": "This is a completely different set of nodes than Comfy's own KSampler series. This set of nodes is based on Diffusers, which makes it easier to import models, apply prompts with weights, inpaint, reference only, controlnet, etc.", + "downloads": 0, + "github_stars": 98, + "icon": "", + "id": "ComfyUI-J", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-J", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Jannchie/ComfyUI-J", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "MarkoCa1", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:36.926977Z", + "description": "Why make this node? Because I only need simple text related operations and don't want to install anything extra.", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "ComfyUI-Text", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Text", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MarkoCa1/ComfyUI-Text", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-28T15:00:41.154186Z", + "description": "", + "downloads": 909, + "github_stars": 0, + "icon": "", + "id": "simple-model-downloader", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-28T17:26:02.03219Z", + "dependencies": [ + "aiohttp>=3.8.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a673ddfc-265a-433d-b4bd-de2da58c8845", + "node_id": "simple-model-downloader", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "simple-model-downloader", + "publisher": { + "createdAt": "2025-01-28T14:57:22.320529Z", + "description": "", + "id": "lalimec", + "logo": "", + "members": [], + "name": "Lalimec", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Lalimec/simple-model-downloader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smlbiobot", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:23.414008Z", + "description": "Prompt Expansion for Stable Diffusion, using Deepseek API.", + "downloads": 0, + "github_stars": 13, + "icon": "", + "id": "sml-comfyui-prompt-expansion", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "sml-comfyui-prompt-expansion", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smlbiobot/sml-comfyui-prompt-expansion", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-09T11:07:47.601082Z", + "description": "", + "downloads": 119, + "github_stars": 2, + "icon": "", + "id": "spawner-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-09T11:07:48.00431Z", + "dependencies": [ + "piexif", + "pypng" + ], + "deprecated": false, + "downloadUrl": "", + "id": "cf9b8db1-03a7-4dc7-874f-0ed6a2c6cd6e", + "node_id": "spawner-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-spawner-nodes", + "publisher": { + "createdAt": "2025-06-04T11:23:35.643962Z", + "description": "", + "id": "spawner", + "logo": "", + "members": [], + "name": "spawner", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/spawner1145/comfyui-spawner-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "meap158", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:01.704427Z", + "description": "Dynamic prompt expansion, powered by GPT-2 locally on your device.", + "downloads": 0, + "github_stars": 77, + "icon": "", + "id": "ComfyUI-Prompt-Expansion", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Prompt-Expansion", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/meap158/ComfyUI-Prompt-Expansion", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "rcfcu2000", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:32.265967Z", + "description": "Nodes: Combine ZHGMasks, Cover ZHGMasks, ZHG FaceIndex, ZHG SaveImage, ZHG SmoothEdge, ZHG GetMaskArea, ...", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "zhihuige-nodes-comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "zhihuige-nodes-comfyui", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/rcfcu2000/zhihuige-nodes-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ZHO-ZHO-ZHO", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:25.181482Z", + "description": "Nodes:Q-Align Scoring. Implementation of [a/Q-Align](https://arxiv.org/abs/2312.17090) for ComfyUI", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-Q-Align", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Q-Align", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ZHO-ZHO-ZHO/ComfyUI-Q-Align", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "CC-SUN6", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:24.882644Z", + "description": "About the comfyui image selector, image adjustment (panning, rotation, zoom), adjust image size to be a multiple of 8", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ccsun_node", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ccsun_node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/CC-SUN6/ccsun_node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ZHO-ZHO-ZHO", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:27.573169Z", + "description": "QWen-VL-Plus & QWen-VL-Max in ComfyUI", + "downloads": 0, + "github_stars": 212, + "icon": "", + "id": "ComfyUI-Qwen-VL-API", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Qwen-VL-API", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ZHO-ZHO-ZHO/ComfyUI-Qwen-VL-API", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "city96", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:21.66502Z", + "description": "Upscaling stable diffusion latents using a small neural network.", + "downloads": 0, + "github_stars": 159, + "icon": "", + "id": "SD-Latent-Upscaler", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "SD-Latent-Upscaler", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/city96/SD-Latent-Upscaler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-12T08:49:41.239185Z", + "description": "This project is deprecated. Please use ComfyUI-CaptionThis, which supports not only Janus Pro for captioning but also Florence2 and JoyCaption (in testing).", + "downloads": 840, + "github_stars": 0, + "icon": "", + "id": "comfyui_janus_pro_caption", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-12T08:49:41.696915Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "8b408f12-ec18-4302-9336-cb14c136eabd", + "node_id": "comfyui_janus_pro_caption", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_JanusProCaption", + "publisher": { + "createdAt": "2025-02-10T08:44:10.88859Z", + "description": "", + "id": "mie", + "logo": "", + "members": [], + "name": "Mie", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MieMieeeee/ComfyUI-JanusProCaption", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "szhublox", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:19.724693Z", + "description": "Auto-MBW for ComfyUI loosely based on sdweb-auto-MBW. Nodes: auto merge block weighted", + "downloads": 0, + "github_stars": 15, + "icon": "", + "id": "ambw_comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Auto-MBW", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/szhublox/ambw_comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "laksjdjf", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:59.514754Z", + "description": "Nodes:CLIP Text Encode (Batch), String Input, Batch String", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "Batch-Condition-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Batch-Condition-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/laksjdjf/Batch-Condition-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "windfancy", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:05.26128Z", + "description": "NODES: PromptStyler, PromptLatent, PromptCLIPEncode, PromptSelector", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "zsq_prompt", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "zsq_prompt", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/windfancy/zsq_prompt", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "meap158", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:02.422989Z", + "description": "Instantly replace your image's background.", + "downloads": 0, + "github_stars": 59, + "icon": "", + "id": "ComfyUI-Background-Replacement", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Background-Replacement", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/meap158/ComfyUI-Background-Replacement", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ZHO-ZHO-ZHO", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:26.875025Z", + "description": "Unofficial implementation of [a/PhotoMaker](https://github.com/TencentARC/PhotoMaker) for ComfyUI", + "downloads": 0, + "github_stars": 816, + "icon": "", + "id": "ComfyUI-PhotoMaker-ZHO", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI PhotoMaker (ZHO)", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ZHO-ZHO-ZHO/ComfyUI-PhotoMaker-ZHO", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "taabata", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:42.144759Z", + "description": "ComfyUI custom nodes for inpainting/outpainting using the new latent consistency model (LCM)", + "downloads": 0, + "github_stars": 260, + "icon": "", + "id": "LCM_Inpaint_Outpaint_Comfy", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "LCM_Inpaint-Outpaint_Comfy", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/taabata/LCM_Inpaint_Outpaint_Comfy", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "xXAdonesXx", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:43.396949Z", + "description": "Implementation of AutoGen inside ComfyUI. This repository is under development, and not everything is functioning correctly yet.", + "downloads": 0, + "github_stars": 349, + "icon": "", + "id": "NodeGPT", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "NodeGPT", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/xXAdonesXx/NodeGPT", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-15T13:57:07.612276Z", + "description": "A ComfyUI custom node package for seamless integration with Threads (Meta's social platform). This package allows you to publish posts, manage images, and retrieve post history directly from your ComfyUI workflows.", + "downloads": 164, + "github_stars": 3, + "icon": "", + "id": "thread", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-17T02:39:06.640586Z", + "dependencies": [ + "threads_sdk" + ], + "deprecated": false, + "downloadUrl": "", + "id": "04b5bf38-fb99-4dea-82d8-8c0546eadffc", + "node_id": "thread", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Thread", + "publisher": { + "createdAt": "2025-06-15T13:14:15.653234Z", + "description": "", + "id": "dseditor", + "logo": "", + "members": [], + "name": "dseditor", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dseditor/ComfyUI-Thread", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "AIGODLIKE", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:52.697106Z", + "description": "This project is used to enable [a/ToonCrafter](https://github.com/ToonCrafter/ToonCrafter) to be used in ComfyUI.\nYou can use it to achieve generative keyframe animation\nAnd use it in Blender for animation rendering and prediction", + "downloads": 0, + "github_stars": 367, + "icon": "", + "id": "ComfyUI-ToonCrafter", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ToonCrafter", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIGODLIKE/ComfyUI-ToonCrafter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "FlyingFireCo", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:09.450449Z", + "description": "Nodes:Tiled KSampler, Asymmetric Tiled KSampler, Circular VAEDecode.", + "downloads": 0, + "github_stars": 86, + "icon": "", + "id": "tiled_ksampler", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "tiled_ksampler", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/FlyingFireCo/tiled_ksampler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Nevysha", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:47.404029Z", + "description": "A simple sidebar tweak to force fixe the ComfyUI menu to the top of the screen. Reaaally quick and dirty. May break with some ComfyUI setup.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI-nevysha-top-menu", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-nevysha-top-menu", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Nevysha/ComfyUI-nevysha-top-menu", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "nagolinc", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:03.848321Z", + "description": "Based off of: [a/Birch-san/diffusers-play/approx_vae](https://github.com/Birch-san/diffusers-play/tree/main/approx_vae). This ComfyUI node allows you to quickly preview SDXL 1.0 latents.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI_FastVAEDecorder_SDXL", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_FastVAEDecorder_SDXL", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nagolinc/ComfyUI_FastVAEDecorder_SDXL", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Pheat-AI", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:33.825536Z", + "description": "Nodes:Batch Image Blend by Mask, Batch Enlarged Overlay, Batch Image Overlay, Remove Black Pixels to Transparent, Canny Shrink and Recenter, ...", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "Remade_nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Remade_nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Pheat-AI/Remade_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-02T06:34:12.152501Z", + "description": "Comfy UI custom nodes for JEN music generation powered by Futureverse", + "downloads": 876, + "github_stars": 1, + "icon": "", + "id": "comfyui-jen", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-05T23:38:38.908148Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c4ab81c4-f2e5-4084-ba2d-347f4798abd4", + "node_id": "comfyui-jen", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-JEN", + "publisher": { + "createdAt": "2024-08-02T06:15:10.678387Z", + "description": "", + "id": "rwen", + "logo": "", + "members": [], + "name": "rwen", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/futureversecom/ComfyUI-JEN", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Suplex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:49.572932Z", + "description": "Misc Nodes: ControlNet Selector Node, Load Optional ControlNet Model, Diffusers Selector, Save Image JPG No Meta, Multi Input Variable Rewrite", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "uber_comfy_nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Suplex Misc ComfyUI Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/saftle/uber_comfy_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-12T03:43:14.001213Z", + "description": "ffff", + "downloads": 781, + "github_stars": 0, + "icon": "", + "id": "ultimate-openpose-render", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-12T18:05:07.068798Z", + "dependencies": [ + "torch", + "polygraphy", + "numpy", + "opencv-python", + "matplotlib" + ], + "deprecated": false, + "downloadUrl": "", + "id": "27c1a250-da85-46d1-a21a-cc04668b9dbc", + "node_id": "ultimate-openpose-render", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.5" + }, + "license": "", + "name": "ffff", + "publisher": { + "createdAt": "2025-01-11T22:15:39.850821Z", + "description": "", + "id": "west-neighbor", + "logo": "", + "members": [], + "name": "westNeighbor", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "facok", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:51.325709Z", + "description": "A custom LoRA-loading node designed to prevent issues such as blurriness and other artifacts when loading multiple LoRAs in HunYuan Video.\nUsage Instructions: The connection method remains unchanged from the original. The only difference is the additional blocks_type option. Please select double_blocks.", + "downloads": 0, + "github_stars": 115, + "icon": "", + "id": "ComfyUI-HunyuanVideoMultiLora", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-HunyuanVideoMultiLora", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/facok/ComfyUI-HunyuanVideoMultiLora", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ZHO-ZHO-ZHO", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:30.760137Z", + "description": "Unofficial implementation of [a/PixArt-alpha-Diffusers](https://github.com/PixArt-alpha/PixArt-alpha) for ComfyUI", + "downloads": 0, + "github_stars": 50, + "icon": "", + "id": "ComfyUI-PixArt-alpha-Diffusers", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-PixArt-alpha-Diffusers", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ZHO-ZHO-ZHO/ComfyUI-PixArt-alpha-Diffusers", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-12T20:45:02.273485Z", + "description": "Vibe Music Engine is a custom node that processes audio input using OpenAI\u2019s Whisper models. It provides transcription, translation, and precise word-level timing\u2014perfect for generating subtitles and edit decision lists (EDL) for video editing workflows. In addition, it features beat detection to synchronize video cuts with the music rhythm. You can generate full-lenght video based on song words with Automatic prompting the img2video i2v or text2video.", + "downloads": 1870, + "github_stars": 3, + "icon": "", + "id": "videoclipgenerator", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-11T19:42:39.460527Z", + "dependencies": [ + "ffmpeg-python==0.2.0", + "openai-whisper", + "numba>=0.58.0", + "anthropic>=0.5.0", + "requests>=2.31.0", + "psutil>=5.9.5", + "python-dotenv>=1.0.0", + "pysrt>=1.1.2" + ], + "deprecated": false, + "downloadUrl": "", + "id": "14d5b5d1-618b-4fa6-b5f2-2e7fc5e76b09", + "node_id": "videoclipgenerator", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "VideoClipGenerator - by PabloGFX", + "publisher": { + "createdAt": "2024-09-23T16:40:33.561343Z", + "description": "", + "id": "pablogfx", + "logo": "", + "members": [], + "name": "PabloGFX", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lazniak/videoclipgenerator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "TeaCrab", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:03.133134Z", + "description": "Nodes:TC_EqualizeCLAHE, TC_SizeApproximation, TC_ImageResize, TC_ImageScale, TC_ColorFill.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI-TeaNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-TeaNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TeaCrab/ComfyUI-TeaNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-25T22:51:47.345614Z", + "description": "For loading and running Pixtral, Llama 3.2 Vision, and Molmo models. Put models in the models/LLM folder.", + "downloads": 989, + "github_stars": 75, + "icon": "", + "id": "comfyui-pixtralllamavision", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-01T06:06:08.317797Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "85f817f1-729b-4da2-8dd9-1ce63ec07431", + "node_id": "comfyui-pixtralllamavision", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.2.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-PixtralLlamaVision", + "publisher": { + "createdAt": "2024-09-05T09:21:59.279717Z", + "description": "", + "id": "seanscripts", + "logo": "", + "members": [], + "name": "SeanScripts", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SeanScripts/ComfyUI-PixtralLlamaVision", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ZHO-ZHO-ZHO", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:34.351391Z", + "description": "Prompt Visualization | Art Gallery\n[w/WARN: Installation requires 2GB of space, and it will involve a long download time.]", + "downloads": 0, + "github_stars": 508, + "icon": "", + "id": "ComfyUI-ArtGallery", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ArtGallery", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ZHO-ZHO-ZHO/ComfyUI-ArtGallery", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "freelifehacker", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:30.364294Z", + "description": "NODES:ImageMask2PNG", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-ImgMask2PNG", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ImgMask2PNG", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/freelifehacker/ComfyUI-ImgMask2PNG", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-01T23:16:59.778232Z", + "description": "Assorted Nodes by BuffMcBigHuge", + "downloads": 1763, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-Buff-Nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-21T02:59:43.231973Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "13e4f12c-f359-4aaf-a59d-c4d0f2e1753f", + "node_id": "ComfyUI-Buff-Nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.5" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI-Buff-Nodes", + "publisher": { + "createdAt": "2025-02-17T18:22:22.987749Z", + "description": "", + "id": "buffmcbighuge", + "logo": "", + "members": [], + "name": "BuffMcBigHuge", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BuffMcBigHuge/ComfyUI-Buff-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ZHO-ZHO-ZHO", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:32.984217Z", + "description": "Nodes:Phi3mini_4k_ModelLoader_Zho, Phi3mini_4k_Zho, Phi3mini_4k_Chat_Zho", + "downloads": 0, + "github_stars": 205, + "icon": "", + "id": "ComfyUI-Phi-3-mini", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Phi-3-mini in ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ZHO-ZHO-ZHO/ComfyUI-Phi-3-mini", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "hay86", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:54.184741Z", + "description": "Unofficial implementation of [a/DDColor](https://github.com/piddnad/DDColor) for ComfyUI", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "ComfyUI_DDColor", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI DDColor", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hay86/ComfyUI_DDColor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Xyem", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:26.333352Z", + "description": "Xycuno Oobabooga provides custom nodes for ComfyUI, for sending requests to an [a/Oobabooga](https://github.com/oobabooga/text-generation-webui) instance to assist in creating prompt texts.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "Xycuno-Oobabooga", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Xycuno Oobabooga", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Xyem/Xycuno-Oobabooga", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ZHO-ZHO-ZHO", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:23.980234Z", + "description": "Using Gemini-pro & Gemini-pro-vision in ComfyUI.", + "downloads": 0, + "github_stars": 764, + "icon": "", + "id": "ZHO-ZHO-ZHO_ComfyUI-Gemini", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Gemini", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ZHO-ZHO-ZHO/ComfyUI-Gemini", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "InstaSD", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:31.972485Z", + "description": "A collection of nodes for use with InstaSD. These nodes will be transformed into app inputs when you deploy your ComfyUI workflow on InstaSD.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-InstaSD", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "InstaSD nodes for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/WaddingtonHoldings/ComfyUI-InstaSD", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "crave33", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:59.494931Z", + "description": "generate tags / prompt from danboru image_id input", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "RenesStuffDanboruTagGet", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "RenesStuffDanboruTagGet", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/crave33/RenesStuffDanboruTagGet", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jerrylongyan", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:02.356514Z", + "description": "Some nodes for processing masks, currently including nodes that fill in the concave parts of existing masks with convex hulls.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-My-Mask", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-My-Mask", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jerrylongyan/ComfyUI-My-Mask", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Alex Genovese", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:29.755274Z", + "description": "Huggingface Api Serverless request", + "downloads": 0, + "github_stars": 13, + "icon": "", + "id": "ComfyUI_HF_Servelress_Inference", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Huggingface Api Serverless", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alexgenovese/ComfyUI_HF_Servelress_Inference", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "r3dsd", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:13.580002Z", + "description": "Entry point for HommageTools node collection for ComfyUI. Handles node registration, imports, and logging configuration.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "HommageTools", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "HommageTools for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ArtHommage/HommageTools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "GrenKain", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:45.687748Z", + "description": "This repository provides custom nodes for ComfyUI that enable pixel art style image processing, including downscaling, upscaling, color quantization, and resolution adjustments.", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "PixelArt-Processing-Nodes-for-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "PixelArt Processing Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/GrenKain/PixelArt-Processing-Nodes-for-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "TylerZoro", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:12.635098Z", + "description": "Tools for scaling images and latents appropriate to SD3 in ComfyUI.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "SD3-Scaling", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "SD3-Scaling", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TylerZoro/SD3-Scaling", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ArtBot2023", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:19.932694Z", + "description": "Character face swap with LoRA and embeddings.", + "downloads": 0, + "github_stars": 91, + "icon": "", + "id": "CharacterFaceSwap", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Character Face Swap", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ArtBot2023/CharacterFaceSwap", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jn-jairo", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:33.77671Z", + "description": "ComfyUI extension with patches and nodes.\nPatches:Preview device, Extension device, Temperature, Memory estimation, Optimizations, Easy generic inputs, Easy multiple inputs.\nNODES: Image nodes, Image/Area nodes, Image/Blip nodes, Image/Face nodes, Sampling nodes, Patch nodes, Primitive nodes, Primitive/Conversion nodes, Primitive/Process nodes, Workflow nodes, etc...", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "jn_comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "JNComfy", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jn-jairo/jn_comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "XLabs-AI", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:39.397794Z", + "description": "Nodes:Load Flux LoRA, Load Flux ControlNet, Apply Flux ControlNet, Xlabs Sampler", + "downloads": 0, + "github_stars": 1597, + "icon": "", + "id": "x-flux-comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "x-flux-comfyui", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/XLabs-AI/x-flux-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ZHO-ZHO-ZHO", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:36.137791Z", + "description": "Using Qwen-2.5 in ComfyUI", + "downloads": 0, + "github_stars": 110, + "icon": "", + "id": "ComfyUI-Qwen", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Qwen-2.5 in ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ZHO-ZHO-ZHO/ComfyUI-Qwen", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Easymode-ai", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:51.28011Z", + "description": "ComfyUI [a/movingforward100/Shadow_R](https://github.com/movingforward100/Shadow_R) Wrapper", + "downloads": 0, + "github_stars": 10, + "icon": "", + "id": "ComfyUI-ShadowR", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ShadowR", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Easymode-ai/ComfyUI-ShadowR", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Aegis72", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:13.82256Z", + "description": "These nodes will be placed in comfyui/custom_nodes/aegisflow and contains the image passer (accepts an image as either wired or wirelessly, input and passes it through. Latent passer does the same for latents, and the Preprocessor chooser allows a passthrough image and 10 controlnets to be passed in AegisFlow Shima. The inputs on the Preprocessor chooser should not be renamed if you intend to accept image inputs wirelessly through UE nodes. It can be done, but the send node input regex for each controlnet preprocessor column must also be changed.", + "downloads": 0, + "github_stars": 33, + "icon": "", + "id": "aegisflow_utility_nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "AegisFlow Utility Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/aegis72/aegisflow_utility_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-04T11:19:43.34689Z", + "description": "Deprecated", + "downloads": 777, + "github_stars": 0, + "icon": "https://raw.githubusercontent.com/bongsang/ComfyUI-Bongsang/main/docs/app_icon.png", + "id": "comfyui-bongsang", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-04T11:51:34.35047Z", + "dependencies": [], + "deprecated": true, + "downloadUrl": "", + "id": "bf88e879-d8f5-40f7-9900-af67cb5c4666", + "node_id": "comfyui-bongsang", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "", + "name": "Archived (Do not use)", + "publisher": { + "createdAt": "2025-01-04T06:47:27.063644Z", + "description": "", + "id": "bongsang", + "logo": "", + "members": [], + "name": "bongsang", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-08T00:34:54.570251Z", + "description": "It is not recommended to use Manager to install!! There are bugs and I can't fix them!!", + "downloads": 275, + "github_stars": 20, + "icon": "", + "id": "zml-image", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-02T22:35:53.99578Z", + "dependencies": [ + "numpy", + "torch", + "torchvision", + "Pillow", + "ultralytics", + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d5aa3bdc-1ec7-4958-af79-83d9c35431c5", + "node_id": "zml-image", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.16" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ZML-Image", + "publisher": { + "createdAt": "2025-06-07T23:27:35.794248Z", + "description": "", + "id": "zml-w", + "logo": "", + "members": [], + "name": "ZML-W", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zml-w/ComfyUI-ZML-Image", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "purpen", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:19.277501Z", + "description": "NODES:AIRedoon Qwen Model Loader, AIRedoon Translator, AIRedoon Image Caption, AIRedoon LoRA Stack, AIRedoon Image RGBA2RGB, AIRedoon Preview Text, AIRedoon Save Text, ...\nRedoonAi Tool Kit", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-AIRedoon", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "AIRedoon", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/purpen/ComfyUI-AIRedoon", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-22T19:55:58.477806Z", + "description": "Useful to me. Might be to you.", + "downloads": 0, + "github_stars": 0, + "icon": "https://leizingyiu.github.io/apps/animated_favicon.gif", + "id": "yiu_comfy_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-10T04:45:36.09182Z", + "dependencies": [ + "torch", + "numpy", + "Pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "791817ac-f66b-47e4-a37e-1e9599c12c1e", + "node_id": "yiu_comfy_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.0.1+20250710-1" + }, + "license": "{\"text\": \"AGPL-3.0-only\"}", + "name": "yiu_comfy_nodes", + "publisher": { + "createdAt": "2025-06-22T13:26:03.423536Z", + "description": "", + "id": "leizingyiu", + "logo": "", + "members": [], + "name": "leizingyiu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/leizingyiu/yiu_comfy_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "yichengup", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:10:46.467524Z", + "description": "About DeepSeek Chat API\nGo here to register and get the api-key [a/https://platform.deepseek.com/](https://platform.deepseek.com/) Then enter api_key in config.json", + "downloads": 0, + "github_stars": 32, + "icon": "", + "id": "yichengup_Comfyui-Deepseek", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfyui-Deepseek", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yichengup/Comfyui-Deepseek", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "shobhitic", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:06.410385Z", + "description": "This adds a node that has both the positive and negative prompts as input in one node. You can just add one node and be done with both Positive and Negative prompts, in place of adding two different nodes for them.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-PlusMinusTextClip", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "PlusMinusTextClip - Single node for Positive and Negative Prompts", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shobhitic/ComfyUI-PlusMinusTextClip", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "NvidiaGameWorksAdmin", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:08.476096Z", + "description": "Use ComfyUI with RTX Remix to remaster classic games [a/https://github.com/NVIDIAGameWorks/rtx-remix](https://github.com/NVIDIAGameWorks/rtx-remix)", + "downloads": 0, + "github_stars": 43, + "icon": "", + "id": "ComfyUI-RTX-Remix", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-RTX-Remix", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/NVIDIAGameWorks/ComfyUI-RTX-Remix", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-18T18:21:22.534071Z", + "description": "ComfyUI node for creating some Turtle Graphic demos.", + "downloads": 0, + "github_stars": 3, + "icon": "https://github.com/zentrocdot/ComfyUI-Turtle_Graphics_Demo/blob/main/images/logo.jpg", + "id": "ComfyUI-Turtle_Graphics_Demos", + "latest_version": { + "version": "nightly" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Turtle_Graphics_Demos", + "publisher": { + "createdAt": "2025-02-03T19:12:00.551657Z", + "description": "", + "id": "zentrocdot", + "logo": "", + "members": [], + "name": "zentrocdot", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zentrocdot/ComfyUI-Turtle_Graphics_Demo", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AbdullahAlfaraj", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:39.928506Z", + "description": "Nodes: load Image with metadata, get config data, load image from base64 string, Load Loras From Prompt, Generate Latent Noise, Combine Two Latents Into Batch, General Purpose Controlnet Unit, ControlNet Script, Content Mask Latent, Auto-Photoshop-SD Seed, Expand and Blur the Mask", + "downloads": 0, + "github_stars": 293, + "icon": "", + "id": "Comfy-Photoshop-SD", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfy-Photoshop-SD", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AbdullahAlfaraj/Comfy-Photoshop-SD", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "banqingyuan", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:15.742762Z", + "description": "NODES: OCR Location Node, Image Erase Node, Chat Overlay Node, Extract JSON Node.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-text-replace", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-text-replace", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/banqingyuan/ComfyUI-text-replace", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "nirex0", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:34.060565Z", + "description": "All Credits go to the original Repo: [a/Hzzone/pytorch-openpose](https://github.com/Hzzone/pytorch-openpose).", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI_pytorch_openpose", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_pytorch_openpose", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nirex0/ComfyUI_pytorch_openpose", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:07.583166Z", + "description": "a custom node for [a/Pyramid-Flow](https://github.com/jy0205/Pyramid-Flow)", + "downloads": 0, + "github_stars": 14, + "icon": "", + "id": "PyramidFlow-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "PyramidFlow-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/PyramidFlow-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:06.083066Z", + "description": "a custom node for SenseVoice", + "downloads": 0, + "github_stars": 13, + "icon": "", + "id": "SenseVoice-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "SenseVoice-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/SenseVoice-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "lujiazho", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:24.211909Z", + "description": "ComfyUI-CatvtonFluxWrapper provides ComfyUI nodes for diffusers implementation of Catvton-Flux.", + "downloads": 0, + "github_stars": 92, + "icon": "", + "id": "ComfyUI-CatvtonFluxWrapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-CatvtonFluxWrapper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lujiazho/ComfyUI-CatvtonFluxWrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "zhuanqianfish", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:41.021452Z", + "description": "Capture window content from other programs, easyway combined with LCM for real-time painting", + "downloads": 0, + "github_stars": 67, + "icon": "", + "id": "ComfyUI-EasyNode", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "EasyCaptureNode for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zhuanqianfish/ComfyUI-EasyNode", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:08.317392Z", + "description": "a custom node for [a/JoyHallo](https://github.com/jdh-algo/JoyHallo)", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "JoyHallo-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "JoyHallo-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/JoyHallo-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-23T10:19:48.431791Z", + "description": "A set of nodes for generation of simple 2D graphics ComfyUI. These are intended for guiding image generation, for instance using controlnets. ", + "downloads": 916, + "github_stars": 2, + "icon": "", + "id": "comfyui-dream-painter", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-23T10:19:50.14646Z", + "dependencies": [ + "imageio", + "pilgram", + "scipy", + "numpy<2.0,>=1.18", + "torchvision", + "evalidate", + "drawsvg~=2.0", + "pillow-svg" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7c74d66a-1445-4a16-972e-a406f9aff81e", + "node_id": "comfyui-dream-painter", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Dream Painter", + "publisher": { + "createdAt": "2024-07-01T05:05:05.064583Z", + "description": "", + "id": "altkeyproject", + "logo": "", + "members": [], + "name": "Alt Key Project", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alt-key-project/comfyui-dream-painter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-24T07:58:51.472235Z", + "description": "implementation of MagicClothing with garment and prompt in ComfyUI", + "downloads": 3868, + "github_stars": 575, + "icon": "", + "id": "comfyui_magicclothing", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-24T07:58:51.768914Z", + "dependencies": [ + "insightface==0.7.3", + "onnxruntime-gpu==1.17.1", + "--extra-index-url https://download.pytorch.org/whl/cu118", + "torch==2.1.1+cu118", + "torchvision==0.16.1+cu118", + "numpy==1.25.1", + "diffusers==0.26.2", + "opencv-python==4.9.0.80", + "transformers==4.31.0", + "safetensors==0.3.1", + "controlnet-aux==0.0.6", + "accelerate==0.21.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d5a40910-b355-4637-90ff-4a8bb4a7d3ba", + "node_id": "comfyui_magicclothing", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_MagicClothing", + "publisher": { + "createdAt": "2024-06-20T11:30:28.094387Z", + "description": "", + "id": "frankchieng", + "logo": "", + "members": [], + "name": "Frank Chieng", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/frankchieng/ComfyUI_MagicClothing", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "BenNarum", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:48.539268Z", + "description": "This extension provides nodes that allow experimentation with various elements (samplers, latent, activators, attenuator, scheulders, ...) of Stable Diffusion.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI_CAS", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_CAS", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BenNarum/ComfyUI_CAS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:11.686675Z", + "description": "a custom node for [a/OmniGen](https://github.com/VectorSpaceLab/OmniGen)", + "downloads": 0, + "github_stars": 209, + "icon": "", + "id": "OmniGen-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "OmniGen-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/OmniGen-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "valofey", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:20.850074Z", + "description": "This is a node to use OpenRouter API from within ComfyUI. It supports both prompt and image+prompt requests (for multimodal LLMs).", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "Openrouter-Node", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "OpenRouter Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/valofey/Openrouter-Node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-28T02:20:37.957192Z", + "description": "Custom nodes to run fal-ai/AuraSR model.", + "downloads": 1051, + "github_stars": 28, + "icon": "", + "id": "comfyui-aurasr", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-12T14:15:31.600354Z", + "dependencies": [ + "aura-sr>=0.0.2" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a6bbbd05-40c5-4dbf-8327-b70ed87f4627", + "node_id": "comfyui-aurasr", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "3.0.0" + }, + "license": "{\"text\": \"Apache License 2.0\"}", + "name": "ComfyUI-AuraSR", + "publisher": { + "createdAt": "2024-06-28T00:35:00.27544Z", + "description": "", + "id": "alexisrolland", + "logo": "", + "members": [], + "name": "alexisrolland", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alexisrolland/ComfyUI-AuraSR", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "florestefano1975", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:28.843427Z", + "description": "A simple seed generator based on special number sequences: Fibonacci, Prime, Padovan, Triangular, Catalan, Pell, Lucas", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-Advanced-Sequence-Seed", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Advanced Sequence Seed Generator", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/florestefano1975/ComfyUI-Advanced-Sequence-Seed", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "45uee", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:39.387836Z", + "description": "Postprocessing nodes that implement color palette transfer for images.", + "downloads": 0, + "github_stars": 29, + "icon": "", + "id": "ComfyUI-Color_Transfer", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Color_Transfer", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/45uee/ComfyUI-Color_Transfer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "SamKhoze", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:14.445468Z", + "description": "DeepFuze is a state-of-the-art deep learning tool that seamlessly integrates with ComfyUI to revolutionize facial transformations, lipsyncing, video generation, voice cloning, face swapping, and lipsync translation. Leveraging advanced algorithms, DeepFuze enables users to combine audio and video with unparalleled realism, ensuring perfectly synchronized facial movements. This innovative solution is ideal for content creators, animators, developers, and anyone seeking to elevate their video editing projects with sophisticated AI-driven features.", + "downloads": 0, + "github_stars": 413, + "icon": "", + "id": "ComfyUI-DeepFuze", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "DeepFuze", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SamKhoze/ComfyUI-DeepFuze", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ClownsharkBatwing", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:28.940298Z", + "description": "Advanced samplers with new noise scaling math to enable SDE sampling with all publicly available rectified flow models; new unsampling/noise inversion methods and other advanced techniques for inpainting and/or guiding the sampling process with latent images. 40 sampler types, 20 noise types, 7 noise scaling modes, in a single node. Also includes a wide variety of QoF and other utility nodes for manipulating sigmas, latents, images, and more.", + "downloads": 0, + "github_stars": 336, + "icon": "", + "id": "RES4LYF", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "RES4LYF", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ClownsharkBatwing/RES4LYF", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-05T13:35:00.407704Z", + "description": "util nodes for custom node 'comfy-mecha'", + "downloads": 642, + "github_stars": 6, + "icon": "", + "id": "comfy-mecha-utils", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-08T07:21:55.75619Z", + "dependencies": [ + "sd-mecha>=1.0.5" + ], + "deprecated": false, + "downloadUrl": "", + "id": "50ecbee8-b760-4e09-a68a-c7b626c9a86d", + "node_id": "comfy-mecha-utils", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfy-mecha-utils", + "publisher": { + "createdAt": "2025-03-05T13:10:33.660333Z", + "description": "", + "id": "jupo-ai", + "logo": "", + "members": [], + "name": "jupo-ai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jupo-ai/comfy-mecha-utils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "NeoGriever", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:30.22737Z", + "description": "NeoGriever's helper nodes. Better CLIP Text Encoder, Resolution Provider, Multimask Write/Read, TextBoxes Simple/Join/x2/x3, Sliders INT/FLOAT/STEPPER, String Tool/Squisher/Cutter, Create Solid Color, Fill with Color, Checkerboard Generator, Image Progress Bar", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-NeoGriever", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI - NeoGriever", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/NeoGriever/ComfyUI-NeoGriever", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Moooonet", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:41.07139Z", + "description": "This plugin works with [a/IF_AI_Tools](https://github.com/if-ai/ComfyUI-IF_AI_tools) to build a workflow in ComfyUI that uses AI to assist in generating prompts.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-ArteMoon", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ArteMoon", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Moooonet/ComfyUI-ArteMoon", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "muhammederem", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:46.748916Z", + "description": "A Python implementation for integrating the BLIP (Bootstrapping Language-Image Pre-training) model for visual question answering.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "blip-comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "BLIP Vision-Language Model Integration", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/muhammederem/blip-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-12T12:12:37.400135Z", + "description": "Fix Nov. 2024, Davemane42's Custom Node for ComfyUI", + "downloads": 1076, + "github_stars": 3, + "icon": "", + "id": "ComfyUI_multi-area-condition-node", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-12T16:28:55.102747Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b2b80933-ac90-4685-a382-e96beb904b5d", + "node_id": "ComfyUI_multi-area-condition-node", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.3" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "Multi Area Conditioning", + "publisher": { + "createdAt": "2025-05-12T10:21:56.143979Z", + "description": "", + "id": "gdt", + "logo": "", + "members": [], + "name": "gdt", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/GegenDenTag/ComfyUI-multi-area-condition-node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jiaxiangc", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:12.543428Z", + "description": "We provide ComfyUI-ResAdapter node to help users to use [a/ResAdapter](https://github.com/bytedance/res-adapter) in ComfyUI.", + "downloads": 0, + "github_stars": 289, + "icon": "", + "id": "ComfyUI-ResAdapter", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ResAdapter for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jiaxiangc/ComfyUI-ResAdapter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "SoftMeng", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:43.102488Z", + "description": "Nodes: ComfyUI Mexx Styler, ComfyUI Mexx Styler Advanced", + "downloads": 0, + "github_stars": 24, + "icon": "", + "id": "ComfyUI_Mexx_Styler", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Mexx_Styler", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SoftMeng/ComfyUI_Mexx_Styler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "NguynHungNguyen", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:14.617176Z", + "description": "Segment Any Bedroom Interior is a Python-based project designed to segment furniture and objects within a bedroom image. The segmentation process uses RGB codes to accurately differentiate between various pieces of furniture, providing a precise mask output for each segmented object. This project is integrated with ComfyUI to allow easy and intuitive usage.", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "Segment-Bedroom-Interior", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Segment Any Bedroom Interior", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/NguynHungNguyen/Segment-Bedroom-Interior", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Hugo", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:43.246418Z", + "description": "This repository wraps the latest BiRefNet model as ComfyUI nodes. Compared to the previous model, the latest model offers higher and better matting accuracy.", + "downloads": 0, + "github_stars": 317, + "icon": "", + "id": "ComfyUI-BiRefNet-Hugo", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-BiRefNet-Hugo", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MoonHugo/ComfyUI-BiRefNet-Hugo", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "spacepxl", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:31.741323Z", + "description": "Basic utility for testing diffusion model loss across the timestep schedule. Should work with any native models that use ksampler. This could be used for comparing models, testing captions on an image, etc.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-LossTesting", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-LossTesting", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/spacepxl/ComfyUI-LossTesting", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "cr7Por", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:04.139831Z", + "description": "comfyui custom node for depthflow\noriginal depthflow website: [a/https://github.com/BrokenSource/DepthFlow](https://github.com/BrokenSource/DepthFlow)\ncheck this for installation: [a/https://brokensrc.dev/get/](https://brokensrc.dev/get/)", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI_DepthFlow", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_DepthFlow", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cr7Por/ComfyUI_DepthFlow", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smthemex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:32.27726Z", + "description": "Long-Duration and High-Resolution Audio-driven Portrait Image Animation,", + "downloads": 0, + "github_stars": 74, + "icon": "", + "id": "ComfyUI_Hallo2", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Hallo2", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_Hallo2", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Jordach", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:33.969911Z", + "description": "Nodes: Plasma Noise, Random Noise, Greyscale Noise, Pink Noise, Brown Noise, Plasma KSampler", + "downloads": 0, + "github_stars": 75, + "icon": "", + "id": "comfy-plasma", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfy-plasma", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Jordach/comfy-plasma", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "melMass", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:42.708923Z", + "description": "OpenImageIO plugin for ComfyUI", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "comfy_oiio", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfy-oiio", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/melMass/comfy_oiio", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-14T23:02:50.348341Z", + "description": "Custom node for finding files and showing their contents", + "downloads": 352, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-FindIt", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-14T23:02:50.738494Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3bb6c6e1-6223-4f52-a32f-8876dfeef804", + "node_id": "ComfyUI-FindIt", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-FindIt", + "publisher": { + "createdAt": "2024-09-17T18:22:05.116266Z", + "description": "", + "id": "silveroxides", + "logo": "", + "members": [], + "name": "silveroxides", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/silveroxides/ComfyUI-FindIt", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jamesWalker55", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:16.232886Z", + "description": "Nodes: P2LDGAN. This integrates P2LDGAN into ComfyUI. P2LDGAN extracts lineart from input images.\n[w/To use this extension, you need to download the [a/p2ldgan model](https://drive.google.com/file/d/1To4V_Btc3QhCLBWZ0PdSNgC1cbm3isHP) and save it in the %%ComfyUI/custom_nodes/comfyui-p2ldgan/checkpoints%% directory.]", + "downloads": 0, + "github_stars": 17, + "icon": "", + "id": "comfyui-p2ldgan", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI - P2LDGAN Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jamesWalker55/comfyui-p2ldgan", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-25T11:04:06.84047Z", + "description": "For loading and running Pixtral models", + "downloads": 852, + "github_stars": 75, + "icon": "", + "id": "comfyui-pixtral", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-25T11:04:14.712893Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3ab4ef50-ad2c-482d-ada9-763c83e99103", + "node_id": "comfyui-pixtral", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Pixtral", + "publisher": { + "createdAt": "2024-09-05T09:21:59.279717Z", + "description": "", + "id": "seanscripts", + "logo": "", + "members": [], + "name": "SeanScripts", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SeanScripts/ComfyUI-Pixtral", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Clybius", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:35.600884Z", + "description": "Nodes: Latent Diffusion Mega Modifier. ComfyUI nodes which modify the latent during the diffusion process. (Sharpness, Tonemap, Rescale, Extra Noise)", + "downloads": 0, + "github_stars": 80, + "icon": "", + "id": "ComfyUI-Latent-Modifiers", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Latent-Modifiers", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Clybius/ComfyUI-Latent-Modifiers", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "longgui0318", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:04.848345Z", + "description": "Nodes:Split Masks, Mask Selection Of Masks, Mask Region Info", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "comfyui-mask-util", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-mask-util", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/longgui0318/comfyui-mask-util", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "LyazS", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:42.984262Z", + "description": "A net tool node for comfyui, rewrite from [comfyui-tooling-nodes](https://github.com/Acly/comfyui-tooling-nodes) but support more big data sending.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "comfyui-nettools", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "net tool node for comfyui", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LyazS/comfyui-nettools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "civitai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:08.055727Z", + "description": "Tired of manually downloading and moving models, LoRAs, and more to the right places?\nSick of scouring Civitai for that one mystical LoRA someone was using to make that cool image?\nWant to be share a fully reproducable workflow?", + "downloads": 0, + "github_stars": 148, + "icon": "", + "id": "civitai_comfy_nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Civitai Comfy Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/civitai/civitai_comfy_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "cuongloveit", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:27.826027Z", + "description": "Nodes:Send Http Request. You can use this node to save full size images through the websocket.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "comfy_http_request", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfy_http_request", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cuongloveit/comfy_http_request", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "andersxa", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:08.751148Z", + "description": "Nodes: CLIP Directional Prompt Attention Encode. Direction prompt attention tries to solve the problem of contextual words (or parts of the prompt) having an effect on much later or irrelevant parts of the prompt.", + "downloads": 0, + "github_stars": 22, + "icon": "", + "id": "comfyui-PromptAttention", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "CLIP Directional Prompt Attention", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/andersxa/comfyui-PromptAttention", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "adieyal", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:17.673466Z", + "description": "Nodes: Random Prompts, Combinatorial Prompts, I'm Feeling Lucky, Magic Prompt, Jinja2 Templates. ComfyUI-DynamicPrompts is a custom nodes library that integrates into your existing ComfyUI Library. It provides nodes that enable the use of Dynamic Prompts in your ComfyUI.", + "downloads": 0, + "github_stars": 329, + "icon": "", + "id": "comfyui-dynamicprompts", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "DynamicPrompts Custom Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/adieyal/comfyui-dynamicprompts", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-28T12:56:25.350251Z", + "description": "A ComfyUI node for enhancing prompts using various LLM providers", + "downloads": 1186, + "github_stars": 8, + "icon": "https://res.cloudinary.com/di7ctlowx/image/upload/v1738065925/promptenhancelogo_kql6qa.svg", + "id": "comfyui-llm-prompt-enhancer", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-28T12:56:25.747115Z", + "dependencies": [ + "openai>=1.0.0", + "anthropic>=0.5.0", + "google-generativeai>=0.3.0", + "torch>=2.0.0", + "requests>=2.31.0", + "openrouter-client>=0.3.0", + "openrouter>=0.3.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b7e2eafe-19e3-430c-a131-64eee145c354", + "node_id": "comfyui-llm-prompt-enhancer", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI LLM Prompt Enhancer", + "publisher": { + "createdAt": "2025-01-28T12:38:16.878797Z", + "description": "", + "id": "pinkpixel-dev", + "logo": "", + "members": [], + "name": "Pink Pixel", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pinkpixel-dev/comfyui-llm-prompt-enhancer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Clybius", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:36.681062Z", + "description": "Nodes: SamplerCustomNoise, SamplerCustomNoiseDuo, SamplerCustomModelMixtureDuo, SamplerRES_Momentumized, SamplerDPMPP_DualSDE_Momentumized, SamplerCLYB_4M_SDE_Momentumized, SamplerTTM, SamplerLCMCustom\nThis extension provides various custom samplers not offered by the default nodes in ComfyUI.", + "downloads": 0, + "github_stars": 87, + "icon": "", + "id": "ComfyUI-Extra-Samplers", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Extra Samplers", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Clybius/ComfyUI-Extra-Samplers", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "PnthrLeo", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:43.5796Z", + "description": "Image data check, filtering and augmentation tools for ComfyUI \ud83d\udd2c\nNOTE: Renamed from 'comfyUI-image-search'", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "comfyUI-PL-data-tools", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyUI-PL-data-tools", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/PnthrLeo/comfyUI-PL-data-tools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "InstantStudioAI", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:52.252527Z", + "description": "A collection of nodes to enhance your experience with ComfyUI.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-InstantStudio", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-InstantStudio", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/InstantStudioAI/ComfyUI-InstantStudio", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-14T13:38:10.604762Z", + "description": "A simple password to protect ComfyUI.", + "downloads": 2860, + "github_stars": 176, + "icon": "https://raw.githubusercontent.com/liusida/ComfyUI-Login/main/images/icon.png", + "id": "login", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-14T13:38:10.874781Z", + "dependencies": [ + "aiohttp", + "aiohttp_session[secure]", + "Jinja2", + "bcrypt", + "pycryptodome" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b4ba786e-e590-4263-aba0-22c2a2b46d3b", + "node_id": "login", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "Login", + "publisher": { + "createdAt": "2024-06-06T03:23:40.036774Z", + "description": "", + "id": "liusida", + "logo": "", + "members": [], + "name": "liusida", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/liusida/ComfyUI-Login", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-19T18:59:36.468033Z", + "description": "Helps with tha chess peices", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "chess-menu", + "latest_version": { + "version": "nightly" + }, + "license": "LICENSE", + "name": "Chess-Manager", + "publisher": { + "createdAt": "2024-06-05T23:55:45.328247Z", + "description": "", + "id": "owenreilly", + "logo": "", + "members": [], + "name": "Owen Reilly", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/owenreilly/test.git", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "umiyuki", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:48.266507Z", + "description": "A custom ComfyUI node that pads an image to a multiple of 8 width.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui-pad-to-eight", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Pad To Eight", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/umiyuki/comfyui-pad-to-eight", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "BlakeOne", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:17.876206Z", + "description": "An extension for ComyUI that enables saving and loading node presets using the node's context menu.\nRight click a node and choose 'Presets' from its context menu to access the node's presets.", + "downloads": 0, + "github_stars": 13, + "icon": "", + "id": "ComfyUI-NodePresets", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI NodePresets", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BlakeOne/ComfyUI-NodePresets", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "BlakeOne", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:18.559184Z", + "description": "An extension for ComyUI to allow resetting a node's inputs to their default values.\nNOTE:Right click any node and choose 'Reset' from the context menu.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-NodeReset", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI NodeReset", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BlakeOne/ComfyUI-NodeReset", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "xliry", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:30.316363Z", + "description": "Nodes:color2RGB", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "color2rgb", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "color2rgb", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/vxinhao/color2rgb", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Comflowy", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:08:03.143422Z", + "description": "Custom nodes for ComfyUI by Comflowy.", + "downloads": 0, + "github_stars": 14, + "icon": "", + "id": "comflowy-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comflowy's Custom Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/6174/comflowy-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "seanlynch", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:18.235802Z", + "description": "This package contains three nodes to help you compute optical flow between pairs of images, usually adjacent frames in a video, visualize the flow, and apply the flow to another image of the same dimensions. Most of the code is from Deforum, so this is released under the same license (MIT).", + "downloads": 0, + "github_stars": 32, + "icon": "", + "id": "comfyui-optical-flow", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Optical Flow", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/seanlynch/comfyui-optical-flow", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:30.875141Z", + "description": "Nodes:VideoLaVITLoader, VideoLaVITT2V, VideoLaVITI2V, VideoLaVITI2VLong, VideoLaVITT2VLong, VideoLaVITI2I", + "downloads": 0, + "github_stars": 12, + "icon": "", + "id": "ComfyUI-LaVIT", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-LaVIT", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-LaVIT", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-24T00:18:58.885922Z", + "description": "A collection of ComfyUI nodes I created to solve specific issues I was having.", + "downloads": 548, + "github_stars": 0, + "icon": "", + "id": "comfyui_blackmagic", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-24T00:19:00.574495Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3153b57e-5e66-420d-aff6-7def3f001064", + "node_id": "comfyui_blackmagic", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.2" + }, + "license": "{\"text\": \"GNU General Public License v3\"}", + "name": "comfyui-blackmagic", + "publisher": { + "createdAt": "2025-02-24T00:05:08.753419Z", + "description": "", + "id": "sarashinai", + "logo": "", + "members": [], + "name": "sarashinai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Hellfiredragon", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:46.250663Z", + "description": "Custom nodes to manipulate images in ComfyUI", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui-image-manipulation", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-image-manipulation", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Hellfiredragon/comfyui-image-manipulation", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "A4P7J1N7M05OT", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:25.587269Z", + "description": "Shamelessly copied the code to auto color correct the image like in gimp from this answer: [a/https://stackoverflow.com/a/56365560/4561887](https://stackoverflow.com/a/56365560/4561887)", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-AutoColorGimp", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-AutoColorGimp", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/A4P7J1N7M05OT/ComfyUI-AutoColorGimp", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Sida Liu", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:27.157702Z", + "description": "Attach a debug node to an output to obtain more detailed information. Uncover the details of your models in ComfyUI with ease.", + "downloads": 0, + "github_stars": 11, + "icon": "", + "id": "ComfyUI-Debug", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Debug", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/liusida/ComfyUI-Debug", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jtydhr88", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:34.375195Z", + "description": "ComfyUI Hunyuan3D-1-wrapper is a custom node that allows you to run [a/Tencent/Hunyuan3D-1](https://github.com/Tencent/Hunyuan3D-1) in ComfyUI as a wrapper.", + "downloads": 0, + "github_stars": 28, + "icon": "", + "id": "ComfyUI-Hunyuan3D-1-wrapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Hunyuan3D-1-wrapper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jtydhr88/ComfyUI-Hunyuan3D-1-wrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "laksjdjf", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:56.62033Z", + "description": "The custom nodes of laksjdjf have been integrated into the node pack of cgem156\ud83c\udf4c.\nNOTE:This includes the attention couple feature.", + "downloads": 0, + "github_stars": 73, + "icon": "", + "id": "cgem156-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "cgem156-ComfyUI\ud83c\udf4c", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/laksjdjf/cgem156-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-19T18:21:05.565604Z", + "description": "This repository is based on [https://github.com/BoyuanJiang/FitDiT](https://github.com/BoyuanJiang/FitDiT) and simply wraps it as nodes for ComfyUI.", + "downloads": 1331, + "github_stars": 30, + "icon": "https://www.gstatic.com/android/keyboard/emojikitchen/20211115/u1fae1/u1fae1_u1f52e.png", + "id": "comfyui-fitdit", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-19T18:21:07.300249Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5ecd8d79-9c24-4588-afb7-cf3ab492e3e5", + "node_id": "comfyui-fitdit", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"./FitDiT/LICENSE\"}", + "name": "ComfyUI-FitDit", + "publisher": { + "createdAt": "2025-01-19T18:08:30.926982Z", + "description": "", + "id": "lgldlk", + "logo": "", + "members": [], + "name": "lgldl", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lgldlk/ComfyUI-FitDit", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "SeaArtLab", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:35.263368Z", + "description": "This project implements the comfyui for long-clip, currently supporting the replacement of clip-l. For SD1.5, the SeaArtLongClip module can be used to replace the original clip in the model, expanding the token length from 77 to 248.", + "downloads": 0, + "github_stars": 155, + "icon": "", + "id": "ComfyUI-Long-CLIP", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Long-CLIP", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SeaArtLab/ComfyUI-Long-CLIP", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "shinich39", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:00.508103Z", + "description": "Create a new group of nodes.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui-group-selection", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-group-selection", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shinich39/comfyui-group-selection", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "LiJT", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:55.680354Z", + "description": "Custom node to use Gemini 1.5 and above for Comfyui to generates theme related prompts for image generators", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-Gemini-Prompt-Generator-JT", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Gemini prompt generator JT version", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LiJT/ComfyUI-Gemini-Prompt-Generator-JT", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-26T13:31:20.899685Z", + "description": "UPDATED 5/19/25. This custom node for ComfyUI is designed to optimize latent generation for use with FLUX, SDXL and SD3. It provides flexible control over aspect ratios, megapixel sizes, and upscale factors, allowing users to dynamically create latents that fit specific tiling and resolution needs.", + "downloads": 2592, + "github_stars": 40, + "icon": "", + "id": "bobs_latent_optimizer", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-19T14:18:17.363775Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "d330ed98-571e-4972-b620-53ad1b69bb64", + "node_id": "bobs_latent_optimizer", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Bobs_Latent_Optimizer", + "publisher": { + "createdAt": "2024-10-26T13:19:28.99286Z", + "description": "", + "id": "bobsblazed", + "logo": "", + "members": [], + "name": "BobsBlazed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BobsBlazed/Bobs_Latent_Optimizer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Sida Liu", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:29.092079Z", + "description": "Nodes that support Stable Diffusion 3 Medium better.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI-SD3-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-SD3-nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/liusida/ComfyUI-SD3-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chrisgoringe", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:40.737385Z", + "description": "Prompt Info", + "downloads": 0, + "github_stars": 30, + "icon": "", + "id": "cg-prompt-info", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Prompt Info", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chrisgoringe/cg-prompt-info", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "morgan55555", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:57.457528Z", + "description": "Lock Mode feature for ComfyUI. Make simple no-code UI easily.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui-lock-mode", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Lock Mode", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/morgan55555/comfyui-lock-mode", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "zhiselfly", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:07.455759Z", + "description": "Compatible with alimama's SD3-ControlNet Demo on ComfyUI.", + "downloads": 0, + "github_stars": 18, + "icon": "", + "id": "ComfyUI-Alimama-ControlNet-compatible", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Alimama-ControlNet-compatible", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zhiselfly/ComfyUI-Alimama-ControlNet-compatible", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Sida Liu", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:30.573219Z", + "description": "Load and apply B-LoRA models, currently B-LoRA models only works with SDXL (sdxl_base_1.0).", + "downloads": 0, + "github_stars": 76, + "icon": "", + "id": "ComfyUI-B-LoRA", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-B-LoRA", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/liusida/ComfyUI-B-LoRA", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "tsogzark", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:36.234583Z", + "description": "A simple node to load image from local path or http url.\nYou can find this node from 'image' category.", + "downloads": 0, + "github_stars": 20, + "icon": "", + "id": "ComfyUI-load-image-from-url", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-load-image-from-url", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tsogzark/ComfyUI-load-image-from-url", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "TGu-97", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:42.193775Z", + "description": "Nodes: MPN Switch, MPN Reroute, PN Switch. This is a set of custom nodes for ComfyUI. Mainly focus on control switches.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-TGu-utils", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "TGu Utilities", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TGu-97/ComfyUI-TGu-utils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Off-Live", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:55.543592Z", + "description": "Nodes:Image Crop Fit, OFF SEGS to Image, Crop Center wigh SEGS, Watermarking, GW Number Formatting Node.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-off-suite", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-off-suite", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Off-Live/ComfyUI-off-suite", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chrisgoringe", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:38.426529Z", + "description": "Nodes to create small variations on noise, to shape noise, and to control noise in batches. Replaces the old 'variation-seed' nodes.", + "downloads": 0, + "github_stars": 17, + "icon": "", + "id": "cg-noisetools", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Noise variation and batch noise tools", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chrisgoringe/cg-noisetools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "bobmagicii", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:23.293214Z", + "description": "Nodes:LoraWithMetadata, TypecasterImage.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "comfykit-custom-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyKit Custom Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bobmagicii/comfykit-custom-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "claussteinmassl", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:59:41.387626Z", + "description": "The CS Transform node is a custom node for ComfyUI that applies a series of transformations to an input image and mask. The transformations include scaling, rotation, and translation, all centered around a specified pivot point. The node ensures that the transformed image is properly accommodated within a canvas, which can be expanded if needed.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-CS-CustomNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "CS Transform Node for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/claussteinmassl/ComfyUI-CS-CustomNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AustinMroz", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:59.875554Z", + "description": "Nodes:DynamicSampler, MeasuredSampler, ResolveMaskPromise", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-DynamicOversampling", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "DynamicOversampling", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AustinMroz/ComfyUI-DynamicOversampling", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "knuknX", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:02.24627Z", + "description": "Nodes:BatchImageResizeProcessor, SingleImagePathLoader, SingleImageUrlLoader", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-Image-Tools", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Image-Tools", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/knuknX/ComfyUI-Image-Tools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-28T16:17:19.313756Z", + "description": "load and download YouTube videos from URL's for quick and easy use for vid2vid cases.", + "downloads": 1226, + "github_stars": 1, + "icon": "", + "id": "comfyui-easyurlloader", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-12T17:38:49.627437Z", + "dependencies": [ + "yt_dlp", + "ffmpeg-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a56383d2-f441-4929-b883-932104656e2f", + "node_id": "comfyui-easyurlloader", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-EasyUrlLoader", + "publisher": { + "createdAt": "2025-01-28T14:37:07.362488Z", + "description": "", + "id": "apacheone", + "logo": "", + "members": [], + "name": "apacheone", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Apache0ne/ComfyUI-EasyUrlLoader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "discus0434", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:38.629959Z", + "description": "ComfyUI Flux Accelerator is a custom node for ComfyUI that accelerates Flux.1 image generation, just by using this node.", + "downloads": 0, + "github_stars": 137, + "icon": "", + "id": "comfyui-flux-accelerator", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Flux Accelerator", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/discus0434/comfyui-flux-accelerator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "grovebadger", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:47.684098Z", + "description": "Node to process negative wildcard tokens () and move them from the positive prompt to the negative.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "comfyui-negativewildcardsprocessor", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Negative Wildcard Processor Node for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/GrvBdgr/comfyui-negativewildcardsprocessor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "exectails", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:07.20397Z", + "description": "Nodes dedicated to the analysis and transformation of text strings, such as for formatting and conversions between types.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "comfyui-et_stringutils", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "String Utils", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/exectails/comfyui-et_stringutils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "NimaNzrii", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:21.692724Z", + "description": "Powerfull bridge to Photoshop by NimaNzrii", + "downloads": 0, + "github_stars": 1160, + "icon": "", + "id": "comfyui-photoshop", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-photoshop", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/NimaNzrii/comfyui-photoshop", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-12T00:58:20.997048Z", + "description": "ffff", + "downloads": 893, + "github_stars": 0, + "icon": "", + "id": "ultimate-openpose-estimator", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-12T18:04:41.68761Z", + "dependencies": [ + "tensorrt", + "polygraphy", + "numpy", + "tqdm", + "opencv-python", + "matplotlib" + ], + "deprecated": false, + "downloadUrl": "", + "id": "47f6338e-157d-4d87-addf-c396d793f57c", + "node_id": "ultimate-openpose-estimator", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.5" + }, + "license": "", + "name": "ffff", + "publisher": { + "createdAt": "2025-01-11T22:15:39.850821Z", + "description": "", + "id": "west-neighbor", + "logo": "", + "members": [], + "name": "westNeighbor", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "exectails", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:07.929719Z", + "description": "Nodes that implement functionality similar to the Dynamic Prompts extension for A1111.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "comfyui-et_dynamicprompts", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Dynamic Prompts", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/exectails/comfyui-et_dynamicprompts", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-31T16:49:41.401269Z", + "description": "A simple node to fetch a file and put it in a specific path", + "downloads": 785, + "github_stars": 0, + "icon": "https://example.com/icon.png", + "id": "comfy_fetch_file_node", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-31T16:49:45.13279Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "68725c8e-7037-4996-aa9e-38db103e9149", + "node_id": "comfy_fetch_file_node", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "Fetch File Node", + "publisher": { + "createdAt": "2024-07-31T16:31:58.791074Z", + "description": "", + "id": "ultrafro", + "logo": "", + "members": [], + "name": "ultrafro", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ultrafro/comfy_fetch_file_node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Elaine-chennn", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:54.285201Z", + "description": "This repository contains a custom ComfyUI node for overlaying media using ffmpeg.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui-overlay-media", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Overlay Media Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Elaine-chennn/comfyui-overlay-media", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "GeekyGhost", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:04.203535Z", + "description": "GeekyRemB is a powerful and versatile image processing node for ComfyUI, designed to remove backgrounds from images with advanced customization options. This node leverages the rembg library and offers a wide range of features for fine-tuning the background removal process and enhancing the resulting images.", + "downloads": 0, + "github_stars": 47, + "icon": "", + "id": "ComfyUI-GeekyRemB", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-GeekyRemB", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/GeekyGhost/ComfyUI-GeekyRemB", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-28T21:42:21.164721Z", + "description": "Provide a prompt and get google image search results", + "downloads": 833, + "github_stars": 2, + "icon": "", + "id": "google-image-comfyui-node", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-28T21:42:24.897128Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "33ef3dac-448f-4e33-8054-1816170a94c8", + "node_id": "google-image-comfyui-node", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "google-image-comfyui-node", + "publisher": { + "createdAt": "2024-05-26T02:18:06.707962Z", + "description": "", + "id": "christian-byrne", + "logo": "", + "members": [], + "name": "christian-byrne", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/christian-byrne/google-image-comyui-node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Conor-Collins", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:05.317922Z", + "description": "A set of custom nodes for ComfyUI providing advanced image processing, file handling, and utility functions.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "coco_tools", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-CoCoTools", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Conor-Collins/coco_tools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "nicolai256", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:40.193149Z", + "description": "Nodes: yugioh_Presets. by Nicolai256 inspired by throttlekitty SDXLAspectRatio", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "comfyUI_Nodes_nicolai256", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyUI_Nodes_nicolai256", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nicolai256/comfyUI_Nodes_nicolai256", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "foxtrot-roger", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:53.301071Z", + "description": "A bunch of nodes that can be useful to manipulate primitive types (numbers, text, ...) Also some helpers to generate text and timestamps.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "comfyui-rf-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "RF Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/foxtrot-roger/comfyui-rf-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Taremin", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:50.857161Z", + "description": " This extension provides the StringToolsConcat node, which concatenates multiple texts, and the StringToolsRandomChoice node, which selects one randomly from multiple texts.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "comfyui-string-tools", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI String Tools", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Taremin/comfyui-string-tools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kijai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:48.093105Z", + "description": "Node to use [a/DDColor](https://github.com/piddnad/DDColor) in ComfyUI.", + "downloads": 0, + "github_stars": 153, + "icon": "", + "id": "ComfyUI-DDColor", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-DDColor", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-DDColor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:43.234748Z", + "description": "Nodes:IP_LAP Node, Video Loader, PreView Video, Combine Audio Video. the comfyui custom node of [a/IP_LAP](https://github.com/Weizhi-Zhong/IP_LAP) to make audio driven videos!", + "downloads": 0, + "github_stars": 34, + "icon": "", + "id": "ComfyUI-IP_LAP", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-IP_LAP", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/ComfyUI-IP_LAP", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:43.918515Z", + "description": "a comfyui custom node for [a/GPT-SoVITS](https://github.com/RVC-Boss/GPT-SoVITS)! you can voice cloning and tts in comfyui now\n[w/NOTE:make sure ffmpeg is worked in your commandline]", + "downloads": 0, + "github_stars": 239, + "icon": "", + "id": "ComfyUI-GPT_SoVITS", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-GPT_SoVITS", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/ComfyUI-GPT_SoVITS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-21T16:36:10.334313Z", + "description": "ComfyUI custom nodes for OmniGen project. Low VRAM, preview, separated VAE and more", + "downloads": 1242, + "github_stars": 39, + "icon": "", + "id": "omnigen-set", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-21T16:43:15.362578Z", + "dependencies": [ + "transformers", + "diffusers", + "numpy", + "datasets", + "accelerate", + "timm", + "peft", + "safetensors", + "huggingface_hub" + ], + "deprecated": false, + "downloadUrl": "", + "id": "0412c139-b43e-4977-bff1-04c09e77a5cf", + "node_id": "omnigen-set", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI_OmniGen_Nodes", + "publisher": { + "createdAt": "2024-11-21T16:22:47.52117Z", + "description": "", + "id": "set-soft", + "logo": "", + "members": [], + "name": "Salvador Eduardo Tropea", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/set-soft/ComfyUI_OmniGen_Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:45.61536Z", + "description": "a comfyui cuatom node for audio subtitling based on [a/whisperX](https://github.com/m-bain/whisperX.git) and [a/translators](https://github.com/UlionTse/translators)", + "downloads": 0, + "github_stars": 51, + "icon": "", + "id": "ComfyUI-WhisperX", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-WhisperX", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/ComfyUI-WhisperX", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "sneccc", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:38.575053Z", + "description": "NODES:Aesthetics, Aesthetics V2, Load AI Toolkit Latent Flux, Send_to_Eagle", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "comfyui-snek-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-snek-nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sneccc/comfyui-snek-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "0x-jerry", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:33.504067Z", + "description": "Rembg Background Removal Node for ComfyUI", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui-rembg", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Rembg Background Removal Node for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/0x-jerry/comfyui-rembg", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "shadowcz007", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:37.654168Z", + "description": "Virtual try-on for creating a personal brand wardrobe collection.", + "downloads": 0, + "github_stars": 13, + "icon": "", + "id": "comfyui-try-on", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-try-on", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shadowcz007/comfyui-try-on", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kijai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:52.671007Z", + "description": "This is simplified implementation of the [a/DiffusionLight](https://github.com/DiffusionLight/DiffusionLight) method of creating light probes. You will need the included LoRA, place it in ComfyUI/loras folder like usual, it's converted from the original diffusers one.", + "downloads": 0, + "github_stars": 73, + "icon": "", + "id": "ComfyUI-DiffusionLight", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "DiffusionLight implementation for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-DiffusionLight", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jstit", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:37.126718Z", + "description": "Nodes:ImageCropCircle.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui_custom_node_image", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui_custom_node_image", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jstit/comfyui_custom_node_image", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ka-puna", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:03.712231Z", + "description": "NOTE: Concatenate Strings, Format Datetime String, Integer Caster, Multiline String, Truncate String. Yet Another Node Collection, a repository of simple nodes for ComfyUI. This repository eases the addition or removal of custom nodes to itself.", + "downloads": 0, + "github_stars": 10, + "icon": "", + "id": "comfyui-yanc", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-yanc", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ka-puna/comfyui-yanc", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ZHO-ZHO-ZHO", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:24.450506Z", + "description": "ComfyUI Portrait Master \u7b80\u4f53\u4e2d\u6587\u7248.", + "downloads": 0, + "github_stars": 1749, + "icon": "", + "id": "comfyui-portrait-master-zh-cn", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-portrait-master-zh-cn", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ZHO-ZHO-ZHO/comfyui-portrait-master-zh-cn", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kijai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:55.039868Z", + "description": "ComfyUI wrapper nodes to use the Diffusers implementation of BrushNet", + "downloads": 0, + "github_stars": 147, + "icon": "", + "id": "ComfyUI-BrushNet-Wrapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-BrushNet-Wrapper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-BrushNet-Wrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kijai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:53.61365Z", + "description": "ComfyUI wrapper nodes to use the Diffusers implementation of ELLA", + "downloads": 0, + "github_stars": 116, + "icon": "", + "id": "ComfyUI-ELLA-wrapper", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ELLA-wrapper", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-ELLA-wrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "tuohe", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:10:53.639559Z", + "description": "Haiper API official ComfyUI custom node.", + "downloads": 0, + "github_stars": 13, + "icon": "", + "id": "ComfyUI-HaiperAI-API", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-HaiperAI-API", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Haiper-ai/ComfyUI-HaiperAI-API", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "dchatel", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:19.99333Z", + "description": "Nodes:SmartMask, ResizeCropFit, Percent Padding, SoftErosion, StringScheduleHelper, DStack, DavchaConditioningConcat, DavchaModelMergeSimple, DavchaCLIPMergeSimple, DavchaModelMergeSD1, DavchaModelMergeSDXL, ConditioningCompress... Some personal QoL and experimental nodes", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "comfyui_davcha", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui_davcha", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dchatel/comfyui_davcha", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "benjiyaya", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:18.961985Z", + "description": "A specialized node for ComfyUI that enable advanced motion and animation capabilities for image as guider for video processing In Hunyuan Video.", + "downloads": 0, + "github_stars": 29, + "icon": "", + "id": "ComfyUI-HunyuanVideoImagesGuider", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-HunyuanVideoImagesGuider", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/benjiyaya/ComfyUI-HunyuanVideoImagesGuider", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "dchatel", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:20.948741Z", + "description": "These custom nodes provide a rotation aware face extraction, paste back, and various face related masking options.", + "downloads": 0, + "github_stars": 143, + "icon": "", + "id": "comfyui_facetools", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui_facetools", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dchatel/comfyui_facetools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "rock-land", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:30.263371Z", + "description": "ComfyUI Web Extension for saving views and navigating graphs.", + "downloads": 0, + "github_stars": 30, + "icon": "", + "id": "graphNavigator", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "graphNavigator", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/rock-land/graphNavigator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "veighnsche", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:29.664489Z", + "description": "Nodes:Image Dimension Resizer, Image Sizer, Random Ratio, Show Text, Random Title Character, Random Wildcard Tag Picker, Random Show Atm Loc Outfit, Contains Word, Elements Concatenator, ...", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "comfyui_gr85", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui_gr85", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/veighnsche/comfyui_gr85", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "lordgasmic", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:17.926474Z", + "description": "Nodes:Save Image with Options", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui_save_image_with_options", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui_save_image_with_options", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lordgasmic/comfyui_save_image_with_options", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "zcfrank1st", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:50:57.703575Z", + "description": "Nodes:visual_anagrams_sample, visual_anagrams_animate", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "comfyui_visual_anagrams", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui_visual_anagram", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zcfrank1st/comfyui_visual_anagrams", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-27T18:02:05.661928Z", + "description": "ComyUI wrapper for Intel OIDN image denoising", + "downloads": 1190, + "github_stars": 8, + "icon": "", + "id": "comfyui-oidn", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-27T18:02:09.523792Z", + "dependencies": [ + "torch>=1.4.0", + "torchvision>=0.5.0", + "oidn>=0.2" + ], + "deprecated": false, + "downloadUrl": "", + "id": "3711774b-8b66-4917-a5bd-b050ef08e583", + "node_id": "comfyui-oidn", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.1" + }, + "license": "{\"file\": \"LICENSE.md\"}", + "name": "ComfyUI-OIDN", + "publisher": { + "createdAt": "2024-11-27T17:58:20.15639Z", + "description": "", + "id": "deepdenoisers", + "logo": "", + "members": [], + "name": "deepdenoisers", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Anze-/ComfyUI-OIDN", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-24T00:23:47.057896Z", + "description": "failure to publish", + "downloads": 804, + "github_stars": 0, + "icon": "", + "id": "faulon-nodesuite", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-25T03:25:40.540629Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "293631fd-36ab-4a48-bb4a-e6a9d97a44c8", + "node_id": "faulon-nodesuite", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.6" + }, + "license": "{}", + "name": "Faulon", + "publisher": { + "createdAt": "2024-10-11T16:51:07.370765Z", + "description": "", + "id": "faulon-nodes", + "logo": "", + "members": [], + "name": "Faulon", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Zoneiy/faulon-nodesuite", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-01T15:58:02.16793Z", + "description": "A node that fetches URLs from a newline separated list and returns the websites' content as a single concatenated string.", + "downloads": 840, + "github_stars": 0, + "icon": "", + "id": "url_fetcher", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-01T19:47:06.400107Z", + "dependencies": [ + "requests" + ], + "deprecated": false, + "downloadUrl": "", + "id": "2ad8afac-270a-4f87-9198-478d825b2544", + "node_id": "url_fetcher", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "URL Fetcher", + "publisher": { + "createdAt": "2025-01-31T19:49:24.928994Z", + "description": "", + "id": "molbal", + "logo": "", + "members": [], + "name": "B\u00e1lint Moln\u00e1r-Kal\u00f3", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/molbal/comfy-url-fetcher", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "wTechArtist", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:43.495969Z", + "description": "Nodes:Image Blending Mode Mask, Load Image With Bool, IPAdapter Mad Scientist Weight_Type, IPAdapter FaceID With Bool", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-CustomNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-CustomNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wTechArtist/ComfyUI-CustomNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "un-seen", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:09.644314Z", + "description": "This project is a ComfyUI version of [a/sd-webui-segment-anything](https://github.com/continue-revolution/sd-webui-segment-anything). At present, only the most core functionalities have been implemented. I would like to express my gratitude to [a/continue-revolution](https://github.com/continue-revolution) for their preceding work on which this is based.", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "comfyui_segment_anything_plus", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Segment Anything", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/un-seen/comfyui_segment_anything_plus", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:48.18522Z", + "description": "a comfyui node for viewing Live2D model", + "downloads": 0, + "github_stars": 9, + "icon": "", + "id": "ComfyUI-Live2DViewer", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Live2DViewer", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/ComfyUI-Live2DViewer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:48.988158Z", + "description": "a custom comfyui node for [a/fish-speech](https://github.com/fishaudio/fish-speech.git)", + "downloads": 0, + "github_stars": 39, + "icon": "", + "id": "ComfyUI-FishSpeech", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-FishSpeech", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/ComfyUI-FishSpeech", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Shakker-Labs", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:10:56.902391Z", + "description": "NODES:Load IPAdapter Flux Model, Apply IPAdapter Flux Model", + "downloads": 0, + "github_stars": 414, + "icon": "", + "id": "ComfyUI-IPAdapter-Flux", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-IPAdapter-Flux", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Shakker-Labs/ComfyUI-IPAdapter-Flux", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "mingsky", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:14.288919Z", + "description": "Nodes: ConvertGrayChannelNode, AdjustBrightnessContrastSaturationNode, BaiduTranslateNode.", + "downloads": 0, + "github_stars": 412, + "icon": "", + "id": "ComfyUI-MingNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-MingNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mingsky-ai/ComfyUI-MingNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "wsippel", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:39.458692Z", + "description": "Nodes: SDXLResolutionPresets. Easy access to the officially supported resolutions, in both horizontal and vertical formats: 1024x1024, 1152x896, 1216x832, 1344x768, 1536x640", + "downloads": 0, + "github_stars": 28, + "icon": "", + "id": "comfyui_ws", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "SDXLResolutionPresets", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wsippel/comfyui_ws", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kijai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:00.693022Z", + "description": "These nodes include my wrapper for the original diffusers pipeline, as well as work in progress native ComfyUI implementation.\nFor the diffusers wrapper models should be downloaded automatically, for the native version you can get the unet [a/here](https://huggingface.co/Kijai/ControlNeXt-SVD-V2-Comfy/blob/main/controlnext-svd_v2-unet-fp16_converted.safetensors).", + "downloads": 0, + "github_stars": 187, + "icon": "", + "id": "ComfyUI-ControlNeXt-SVD", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI nodes for ControlNext-SVD v2", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-ControlNeXt-SVD", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:51.867738Z", + "description": "a comfyui custom node for [a/hallo](https://github.com/fudan-generative-vision/hallo)", + "downloads": 0, + "github_stars": 305, + "icon": "", + "id": "ComfyUI-Hallo", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Hallo", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/ComfyUI-Hallo", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "abyz22", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:54.047225Z", + "description": "Nodes:abyz22_Padding Image, abyz22_ImpactWildcardEncode, abyz22_setimageinfo, abyz22_SaveImage, abyz22_ImpactWildcardEncode_GetPrompt, abyz22_SetQueue, abyz22_drawmask, abyz22_FirstNonNull, abyz22_blendimages, abyz22_blend_onecolor. Please check workflow in [a/https://github.com/abyz22/image_control](https://github.com/abyz22/image_control)", + "downloads": 0, + "github_stars": 16, + "icon": "", + "id": "image_control", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "image_control", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/abyz22/image_control", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "cherninlab", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:12:21.945397Z", + "description": "This custom node allows you to generate logo images using Google Fonts.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "logo-generator-comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Logo Generator Node for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cherninlab/logo-generator-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Pablerdo", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:01.975784Z", + "description": "Cut and and drag that allows you to cut and drag multiple images on a path", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-MultiCutAndDrag", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-MultiCutAndDrag", + "publisher": { + "createdAt": "2025-02-23T01:14:36.31144Z", + "description": "", + "id": "pablerdo", + "logo": "", + "members": [], + "name": "pablerdo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Pablerdo/ComfyUI-MultiCutAndDrag", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "orange90", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:02.94648Z", + "description": "This is a node to run regex for strings.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-Regex-Runner", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": " ComfyUI-Regex-Runner", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/orange90/ComfyUI-Regex-Runner", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "twri", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:10.197036Z", + "description": "SDXL Prompt Styler is a node that enables you to style prompts based on predefined templates stored in a JSON file.", + "downloads": 0, + "github_stars": 862, + "icon": "", + "id": "sdxl_prompt_styler", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "SDXL Prompt Styler", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/twri/sdxl_prompt_styler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:53.601147Z", + "description": "a comfyui custom node for [a/3d-photo-inpainting](https://github.com/vt-vl-lab/3d-photo-inpainting),then you can render one image to zoom-in/dolly zoom/swing motion/circle motion video", + "downloads": 0, + "github_stars": 14, + "icon": "", + "id": "ComfyUI-3d-photo-inpainting", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-3d-photo-inpainting", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/ComfyUI-3d-photo-inpainting", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Fantasy AI Studio", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:28.75034Z", + "description": "Various custom nodes for ComfyUI", + "downloads": 0, + "github_stars": 14, + "icon": "", + "id": "ComfyUI-FAI-Node", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "FAI-Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alanhuang67/ComfyUI-FAI-Node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:51.066275Z", + "description": "a comfyui custom node for [a/MimicBrush](https://github.com/ali-vilab/MimicBrush),then inpainting with reference image.", + "downloads": 0, + "github_stars": 115, + "icon": "", + "id": "ComfyUI-MimicBrush", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-MimicBrush", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/ComfyUI-MimicBrush", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:52.84144Z", + "description": "a comfyui custom node for [a/UniAnimate](https://github.com/ali-vilab/UniAnimate)", + "downloads": 0, + "github_stars": 39, + "icon": "", + "id": "ComfyUI-UniAnimate", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-UniAnimate", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/ComfyUI-UniAnimate", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Chaoses-Ib", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:47:26.545977Z", + "description": "Nodes: LoadImageFromPath. Load Image From Path loads the image from the source path and does not have such problems.", + "downloads": 0, + "github_stars": 39, + "icon": "", + "id": "ComfyUI_Ib_CustomNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Ib_CustomNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Chaoses-Ib/ComfyUI_Ib_CustomNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:58.920881Z", + "description": "a comfyui custom node for [a/AniTalker](https://github.com/X-LANCE/AniTalker)", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "AniTalker-ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "AniTalker-ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/AniTalker-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "fairy-root", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:45.436394Z", + "description": "A simple but powerful node for ComfyUI that displays text input in a readable format. Perfect for viewing outputs from text generation nodes, prompt builders, interrogators, and more.", + "downloads": 0, + "github_stars": 12, + "icon": "", + "id": "fairy-root_ComfyUI-Show-Text", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Show-Text", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fairy-root/ComfyUI-Show-Text", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "spacepxl", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:29.973185Z", + "description": "[a/https://huggingface.co/microsoft/Florence-2-large-ft](https://huggingface.co/microsoft/Florence-2-large-ft)\nLarge or base model, support for captioning and bbox task modes, more coming soon.", + "downloads": 0, + "github_stars": 83, + "icon": "", + "id": "ComfyUI-Florence-2", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Florence-2", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/spacepxl/ComfyUI-Florence-2", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "xiaoxiaodesha", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:59.072033Z", + "description": "Nodes:Combine HDMasks, Cover HDMasks, HD FaceIndex, HD SmoothEdge, HD GetMaskArea, HD Image Levels, HD Ultimate SD Upscale", + "downloads": 0, + "github_stars": 16, + "icon": "", + "id": "hd_node", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "hd-nodes-comfyui", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/xiaoxiaodesha/hd_node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-24T17:17:03.746714Z", + "description": "Converts danbooru tags to a format suitable for Waifu Diffusion(or Danbooru based models).", + "downloads": 1016, + "github_stars": 0, + "icon": "", + "id": "comfyui-danbooru-to-wd", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-24T17:17:04.039748Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "2e8f2f00-abf4-4740-ac88-ba45fc5ae6d6", + "node_id": "comfyui-danbooru-to-wd", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-Danbooru-To-WD", + "publisher": { + "createdAt": "2024-06-24T15:54:30.963378Z", + "description": "", + "id": "redrayz", + "logo": "", + "members": [], + "name": "Red Rayz", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/RedRayz/ComfyUI-Danbooru-To-WD", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Hangover3832", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:36.178203Z", + "description": "Nodes: MS kosmos-2 Interrogator, Save Image w/o Metadata, Image Scale Bounding Box. An implementation of Microsoft [a/kosmos-2](https://huggingface.co/microsoft/kosmos-2-patch14-224) image to text transformer.", + "downloads": 0, + "github_stars": 41, + "icon": "", + "id": "ComfyUI-Hangover-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Hangover-Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Hangover3832/ComfyUI-Hangover-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "807502278", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:54.88338Z", + "description": "A simple 3D model processing tool within ComfyUI.", + "downloads": 0, + "github_stars": 23, + "icon": "", + "id": "ComfyUI-3D-MeshTool", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-3D-MeshTool", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/807502278/ComfyUI-3D-MeshTool", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "wu12023", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:04.244303Z", + "description": "An extension to ComfyUI that evaluates images using multiple models.", + "downloads": 0, + "github_stars": 9, + "icon": "", + "id": "ComfyUI-Image-Evaluation", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Image-Evaluation", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wu12023/ComfyUI-Image-Evaluation", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "geocine", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:03:40.93216Z", + "description": "NODES:Image Selector (geocine), Image Scale (geocine)", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "geocine-comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "geocine-comfyui", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/geocine/geocine-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "APZmedia", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:59.868297Z", + "description": "This node for ComfyUI allows saving images with an optional alpha channel (transparency). It supports saving images in formats like PNG, JPEG, and WebP.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "APZmedia-comfyui-fast-image-save", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "APZmedia Fast Image Save Node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/APZmedia/APZmedia-comfyui-fast-image-save", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "PixelML", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:24.596629Z", + "description": "A collection of custom nodes for ComfyUI focused on variable handling and workflow automation.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-PixelML-CustomNodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "PixelML ComfyUI Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/PixelML/ComfyUI-PixelML-CustomNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yiwangsimple", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:40.158875Z", + "description": "Based on the original repository [a/https://github.com/spacepxl/ComfyUI-Florence-2](https://github.com/spacepxl/ComfyUI-Florence-2), the model loading and storage methods have been improved, and sd3 has been newly added with enhanced speed and accuracy.", + "downloads": 0, + "github_stars": 47, + "icon": "", + "id": "florence_dw", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "florence_dw", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yiwangsimple/florence_dw", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "APZmedia", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:58.756451Z", + "description": "A custom node to sanitize text to make clean file names from strings.", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "ComfyUI-APZmedia-cleanName-from-string", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "APZmedia Clean Name", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/APZmedia/ComfyUI-APZmedia-cleanName-from-string", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-04T13:42:48.535074Z", + "description": "A ComfyUI node for interfacing with an OpenAI\u2011compatible TTS API endpoint.", + "downloads": 750, + "github_stars": 0, + "icon": "", + "id": "comfyui-openai-tts", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-04T13:42:48.97041Z", + "dependencies": [ + "torch", + "torchaudio", + "pydub", + "numpy", + "requests" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b77c6dfc-3660-4183-9927-647f620448f2", + "node_id": "comfyui-openai-tts", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "OpenAI API TTS", + "publisher": { + "createdAt": "2024-07-15T13:02:49.468005Z", + "description": "", + "id": "drunreal", + "logo": "", + "members": [], + "name": "Dr. Unreal", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DrMWeigand/ComfyUI-TTS-OAI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "dmarx", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:23.153348Z", + "description": "ComfyUI nodes to facilitate parameter/prompt keyframing using comfyui nodes for defining and manipulating parameter curves. Essentially provides a ComfyUI interface to the [a/keyframed](https://github.com/dmarx/keyframed) library.", + "downloads": 0, + "github_stars": 88, + "icon": "", + "id": "ComfyUI-Keyframed", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Keyframed", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dmarx/ComfyUI-Keyframed", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "N3rd00d", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:01.636141Z", + "description": "Paint3D Nodes is a custom ComfyUI node for 3D model texture inpainting based on [a/Paint3D](https://arxiv.org/pdf/2312.13913).", + "downloads": 0, + "github_stars": 69, + "icon": "", + "id": "ComfyUI-Paint3D-Nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Paint3D-Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/N3rd00d/ComfyUI-Paint3D-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "diffus3", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:31.385456Z", + "description": "Extensions: subgraph, setget, multiReroute", + "downloads": 0, + "github_stars": 48, + "icon": "", + "id": "diffus3_ComfyUI-extensions", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "diffus3/ComfyUI-extensions", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/diffus3/ComfyUI-extensions", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "florestefano1975", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:29.89319Z", + "description": "Experience the CogVideoX model on ComfyUI", + "downloads": 0, + "github_stars": 15, + "icon": "", + "id": "ComfyUI-CogVideoX", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-CogVideoX", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/florestefano1975/ComfyUI-CogVideoX", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "moose-lab", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:07.851416Z", + "description": "Help comfy deisgner develope custom nodes by foreground GUI without any coding knowledge, complementing the workflow what you design with LLM automatically", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-GPT", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-GPT", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/moose-lab/ComfyUI-GPT", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smagnetize", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:42.700053Z", + "description": "Nodes:SingleImageDataUrlLoader", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "kb-comfyui-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "kb-comfyui-nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smagnetize/kb-comfyui-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Yuan-ManX", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:14.812028Z", + "description": "ComfyUI nodes for LLaMA-Mesh model.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI-LLaMA-Mesh", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-LLaMA-Mesh", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Yuan-ManX/ComfyUI-LLaMA-Mesh", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "osiworx", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:38.577786Z", + "description": "Nodes for Comfyui to use Prompt Quill within complex workflows", + "downloads": 0, + "github_stars": 19, + "icon": "", + "id": "prompt_quill_comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Prompt-Quill", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/osi1880vr/prompt_quill_comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "MiaoshouAI", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:03.487855Z", + "description": "Nodes to use Florence2 VLM for image tagging and captioning", + "downloads": 0, + "github_stars": 430, + "icon": "", + "id": "ComfyUI-Miaoshouai-Tagger", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Miaoshouai-Tagger", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/miaoshouai/ComfyUI-Miaoshouai-Tagger", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "flycarl", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:09.736437Z", + "description": "[a/sd-webui-pixelart](https://github.com/mrreplicart/sd-webui-pixelart) are referenced by many webui users, this node is mean to use it in ComfyUI.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-Pixelate", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Pixelate", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/flycarl/ComfyUI-Pixelate", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "MarkoCa1", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:37.609826Z", + "description": "Mask cutout based on Segment Anything.", + "downloads": 0, + "github_stars": 22, + "icon": "", + "id": "ComfyUI_Segment_Mask", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Segment_Mask", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MarkoCa1/ComfyUI_Segment_Mask", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "311-code", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:12.666187Z", + "description": "This project allows you to adjust SDXL's two text encoder's strengths individually for clip_g (ViT-bigG) and clip_l (CLIP-ViT-L) within ComfyUI. (And other adjustments)", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-MagicClip_Strength", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI MagicClip_Strength for SDXL", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/311-code/ComfyUI-MagicClip_Strength", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "VertexStudio", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:57.993326Z", + "description": "NODES:Scale Image Node, Switch Image Node, Switch Text Node, First Number Node, Mirror Effect Node, Text To ImageNode, Flow Nodes, Simple Save Image Node", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "roblox-comfyui-nodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "roblox-comfyui-nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/VertexStudio/roblox-comfyui-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "liushuchun", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:17.63848Z", + "description": "Nodes:ComfyUI_Lora_List_With_Url_Loader. Load loras from urls and auto fetch them on web if they are missing.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI_Lora_List_With_Url_Loader", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Lora_List_With_Url_Loader", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/liushuchun/ComfyUI_Lora_List_With_Url_Loader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "SlackinJack", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:48.415882Z", + "description": "[a/Distrifuser](https://github.com/mit-han-lab/distrifuser) sampler node for ComfyUI\n", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "distrifuser_comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "distrifuser_comfyui", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SlackinJack/distrifuser_comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "OpenArt-AI", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:41.485916Z", + "description": "ComfyUI Assistant is your one stop plugin for everything you need to get started with comfy-ui. Now it provides useful courses, tutorials, and basic templates.", + "downloads": 0, + "github_stars": 21, + "icon": "", + "id": "ComfyUI-Assistant", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Assistant", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/OpenArt-AI/ComfyUI-Assistant", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "mrhan1993", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:22.607491Z", + "description": "This extension provides image generation features based on Fooocus.", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "ComfyUI-Fooocus", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Fooocus", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mrhan1993/ComfyUI-Fooocus", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-25T01:09:28.157968Z", + "description": "A collection of custom nodes to consolidate functionality of many other nodes, enable unified workflows, and add custom functionality you won't find with other nodes.", + "downloads": 928, + "github_stars": 22, + "icon": "./imgs/FS-Logo.png", + "id": "flowstate-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-29T18:34:46.541834Z", + "dependencies": [ + "transformers>=4.0.0", + "torch>=1.7.1", + "accelerate", + "bitsandbytes>=0.43.0", + "# llama-cpp-python (CPU only, AVX2)", + "https://github.com/oobabooga/llama-cpp-python-cuBLAS-wheels/releases/download/cpu/llama_cpp_python-0.2.89+cpuavx2-cp311-cp311-linux_x86_64.whl; platform_system == \"Linux\" and platform_machine == \"x86_64\" and python_version == \"3.11\"", + "https://github.com/oobabooga/llama-cpp-python-cuBLAS-wheels/releases/download/cpu/llama_cpp_python-0.2.89+cpuavx2-cp310-cp310-linux_x86_64.whl; platform_system == \"Linux\" and platform_machine == \"x86_64\" and python_version == \"3.10\"", + "https://github.com/oobabooga/llama-cpp-python-cuBLAS-wheels/releases/download/cpu/llama_cpp_python-0.2.89+cpuavx2-cp311-cp311-win_amd64.whl; platform_system == \"Windows\" and python_version == \"3.11\"", + "https://github.com/oobabooga/llama-cpp-python-cuBLAS-wheels/releases/download/cpu/llama_cpp_python-0.2.89+cpuavx2-cp310-cp310-win_amd64.whl; platform_system == \"Windows\" and python_version == \"3.10\"", + "# llama-cpp-python (CUDA, no tensor cores)", + "https://github.com/oobabooga/llama-cpp-python-cuBLAS-wheels/releases/download/textgen-webui/llama_cpp_python_cuda-0.2.89+cu121-cp311-cp311-win_amd64.whl; platform_system == \"Windows\" and python_version == \"3.11\"", + "https://github.com/oobabooga/llama-cpp-python-cuBLAS-wheels/releases/download/textgen-webui/llama_cpp_python_cuda-0.2.89+cu121-cp310-cp310-win_amd64.whl; platform_system == \"Windows\" and python_version == \"3.10\"", + "https://github.com/oobabooga/llama-cpp-python-cuBLAS-wheels/releases/download/textgen-webui/llama_cpp_python_cuda-0.2.89+cu121-cp311-cp311-linux_x86_64.whl; platform_system == \"Linux\" and platform_machine == \"x86_64\" and python_version == \"3.11\"", + "https://github.com/oobabooga/llama-cpp-python-cuBLAS-wheels/releases/download/textgen-webui/llama_cpp_python_cuda-0.2.89+cu121-cp310-cp310-linux_x86_64.whl; platform_system == \"Linux\" and platform_machine == \"x86_64\" and python_version == \"3.10\"" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e275baa0-a681-4bd0-be1d-21c2f846740c", + "node_id": "flowstate-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "FlowState-Nodes", + "publisher": { + "createdAt": "2024-10-22T20:52:30.056078Z", + "description": "", + "id": "flowstateeng", + "logo": "", + "members": [], + "name": "FlowState", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/flowstateeng/FlowState-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Yuan-ManX", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:15.788995Z", + "description": "ComfyUI nodes for PhotoDoodle model.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-PhotoDoodle", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-PhotoDoodle", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Yuan-ManX/ComfyUI-PhotoDoodle", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "purpen", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:20.428402Z", + "description": "NODES:AIRedoon Image Caption.\nAnalyze image tagger", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-ImageTagger", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ImageTagger", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/purpen/ComfyUI-ImageTagger", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ttulttul", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:42.46221Z", + "description": "Nodes to use Florence2 VLM for image vision tasks: object detection, captioning, segmentation and ocr", + "downloads": 0, + "github_stars": 117, + "icon": "", + "id": "ComfyUI-Iterative-Mixer", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Iterative Mixing Nodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ttulttul/ComfyUI-Iterative-Mixer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "YarvixPA", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:06:44.210044Z", + "description": "A set of custom nodes modified to achieve things I felt were missing.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI-NeuralMedia", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-NeuralMedia", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/YarvixPA/ComfyUI-NeuralMedia", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "fluffydiveX", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:13.832397Z", + "description": "It is a simple HunyuanVideo block swap node for ComfyUI native nodes.", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "ComfyUI-hvBlockswap", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-hvBlockswap", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fluffydiveX/ComfyUI-hvBlockswap", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smthemex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:35.365165Z", + "description": "Face Anonymization make simple and easy.", + "downloads": 0, + "github_stars": 17, + "icon": "", + "id": "ComfyUI_Face_Anon_Simple", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Face_Anon_Simple", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_Face_Anon_Simple", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "S4MUEL-404", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:22.016738Z", + "description": "A custom node for conveniently adjusting the overlay position of two images.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-Image-Position-Blend", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Image Position Blend", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/S4MUEL-404/ComfyUI-Image-Position-Blend", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "flowtyone", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:08.292492Z", + "description": "This is a custom node that lets you use Convolutional Reconstruction Models right from ComfyUI.\n[a/CRM](https://ml.cs.tsinghua.edu.cn/~zhengyi/CRM/) is a high-fidelity feed-forward single image-to-3D generative model.", + "downloads": 0, + "github_stars": 156, + "icon": "", + "id": "ComfyUI-Flowty-CRM", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Flowty-CRM", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/flowtyone/ComfyUI-Flowty-CRM", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "S4MUEL-404", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:23.541575Z", + "description": "Quickly select preset prompts and merge them", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-Prompts-Selector", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Prompts-Selector", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/S4MUEL-404/ComfyUI-Prompts-Selector", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-26T21:52:50.797564Z", + "description": "Inference-time techniques to enhance diffusion-based image generation quality through random search and zero-order optimization algorithms", + "downloads": 2017, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-InferenceTimeScaling", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-27T21:13:39.815061Z", + "dependencies": [ + "torch>=2.5.1", + "torchvision>=0.20.1", + "transformers==4.49.0", + "pillow==11.1.0", + "numpy>=1.24.0", + "huggingface_hub==0.27.1", + "timm==0.6.13", + "fairscale>=0.4.0", + "image_reward==1.5", + "pydantic==2.10.6", + "outlines==0.2.0", + "open-clip-torch>=2.20.0", + "clip @ git+https://github.com/openai/CLIP.git" + ], + "deprecated": false, + "downloadUrl": "", + "id": "308eabef-9c32-4155-a963-e4b2bfe4ebee", + "node_id": "ComfyUI-InferenceTimeScaling", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.3" + }, + "license": "{\"text\": \"MIT license\"}", + "name": "ComfyUI-InferenceTimeScaling", + "publisher": { + "createdAt": "2025-02-26T16:57:09.439805Z", + "description": "", + "id": "maximclouser", + "logo": "", + "members": [], + "name": "Max", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smthemex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:21.505737Z", + "description": "You can using EchoMimic in comfyui,please using pip install install miss module", + "downloads": 0, + "github_stars": 639, + "icon": "", + "id": "ComfyUI_EchoMimic", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_EchoMimic", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_EchoMimic", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "envy-ai", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:40.050776Z", + "description": "This extension extends ComfyUI's capabilities with respect to manipulating conditionings.", + "downloads": 0, + "github_stars": 201, + "icon": "", + "id": "ComfyUI-ConDelta", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-ConDelta", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/envy-ai/ComfyUI-ConDelta", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "S4MUEL-404", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:22.80637Z", + "description": "A custom node for ComfyUI that allows users to add text overlays to images with customizable size, font, position, and shadow.", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "ComfyUI-Text-On-Image", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Text-On-Image", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/S4MUEL-404/ComfyUI-Text-On-Image", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "BetaDoggo", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:23.602526Z", + "description": "A revolutionary technique for increasing output variety.", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-Gatcha-Embedding", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Gatcha Embeddings", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BetaDoggo/ComfyUI-Gatcha-Embedding", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "wwwins", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:04.532069Z", + "description": "Nodes:SimpleAspectRatio", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-Simple-Aspect-Ratio", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Simple-Aspect-Ratio", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wwwins/ComfyUI-Simple-Aspect-Ratio", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "burnsbert", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:14:00.149503Z", + "description": "Custom nodes for integrating LM Studio's LLM functionality into ComfyUI. Includes EBU-LMStudio-Load, EBU-LMStudio-Unload, and EBU-LMStudio-Request.", + "downloads": 0, + "github_stars": 15, + "icon": "", + "id": "ComfyUI-EBU-LMStudio", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "EBU LMStudio LLM Integration", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/burnsbert/ComfyUI-EBU-LMStudio", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-06T23:11:33.220089Z", + "description": "Unofficial implementation of DeepSeek for ComfyUI", + "downloads": 1232, + "github_stars": 0, + "icon": "", + "id": "comfyui-deepseek-2lab", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-02T07:21:23.632315Z", + "dependencies": [ + "openai" + ], + "deprecated": false, + "downloadUrl": "", + "id": "cadb03c1-f75e-4862-bf09-91088fa13c8f", + "node_id": "comfyui-deepseek-2lab", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyUI-DeepSeek-2lab", + "publisher": { + "createdAt": "2024-06-06T15:08:41.151289Z", + "description": "", + "id": "ai2lab", + "logo": "", + "members": [], + "name": "AI2lab", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AI2lab/comfyUI-DeepSeek-2lab", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:16.980936Z", + "description": "ComfyUI Img2Img-Turbo", + "downloads": 0, + "github_stars": 37, + "icon": "", + "id": "ComfyUI-Img2Img-Turbo", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Img2Img-Turbo", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-Img2Img-Turbo", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "sebord", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:51.166241Z", + "description": "ComfyUI small node toolkit, this toolkit is mainly to update some practical small nodes, to make a contribution to the comfyui ecosystem, PS: 'LMCQ' is the abbreviation of the team name\nNOTE: The files in the repo are not organized, which may lead to update issues.", + "downloads": 0, + "github_stars": 73, + "icon": "", + "id": "ComfyUI-LMCQ", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-LMCQ", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sebord/ComfyUI-LMCQ", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:15.220999Z", + "description": "ComfyUI MuseV", + "downloads": 0, + "github_stars": 159, + "icon": "", + "id": "ComfyUI-MuseV", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-MuseV", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-MuseV", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "sipie800", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:02.092173Z", + "description": "adapted from [a/https://github.com/balazik/ComfyUI-PuLID-Flux](https://github.com/balazik/ComfyUI-PuLID-Flux).\ncommon fusion methods for multi-image input, some further experimental fusion methods, switch between using gray image (official) and rgb.,", + "downloads": 0, + "github_stars": 210, + "icon": "", + "id": "ComfyUI-PuLID-Flux-Enhanced", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-PuLID-Flux-Enhanced", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sipie800/ComfyUI-PuLID-Flux-Enhanced", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:28.293636Z", + "description": "This is an implementation of [a/i2vgen-xl](https://github.com/ali-vilab/i2vgen-xl)", + "downloads": 0, + "github_stars": 28, + "icon": "", + "id": "ComfyUI-I2VGEN-XL", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-I2VGEN-XL", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-I2VGEN-XL", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "codeprimate", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:56.450725Z", + "description": "A ComfyUI node that improves inpainting results by extending mask boundaries with geometric patterns, helping create smoother transitions and better context for AI-driven image completion.", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-MaskContourProcessor", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI Mask Contour Processor", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/codeprimate/ComfyUI-MaskContourProcessor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:27.532775Z", + "description": "Nodes: Run python tools/download_weights.py first to download weights automatically", + "downloads": 0, + "github_stars": 213, + "icon": "", + "id": "ComfyUI-Moore-AnimateAnyone", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Moore-AnimateAnyone", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-Moore-AnimateAnyone", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:30.161371Z", + "description": "This is an ComfyUI implementation of RAFT to generate motion brush", + "downloads": 0, + "github_stars": 26, + "icon": "", + "id": "ComfyUI-RAFT", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-RAFT", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-RAFT", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Bikecicle", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:33.405776Z", + "description": "Some additional audio utilites for use on top of Sample Diffusion ComfyUI Extension", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "Bikecicle_ComfyUI-Waveform-Extensions", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Waveform Extensions", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Bikecicle/ComfyUI-Waveform-Extensions", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "aonekoss", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:00.732443Z", + "description": "A simple counter, when pressing 'Queue Prompt' resets the count.", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-Counter", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Counter", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/oleksandr612/ComfyUI-Counter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "aianimation55", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:51.365883Z", + "description": "It's a super simple custom node for Comfy UI, to generate text, with a font size option. Useful for bigger labelling of nodes, helpful for wider screen captures or tutorials. Plus you can of course use the text within your generations.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "ComfyUI-FatLabels", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Comfy UI FatLabels", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/aianimation55/ComfyUI-FatLabels", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "sweetndata", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:10.794588Z", + "description": "NODES:Image-Harmonizer", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-Image-Harmonizer", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Image-Harmonizer", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sweetndata/ComfyUI-Image-Harmonizer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "chaojie", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:31.875214Z", + "description": "Nodes:SimDATrain, SimDALoader, SimDARun, VHS_FILENAMES_STRING_SimDA", + "downloads": 0, + "github_stars": 13, + "icon": "", + "id": "ComfyUI-SimDA", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-SimDA", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaojie/ComfyUI-SimDA", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-27T08:15:26.358635Z", + "description": "Efficiency tools, Personalized style, Other Nodes, ...", + "downloads": 1313, + "github_stars": 0, + "icon": "", + "id": "comfyui-utools", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-28T05:21:10.16742Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "9ab7abd1-e511-4794-979a-5dcf96e8dd19", + "node_id": "comfyui-utools", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.5" + }, + "license": "{\"text\": \"MIT\"}", + "name": "comfyui-utools", + "publisher": { + "createdAt": "2024-08-26T01:36:04.600023Z", + "description": "", + "id": "ltg", + "logo": "", + "members": [], + "name": "chenx", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tianguanggliu/Utools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-24T14:10:17.721659Z", + "description": "Add node that outputs random pair of width and height from given array", + "downloads": 1148, + "github_stars": 0, + "icon": "", + "id": "comfyui-sizefromarray", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-24T14:10:17.99175Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "466ace68-755c-43b4-8a60-3c3e147f47a7", + "node_id": "comfyui-sizefromarray", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI-SizeFromArray", + "publisher": { + "createdAt": "2024-05-24T14:04:52.122094Z", + "description": "", + "id": "iturchenko", + "logo": "", + "members": [], + "name": "ITurchenko", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ITurchenko/ComfyUI-SizeFromArray", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "BZcreativ", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:22.315315Z", + "description": "A custom node implementation for ComfyUI that integrates with Together.ai's FLUX image generation models. This project is inspired by and adapted from [a/ComfyUI-FLUX-BFL-API](https://github.com/gelasdev/ComfyUI-FLUX-BFL-API) to work with the Together.ai API.", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-FLUX-TOGETHER-API", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-FLUX-TOGETHER-API", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BZcreativ/ComfyUI-FLUX-TOGETHER-API", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "NeuralSamurAI", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:10.628866Z", + "description": "FluxPseudoNegative is an advanced custom node for ComfyUI that converts negative prompts into positive ones. It's designed to enhance prompt engineering for image generation models that don't natively support negative prompts or where using negative prompts significantly increases generation time. So instead of hacking CFG we simply invert your negative words and find their antonyms!", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "ComfyUI-FluxPseudoNegativePrompt", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "FluxPseudoNegative", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/NeuralSamurAI/ComfyUI-FluxPseudoNegativePrompt", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Hangover3832", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:37.454662Z", + "description": "Moondream is a lightweight multimodal large language model.\n[w/WARN:Additional python code will be downloaded from huggingface and executed. You have to trust this creator if you want to use this node!]", + "downloads": 0, + "github_stars": 46, + "icon": "", + "id": "ComfyUI-Hangover-Moondream", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Hangover-Moondream", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Hangover3832/ComfyUI-Hangover-Moondream", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "hoveychen", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:18.006415Z", + "description": "MusePose Remaster is a remaster version of ComfyUI MusePose node.\nIt supports auto weights download, remove most necessary dependencies, etc.", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "ComfyUI-MusePose-Remaster", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-MusePose-Remaster", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hoveychen/ComfyUI-MusePose-Remaster", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smthemex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:40.00342Z", + "description": "DiffuEraser is a diffusion model for video Inpainting, you can use it in ComfyUI", + "downloads": 0, + "github_stars": 171, + "icon": "", + "id": "ComfyUI_DiffuEraser", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_DiffuEraser", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_DiffuEraser", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-05T03:25:40.903262Z", + "description": "This is a collection of custom nodes required for processing batch images.", + "downloads": 1614, + "github_stars": 0, + "icon": "", + "id": "imagebatch-utility", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-05T03:25:44.392041Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "05216d51-b073-42eb-91d2-0d7ebac5ec35", + "node_id": "imagebatch-utility", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ImageBatch-Utility", + "publisher": { + "createdAt": "2025-01-05T02:16:30.185531Z", + "description": "", + "id": "watarika", + "logo": "", + "members": [], + "name": "watarika", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/watarika/ComfyUI-ImageBatch-Utility", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "jw782cn", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:47.905851Z", + "description": "Extension to show random cat GIFs while queueing prompt.", + "downloads": 0, + "github_stars": 140, + "icon": "", + "id": "ComfyUI-Catcat", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Catcat", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jw782cn/ComfyUI-Catcat", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "stormcenter", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:24.029913Z", + "description": "A custom node for ComfyUI that allows you to create iPhone-compatible Live Photos from videos. This node can convert video sequences into Live Photo format, with the ability to select key frames and customize the output.", + "downloads": 0, + "github_stars": 25, + "icon": "", + "id": "ComfyUI-LivePhotoCreator", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI LivePhoto Creator", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/stormcenter/ComfyUI-LivePhotoCreator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AInseven", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:45.752401Z", + "description": "fastblend for comfyui, and other nodes that I write for video2video. rebatch image, my openpose", + "downloads": 0, + "github_stars": 219, + "icon": "", + "id": "ComfyUI-fastblend", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-fastblend", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AInseven/ComfyUI-fastblend", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smthemex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:33.78942Z", + "description": "Using Demucs in comfyUI, make Music Source Separation", + "downloads": 0, + "github_stars": 8, + "icon": "", + "id": "ComfyUI_Demucs", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Demucs", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_Demucs", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "smthemex", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:41.709559Z", + "description": "Light-A-Video: Training-free Video Relighting via Progressive Light Fusion,you can use it in comfyUI", + "downloads": 0, + "github_stars": 83, + "icon": "", + "id": "ComfyUI_Light_A_Video", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Light_A_Video", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_Light_A_Video", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-23T12:25:26.438938Z", + "description": "Nodes:Jamworks_Login, Jamworks_Download, Shell_Command.\nA Simple Client for Jamworks Platform DAM Integration", + "downloads": 1182, + "github_stars": 0, + "icon": "", + "id": "comfyui_jamworks_client", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-23T12:25:26.771818Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ba1c6022-949f-4eb5-b347-ba9c8252e1c0", + "node_id": "comfyui_jamworks_client", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "comfyui_jamworks_client", + "publisher": { + "createdAt": "2024-06-20T12:20:27.089013Z", + "description": "", + "id": "cj", + "logo": "", + "members": [], + "name": "CJ", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/celsojr2013/comfyui_jamworks_client", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Kling AI", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:11:23.562712Z", + "description": "Provide high-quality video and image generation capabilities, meeting creators' needs for creative content production and management through more convenient operations, richer functionalities, professional parameters, and stunning effects.", + "downloads": 0, + "github_stars": 135, + "icon": "", + "id": "ComfyUI-KLingAI-API", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-KLingAI-API", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/KwaiVGI/ComfyUI-KLingAI-API", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "meshmesh-io", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:08.213381Z", + "description": "Nodes:Masks to Colored Masks, Color Picker", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-MeshMesh", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-MeshMesh", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/meshmesh-io/ComfyUI-MeshMesh", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "var1ableX", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:01:41.148245Z", + "description": "Get Mask Dimensions", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "ComfyUI_Accessories", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Accessories", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/var1ableX/ComfyUI_Accessories", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Lam Yan", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:07:08.850459Z", + "description": "This extension has some useful nodes, loops, wechat public number +AI chat drawing, distributed cluster", + "downloads": 0, + "github_stars": 47, + "icon": "", + "id": "ComfyUI_Lam", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_Lam", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yanlang0123/ComfyUI_Lam", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:44.730634Z", + "description": "the comfyui custom node of [a/MuseTalk](https://github.com/TMElyralab/MuseTalk) to make audio driven videos!", + "downloads": 0, + "github_stars": 21, + "icon": "", + "id": "ComfyUI-MuseTalk_FSH", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-MuseTalk_FSH", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/ComfyUI-MuseTalk_FSH", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-05T02:51:01.55496Z", + "description": "Sends images with metadata (PNGInfo) obtained from the input values of each node to Eagle. You can customize the tags to be registered in Eagle.", + "downloads": 977, + "github_stars": 1, + "icon": "", + "id": "sendtoeagle-w-metadata", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-23T09:06:38.517343Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "786b67fa-8738-40fb-9c45-41b50308d41b", + "node_id": "sendtoeagle-w-metadata", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-SendToEagle-w-Metadata", + "publisher": { + "createdAt": "2025-01-05T02:16:30.185531Z", + "description": "", + "id": "watarika", + "logo": "", + "members": [], + "name": "watarika", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/watarika/ComfyUI-SendToEagle-w-Metadata", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "city96", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:20.455321Z", + "description": "Run ComfyUI workflows on multiple local GPUs/networked machines. Nodes: Remote images, Local Remote control", + "downloads": 0, + "github_stars": 462, + "icon": "", + "id": "ComfyUI_NetDist", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_NetDist", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/city96/ComfyUI_NetDist", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "comfyanonymous", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:45:56.153227Z", + "description": "Nodes: ModelSamplerTonemapNoiseTest, TonemapNoiseWithRescaleCFG, ReferenceOnlySimple, RescaleClassifierFreeGuidanceTest, ModelMergeBlockNumber, ModelMergeSDXL, ModelMergeSDXLTransformers, ModelMergeSDXLDetailedTransformers.", + "downloads": 0, + "github_stars": 183, + "icon": "", + "id": "ComfyUI_experiments", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_experiments", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/comfyanonymous/ComfyUI_experiments", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "yuvraj108c", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:15.022124Z", + "description": "A collection of nice utility nodes for ComfyUI", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-Pronodes", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-Pronodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yuvraj108c/ComfyUI-Pronodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "leeguandong", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:02:13.877674Z", + "description": "ComfyUI nodes to use MasaCtrl", + "downloads": 0, + "github_stars": 3, + "icon": "", + "id": "ComfyUI_MasaCtrl", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI nodes to use MasaCtrl", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/leeguandong/ComfyUI_MasaCtrl", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "StartHua", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:53:34.973531Z", + "description": "Original project: [a/link](https://github.com/tencent-ailab/PCDMs)\nBased on testing, the author's original images work very well, but using my own images generally requires some luck!", + "downloads": 0, + "github_stars": 7, + "icon": "", + "id": "ComfyUI_PCDMs", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_PCDMs", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/StartHua/ComfyUI_PCDMs", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ExponentialML", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:17.438897Z", + "description": "ComfyUI Version of '[a/Visual Style Prompting with Swapping Self-Attention](https://github.com/naver-ai/Visual-Style-Prompting)'", + "downloads": 0, + "github_stars": 301, + "icon": "", + "id": "ComfyUI_VisualStylePrompting", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_VisualStylePrompting", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ExponentialML/ComfyUI_VisualStylePrompting", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-05T03:24:31.217165Z", + "description": "Custom node to exit ComfyUI. Exit ComfyUI after a specified number of seconds.", + "downloads": 848, + "github_stars": 0, + "icon": "", + "id": "exit", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-05T03:24:34.710572Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1c472cc8-9d90-4d2b-9458-633150f3acf6", + "node_id": "exit", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-exit", + "publisher": { + "createdAt": "2025-01-05T02:16:30.185531Z", + "description": "", + "id": "watarika", + "logo": "", + "members": [], + "name": "watarika", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/watarika/ComfyUI-exit", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "royceschultz", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:56.434483Z", + "description": "Transcribe audio and video files in ComfyUI.", + "downloads": 0, + "github_stars": 22, + "icon": "", + "id": "ComfyUI-TranscriptionTools", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-TranscriptionTools", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/royceschultz/ComfyUI-TranscriptionTools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "AIFSH", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:56:47.352567Z", + "description": "a custom comfyui node for [a/coqui-ai/TTS](https://github.com/coqui-ai/TTS.git)'s xtts module! support 17 languages voice cloning and tts", + "downloads": 0, + "github_stars": 59, + "icon": "", + "id": "ComfyUI-XTTS", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-XTTS", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIFSH/ComfyUI-XTTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "ExponentialML", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:15.789401Z", + "description": "Allows native usage of ModelScope based Text To Video Models in ComfyUI", + "downloads": 0, + "github_stars": 27, + "icon": "", + "id": "ComfyUI_ModelScopeT2V", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_ModelScopeT2V", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ExponentialML/ComfyUI_ModelScopeT2V", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "hay86", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:55:53.297747Z", + "description": "Unofficial implementation of [a/OpenVoice](https://github.com/myshell-ai/OpenVoice) for ComfyUI", + "downloads": 0, + "github_stars": 18, + "icon": "", + "id": "ComfyUI_OpenVoice", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI OpenVoice", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hay86/ComfyUI_OpenVoice", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "WASasquatch", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:09.724335Z", + "description": "Nodes: WAS_PFN_Latent. Perlin Power Fractal Noisey Latents", + "downloads": 0, + "github_stars": 24, + "icon": "", + "id": "PPF_Noise_ComfyUI", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "PPF_Noise_ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/WASasquatch/PPF_Noise_ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "kijai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:48:49.582748Z", + "description": "Moondream image to text query node with batch support", + "downloads": 0, + "github_stars": 106, + "icon": "", + "id": "ComfyUI-moondream", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI-moondream", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-moondream", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "MeeeyoAI", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:15:00.76165Z", + "description": "StringOps is a versatile text processing toolkit built for ComfyUI's node-based workflows", + "downloads": 0, + "github_stars": 83, + "icon": "", + "id": "ComfyUI_StringOps", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "ComfyUI_StringOps", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MeeeyoAI/ComfyUI_StringOps", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-02T17:22:32.347263Z", + "description": "", + "downloads": 837, + "github_stars": 0, + "icon": "https://raw.githubusercontent.com/Bewinxed/PromptPrism/refs/heads/master/prism.png", + "id": "promptprism", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-24T20:24:59.907542Z", + "dependencies": [ + "anthropic>=0.42.0", + "deepseek>=0.0.1.dev0", + "instructor[litellm]>=1.7.2", + "litellm>=1.56.6", + "ollama>=0.4.5" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d41670c9-8d68-477b-8b52-96927b402021", + "node_id": "promptprism", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "PromptPrism \ud83c\udf08\u20e4", + "publisher": { + "createdAt": "2025-01-02T17:11:06.252479Z", + "description": "", + "id": "bewinxed", + "logo": "", + "members": [], + "name": "Bewinxed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Bewinxed/PromptPrism", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Xiangyu-CAS", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:13:51.836591Z", + "description": "This project addresses the issue of numerous hand defects in AI-generated portrait images by using a workflow based on FLUX/FLUX-Fill to correct hand deformities. It is effective for both real-life and anime images, including those generated by DiT/SDXL/Midjourney. It supports diffusers, gradio, ComfyUI, and more", + "downloads": 0, + "github_stars": 190, + "icon": "", + "id": "HandFixer", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "HandFixer", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Xiangyu-CAS/HandFixer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "BenNarum", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T00:00:05.665206Z", + "description": "A set of tools for generating and altering sigmas in ComfyUI.", + "downloads": 0, + "github_stars": 5, + "icon": "", + "id": "SigmaWaveFormNode", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "SigmaWaveFormNodes", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BenNarum/SigmaWaveFormNode", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "avatechai", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:12.443539Z", + "description": "Include nodes for sam + bpy operation, that allows workflow creations for generative 2d character rig.", + "downloads": 0, + "github_stars": 264, + "icon": "", + "id": "avatar-graph-comfyui", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Avatar Graph", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/avatechai/avatar-graph-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "paulo-coronado", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:07.729928Z", + "description": "CLIPTextEncodeBLIP: This custom node provides a CLIP Encoder that is capable of receiving images as input.", + "downloads": 0, + "github_stars": 29, + "icon": "", + "id": "comfy_clip_blip_node", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfy_clip_blip_node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/paulo-coronado/comfy_clip_blip_node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "wandbrandon", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:57:46.688582Z", + "description": "pixel art workshop nodes for comfyui.", + "downloads": 0, + "github_stars": 4, + "icon": "", + "id": "comfyui-pixel", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-pixel", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wandbrandon/comfyui-pixel", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "HebelHuber", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:52:46.77901Z", + "description": "Nodes:Enhanced Save Node", + "downloads": 0, + "github_stars": 2, + "icon": "", + "id": "comfyui-enhanced-save-node", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-enhanced-save-node", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/HebelHuber/comfyui-enhanced-save-node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "NimaNzrii", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:51:20.99113Z", + "description": "popup preview for comfyui", + "downloads": 0, + "github_stars": 35, + "icon": "", + "id": "comfyui-popup_preview", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui-popup_preview", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/NimaNzrii/comfyui-popup_preview", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "githubYiheng", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:46.496712Z", + "description": "Nodes:Private ImageCPostprocessor", + "downloads": 0, + "github_stars": 1, + "icon": "", + "id": "comfyui_private_postprocessor", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui_private_postprocessor", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/githubYiheng/comfyui_private_postprocessor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "storyicon", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:49:15.198974Z", + "description": "Based on GroundingDino and SAM, use semantic strings to segment any element in an image. The comfyui version of sd-webui-segment-anything.", + "downloads": 0, + "github_stars": 984, + "icon": "", + "id": "comfyui_segment_anything", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "segment anything", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/storyicon/comfyui_segment_anything", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "Jcd1230", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:46:17.802068Z", + "description": "Nodes: Image Remove Background (rembg)", + "downloads": 0, + "github_stars": 170, + "icon": "", + "id": "rembg-comfyui-node", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "Rembg Background Removal Node for ComfyUI", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Jcd1230/rembg-comfyui-node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "githubYiheng", + "banner_url": "", + "category": "", + "created_at": "2025-03-11T23:58:45.830566Z", + "description": "Nodes:Apply Meanshift Filter", + "downloads": 0, + "github_stars": 0, + "icon": "", + "id": "comfyui_meanshift_filter", + "latest_version": { + "version": "nightly" + }, + "license": "{}", + "name": "comfyui_meanshift_filter", + "publisher": { + "createdAt": "2025-03-07T03:01:54.745558Z", + "description": "", + "id": "admin-11338bd3-f081-43cf-b3f9-295c829826f7", + "logo": "", + "members": [], + "name": "Unclaimed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/githubYiheng/comfyui_meanshift_filter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-01T06:17:21.590045Z", + "description": "\u4f7f\u7528\u963f\u91cc\u4e91oss\u4e0a\u7684\u56fe\u7247,\u6216\u8005\u4fdd\u5b58\u7ed3\u679c\u56fe\u7247\u81f3\u963f\u91cc\u4e91oss", + "downloads": 310, + "github_stars": 0, + "icon": "http://zhiyi-opsdev.oss-cn-hangzhou.aliyuncs.com/tmp/demo.png", + "id": "image2oss", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-09T03:38:57.723582Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "bae24c5e-9eeb-4e24-9580-83ed9b21c66e", + "node_id": "image2oss", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.0.4" + }, + "license": "{\"text\": \"GNU General Public License v3\"}", + "name": "comfyui_image2oss", + "publisher": { + "createdAt": "2025-03-28T08:50:20.406165Z", + "description": "", + "id": "nxt5656", + "logo": "", + "members": [], + "name": "nxt5656", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nxt5656/image2oss", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-11T03:55:49.428949Z", + "description": "", + "downloads": 841, + "github_stars": 0, + "icon": "", + "id": "comfy_instant_studio", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-11T03:55:53.193386Z", + "dependencies": [ + "numpy", + "Pillow", + "Requests" + ], + "deprecated": false, + "downloadUrl": "", + "id": "3bd88f76-ad8f-43d1-940f-5e7d8395e2a5", + "node_id": "comfy_instant_studio", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfy_instant_studio", + "publisher": { + "createdAt": "2024-12-11T03:50:48.918538Z", + "description": "", + "id": "instantstudio", + "logo": "", + "members": [], + "name": "Instant Studio", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kudelabs/comfy_instant_studio", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-12T19:04:24.668934Z", + "description": "From F5-TTS for Thai language only \u0e40\u0e2d\u0e32\u0e44\u0e27\u0e49\u0e2a\u0e31\u0e07\u0e40\u0e04\u0e23\u0e32\u0e30\u0e2b\u0e4c\u0e40\u0e2a\u0e35\u0e22\u0e07\u0e20\u0e32\u0e29\u0e32\u0e44\u0e17\u0e22 \u0e15\u0e31\u0e27\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e43\u0e0a\u0e49 https://youtu.be/QUNL8DbPdmo", + "downloads": 602, + "github_stars": 11, + "icon": "icon_F5_TTS_TH.png", + "id": "ComfyUI-F5-TTS-TH", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-12T19:04:25.102975Z", + "dependencies": [ + "# Core PyTorch + Audio backend", + "# \u2705 PyTorch with CUDA 12.6 \u0e40\u0e2b\u0e21\u0e32\u0e30\u0e01\u0e31\u0e1a GPU \u0e43\u0e2b\u0e21\u0e48\u0e46 \u0e41\u0e25\u0e30 NVIDIA RTX 40 series \u0e41\u0e25\u0e30 30 series \u0e41\u0e25\u0e30 comfyui", + "#torch==2.1.2+cu126", + "#torchaudio==2.1.2+cu126", + "#--extra-index-url https://download.pytorch.org/whl/cu126", + "# \u2705 PyTorch with CUDA 11.8 for older GPUs, if needed", + "# torch==2.1.2+cu118", + "# torchaudio==2.1.2+cu118", + "# --extra-index-url https://download.pytorch.org/whl/cu118", + "# \u2705 PyTorch with CPU only", + "# torch==2.1.2", + "# torchaudio==2.1.2", + "# \u2705 PyTorch with MPS (Apple Silicon)", + "# torch==2.1.2", + "# torchaudio==2.1.2", + "# \u2705 PyTorch with ROCm (AMD GPUs)", + "# Thai NLP", + "pythainlp", + "deepcut", + "# Model config / HuggingFace asset loading", + "omegaconf", + "cached_path", + "# Git submodule handling (Install.py)", + "pygit2", + "# Vocoder", + "vocos", + "# Utils & Visualization", + "tqdm", + "numpy", + "matplotlib", + "soundfile", + "g2p_en", + "# Optional: for saving audio, web interface, CLI tools, and extended training", + "gradio", + "click", + "datasets", + "jieba", + "librosa", + "pydub", + "pypinyin", + "wandb", + "safetensors", + "tomli", + "# Transformer & Trainer", + "transformers", + "ema_pytorch>=0.5.2", + "torchdiffeq", + "x_transformers>=1.31.14", + "bitsandbytes>0.37.0", + "torch-time-stretch", + "accelerate>=0.33.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6c9b2c81-52a0-44b2-b617-f3cd6d16c121", + "node_id": "ComfyUI-F5-TTS-TH", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-F5-TTS-TH", + "publisher": { + "createdAt": "2025-04-22T07:03:47.396417Z", + "description": "", + "id": "iimate24", + "logo": "", + "members": [], + "name": "iimate24", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gordon123/ComfyUI-F5-TTS-TH", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-21T21:44:15.381741Z", + "description": "Implementation of paint-by-example on ComfyUI", + "downloads": 1404, + "github_stars": 9, + "icon": "", + "id": "paint-by-example_comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-21T21:44:19.175423Z", + "dependencies": [ + "diffusers", + "torch", + "torchvision" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f01e5565-cf36-4c75-884e-fb4b0029fbfa", + "node_id": "paint-by-example_comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "paint-by-example_comfyui", + "publisher": { + "createdAt": "2024-08-21T21:12:48.031871Z", + "description": "", + "id": "phyblas", + "logo": "", + "members": [], + "name": "p\u02b0yblas", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/phyblas/paint-by-example_comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-12T06:52:52.008109Z", + "description": "A package of utility nodes. Folder File Counter, Incrementor Plus, Remember Me (Environment Info)", + "downloads": 88, + "github_stars": 0, + "icon": "", + "id": "AllergicPack", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-14T00:53:00.468435Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "548942a4-39aa-4fb5-999e-d862a797f0b9", + "node_id": "AllergicPack", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Allergic Pack", + "publisher": { + "createdAt": "2025-05-16T18:15:09.500374Z", + "description": "", + "id": "usrname0", + "logo": "", + "members": [], + "name": "usrname0", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/usrname0/ComfyUI-AllergicPack", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-02T02:33:34.732165Z", + "description": "ComfyUI_fnodes is a collection of custom nodes designed for ComfyUI. These nodes provide additional functionality that can enhance your ComfyUI workflows.\nFile manipulation tools, Image resizing tools, IPAdapter tools, Image processing tools, Mask tools, Face analysis tools, Sampler tools, Miscellaneous tools", + "downloads": 2881, + "github_stars": 0, + "icon": "", + "id": "comfyui_fnodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-02T02:33:38.519991Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "21e97d0b-ea1d-4ed2-890f-c6c512e2e5c7", + "node_id": "comfyui_fnodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_fnodes", + "publisher": { + "createdAt": "2024-10-02T02:25:01.669042Z", + "description": "", + "id": "syaofox", + "logo": "", + "members": [], + "name": "syaofox", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/syaofox/ComfyUI_fnodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-30T15:54:15.270272Z", + "description": "Comfy UI node to prompt build for https://huggingface.co/cagliostrolab/animagine-xl-4.0 model ", + "downloads": 1232, + "github_stars": 10, + "icon": "https://raw.githubusercontent.com/gmorks/ComfyUI-Animagine-Prompt/refs/heads/main/media/icon-01.svg", + "id": "animagine-prompt", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-20T03:42:23.977592Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5de2c57c-1659-4e7d-b194-9c463f213ed6", + "node_id": "animagine-prompt", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.6.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Animagine-Prompt", + "publisher": { + "createdAt": "2025-01-28T06:31:16.789565Z", + "description": "", + "id": "gmorks", + "logo": "", + "members": [], + "name": "Gmorks", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gmorks/ComfyUI-Animagine-Prompt", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-23T03:06:12.856512Z", + "description": "This is a simple wrap implementation StreamDiffusion", + "downloads": 2959, + "github_stars": 149, + "icon": "", + "id": "comfyui_streamdiffusion", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-23T03:06:13.128906Z", + "dependencies": [ + "diffusers==0.25.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "076532e3-7b18-4e1f-8071-94bee4541db7", + "node_id": "comfyui_streamdiffusion", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_StreamDiffusion", + "publisher": { + "createdAt": "2024-05-23T02:42:37.410277Z", + "description": "", + "id": "jesenzhang", + "logo": "", + "members": [], + "name": "jesen", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jesenzhang/ComfyUI_StreamDiffusion", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-10T00:00:37.000928Z", + "description": "Transcribe videos or audio with Whisper, either locally or via OpenAI's API", + "downloads": 1105, + "github_stars": 1, + "icon": "", + "id": "saltai_whisper_transcribe", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-10T00:00:40.798337Z", + "dependencies": [ + "openai>=1.13.3", + "pydub>=0.25.1", + "moviepy>=1.0.3", + "transformers>=4.39.2" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f2481fc9-4292-4ad7-86eb-473de98f64e2", + "node_id": "saltai_whisper_transcribe", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "saltai_whisper_transcribe", + "publisher": { + "createdAt": "2024-06-25T22:19:59.372874Z", + "description": "", + "id": "saltai", + "logo": "", + "members": [], + "name": "Salt AI", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/haohaocreates/PR-SaltAI_Whisper_Transcriber-e087b361", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-05T00:16:11.66401Z", + "description": "Seed-VC: Very quickly convert `speech` or `singing` into another person's voice, without changing the content rhythm", + "downloads": 471, + "github_stars": 30, + "icon": "", + "id": "seed-vc-mw", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-05T03:24:08.37777Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4a3bd21f-e33d-4fa3-a1ac-8a58e7587ffc", + "node_id": "seed-vc-mw", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Seed-VC", + "publisher": { + "createdAt": "2025-01-06T14:10:29.10336Z", + "description": "", + "id": "mw", + "logo": "", + "members": [], + "name": "MW", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/billwuhao/ComfyUI_Seed-VC", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-06T15:41:05.292672Z", + "description": "", + "downloads": 3442, + "github_stars": 1, + "icon": "", + "id": "ComfyUI_KurtHokke-Nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-27T19:04:04.775581Z", + "dependencies": [ + "black" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1c11ceb8-0496-4c0b-8b6b-9579008e693e", + "node_id": "ComfyUI_KurtHokke-Nodes", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_KurtHokke-Nodes", + "publisher": { + "createdAt": "2025-03-05T18:35:56.006407Z", + "description": "", + "id": "kurthokke", + "logo": "", + "members": [], + "name": "KurtHokke", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/KurtHokke/ComfyUI_KurtHokke-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-24T10:09:27.328068Z", + "description": "This is a request node tool designed for making HTTP requests (GET/POST) to APIs and viewing the responses. It is useful for API testing and development.", + "downloads": 1062, + "github_stars": 90, + "icon": "", + "id": "ComfyUI-RequestNodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-19T18:59:56.311638Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "65916352-e5bf-4d88-83a7-11be8a624555", + "node_id": "ComfyUI-RequestNodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-RequestNodes", + "publisher": { + "createdAt": "2025-03-24T07:23:55.672172Z", + "description": "", + "id": "felixszeto", + "logo": "", + "members": [], + "name": "Felix", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/felixszeto/ComfyUI-RequestNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-24T03:31:09.523268Z", + "description": "Node to enable seamless multiuser workflow collaboration", + "downloads": 1751, + "github_stars": 86, + "icon": "https://raw.githubusercontent.com/daxcay/ComfyUI-Nexus/master/web/assets/img/logo.png", + "id": "comfyui-nexus", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-24T03:41:39.699255Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4893c14b-12d8-44c5-bfa1-15cd63011b92", + "node_id": "comfyui-nexus", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Nexus", + "publisher": { + "createdAt": "2024-05-23T03:32:31.512265Z", + "description": "", + "id": "daxcay", + "logo": "", + "members": [], + "name": "Daxton Caylor", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/daxcay/ComfyUI-Nexus", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-31T14:02:45.812557Z", + "description": "Run EbSynth, Fast Example-based Image Synthesis and Style Transfer, in ComfyUI.", + "downloads": 1999, + "github_stars": 92, + "icon": "", + "id": "comfyui-ebsynth", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-31T14:02:47.26143Z", + "dependencies": [ + "numpy", + "opencv-python", + "torch", + "torchvision", + "phycv", + "scipy", + "Pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7aeb2950-0ec7-4e4d-beca-f41e8dcc5199", + "node_id": "comfyui-ebsynth", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-EbSynth", + "publisher": { + "createdAt": "2024-07-01T09:04:25.846954Z", + "description": "", + "id": "fuoumarinas", + "logo": "", + "members": [], + "name": "FuouM", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/FuouM/ComfyUI-EbSynth", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-05T04:21:59.724063Z", + "description": "For loading and running Pixtral, Llama 3.2 Vision, and Molmo models. Put models in the models/LLM folder.", + "downloads": 4019, + "github_stars": 75, + "icon": "", + "id": "comfyui-pixtralllamamolmovision", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-31T09:01:47.814975Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "7f68be40-e161-4dce-ae79-aa73066bb419", + "node_id": "comfyui-pixtralllamamolmovision", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "3.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-PixtralLlamaMolmoVision", + "publisher": { + "createdAt": "2024-09-05T09:21:59.279717Z", + "description": "", + "id": "seanscripts", + "logo": "", + "members": [], + "name": "SeanScripts", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SeanScripts/ComfyUI-PixtralLlamaMolmoVision", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-31T08:22:14.515668Z", + "description": "This is a ComfyUI node that rotates an image by specifying an angle or selects one image from multiple images.", + "downloads": 404, + "github_stars": 0, + "icon": "", + "id": "comfyui_my_img_util", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-04T15:51:45.618998Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a78df480-9fb9-48b5-a76b-ff7370b52455", + "node_id": "comfyui_my_img_util", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_my_img_util", + "publisher": { + "createdAt": "2024-05-23T02:14:53.032875Z", + "description": "", + "id": "sugarknight", + "logo": "", + "members": [], + "name": "Sugar Knight", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sugarkwork/comfyui_my_img_util", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-16T17:30:35.212779Z", + "description": "This is the initial build of a comfyui minimap.\nVery simple so far. It makes a copy of the workflow graph, simplified and minified, in the bottom left hand corner. It puts a red border where your viewport is. Left click on the minimap and it will move your viewport to that location.", + "downloads": 2322, + "github_stars": 97, + "icon": "", + "id": "comfyui-minimap", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-16T17:30:39.058565Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "6778c36b-4922-4429-a108-aa9186e46551", + "node_id": "comfyui-minimap", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfyui-Minimap", + "publisher": { + "createdAt": "2024-08-16T17:07:49.270418Z", + "description": "", + "id": "oliver", + "logo": "", + "members": [], + "name": "Oliver", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/OliverCrosby/Comfyui-Minimap", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-12T01:58:33.616811Z", + "description": "", + "downloads": 1929, + "github_stars": 97, + "icon": "", + "id": "comfyui_stable_makeup", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-12T01:58:35.342351Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "f15e7cbc-5761-4878-8522-ea2fe6d41433", + "node_id": "comfyui_stable_makeup", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_Stable_Makeup", + "publisher": { + "createdAt": "2024-06-24T08:32:00.788126Z", + "description": "", + "id": "smthemx", + "logo": "", + "members": [], + "name": "smthemx", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_Stable_Makeup", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-30T11:01:04.990768Z", + "description": "ComfyUI Custom Node for Step1X-Edit.", + "downloads": 956, + "github_stars": 76, + "icon": "", + "id": "ComfyUI-Step1X-Edit", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-30T11:01:05.530495Z", + "dependencies": [ + "torch>=2.3.1", + "liger_kernel==0.5.4", + "einops==0.8.1", + "transformers==4.49.0", + "qwen_vl_utils==0.0.10", + "safetensors==0.4.5", + "pillow==11.1.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b5e1261f-b9fc-4b05-b526-a7bebed14302", + "node_id": "ComfyUI-Step1X-Edit", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Step1X-Edit", + "publisher": { + "createdAt": "2025-04-30T10:48:40.590028Z", + "description": "", + "id": "quank123wip", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/quank123wip/ComfyUI-Step1X-Edit", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-30T14:30:13.752037Z", + "description": "ComfyUI node for fast neural style transfer. This is a simple conversion based on this: [a/https://github.com/rrmina/fast-neural-style-pytorch](https://github.com/rrmina/fast-neural-style-pytorch)", + "downloads": 2543, + "github_stars": 71, + "icon": "", + "id": "comfyui-fast-style-transfer", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-13T13:44:57.319456Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "da860b6b-a634-4b6a-ba63-0687fee4a110", + "node_id": "comfyui-fast-style-transfer", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI-Fast-Style-Transfer", + "publisher": { + "createdAt": "2024-06-29T16:56:52.077204Z", + "description": "", + "id": "zeroxoxo", + "logo": "", + "members": [], + "name": "zeroxoxo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zeroxoxo/ComfyUI-Fast-Style-Transfer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-05T11:54:49.06662Z", + "description": "Neural Network Toolkit (NNT) for ComfyUI is an extensive set of custom ComfyUI nodes for designing, training, and fine-tuning neural networks. This toolkit allows defining models, layers, training workflows, transformers, and tensor operations in a visual manner using nodes.", + "downloads": 2043, + "github_stars": 69, + "icon": "", + "id": "nnt", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-08T17:31:37.948797Z", + "dependencies": [ + "# Core dependencies", + "torch>=2.0.0", + "numpy>=1.21.0", + "pandas>=1.3.0", + "matplotlib>=3.4.0", + "scikit-learn>=1.0.0", + "# Deep Learning and Model Tools", + "transformers>=4.30.0", + "datasets>=2.12.0", + "onnx>=1.14.0", + "safetensors>=0.3.1", + "torchvision>=0.15.0", + "# Time Series Analysis", + "statsmodels>=0.13.0", + "scipy>=1.7.0", + "# Visualization", + "seaborn>=0.11.0", + "graphviz>=0.20.0", + "torchview>=0.2.0", + "# Audio Processing (optional)", + "librosa>=0.10.0", + "# Image Processing", + "Pillow>=9.0.0", + "# Machine Learning Interpretability", + "shap>=0.41.0", + "# Model saving and loading", + "joblib>=1.1.0", + "h5py>=3.7.0", + "# HuggingFace Hub", + "huggingface-hub>=0.16.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6dc67cd5-4811-47d0-8862-5953d01de00a", + "node_id": "nnt", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Neural Network Toolkit NNT ", + "publisher": { + "createdAt": "2025-01-05T11:41:03.267419Z", + "description": "", + "id": "inventorado", + "logo": "", + "members": [], + "name": "Inventorado", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/inventorado/ComfyUI_NNT", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-12T09:19:03.287239Z", + "description": "A ComfyUI custom node that loads checkpoints and allows applying up to three LoRAs with adjustable strengths.", + "downloads": 732, + "github_stars": 0, + "icon": "", + "id": "comfyui-checkpoint-loader-with-loras", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-12T09:19:03.667844Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5add8465-7627-48db-ad91-9903f747358f", + "node_id": "comfyui-checkpoint-loader-with-loras", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Loader-With-LoRAs-All-in-One", + "publisher": { + "createdAt": "2025-04-12T09:05:41.547759Z", + "description": "", + "id": "supersheep", + "logo": "", + "members": [], + "name": "Super Sheep", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Izunata-kagino/ComfyUI-Checkpoint-Loader-With-LoRAs", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-14T21:28:48.661339Z", + "description": "Implementation of X-Portrait nodes for ComfyUI, animate portraits with an input video and a reference image.", + "downloads": 2246, + "github_stars": 86, + "icon": "https://i.imgur.com/aiqQI7U.png", + "id": "comfyui-x-portrait-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-15T05:46:23.647039Z", + "dependencies": [ + "numpy", + "einops", + "opencv-python", + "matplotlib", + "imageio", + "omegaconf", + "scikit-image", + "face-alignment", + "torchvision", + "diffusers", + "pytorch-lightning", + "xformers", + "sageattention", + "transformers", + "open-clip-torch", + "imageio[ffmpeg]", + "triton" + ], + "deprecated": false, + "downloadUrl": "", + "id": "583188f4-f883-4a51-9557-d735821e465a", + "node_id": "comfyui-x-portrait-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-X-Portrait-Nodes", + "publisher": { + "createdAt": "2024-07-31T23:17:26.625774Z", + "description": "", + "id": "akatz", + "logo": "", + "members": [], + "name": "Akatz", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/akatz-ai/ComfyUI-X-Portrait-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-27T18:25:08.331012Z", + "description": "Nodes: MultiLora Loader, Lora Text Extractor. Provides a node for assisting in loading loras through text.", + "downloads": 3557, + "github_stars": 31, + "icon": "", + "id": "comfyui-coziness", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-27T18:25:08.613433Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "d1df679e-1b6f-4dc5-a100-1834c6c0c802", + "node_id": "comfyui-coziness", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "MIT", + "name": "ComfyUI-Coziness", + "publisher": { + "createdAt": "2024-05-27T17:55:11.609006Z", + "description": "", + "id": "skfoo", + "logo": "", + "members": [], + "name": "skfoo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/skfoo/ComfyUI-Coziness", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-21T21:47:07.524263Z", + "description": "ComfyUI node of [a/Kohaku's DanTagGen Demo](https://huggingface.co/KBlueLeaf/DanTagGen?not-for-all-audiences=true).", + "downloads": 2973, + "github_stars": 65, + "icon": "", + "id": "comfyui_dantaggen", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-21T21:47:07.838434Z", + "dependencies": [ + "torch", + "transformers", + "llama-cpp-python", + "requests", + "sentencepiece" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5ae422ae-a124-44e5-b0a8-3677a67dc4ba", + "node_id": "comfyui_dantaggen", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_DanTagGen", + "publisher": { + "createdAt": "2024-05-16T22:06:01.581472Z", + "description": "", + "id": "huchenlei", + "logo": "", + "members": [], + "name": "huchenlei", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/huchenlei/ComfyUI_DanTagGen", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-09T01:48:38.749325Z", + "description": "you can using anydoor ,change clothes,object", + "downloads": 1786, + "github_stars": 64, + "icon": "", + "id": "comfyui_anydoor", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-09T01:48:40.44837Z", + "dependencies": [ + "modelscope", + "huggingface_hub" + ], + "deprecated": false, + "downloadUrl": "", + "id": "8ea2c407-574b-4759-83e4-cfd5196abf76", + "node_id": "comfyui_anydoor", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_AnyDoor", + "publisher": { + "createdAt": "2024-06-24T08:32:00.788126Z", + "description": "", + "id": "smthemx", + "logo": "", + "members": [], + "name": "smthemx", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_AnyDoor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-12T19:24:37.891363Z", + "description": "ComyUI wrapper for RaymondLZhou/deepDeband image and video debanding", + "downloads": 897, + "github_stars": 3, + "icon": "", + "id": "comfyui_deepdeband", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-12T19:24:41.692726Z", + "dependencies": [ + "torch>=1.4.0", + "torchvision>=0.5.0", + "dominate>=2.4.0", + "visdom>=0.1.8.8" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1d4a0132-3395-467c-bfb3-050b1e3e0002", + "node_id": "comfyui_deepdeband", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.1" + }, + "license": "{\"file\": \"LICENSE.md\"}", + "name": "ComfyUI_deepDeband", + "publisher": { + "createdAt": "2024-11-12T19:18:12.797411Z", + "description": "", + "id": "anze", + "logo": "", + "members": [], + "name": "deepDeband", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Anze-/ComfyUI_deepDeband", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-02T14:24:53.911108Z", + "description": "Nodes related to deepseek-r1", + "downloads": 2763, + "github_stars": 62, + "icon": "", + "id": "comfyui-deepseek-r1", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-02T14:24:54.300173Z", + "dependencies": [ + "transformers>=4.37.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "8cfa9094-8c8e-423e-8a49-3f8c64041640", + "node_id": "comfyui-deepseek-r1", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-DeepSeek-R1", + "publisher": { + "createdAt": "2025-01-18T03:00:25.046856Z", + "description": "", + "id": "zwai", + "logo": "", + "members": [], + "name": "zwai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ziwang-com/comfyui-deepseek-r1", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-11T02:28:47.999291Z", + "description": "Your image is almost there!", + "downloads": 3630, + "github_stars": 447, + "icon": "", + "id": "comfyui_omost", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-26T21:17:13.429491Z", + "dependencies": [ + "transformers>=4.41.1", + "bitsandbytes>=0.43.1", + "protobuf>=3.20", + "torch", + "openai", + "requests" + ], + "deprecated": false, + "downloadUrl": "", + "id": "99aaea30-bb69-41e8-a4c1-8322c14003a4", + "node_id": "comfyui_omost", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_omost", + "publisher": { + "createdAt": "2024-05-16T22:06:01.581472Z", + "description": "", + "id": "huchenlei", + "logo": "", + "members": [], + "name": "huchenlei", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/huchenlei/ComfyUI_omost", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-03T06:34:18.523138Z", + "description": "you can make story in comfyUI using MS-diffusion", + "downloads": 1988, + "github_stars": 58, + "icon": "", + "id": "comfyui_ms_diffusion", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-03T06:34:20.279159Z", + "dependencies": [ + "tensorboard", + "scipy", + "opencv-python", + "PyYAML" + ], + "deprecated": false, + "downloadUrl": "", + "id": "514f025e-8a31-4899-92bb-8c9afd1db731", + "node_id": "comfyui_ms_diffusion", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_MS_Diffusion", + "publisher": { + "createdAt": "2024-06-24T08:32:00.788126Z", + "description": "", + "id": "smthemx", + "logo": "", + "members": [], + "name": "smthemx", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_MS_Diffusion", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-29T17:08:43.733285Z", + "description": "Do you want to easily swap width and heigth? Than this is for you. Easily swap between portrait to Landscape. Is you images model trained on 1MP pictures, then you can easily scale your input down. For best pictures width and heigth should be a factor of 32, say no more...", + "downloads": 373, + "github_stars": 0, + "icon": "https://github.com/MijnSpam/ComfyUI_SwapAndScale/blob/main/images/comfyui_swap_and_scale.png?raw=true", + "id": "Comfy_Swap_and_Scale", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-31T09:11:06.175821Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4f49d0af-60f6-43dd-bac4-d20f8d2960da", + "node_id": "Comfy_Swap_and_Scale", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfy swap and scale", + "publisher": { + "createdAt": "2025-05-11T14:10:55.763353Z", + "description": "", + "id": "kbrambo", + "logo": "", + "members": [], + "name": "KB comfy", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MijnSpam/ComfyUI_SwapAndScale", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-19T19:12:50.84941Z", + "description": "This custom node allows you to use the LumaAI API.", + "downloads": 3053, + "github_stars": 200, + "icon": "https://cdn-luma.com/public/lumalabs.ai/images/logo.png", + "id": "comfyui-lumaai-api", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-25T01:30:02.258989Z", + "dependencies": [ + "lumaai==1.7.0", + "requests", + "numpy", + "Pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d1e45fca-7f5d-4389-b116-156e533a99a2", + "node_id": "comfyui-lumaai-api", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-LumaAI-API", + "publisher": { + "createdAt": "2024-09-17T22:03:23.683547Z", + "description": "", + "id": "lumaai", + "logo": "", + "members": [], + "name": "Luma AI", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lumalabs/ComfyUI-LumaAI-API", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-17T21:13:01.818554Z", + "description": "Batched Runge-Kutta Samplers for ComfyUI", + "downloads": 2662, + "github_stars": 60, + "icon": "", + "id": "comfyui-rk-sampler", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-17T21:13:03.611802Z", + "dependencies": [ + "torchode" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1a74aceb-3cc3-485b-a5dc-93769b757cc8", + "node_id": "comfyui-rk-sampler", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-RK-Sampler", + "publisher": { + "createdAt": "2024-08-17T20:57:36.242359Z", + "description": "", + "id": "wootwootwootwoot", + "logo": "", + "members": [], + "name": "memmaptensor", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wootwootwootwoot/ComfyUI-RK-Sampler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-01T15:06:52.192341Z", + "description": "A custom node for ComfyUI designed to facilitate the real-time transmission of rendered images, videos, or 3D models to TouchDesigner.", + "downloads": 1714, + "github_stars": 72, + "icon": "", + "id": "ComfyUI-TD", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-09T09:31:47.378183Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "daa68098-f24d-47cb-907d-7d306944defb", + "node_id": "ComfyUI-TD", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-TD", + "publisher": { + "createdAt": "2025-03-01T06:21:21.528744Z", + "description": "", + "id": "jisenhua", + "logo": "", + "members": [], + "name": "JiSenHua", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/JiSenHua/ComfyUI-TD", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-26T03:12:51.601262Z", + "description": "implementation of [a/AniPortrait](https://github.com/Zejun-Yang/AniPortrait) generating of videos, includes self driven, face reenacment and audio driven with a reference image", + "downloads": 1706, + "github_stars": 55, + "icon": "", + "id": "comfyui_aniportrait", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-26T03:12:51.947987Z", + "dependencies": [ + "mediapipe==0.10.11", + "ffmpeg-python==0.2.0", + "av==11.0.0", + "librosa==0.9.2", + "diffusers==0.26.2" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c2c73ebb-a12f-405e-a6d2-0eb84fb4c3db", + "node_id": "comfyui_aniportrait", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_Aniportrait", + "publisher": { + "createdAt": "2024-06-20T11:30:28.094387Z", + "description": "", + "id": "frankchieng", + "logo": "", + "members": [], + "name": "Frank Chieng", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/frankchieng/ComfyUI_Aniportrait", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-12T15:18:08.306861Z", + "description": "Moondream's gaze detection feature wrapper node.", + "downloads": 1738, + "github_stars": 55, + "icon": "", + "id": "comfyui-moondream-gaze-detection", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-14T19:48:10.188764Z", + "dependencies": [ + "matplotlib==3.10.0", + "pyvips==2.2.3", + "accelerate>=0.32.1", + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "ca9620ed-94ea-44b1-babd-4d6336038c56", + "node_id": "comfyui-moondream-gaze-detection", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Moondream-Gaze-Detection", + "publisher": { + "createdAt": "2024-08-24T13:04:03.484731Z", + "description": "", + "id": "jhj0517", + "logo": "", + "members": [], + "name": "jhj0517", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jhj0517/ComfyUI-Moondream-Gaze-Detection.git", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-06T18:21:55.931823Z", + "description": "A quick and easy ComfyUI custom node for setting SDXL-friendly aspect ratios.", + "downloads": 2285, + "github_stars": 23, + "icon": "", + "id": "sdxlcustomaspectratio", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-06T18:22:11.858628Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "8af22d86-f238-4f10-b91c-883dd5d6e0d0", + "node_id": "sdxlcustomaspectratio", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "SDXLCustomAspectRatio", + "publisher": { + "createdAt": "2024-08-06T15:21:25.328213Z", + "description": "", + "id": "throttlekitty", + "logo": "", + "members": [], + "name": "throttlekitty", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/throttlekitty/SDXLCustomAspectRatio", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-13T14:01:05.043334Z", + "description": "Data research, preparation, and manipulation nodes for model trainers and artists.", + "downloads": 2450, + "github_stars": 52, + "icon": "https://raw.githubusercontent.com/daxcay/ComfyUI-DataSet/master/web/assets/img/logo.jpg", + "id": "comfyui-dataset", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-24T09:44:11.677457Z", + "dependencies": [ + "matplotlib", + "wordcloud", + "networkx", + "pandas" + ], + "deprecated": false, + "downloadUrl": "", + "id": "379b8d43-13fd-4ea6-b4ff-d95b74396d1b", + "node_id": "comfyui-dataset", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-DataSet", + "publisher": { + "createdAt": "2024-05-23T03:32:31.512265Z", + "description": "", + "id": "daxcay", + "logo": "", + "members": [], + "name": "Daxton Caylor", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/daxcay/ComfyUI-DataSet", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-28T02:55:55.382808Z", + "description": "Custom nodes for using fal API. Video generation with Kling, Runway, Luma. Image generation with Flux. LLMs and VLMs OpenAI, Claude, Llama and Gemini.", + "downloads": 1595, + "github_stars": 138, + "icon": "", + "id": "fal-api", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-20T10:39:04.496839Z", + "dependencies": [ + "fal-client", + "torch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "48f58452-fcd1-495d-81c5-30f90ea0d9f5", + "node_id": "fal-api", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-fal-API", + "publisher": { + "createdAt": "2024-05-20T14:41:34.085962Z", + "description": "", + "id": "gokayfem", + "logo": "", + "members": [], + "name": "gokayfem", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gokayfem/ComfyUI-fal-API", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-27T10:33:17.689428Z", + "description": "ComfyUI Custom Nodes for 'AniDoc: Animation Creation Made Easier'. This approach automates line art video colorization using a novel model that aligns color information from references, ensures temporal consistency, and reduces manual effort in animation production.", + "downloads": 2196, + "github_stars": 53, + "icon": "", + "id": "comfyui-anidoc", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-25T13:15:34.688974Z", + "dependencies": [ + "diffusers", + "huggingface_hub", + "Pillow", + "accelerate", + "omegaconf", + "opencv-python", + "einops", + "kornia", + "git+https://github.com/XPixelGroup/BasicSR.git" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a9c160c5-c829-40a9-b58b-afc5361f1c35", + "node_id": "comfyui-anidoc", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-AniDoc", + "publisher": { + "createdAt": "2024-12-21T02:59:26.094039Z", + "description": "", + "id": "lucipherdev", + "logo": "", + "members": [], + "name": "Sumeth Sathnindu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LucipherDev/ComfyUI-AniDoc", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-24T11:43:11.730082Z", + "description": "A HiDiffusion node for ComfyUI.", + "downloads": 1867, + "github_stars": 52, + "icon": "", + "id": "comfyui_hidiffusion_pro", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-24T11:43:12.026892Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "7f1a1d75-d020-4381-a77e-4aedfb358819", + "node_id": "comfyui_hidiffusion_pro", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_HiDiffusion_Pro", + "publisher": { + "createdAt": "2024-06-24T08:22:10.652957Z", + "description": "", + "id": "smthem", + "logo": "", + "members": [], + "name": "smthem", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_HiDiffusion_Pro", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-20T15:14:33.275085Z", + "description": "Visualize your textures inside ComfyUI", + "downloads": 2924, + "github_stars": 50, + "icon": "", + "id": "comfyui-texture-simple", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-31T16:14:46.687669Z", + "dependencies": [ + "Pillow>=10.1.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "fde4b50b-6b45-4957-b345-5091a9194c26", + "node_id": "comfyui-texture-simple", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Texture-Simple", + "publisher": { + "createdAt": "2024-05-20T14:41:34.085962Z", + "description": "", + "id": "gokayfem", + "logo": "", + "members": [], + "name": "gokayfem", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gokayfem/ComfyUI-Texture-Simple", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-10T02:51:06.020282Z", + "description": "Manipulate the details of generations", + "downloads": 3234, + "github_stars": 49, + "icon": "", + "id": "comfyui-resharpen", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-16T01:45:32.298772Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "732ff5dc-eac5-470d-b820-f8bcd8f635d9", + "node_id": "comfyui-resharpen", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.0" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ReSharpen", + "publisher": { + "createdAt": "2024-07-09T07:30:07.769811Z", + "description": "", + "id": "haoming02", + "logo": "", + "members": [], + "name": "Haoming02", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Haoming02/comfyui-resharpen", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-22T21:03:36.01826Z", + "description": "Allows to sample without generating any uncond with Stable Diffusion!", + "downloads": 2253, + "github_stars": 49, + "icon": "", + "id": "uncond-zero-for-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-22T21:03:36.308636Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "9d5edb30-ce32-44fa-8e6a-3abf71a410aa", + "node_id": "uncond-zero-for-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "Uncond-Zero-for-ComfyUI", + "publisher": { + "createdAt": "2024-06-22T09:09:31.04495Z", + "description": "", + "id": "extraltodeus", + "logo": "", + "members": [], + "name": "Extraltodeus", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Extraltodeus/Uncond-Zero-for-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-05T13:55:30.328808Z", + "description": "WarpFusion workflow wrapper for ComfyUI", + "downloads": 2088, + "github_stars": 47, + "icon": "", + "id": "comfywarp", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-01T22:18:27.41778Z", + "dependencies": [ + "opencv-python", + "scikit-image" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6d0816be-f7ed-45e8-be89-0534b6ad4889", + "node_id": "comfywarp", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.7.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyWarp", + "publisher": { + "createdAt": "2024-10-05T13:36:01.971797Z", + "description": "", + "id": "sxela", + "logo": "", + "members": [], + "name": "Alex Spirin", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Sxela/ComfyWarp", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-15T18:59:15.162034Z", + "description": "To use stepfun's library, you need an official api that supports multimodal inputs such as video and pictures https://platform.stepfun.com/request-restriction", + "downloads": 921, + "github_stars": 0, + "icon": "", + "id": "comfyui-scstepfun", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-05T14:36:27.124433Z", + "dependencies": [ + "openai" + ], + "deprecated": false, + "downloadUrl": "", + "id": "fc134283-7e6a-48ff-bbdc-2933c88edea0", + "node_id": "comfyui-scstepfun", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-SCStepFun", + "publisher": { + "createdAt": "2024-09-19T05:47:44.255279Z", + "description": "", + "id": "shichen", + "logo": "", + "members": [], + "name": "shichen", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chenbaiyujason/ComfyUI-StepFun", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-29T12:51:55.91471Z", + "description": "This is a custom node for ComfyUI.\nIt reduces colors based on a specified number and allows for adjustments to hue, saturation, and brightness.\nFeatures:Each parameter can be set to random, You can toggle masking (not changing colors) using color numbers, Mask inversion can also be toggled on or off.", + "downloads": 2319, + "github_stars": 50, + "icon": "", + "id": "colorshiftcolor", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-01T12:13:56.766875Z", + "dependencies": [ + "torch", + "numpy", + "scikit-learn", + "Pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "da01fe25-4c1e-4b2c-a7cc-dc406a254eea", + "node_id": "colorshiftcolor", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ColorshiftColor", + "publisher": { + "createdAt": "2025-01-29T12:34:46.60351Z", + "description": "", + "id": "hakoniwa", + "logo": "", + "members": [], + "name": "hakoniwa", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/852wa/ComfyUI-ColorshiftColor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-09T09:43:03.34681Z", + "description": "Comfy UI in WhatsApp", + "downloads": 1563, + "github_stars": 48, + "icon": "https://raw.githubusercontent.com/daxcay/ComfyUI-WA/main/web/assets/img/logo.gif", + "id": "comfyui-wa", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-09T09:43:07.126158Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4fe806b1-73ce-4e02-8d69-04004e58a2e1", + "node_id": "comfyui-wa", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-WA", + "publisher": { + "createdAt": "2024-05-23T03:32:31.512265Z", + "description": "", + "id": "daxcay", + "logo": "", + "members": [], + "name": "Daxton Caylor", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/daxcay/ComfyUI-WA", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-22T16:15:14.222041Z", + "description": "ComfyUI-Manager provides features to install and manage custom nodes for ComfyUI, as well as various functionalities to assist with ComfyUI.", + "downloads": 12858, + "github_stars": 10844, + "icon": "", + "id": "comfyui-manager", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-16T08:05:09.428686Z", + "dependencies": [ + "GitPython", + "PyGithub", + "matrix-client==0.4.0", + "transformers", + "huggingface-hub>0.20", + "typer", + "rich", + "typing-extensions" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b15e8998-ce8c-4c66-8538-82ab865ab4a9", + "node_id": "comfyui-manager", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "3.0.1" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-Manager", + "publisher": { + "createdAt": "2024-05-22T15:42:00.969348Z", + "description": "", + "id": "drltdata", + "logo": "", + "members": [], + "name": "Dr.Lt.Data", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ltdrdata/ComfyUI-Manager", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-30T09:48:52.706329Z", + "description": "A [a/Matchering](https://github.com/sergree/matchering)-node for ComfyUI.\nNOTE: You take TWO audio files and feed them into Matchering", + "downloads": 1922, + "github_stars": 50, + "icon": "", + "id": "comfyui-matchering", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-30T09:48:56.491466Z", + "dependencies": [ + "numpy>=1.23.4", + "scipy>=1.9.2", + "soundfile>=0.11.0", + "resampy>=0.4.2", + "statsmodels>=0.13.2" + ], + "deprecated": false, + "downloadUrl": "", + "id": "bcc06789-8d7f-4906-943c-7175df9a172d", + "node_id": "comfyui-matchering", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Matchering", + "publisher": { + "createdAt": "2024-07-23T10:24:54.771788Z", + "description": "", + "id": "muziekmagie", + "logo": "", + "members": [], + "name": "MuziekMagie", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MuziekMagie/ComfyUI-Matchering", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-19T21:39:05.167463Z", + "description": "A ComfyUI extension to apply better nodes layout algorithm to ComfyUI workflow (mostly for visualization purpose)", + "downloads": 2571, + "github_stars": 47, + "icon": "", + "id": "comfyui-auto-nodes-layout", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-19T21:39:05.425694Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "2006d990-2721-4fea-9bcb-211d6bc7ed57", + "node_id": "comfyui-auto-nodes-layout", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-auto-nodes-layout", + "publisher": { + "createdAt": "2024-06-19T21:29:33.650067Z", + "description": "", + "id": "phineas-pta", + "logo": "", + "members": [], + "name": "Phan Tu\u1ea5n Anh", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/phineas-pta/comfyui-auto-nodes-layout", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-24T14:44:24.069225Z", + "description": "Multi-monitor image preview, Variable Assigment/Wireless Nodes, Prompt Tweaking, Command Palette, Pinned favourite nodes, Node navigation, Fuzzy search, Node time tracking, Organizing and Error management. For more info visit: [a/https://comfyui.ma.pe/](https://comfyui.ma.pe/)", + "downloads": 3898, + "github_stars": 179, + "icon": "", + "id": "comfyui-mape-helpers", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-24T16:23:37.537772Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4b199fd3-df32-45ad-b9a6-831cb4d65898", + "node_id": "comfyui-mape-helpers", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.5.1" + }, + "license": "LICENSE", + "name": "ComfyUI-mape-Helpers", + "publisher": { + "createdAt": "2024-05-27T04:13:50.302404Z", + "description": "", + "id": "mape", + "logo": "", + "members": [], + "name": "mape", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mape/ComfyUI-mape-Helpers", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-24T21:51:54.983334Z", + "description": "ComfyUI-ReduxFineTune is a custom node for ComfyUI that enables advanced style fine-tuning using the Flux Redux approach. It offers multiple unified fusion modes for precise and consistent control over style transfer, allowing users to fine-tune image styles with high flexibility and detail.", + "downloads": 3602, + "github_stars": 58, + "icon": "", + "id": "ComfyUI-ReduxFineTune", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-21T18:52:26.79994Z", + "dependencies": [ + "torch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "8b88d8c8-f1b2-4784-aa80-49709da4cbc3", + "node_id": "ComfyUI-ReduxFineTune", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ReduxFineTune", + "publisher": { + "createdAt": "2024-07-01T23:11:45.570672Z", + "description": "", + "id": "ailab", + "logo": "", + "members": [], + "name": "AILab", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/1038lab/ComfyUI-ReduxFineTune", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-21T14:18:04.643196Z", + "description": "Nodes for fine-tuning lora in ComfyUI, dependent on training tools such as kohya-ss/sd-scripts", + "downloads": 2828, + "github_stars": 59, + "icon": "", + "id": "comfyui-traintools-mz", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-21T14:18:04.920704Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "26827a87-1c3b-41ca-9b91-debe34c62db2", + "node_id": "comfyui-traintools-mz", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-TrainTools-MZ", + "publisher": { + "createdAt": "2024-05-23T18:12:56.765818Z", + "description": "", + "id": "wailovet", + "logo": "", + "members": [], + "name": "MinusZoneAI", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MinusZoneAI/ComfyUI-TrainTools-MZ", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-25T00:36:21.379273Z", + "description": "you can using parlertts in comfyUI ", + "downloads": 1867, + "github_stars": 44, + "icon": "", + "id": "comfyui_parlertts", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-25T00:36:21.662271Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "e08ff92c-c3e6-4c3d-b964-d107ba90083b", + "node_id": "comfyui_parlertts", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_ParlerTTS", + "publisher": { + "createdAt": "2024-06-24T08:32:00.788126Z", + "description": "", + "id": "smthemx", + "logo": "", + "members": [], + "name": "smthemx", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_ParlerTTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-09T23:07:31.352641Z", + "description": "Symbolic Music Generation, NotaGen node for ComfyUI.", + "downloads": 1140, + "github_stars": 49, + "icon": "", + "id": "notagen-mw", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-06T02:58:48.72855Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c16200af-1b8e-4f28-a1fd-15fb3dc0aaca", + "node_id": "notagen-mw", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.2.11" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_NotaGen", + "publisher": { + "createdAt": "2025-01-06T14:10:29.10336Z", + "description": "", + "id": "mw", + "logo": "", + "members": [], + "name": "MW", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/billwuhao/ComfyUI_NotaGen", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-06T06:58:18.070795Z", + "description": "Lightweight and Efficient, \ud83c\udfa7Ultra High-Quality Voice Cloning, Chinese and English.", + "downloads": 1305, + "github_stars": 107, + "icon": "", + "id": "megatts3-mw", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-06T18:06:25.964442Z", + "dependencies": [ + "setproctitle", + "attrdict", + "librosa", + "pydub", + "pyloudnorm", + "x-transformers", + "torchdiffeq", + "openai-whisper>=20240930" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c12d7e99-c968-4b02-ab8e-6e939e298994", + "node_id": "megatts3-mw", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "MW-ComfyUI_MegaTTS3", + "publisher": { + "createdAt": "2025-01-06T14:10:29.10336Z", + "description": "", + "id": "mw", + "logo": "", + "members": [], + "name": "MW", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/billwuhao/ComfyUI_MegaTTS3", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-26T08:43:39.589619Z", + "description": "Load your model with image previews, or directly download and import Civitai models via URL. This custom ComfyUI node supports Checkpoint, LoRA, and LoRA Stack models, offering features like bypass options.", + "downloads": 5949, + "github_stars": 45, + "icon": "", + "id": "comfyui-easycivitai-xtnodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-26T08:43:43.374035Z", + "dependencies": [ + "blake3", + "sanitize_filename", + "pydantic", + "dynaconf", + "codetiming" + ], + "deprecated": false, + "downloadUrl": "", + "id": "45168447-4e4a-4f6e-8427-9f23b6b4dae3", + "node_id": "comfyui-easycivitai-xtnodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.2.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-EasyCivitai-XTNodes", + "publisher": { + "createdAt": "2024-08-25T09:20:45.723482Z", + "description": "", + "id": "xter", + "logo": "", + "members": [], + "name": "XTer", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/X-T-E-R/ComfyUI-EasyCivitai-XTNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-30T14:19:22.76879Z", + "description": "The ComfyUI-fal-Connector is a tool designed to provide an integration between ComfyUI and fal. This extension allows users to execute their ComfyUI workflows directly on [a/fal.ai](https://fal.ai/). This enables users to leverage the computational power and resources provided by fal.ai for running their ComfyUI workflows.", + "downloads": 1811, + "github_stars": 43, + "icon": "", + "id": "comfyui-fal-connector", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-29T22:59:31.204704Z", + "dependencies": [ + "fal-client>=0.3.0", + "httpx", + "httpx-sse", + "fal" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5aef8bb8-59a3-46eb-866c-a0f8cfe38601", + "node_id": "comfyui-fal-connector", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-fal-Connector", + "publisher": { + "createdAt": "2024-06-30T14:13:48.933471Z", + "description": "", + "id": "badayvedat", + "logo": "", + "members": [], + "name": "Vedat Baday", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/badayvedat/ComfyUI-fal-Connector", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-22T13:10:06.518336Z", + "description": "Unofficial Simple And Rough Implementation Of [a/AnyText](https://github.com/tyxsspa/AnyText) and [a/Glyph-ByT5] (https://github.com/AIGText/Glyph-ByT5) and [a/JoyType](https://github.com/jdh-algo/JoyType)", + "downloads": 2810, + "github_stars": 88, + "icon": "", + "id": "anytext", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-10T07:52:37.70454Z", + "dependencies": [ + "# AnyText", + "pillow>=9.5.0", + "numpy", + "opencv-python", + "accelerate", + "huggingface_hub", + "pytorch_lightning", + "ujson", + "omegaconf", + "easydict", + "open_clip_torch", + "# Glypg-SDXL", + "diffusers", + "mmengine", + "peft", + "webcolors" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c14052ff-a5c1-486f-8112-687f8964918c", + "node_id": "anytext", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Anytext", + "publisher": { + "createdAt": "2025-01-22T12:54:07.986144Z", + "description": "", + "id": "zmwv823", + "logo": "", + "members": [], + "name": "Li", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zmwv823/ComfyUI_Anytext", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-30T03:23:43.142847Z", + "description": "Apply screentone to line drawings or colored illustrations with diffusion models.", + "downloads": 1828, + "github_stars": 41, + "icon": "", + "id": "sketch2manga", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-30T03:23:44.811553Z", + "dependencies": [ + "omegaconf", + "scikit-image", + "numpy", + "opencv-python", + "einops", + "scikit-learn", + "requests", + "Pillow", + "# Added by Francis", + "tqdm", + "pandas", + "# Adding for Web UI", + "gradio", + "# Adding for additional function", + "# requests" + ], + "deprecated": false, + "downloadUrl": "", + "id": "37bfbaec-638f-4905-b486-5c3ae8d02948", + "node_id": "sketch2manga", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "sketch2manga", + "publisher": { + "createdAt": "2024-06-30T02:58:02.15143Z", + "description": "", + "id": "ddmz", + "logo": "", + "members": [], + "name": "ddmz", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dmMaze/sketch2manga", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-04T08:00:35.932691Z", + "description": "This custom node integrates the [Step1X-Edit] image editing model into ComfyUI. It's a state-of-the-art image editing model that processes a reference image and user's editing instruction to generate a new image.", + "downloads": 773, + "github_stars": 48, + "icon": "", + "id": "ComfyUI_Step1X-Edit", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-06T02:01:59.059007Z", + "dependencies": [ + "torch>=2.3.1", + "liger_kernel>=0.5.4", + "einops>=0.8.1", + "transformers>=4.49.0", + "qwen_vl_utils>=0.0.10", + "safetensors>=0.4.5", + "pillow>=11.1.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1d667cb7-c521-41b9-a23f-7ee12ad142fa", + "node_id": "ComfyUI_Step1X-Edit", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Step1X-Edit", + "publisher": { + "createdAt": "2025-05-04T07:19:33.322369Z", + "description": "", + "id": "raykindle", + "logo": "", + "members": [], + "name": "\u5f20\u6587\u4fca", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/raykindle/ComfyUI_Step1X-Edit", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-02T22:07:30.879616Z", + "description": "A simple text randomizer for ComfyUI that can generate random and surprising results", + "downloads": 2271, + "github_stars": 0, + "icon": "", + "id": "comfyui-text-randomizer", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-02T22:07:31.269968Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "cce32560-da39-48b0-bffa-4e424d0c7ef1", + "node_id": "comfyui-text-randomizer", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-text-randomizer", + "publisher": { + "createdAt": "2024-09-25T15:58:12.781163Z", + "description": "", + "id": "nosiu", + "logo": "", + "members": [], + "name": "nosiu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nosiu/comfyui-text-randomizer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-08T06:05:08.455196Z", + "description": "This is an extension node for ComfyUI that allows you to load frames from a video in bulk and perform masking and sketching on each frame through a GUI.", + "downloads": 2457, + "github_stars": 44, + "icon": "docs/icon.png", + "id": "comfyui-seqimageloader", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-29T12:48:49.561646Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4b503a99-abea-44af-897c-5e0613dd6290", + "node_id": "comfyui-seqimageloader", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.8" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-SeqImageLoader", + "publisher": { + "createdAt": "2024-05-27T21:18:26.257636Z", + "description": "", + "id": "bruefire", + "logo": "", + "members": [], + "name": "bruefire", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bruefire/ComfyUI-SeqImageLoader", + "status": "", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-09T11:50:27.089411Z", + "description": "Custom nodes for ComfyUI using BRIA's API.", + "downloads": 2986, + "github_stars": 51, + "icon": "", + "id": "comfyui-bria-api", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-11T12:50:26.127862Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "cfcbecd6-7b4a-4029-82fe-1264d536e39a", + "node_id": "comfyui-bria-api", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-BRIA-API", + "publisher": { + "createdAt": "2024-10-09T11:46:49.583042Z", + "description": "", + "id": "briaai", + "logo": "", + "members": [], + "name": "BRIA-AI", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Bria-AI/ComfyUI-BRIA-API", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-23T07:31:15.092288Z", + "description": "Generating seamless 360 degree panoramic image through text or perspective image.", + "downloads": 2049, + "github_stars": 44, + "icon": "", + "id": "diffusion360_comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-23T07:31:15.372077Z", + "dependencies": [ + "torch", + "torchvision", + "torchaudio", + "diffusers==0.26.0", + "accelerate", + "xformers", + "triton", + "transformers", + "realesrgan==0.3.0", + "py360convert", + "numpy==1.23.5" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d84073d0-f11c-43fd-acda-faca9cc9cfc0", + "node_id": "diffusion360_comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "Diffusion360_ComfyUI", + "publisher": { + "createdAt": "2024-05-23T06:13:37.849777Z", + "description": "", + "id": "archerfmy", + "logo": "", + "members": [], + "name": "mengyang feng", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ArcherFMY/Diffusion360_ComfyUI", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-21T23:53:38.667871Z", + "description": "A beautiful theme extension for ComfyUI that adds a festive touch with dynamic backgrounds, snowfall effects, and animated node connections", + "downloads": 1612, + "github_stars": 41, + "icon": "", + "id": "comfyui-christmastheme", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-21T23:53:42.46386Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "fee65291-dc01-4f15-8c0d-9c3dff13ca16", + "node_id": "comfyui-christmastheme", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ChristmasTheme", + "publisher": { + "createdAt": "2024-12-21T21:30:01.317798Z", + "description": "", + "id": "aemotionstudio", + "logo": "", + "members": [], + "name": "AEmotionStudio", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AEmotionStudio/ComfyUI-ChristmasTheme", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-03T08:15:35.891689Z", + "description": "ComfyUI \u8096\u50cf\u5927\u5e08\u4e2d\u6587\u7248\uff0c\u8fd9\u662f\u4e00\u4e2a\u7528\u4e8e\u751f\u6210 prompt \u6587\u672c\u7684 node, \u65e0\u5176\u4ed6\u4f9d\u8d56\u3002\u5728\u539f\u7248\u57fa\u7840\u4e0a\u5b8c\u6210\u6c49\u5316\u5e76\u6dfb\u52a0\u4e86\u4e00\u4e2a ImageSaver \u7528\u4e8e\u4fdd\u5b58 prompt \u7b49\u5143\u4fe1\u606f\u5230 exif \u7684 node", + "downloads": 2116, + "github_stars": 3, + "icon": "", + "id": "comfyui-portrait-master-cn", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-05T23:06:14.669557Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c61f2181-5906-475d-a1b4-226bddd52e2d", + "node_id": "comfyui-portrait-master-cn", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "3.2.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfyui-Portrait-Master-cn \u8096\u50cf\u5927\u5e08\u4e2d\u6587\u7248", + "publisher": { + "createdAt": "2024-08-23T21:04:40.612239Z", + "description": "", + "id": "hacking4fun", + "logo": "", + "members": [], + "name": "Hacking4fun", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DropFan/comfyui-portrait-master-cn", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-27T05:21:46.00738Z", + "description": "Custom nodes for FLUX models, including a loader and specialized samplers for standard and inpaint generation.", + "downloads": 169, + "github_stars": 0, + "icon": "https://raw.githubusercontent.com/PeterMikhai/Doom_Flux_NodePack/master/assets/icon.png", + "id": "comfyui-doomflux-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-30T20:42:03.794559Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "230159ab-faf2-4811-b3f3-bfee33aea23a", + "node_id": "comfyui-doomflux-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.0" + }, + "license": "{\"text\": \"MIT\"}", + "name": "DoomFLUX Nodes", + "publisher": { + "createdAt": "2025-06-26T06:40:31.318852Z", + "description": "", + "id": "petermikhai", + "logo": "", + "members": [], + "name": "Peter Mikhailichenko's Nodes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/PeterMikhai/Doom_Flux_NodePack.git", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-23T15:33:25.033559Z", + "description": "Nodes:SaveImgAdv, CLIPTextEncodeWithStats, OpenPoseEditorAdv, SolidMaskAdv. Collection of tools supporting txt2img generation in ComfyUI and other tasks.", + "downloads": 3021, + "github_stars": 7, + "icon": "", + "id": "ultools-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-23T15:33:25.355576Z", + "dependencies": [ + "pandas", + "numpy", + "piexif", + "pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5f20d1d6-ef6c-49d8-902d-7671d609ca06", + "node_id": "ultools-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ultools-comfyui", + "publisher": { + "createdAt": "2024-06-20T13:16:17.442542Z", + "description": "", + "id": "uberlord", + "logo": "", + "members": [], + "name": "uberlord", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jkrauss82/ultools-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-22T21:08:24.924583Z", + "description": "A visually stunning ComfyUI extension that adds customizable animations to links and nodes, featuring 9 unique link animations, 4 node animation styles, and comprehensive customization options. No extra packages required.", + "downloads": 1209, + "github_stars": 38, + "icon": "", + "id": "comfyui-enhancedlinksandnodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-22T21:08:28.377806Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "428bb1b1-d97e-4329-a1c2-40ab438b3405", + "node_id": "comfyui-enhancedlinksandnodes", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-EnhancedLinksandNodes", + "publisher": { + "createdAt": "2024-12-21T21:30:01.317798Z", + "description": "", + "id": "aemotionstudio", + "logo": "", + "members": [], + "name": "AEmotionStudio", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AEmotionStudio/ComfyUI-EnhancedLinksandNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-17T11:29:27.270043Z", + "description": "ComfyUI-EdgeTTS is a powerful text-to-speech node for ComfyUI, leveraging Microsoft's Edge TTS capabilities. It enables seamless conversion of text into natural-sounding speech, supporting multiple languages and voices. Ideal for enhancing user interactions, this node is easy to integrate and customize, making it perfect for various applications.", + "downloads": 4047, + "github_stars": 49, + "icon": "", + "id": "comfyui-edgetts", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-20T17:38:40.986073Z", + "dependencies": [ + "edge-tts>=6.1.7", + "torchaudio", + "numpy", + "openai-whisper" + ], + "deprecated": false, + "downloadUrl": "", + "id": "061616a3-7cc3-40ff-bd4b-9f2afdfc1905", + "node_id": "comfyui-edgetts", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-EdgeTTS", + "publisher": { + "createdAt": "2024-07-01T23:11:45.570672Z", + "description": "", + "id": "ailab", + "logo": "", + "members": [], + "name": "AILab", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/1038lab/ComfyUI-EdgeTTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-13T17:39:25.171593Z", + "description": "An Unofficial ComfyUI custom node package that integrates [a/Diffusion Self-Distillation (DSD)](https://github.com/primecai/diffusion-self-distillation) for zero-shot customized image generation.\nDSD is a model for subject-preserving image generation that allows you to create images of a specific subject in novel contexts without per-instance tuning.", + "downloads": 1217, + "github_stars": 41, + "icon": "", + "id": "dsd", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-15T16:55:26.090675Z", + "dependencies": [ + "torch>=2.0.0", + "diffusers>=0.24.0", + "transformers>=4.36.0", + "sentencepiece>=0.1.99", + "accelerate>=0.27.0", + "google-genai>=0.1.0", + "Pillow>=9.5.0", + "protobuf>=4.25.0", + "peft>=0.7.0", + "hf_transfer" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d0ff2ba9-7167-4420-8fe0-224915c47353", + "node_id": "dsd", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-DSD", + "publisher": { + "createdAt": "2025-03-13T17:24:09.78694Z", + "description": "", + "id": "irreveloper", + "logo": "", + "members": [], + "name": "irreveloper", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/irreveloper/ComfyUI-DSD", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-09T09:02:27.318931Z", + "description": "A node that allows you to switch between execution paths", + "downloads": 2352, + "github_stars": 31, + "icon": "", + "id": "comfyui-floodgate", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-02T06:21:52.181496Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1ecab824-f181-467c-a6e0-d76f3695e371", + "node_id": "comfyui-floodgate", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "Floodgate", + "publisher": { + "createdAt": "2024-07-09T07:30:07.769811Z", + "description": "", + "id": "haoming02", + "logo": "", + "members": [], + "name": "Haoming02", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Haoming02/comfyui-floodgate", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-18T09:20:35.856481Z", + "description": "ComfyUI adaptation of https://github.com/G-U-N/Motion-I2V", + "downloads": 1725, + "github_stars": 38, + "icon": "", + "id": "comfyui-ig-motion-i2v", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-30T10:38:47.959187Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "f1a4cff2-f14e-493f-8f68-44652388473c", + "node_id": "comfyui-ig-motion-i2v", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.6.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-IG-Motion-I2V", + "publisher": { + "createdAt": "2024-09-17T09:53:04.490236Z", + "description": "", + "id": "iggy101", + "logo": "", + "members": [], + "name": "IG", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/IDGallagher/ComfyUI-IG-Motion-I2V", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-23T07:53:10.939145Z", + "description": "Nodes for using models from online providers. Flux, Auraflow, SoteDiffusion, etc.", + "downloads": 1785, + "github_stars": 37, + "icon": "", + "id": "comfyui-cloud-apis", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-01T06:17:46.550286Z", + "dependencies": [ + "fal-client", + "replicate", + "requests", + "numpy", + "pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "cea871e9-bfb9-4157-90fc-aa9896c4a585", + "node_id": "comfyui-cloud-apis", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Cloud-APIs", + "publisher": { + "createdAt": "2024-07-19T17:38:46.26651Z", + "description": "", + "id": "betadoggo", + "logo": "", + "members": [], + "name": "BetaDoggo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BetaDoggo/ComfyUI-Cloud-APIs", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-01T21:49:41.259553Z", + "description": "Detect human parts using the DeepLabV3+ ResNet50 model from Keras-io. You can extract hair, arms, legs, and other parts with ease and with small memory usage.", + "downloads": 2621, + "github_stars": 34, + "icon": "", + "id": "comfyui_human_parts", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-07T08:15:05.464207Z", + "dependencies": [ + "onnxruntime", + "numpy", + "Pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "cb7f1d31-65fb-4ac2-9095-4cf8460246eb", + "node_id": "comfyui_human_parts", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Human Parts Detector", + "publisher": { + "createdAt": "2024-09-13T05:02:19.220629Z", + "description": "", + "id": "metal3d", + "logo": "", + "members": [], + "name": "Metal3d", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/metal3d/ComfyUI_Human_Parts", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-21T19:11:03.495674Z", + "description": "Custom node for ComfyUI that integrates lllyasviel's IC-Light V2 model into your workflows using the fal.ai API.", + "downloads": 905, + "github_stars": 38, + "icon": "", + "id": "ComfyUI_IC-Light-v2_fal", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-21T19:11:03.872874Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "dcde7395-aee2-40ff-aa68-45528f736265", + "node_id": "ComfyUI_IC-Light-v2_fal", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "IC-Light V2 (fal.ai)", + "publisher": { + "createdAt": "2025-01-09T15:11:06.760903Z", + "description": "", + "id": "a-und-b", + "logo": "", + "members": [], + "name": "a-und-b", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/a-und-b/ComfyUI_IC-Light-v2_fal", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-23T09:45:05.944138Z", + "description": "This custom nodes enables Stable Projectorz to work with ComfyUI Directly.", + "downloads": 2041, + "github_stars": 36, + "icon": "", + "id": "comfyui-stableprojectorzbridge", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-01T11:47:22.024867Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4a5bf76c-2caf-4aaf-8507-046b071708b9", + "node_id": "comfyui-stableprojectorzbridge", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.5" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI-StableProjectorzBridge", + "publisher": { + "createdAt": "2024-06-23T09:01:14.54878Z", + "description": "", + "id": "tianlang0704", + "logo": "", + "members": [], + "name": "CMonk", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tianlang0704/ComfyUI-StableProjectorzBridge", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-29T22:13:03.260958Z", + "description": "ComfyUI custom nodes for MiniCPM", + "downloads": 1614, + "github_stars": 34, + "icon": "", + "id": "minicpm-o", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-29T22:13:03.659716Z", + "dependencies": [ + "librosa", + "accelerate>=0.26.0", + "vector-quantize-pytorch", + "vocos" + ], + "deprecated": false, + "downloadUrl": "", + "id": "3ca782ab-9857-4ea2-a2e1-32fd2cd3f059", + "node_id": "minicpm-o", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-MiniCPM-o", + "publisher": { + "createdAt": "2024-09-29T10:55:36.930737Z", + "description": "", + "id": "cychenyue", + "logo": "", + "members": [], + "name": "cychenyue", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/CY-CHENYUE/ComfyUI-MiniCPM-o", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-22T06:54:45.678293Z", + "description": "Generalised 'image' processing nodes for images, masks, latents, and combinations thereof.", + "downloads": 1379, + "github_stars": 4, + "icon": "", + "id": "comfyui-gtf-utilities", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-22T07:32:44.234121Z", + "dependencies": [], + "deprecated": true, + "downloadUrl": "", + "id": "93f25958-afd6-44ec-9315-1160ed09c1da", + "node_id": "comfyui-gtf-utilities", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-GTF-Utilities", + "publisher": { + "createdAt": "2024-08-22T06:32:37.547394Z", + "description": "", + "id": "wmpmiles", + "logo": "", + "members": [], + "name": "William Miles", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wmpmiles/ComfyUI-GTF-Utilities.git", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-01T23:57:44.318492Z", + "description": "This node allows you to cache/caching/store and reuse prompts/conditionings, resized images, ControlNet images, masks, and texts. It avoids repeating heavy operations by loading previously saved files \u2014 accelerating generation process, saving time, memory, and processing power in future executions. With this, the models used in these steps will also not need to be reloaded, resulting in much faster and more efficient executions, especially on machines with limited VRAM.\n\nBy caching various elements of the workflow, the execution of these workflow segments\u2014as well as the loading of the models used in these steps\u2014will no longer be necessary, resulting in much faster and more efficient executions, especially on machines with limited VRAM.\n\nFor more information, check GitHub. [a/Caching to not Waste](https://github.com/alastor-666-1933/caching_to_not_waste)", + "downloads": 2301, + "github_stars": 5, + "icon": "", + "id": "caching_to_not_waste", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-18T13:36:35.91177Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "759b84cb-b60e-4b29-8eb6-37a38d8ce0a8", + "node_id": "caching_to_not_waste", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Caching to not Waste", + "publisher": { + "createdAt": "2025-05-01T23:37:05.006113Z", + "description": "", + "id": "alastor-666-1933", + "logo": "", + "members": [], + "name": "Alastor 666 1933", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alastor-666-1933/caching_to_not_waste", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-17T23:44:57.144449Z", + "description": "Custom nodes for for loops, while loops, lazy nodes and switches etc.", + "downloads": 458, + "github_stars": 1, + "icon": "https://i.imgur.com/aiqQI7U.png", + "id": "comfyui-execution-inversion", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-18T04:07:16.377826Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "34a9f9fd-1bfa-43ca-b641-1a502efcea4a", + "node_id": "comfyui-execution-inversion", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.0.4" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-Execution-Inversion", + "publisher": { + "createdAt": "2024-07-31T23:17:26.625774Z", + "description": "", + "id": "akatz", + "logo": "", + "members": [], + "name": "Akatz", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/akatz-ai/ComfyUI-Execution-Inversion", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-05T10:02:29.570487Z", + "description": "Stable Diffusion WebUI & ComfyUI extension to post-process the prompt, including sending content from the prompt to the negative prompt and wildcards.", + "downloads": 2161, + "github_stars": 36, + "icon": "ppp_icon.png", + "id": "sd-webui-prompt-postprocessor", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-31T10:32:31.84435Z", + "dependencies": [ + "lark", + "numpy", + "pyyaml" + ], + "deprecated": false, + "downloadUrl": "", + "id": "3c2d2d3f-288a-4b35-a646-f724c4438ef5", + "node_id": "sd-webui-prompt-postprocessor", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.11.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "sd-webui-prompt-postprocessor", + "publisher": { + "createdAt": "2024-10-05T08:45:14.262447Z", + "description": "", + "id": "acorderob", + "logo": "", + "members": [], + "name": "Antonio Cordero Balcazar", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/acorderob/sd-webui-prompt-postprocessor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-25T18:31:05.960378Z", + "description": "This is a ComfyUI node that connects with [a/Roboflow workflows](https://roboflow.com/workflows/build).\nRoboflow hosts hundreds of thousands of open source and custom object detection models.", + "downloads": 1732, + "github_stars": 33, + "icon": "", + "id": "comfyui-roboflow", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-25T18:31:09.750507Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "2e639d13-cc1a-4660-bcc8-7741a1fc806e", + "node_id": "comfyui-roboflow", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Roboflow", + "publisher": { + "createdAt": "2024-09-25T18:26:27.203303Z", + "description": "", + "id": "darefail", + "logo": "", + "members": [], + "name": "James", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DareFail/ComfyUI-Roboflow", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-23T01:26:39.254255Z", + "description": "An implementation of NSFW Detection for ComfyUI", + "downloads": 2432, + "github_stars": 37, + "icon": "", + "id": "comfyui-nsfw-detection", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-03T05:17:04.929831Z", + "dependencies": [ + "transformers==4.37.2", + "pillow==10.2.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "8455bd07-f433-4749-ba33-f33fe9ee5f41", + "node_id": "comfyui-nsfw-detection", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-NSFW-Detection", + "publisher": { + "createdAt": "2024-05-23T01:11:57.978096Z", + "description": "", + "id": "trumanwong", + "logo": "", + "members": [], + "name": "Truman Wong", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/trumanwong/ComfyUI-NSFW-Detection", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-18T07:59:02.072941Z", + "description": "This project converts raster images into SVG format using the [a/VTracer](https://github.com/visioncortex/vtracer) library and [a/Potracer](https://github.com/tatarize/potrace). It's a handy tool for designers and developers who need to work with vector graphics programmatically.", + "downloads": 1923, + "github_stars": 210, + "icon": "", + "id": "comfyui-tosvg", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-18T07:59:02.532722Z", + "dependencies": [ + "numpy", + "Pillow", + "torch", + "vtracer", + "potracer", + "PyMuPDF" + ], + "deprecated": false, + "downloadUrl": "", + "id": "dd7499a6-dbc8-46ef-898f-33f0bc011750", + "node_id": "comfyui-tosvg", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ToSVG", + "publisher": { + "createdAt": "2025-06-18T07:00:19.252198Z", + "description": "", + "id": "yanick", + "logo": "", + "members": [], + "name": "Yanick112", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Yanick112/ComfyUI-ToSVG", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-22T21:14:11.644651Z", + "description": "Nodes: NoisyLatentPerlin. This allows to create latent spaces filled with perlin-based noise that can actually be used by the samplers.", + "downloads": 2241, + "github_stars": 34, + "icon": "", + "id": "noise_latent_perlinpinpin", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-22T21:14:11.904335Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "679efd96-acbf-424b-ae6f-1d3ad67bff02", + "node_id": "noise_latent_perlinpinpin", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "noise_latent_perlinpinpin", + "publisher": { + "createdAt": "2024-06-22T09:09:31.04495Z", + "description": "", + "id": "extraltodeus", + "logo": "", + "members": [], + "name": "Extraltodeus", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Extraltodeus/noise_latent_perlinpinpin", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T14:27:38.675835Z", + "description": "ComfyUI wrapper nodes for Lumina models", + "downloads": 3443, + "github_stars": 195, + "icon": "", + "id": "comfyui-luminawrapper", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-20T14:27:38.986177Z", + "dependencies": [ + "torchdiffeq", + "accelerate", + "tqdm", + "transformers>=4.38.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "72d7b4f2-6494-4640-a5cf-d44f6042e40a", + "node_id": "comfyui-luminawrapper", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "MIT", + "name": "ComfyUI-LuminaWrapper", + "publisher": { + "createdAt": "2024-06-09T11:11:54.62154Z", + "description": "", + "id": "kijai", + "logo": "", + "members": [], + "name": "Kijai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-LuminaWrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-21T19:28:59.157946Z", + "description": "These are nodes and workflows that can facilitate the creation of animations and video compilations.", + "downloads": 3120, + "github_stars": 28, + "icon": "", + "id": "comfyui-animation_nodes_and_workflows", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-21T19:29:02.929594Z", + "dependencies": [ + "torch", + "torchaudio", + "numpy", + "opencv-python", + "mediapipe" + ], + "deprecated": false, + "downloadUrl": "", + "id": "9b079fb9-0700-458d-ac0d-1f73970d5344", + "node_id": "comfyui-animation_nodes_and_workflows", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Animation_Nodes_and_Workflows", + "publisher": { + "createdAt": "2024-08-15T06:07:51.42124Z", + "description": "", + "id": "isi-dev", + "logo": "", + "members": [], + "name": "isi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Isi-dev/ComfyUI-Animation_Nodes_and_Workflows", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-20T15:23:04.991088Z", + "description": "Pixydust Quantizer is a custom node extension for ComfyUI that allows for the simplified recreation of tile patterns used in 1990s 16-color PC graphics, offering advanced color quantization and palette optimization features.Additionally, it includes a CRT-like effect node that mimics the phosphor glow and slight color bleeding of old CRT displays, adding a nostalgic aesthetic.With version 2.0.0, it now supports batch image processing, enabling efficient handling of video frames and image sequences.", + "downloads": 2546, + "github_stars": 29, + "icon": "", + "id": "comfyui-pixydustquantizer", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-01T15:15:03.844887Z", + "dependencies": [ + "numpy", + "torch", + "Pillow", + "scikit-learn", + "scipy", + "scikit-image" + ], + "deprecated": false, + "downloadUrl": "", + "id": "be84bfba-a68f-40f5-8a5f-e9c0c2d68ff6", + "node_id": "comfyui-pixydustquantizer", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-PixydustQuantizer", + "publisher": { + "createdAt": "2024-10-20T14:34:22.031493Z", + "description": "", + "id": "sousakujikken", + "logo": "", + "members": [], + "name": "HIRO", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sousakujikken/ComfyUI-PixydustQuantizer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-01T21:25:31.769563Z", + "description": "NODES: ImageRewardLoader, ImageRewardScore", + "downloads": 1654, + "github_stars": 31, + "icon": "", + "id": "comfyui-imagereward", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-01T21:25:33.549146Z", + "dependencies": [ + "image-reward==1.4", + "clip @ git+https://github.com/openai/CLIP.git" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c1c03e86-24dc-4489-8324-b2faf5d02f0e", + "node_id": "comfyui-imagereward", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ImageReward", + "publisher": { + "createdAt": "2024-06-22T07:06:51.265146Z", + "description": "", + "id": "zanea", + "logo": "", + "members": [], + "name": "ZaneA", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ZaneA/ComfyUI-ImageReward", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-22T07:54:10.990494Z", + "description": "The OpenAI FM TTS node is a custom node for ComfyUI that seamlessly integrates the OpenAI FM Text-to-Speech service into your audio workflows. This node allows you to easily convert text to speech with a variety of voices and emotional styles directly within ComfyUI. ", + "downloads": 1394, + "github_stars": 32, + "icon": "", + "id": "comfyui-openai-fm", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-09T00:12:28.575394Z", + "dependencies": [ + "requests>=2.26.0", + "torch", + "torchaudio" + ], + "deprecated": false, + "downloadUrl": "", + "id": "4ba08c63-2daa-4322-bbb3-100a42283a2b", + "node_id": "comfyui-openai-fm", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-OpenAI-FM", + "publisher": { + "createdAt": "2024-08-16T22:04:57.714002Z", + "description": "", + "id": "fairy-root", + "logo": "", + "members": [], + "name": "Fairy Root", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fairy-root/ComfyUI-OpenAI-FM", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-16T03:03:28.500625Z", + "description": "This is a custom node collection for ComfyUI that provides some utility nodes.", + "downloads": 3096, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-1hewNodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-17T12:45:11.552183Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5625bd20-6103-4747-b79a-2aea70165a79", + "node_id": "ComfyUI-1hewNodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.15" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-1hewNodes", + "publisher": { + "createdAt": "2025-05-14T07:01:30.289996Z", + "description": "", + "id": "wangyihe1127", + "logo": "", + "members": [], + "name": "1hew", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/1hew/ComfyUI-1hewNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T13:54:11.66512Z", + "description": "Comfy-Topaz is a custom node for ComfyUI, which integrates with Topaz Photo AI to enhance (upscale, sharpen, denoise, etc.) images, allowing this traditionally asynchronous step to become a part of ComfyUI workflows.\nNOTE: Requires licensed installation of Topaz Photo AI", + "downloads": 4912, + "github_stars": 190, + "icon": "", + "id": "comfy-topaz", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-28T08:03:08.85572Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "97d58e75-02e8-40a3-a287-9662b9af7f4f", + "node_id": "comfy-topaz", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfy-Topaz", + "publisher": { + "createdAt": "2024-06-20T13:37:19.88099Z", + "description": "", + "id": "choey", + "logo": "", + "members": [], + "name": "choey", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/choey/Comfy-Topaz", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-30T01:13:33.210932Z", + "description": "Load Image thumbnails and show input subfolders!", + "downloads": 2206, + "github_stars": 32, + "icon": "", + "id": "comfyui-thumbnails", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-30T01:13:33.47738Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "af137599-d99a-4681-836b-bf10559c860f", + "node_id": "comfyui-thumbnails", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "LICENSE", + "name": "ComfyUI-Thumbnails", + "publisher": { + "createdAt": "2024-05-28T00:30:20.706732Z", + "description": "", + "id": "audioscavenger", + "logo": "", + "members": [], + "name": "Eric", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/audioscavenger/ComfyUI-Thumbnails", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-28T17:25:28.315115Z", + "description": "This is a helper extension for ComfyUI that assists with node connections.", + "downloads": 2713, + "github_stars": 28, + "icon": "", + "id": "connection-helper", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-28T17:25:28.692172Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "346fecf3-bbe4-483e-a3ae-ecbbb51db8d2", + "node_id": "connection-helper", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI Connection Helper", + "publisher": { + "createdAt": "2024-05-22T15:42:00.969348Z", + "description": "", + "id": "drltdata", + "logo": "", + "members": [], + "name": "Dr.Lt.Data", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ltdrdata/comfyui-connection-helper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-10T15:22:33.707369Z", + "description": "This extension provides tools to iterate generation results between runs. In general, it's for cycles.", + "downloads": 1717, + "github_stars": 33, + "icon": "", + "id": "comfyui-cyclist", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-10T15:22:33.976764Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "53947ae2-c6d0-4835-964b-22ad27e3d60f", + "node_id": "comfyui-cyclist", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-cyclist", + "publisher": { + "createdAt": "2024-06-10T15:12:01.802844Z", + "description": "", + "id": "pos13", + "logo": "", + "members": [], + "name": "Pos13", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Pos13/comfyui-cyclist", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-04T00:25:43.500815Z", + "description": "This repository is a quick port of Resynthesizer (https://github.com/bootchk/resynthesizer) to ComfyUI.\nResynthesizer is the open-source implementation of a texture generation technique proposed by Paul Harrison in 2005, especially useful for removing an object from an image (inpainting), which is most likely close to what Photoshop uses to for the content aware fill feature.", + "downloads": 1726, + "github_stars": 20, + "icon": "", + "id": "comfyui-resynthesizer", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-04T00:25:44.977116Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3d017154-1740-4c51-b95a-65d6aa9411ab", + "node_id": "comfyui-resynthesizer", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-resynthesizer", + "publisher": { + "createdAt": "2025-01-04T00:20:28.314454Z", + "description": "", + "id": "val", + "logo": "", + "members": [], + "name": "Val\u00e9rien", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/brayevalerien/ComfyUI-resynthesizer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-26T05:51:04.582848Z", + "description": "Custom ComfyUI Nodes for interacting with [a/Ollama](https://ollama.com/) using the [a/ollama python client](https://github.com/ollama/ollama-python).\n Meanwhile it will provide better prompt descriptor for stable diffusion.", + "downloads": 4701, + "github_stars": 82, + "icon": "", + "id": "comfyui-ollama-yn", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-17T12:36:22.327486Z", + "dependencies": [ + "ollama", + "pandas", + "aiohttp" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c7c14b85-869d-4cb6-adfe-bae2f8cd49f4", + "node_id": "comfyui-ollama-yn", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUi-Ollama-YN", + "publisher": { + "createdAt": "2024-06-25T06:56:43.721582Z", + "description": "", + "id": "wujm424606", + "logo": "", + "members": [], + "name": "Peter WANG", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wujm424606/ComfyUi-Ollama-YN", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-23T14:00:06.396613Z", + "description": "Make it possible to edit the prompt using the Monaco Editor, an editor implementation used in VSCode.\nNOTE: This extension supports both ComfyUI and A1111 simultaneously.", + "downloads": 1546, + "github_stars": 27, + "icon": "", + "id": "webui-monaco-prompt", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-27T20:45:35.011052Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "904f7b0a-80c1-4e6f-891d-edbefc8b3a24", + "node_id": "webui-monaco-prompt", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.2.6" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "webui-monaco-prompt", + "publisher": { + "createdAt": "2024-05-23T13:19:52.220496Z", + "description": "", + "id": "taremin", + "logo": "", + "members": [], + "name": "Taremin", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Taremin/webui-monaco-prompt", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-22T22:12:23.173881Z", + "description": "Talking avatars Heads for the IF_AI tools integrates dreamtalk in ComfyUI", + "downloads": 1676, + "github_stars": 25, + "icon": "https://impactframes.ai/System/Icons/48x48/if.png", + "id": "comfyui-if_ai_dreamtalk", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-14T13:19:27.93659Z", + "dependencies": [ + "accelerate", + "torchaudio", + "Pillow", + "requests", + "opencv-python", + "moviepy", + "scipy", + "scikit-image", + "scikit-learn", + "numpy", + "yacs", + "PyYAML", + "imageio", + "ffmpeg-python", + "av" + ], + "deprecated": false, + "downloadUrl": "", + "id": "765e2c99-864a-457a-93c3-6f385ff6db51", + "node_id": "comfyui-if_ai_dreamtalk", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"MIT License\"}", + "name": "IF_Dreamtalk", + "publisher": { + "createdAt": "2024-05-22T21:13:45.198878Z", + "description": "", + "id": "impactframes", + "logo": "", + "members": [], + "name": "impactframes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/if-ai/ComfyUI-IF_AI_Dreamtalk", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-15T04:41:38.730098Z", + "description": "Default 16GB VRAM UNO in context generation ComfyUI-node, using RED-UNO FT model", + "downloads": 1001, + "github_stars": 26, + "icon": "https://guangyuansd-redaigc-com.static.hf.space/METAFILM.png", + "id": "ComfyUI-RED-UNO", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-15T04:41:39.129276Z", + "dependencies": [ + "einops", + "transformers", + "huggingface-hub", + "diffusers" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e539d4a1-3308-4938-8a15-bbb3cf16d564", + "node_id": "ComfyUI-RED-UNO", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-RED-UNO", + "publisher": { + "createdAt": "2025-04-15T01:27:39.974202Z", + "description": "", + "id": "redaigc", + "logo": "", + "members": [], + "name": "REDAIGC", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/QijiTec/ComfyUI-RED-UNO", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-28T20:17:00.725225Z", + "description": "Frame Selector & Sequence Selection Node for ComfyUI.", + "downloads": 1678, + "github_stars": 26, + "icon": "", + "id": "comfyui-lnl", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-28T20:17:02.480435Z", + "dependencies": [ + "opencv-python", + "imageio-ffmpeg" + ], + "deprecated": false, + "downloadUrl": "", + "id": "fb9cb8e9-3763-4352-8f3c-33f6705a92f2", + "node_id": "comfyui-lnl", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-LNL", + "publisher": { + "createdAt": "2024-06-20T04:32:11.693217Z", + "description": "", + "id": "latenightlabs", + "logo": "", + "members": [], + "name": "Late Night Labs", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/latenightlabs/ComfyUI-LNL", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-12T14:26:01.581884Z", + "description": "ComfyUI native implementation of [AI-Assistant](https://github.com/tori29umai0123/AI-Assistant).", + "downloads": 1748, + "github_stars": 24, + "icon": "", + "id": "comfyui_ai_assistant", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-05T03:45:40.316811Z", + "dependencies": [ + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "4b30bb47-646a-4fc4-9e55-67768a127b0c", + "node_id": "comfyui_ai_assistant", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI_AI_Assistant", + "publisher": { + "createdAt": "2024-07-12T06:01:00.660227Z", + "description": "", + "id": "jackellie", + "logo": "", + "members": [], + "name": "Jackellie", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/JackEllie/ComfyUI_AI_Assistant", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-25T15:13:52.597454Z", + "description": "A custom node for ComfyUI that applies a Gaussian blur to a mask.", + "downloads": 302, + "github_stars": 0, + "icon": "", + "id": "comfypsi_blur_mask", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-25T15:13:52.985937Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "891f944f-5cfc-4427-8abf-1cc9dc28f685", + "node_id": "comfypsi_blur_mask", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Blur Mask", + "publisher": { + "createdAt": "2025-03-16T11:31:05.525258Z", + "description": "", + "id": "rookiepsi", + "logo": "", + "members": [], + "name": "psi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/rookiepsi/comfypsi_blur_mask", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-23T18:15:23.605733Z", + "description": "Attempts to implement [a/CADS](https://arxiv.org/abs/2310.17347) for ComfyUI.", + "downloads": 3908, + "github_stars": 42, + "icon": "", + "id": "comfyui-cads", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-23T17:59:17.287985Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ec59d9d6-b4be-444c-9fd7-54b097989f91", + "node_id": "comfyui-cads", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-CADS", + "publisher": { + "createdAt": "2024-05-23T17:42:14.692322Z", + "description": "", + "id": "asagi4", + "logo": "", + "members": [], + "name": "asagi4", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/asagi4/ComfyUI-CADS", + "status": "", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-25T00:48:39.204439Z", + "description": "easy using llama3_8b in comfyUI ", + "downloads": 1922, + "github_stars": 26, + "icon": "", + "id": "comfyui_llama3_8b", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-25T00:48:39.457262Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5a82c6e3-e128-4759-96ee-1f03c5c42ebe", + "node_id": "comfyui_llama3_8b", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_Llama3_8B", + "publisher": { + "createdAt": "2024-06-24T08:32:00.788126Z", + "description": "", + "id": "smthemx", + "logo": "", + "members": [], + "name": "smthemx", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_Llama3_8B", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-17T15:29:36.897592Z", + "description": "ComfyUI implementation of [a/FlashFace: Human Image Personalization with High-fidelity Identity Preservation](https://github.com/ali-vilab/FlashFace)\nNOTE: You need to downalod models manually.", + "downloads": 1758, + "github_stars": 24, + "icon": "", + "id": "comfyui-nua-flashface", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-17T15:29:37.187651Z", + "dependencies": [ + "numpy", + "safetensors", + "torch", + "torchvision", + "transformers", + "easydict", + "ftfy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "9f081a12-479b-457e-9e08-55ab776fffa6", + "node_id": "comfyui-nua-flashface", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-NuA-FlashFace", + "publisher": { + "createdAt": "2024-06-14T18:16:44.577381Z", + "description": "", + "id": "nuanarchy", + "logo": "", + "members": [], + "name": "nuanarchy", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nuanarchy/ComfyUI-NuA-FlashFace", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-18T19:14:33.840566Z", + "description": "Creating subgraph and Calling subgraphs.", + "downloads": 2350, + "github_stars": 163, + "icon": "", + "id": "comfyui-sub-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-24T16:19:44.180781Z", + "dependencies": [ + "rich" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c5d94630-cb18-44d7-9dc9-7b22c6e0b47c", + "node_id": "comfyui-sub-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.1" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI-Sub-Nodes", + "publisher": { + "createdAt": "2024-07-18T19:09:14.059406Z", + "description": "", + "id": "viv", + "logo": "", + "members": [], + "name": "Viv", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/vivax3794/ComfyUI-Sub-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-02T09:02:52.779738Z", + "description": "Node for the FASHN Virtual Try-On API. Requires an API Key from fashn.ai", + "downloads": 1491, + "github_stars": 25, + "icon": "https://cilsrdpvqtgutxprdofn.supabase.co/storage/v1/object/public/assets/logo-enhanced_60x60.png", + "id": "comfyui-fashn", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-02T09:02:56.557641Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "0007282d-0392-4b6f-b5e7-7bfac72c77c1", + "node_id": "comfyui-fashn", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-FASHN", + "publisher": { + "createdAt": "2024-10-02T08:43:17.977809Z", + "description": "", + "id": "fashn", + "logo": "", + "members": [], + "name": "FASHN", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fashn-AI/ComfyUI-FASHN", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-21T03:41:15.860963Z", + "description": "ComfyUI Custom Node for 'Golden-Noise-for-Diffusion-Models'. This node refines the initial latent noise in the diffusion process, enhancing both image quality and semantic coherence.", + "downloads": 2153, + "github_stars": 23, + "icon": "https://raw.githubusercontent.com/LucipherDev/ComfyUI-Golden-Noise/refs/heads/main/icon.png", + "id": "comfyui-golden-noise", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-21T03:41:17.58186Z", + "dependencies": [ + "timm", + "einops" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d62d09e0-9779-4c8b-acc7-82bfa9f9c064", + "node_id": "comfyui-golden-noise", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Golden-Noise", + "publisher": { + "createdAt": "2024-12-21T02:59:26.094039Z", + "description": "", + "id": "lucipherdev", + "logo": "", + "members": [], + "name": "Sumeth Sathnindu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LucipherDev/ComfyUI-Golden-Noise", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-16T17:12:56.108447Z", + "description": "Talking avatars MemoAvatar Memory-Guided Diffusion for Expressive Talking Video Generation", + "downloads": 2508, + "github_stars": 168, + "icon": "https://impactframes.ai/System/Icons/48x48/if.png", + "id": "comfyui_if_memoavatar", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-18T22:33:24.758649Z", + "dependencies": [ + "albumentations==1.4.21", + "modelscope==1.20.1", + "numba==0.60.0", + "librosa==0.10.2", + "diffusers>=0.31.0", + "transformers>=4.46.3", + "numpy>=1.26.4", + "PyYAML>=6.0.1", + "moviepy==1.0.3", + "pillow>=10.4.0", + "funasr==1.0.27", + "insightface==0.7.3", + "accelerate==1.1.1", + "black==23.12.1", + "ffmpeg-python==0.2.0", + "huggingface-hub==0.26.2", + "imageio==2.36.0", + "imageio-ffmpeg==0.5.1", + "hydra-core==1.3.2", + "jax==0.4.35", + "mediapipe==0.10.18", + "omegaconf==2.3.0", + "onnxruntime-gpu>=1.20.1", + "opencv-python-headless==4.10.0.84", + "scikit-learn>=1.5.2", + "scipy>=1.14.1", + "tqdm>=4.67.1" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e05edc18-96c8-4db0-a853-4c17c9b08586", + "node_id": "comfyui_if_memoavatar", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.3" + }, + "license": "{\"file\": \"MIT License\"}", + "name": "IF_MemoAvatar", + "publisher": { + "createdAt": "2024-05-22T21:13:45.198878Z", + "description": "", + "id": "impactframes", + "logo": "", + "members": [], + "name": "impactframes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/if-ai/ComfyUI-IF_MemoAvatar", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-12T04:32:58.73084Z", + "description": "ComfyUI custom node\uff0cuse Deepseek v3 to classify the input tags", + "downloads": 1839, + "github_stars": 24, + "icon": "", + "id": "tagclassifier", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-12T04:33:02.249569Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4c2cee0f-bbc2-458d-b079-a5273faff468", + "node_id": "tagclassifier", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-TagClassifier", + "publisher": { + "createdAt": "2025-01-12T04:13:47.04247Z", + "description": "", + "id": "wenaka", + "logo": "", + "members": [], + "name": "Wenaka", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Wenaka2004/ComfyUI-TagClassifier", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-09T16:29:46.760472Z", + "description": "ComfyUI powertools for SD1.5 and SDXL model merging", + "downloads": 3967, + "github_stars": 92, + "icon": "https://raw.githubusercontent.com/54rt1n/ComfyUI-DareMerge/master/resources/blackhole192.png", + "id": "comfyui-daremerge", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-01T15:28:44.333967Z", + "dependencies": [ + "pillow", + "numpy", + "matplotlib", + "torch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a60d6c2a-bcca-4259-b6f9-13adc6c1c1f0", + "node_id": "comfyui-daremerge", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.3.2" + }, + "license": "{\"text\": \"GNU General Public License v3.0\"}", + "name": "ComfyUI-DareMerge", + "publisher": { + "createdAt": "2024-07-09T15:43:42.784785Z", + "description": "", + "id": "user", + "logo": "", + "members": [], + "name": "54rt1n", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/54rt1n/ComfyUI-DareMerge", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-29T12:08:44.340583Z", + "description": "Custom nodes for MiniCPM language models in ComfyUI. Provides advanced text generation and image understanding functions.", + "downloads": 1889, + "github_stars": 23, + "icon": "", + "id": "comfyui-minicpm-plus", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-09T06:56:27.509665Z", + "dependencies": [ + "transformers", + "torch", + "tqdm", + "huggingface_hub", + "torchvision", + "numpy>=1.21.0", + "sentencepiece==0.1.99", + "decord", + "Pillow>=10.1.0", + "jsonschema", + "datamodel-code-generator", + "accelerate>=0.30.1", + "bitsandbytes>=0.43.1", + "optimum>=1.16.1", + "auto-gptq>=0.5.1" + ], + "deprecated": false, + "downloadUrl": "", + "id": "001d92ec-dce8-473a-8011-bb67e843e5cd", + "node_id": "comfyui-minicpm-plus", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-MiniCPM-Plus", + "publisher": { + "createdAt": "2024-09-29T10:55:36.930737Z", + "description": "", + "id": "cychenyue", + "logo": "", + "members": [], + "name": "cychenyue", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/CY-CHENYUE/ComfyUI-MiniCPM-Plus", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-25T00:59:25.976835Z", + "description": "you can using chatglm in comfyUI", + "downloads": 1724, + "github_stars": 23, + "icon": "", + "id": "comfyui_chatglm_api", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-25T00:59:26.232098Z", + "dependencies": [ + "requests", + "transformers==4.41.1" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a3cc9175-75e6-4daf-9c2e-554f99f65523", + "node_id": "comfyui_chatglm_api", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_ChatGLM_API", + "publisher": { + "createdAt": "2024-06-24T08:32:00.788126Z", + "description": "", + "id": "smthemx", + "logo": "", + "members": [], + "name": "smthemx", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_ChatGLM_API", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-03T21:04:49.667574Z", + "description": "A collection of nodes for ComyUI.\n* \"PromptTermList (1-6)\" nodes to help with the creation of Prompts.\n* \"Resolution Scale\" is a node that resizes an image using pixels or scale factor.\n* \"Regex Text Chopper\" is a node that cuts text based on regex.\n* \"Auto Save Workflow\" can save the current workflow to a .json file automatically.\n", + "downloads": 3017, + "github_stars": 26, + "icon": "https://iili.io/JmSdmAJ.png", + "id": "comfyui-noembryo", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-09T19:55:17.123992Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "bec49098-fe7b-491a-8778-3744702fb52f", + "node_id": "comfyui-noembryo", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI-noEmbryo", + "publisher": { + "createdAt": "2024-05-22T21:47:03.696658Z", + "description": "", + "id": "noembryo", + "logo": "", + "members": [], + "name": "noEmbryo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/noembryo/ComfyUI-noEmbryo", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-25T00:45:38.337858Z", + "description": "you can using id_animator in comfyUI", + "downloads": 1589, + "github_stars": 24, + "icon": "", + "id": "comfyui_id_animator", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-25T00:45:38.589572Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "04b0632f-f2ab-47b7-8ed5-4df6dae95d01", + "node_id": "comfyui_id_animator", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_ID_Animator", + "publisher": { + "createdAt": "2024-06-24T08:32:00.788126Z", + "description": "", + "id": "smthemx", + "logo": "", + "members": [], + "name": "smthemx", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_ID_Animator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-24T07:52:09.15082Z", + "description": "[a/Onediff](https://github.com/siliconflow/onediff) ComfyUI Nodes.", + "downloads": 1775, + "github_stars": 23, + "icon": "https://github.com/siliconflow/onediff/blob/main/imgs/onediff_logo.png", + "id": "onediff_comfy_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-24T08:53:30.411845Z", + "dependencies": [ + "onediff" + ], + "deprecated": false, + "downloadUrl": "", + "id": "4d0fecf6-64b1-418d-8db8-20efe7dd81c9", + "node_id": "onediff_comfy_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "LICENSE", + "name": "onediff_comfy_nodes", + "publisher": { + "createdAt": "2024-06-24T07:22:40.034541Z", + "description": "", + "id": "onediff", + "logo": "", + "members": [], + "name": "onediff_comfy_nodes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/siliconflow/onediff_comfy_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-28T14:38:40.730669Z", + "description": "These are ComfyUI nodes to assist in converting an image to sketches or lineArts.", + "downloads": 3025, + "github_stars": 18, + "icon": "", + "id": "comfyui-img2drawingassistants", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-28T14:38:42.455916Z", + "dependencies": [ + "torch", + "numpy", + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "dd862489-f96b-4670-be64-0e04102a0586", + "node_id": "comfyui-img2drawingassistants", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Img2DrawingAssistants", + "publisher": { + "createdAt": "2024-08-15T06:07:51.42124Z", + "description": "", + "id": "isi-dev", + "logo": "", + "members": [], + "name": "isi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Isi-dev/ComfyUI-Img2DrawingAssistants", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-25T02:51:06.885825Z", + "description": "ComfyUI custom nodes for working with [a/Ollama](https://github.com/ollama/ollama).\nNOTE:Assumes that an Ollama server is running at http://127.0.0.1:11434 and accessible by the ComfyUI backend.", + "downloads": 2347, + "github_stars": 0, + "icon": "https://github.com/slyt/comfyui-ollama-nodes/blob/main/comfyui-ollama-nodes-logo.png?raw=true", + "id": "comfyui-ollama-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-25T03:32:05.365387Z", + "dependencies": [ + "ollama", + "huggingface_hub" + ], + "deprecated": false, + "downloadUrl": "", + "id": "2ce92558-0eea-4390-8218-3e53deb6b60e", + "node_id": "comfyui-ollama-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "GPL-3.0-or-later", + "name": "comfyui-ollama-nodes", + "publisher": { + "createdAt": "2024-06-25T02:30:05.863741Z", + "description": "", + "id": "slyt", + "logo": "", + "members": [], + "name": "Sly", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/slyt/comfyui-ollama-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-26T02:03:27.299949Z", + "description": "Nodes for NSFW content filtering", + "downloads": 2041, + "github_stars": 24, + "icon": "", + "id": "ComfyUI-Nudenet", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-01T01:32:04.973543Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "db84d246-d29f-4fc4-8040-8a3bd358fa3d", + "node_id": "ComfyUI-Nudenet", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Nudenet", + "publisher": { + "createdAt": "2025-02-26T01:56:45.24824Z", + "description": "", + "id": "phuvinh010701", + "logo": "", + "members": [], + "name": "VinhNP", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/phuvinh010701/ComfyUI-Nudenet", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-09T22:57:46.77125Z", + "description": "Node to tryoff clothes", + "downloads": 1685, + "github_stars": 22, + "icon": "", + "id": "tryoff-anyone", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-16T23:18:47.497654Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ec1b7b85-b4fc-4808-ae56-85214c3ef11e", + "node_id": "tryoff-anyone", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "TryOff Anyone", + "publisher": { + "createdAt": "2024-08-26T20:29:53.044291Z", + "description": "", + "id": "rodrigoskohl", + "logo": "", + "members": [], + "name": "Rodrigo S. Kohl", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/RodrigoSKohl/comfyui-tryoff-anyone", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-23T05:07:32.515938Z", + "description": "Nodes: Image Resize (seam carving). Seam carving (image resize) for ComfyUI. Based on [a/https://github.com/li-plus/seam-carving](https://github.com/li-plus/seam-carving). With seam carving algorithm, the image could be intelligently resized while keeping the important contents undistorted. The carving process could be further guided, so that an object could be removed from the image without apparent artifacts.", + "downloads": 2044, + "github_stars": 23, + "icon": "", + "id": "comfyui-seam-carving", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-23T05:07:32.793538Z", + "dependencies": [ + "seam-carving" + ], + "deprecated": false, + "downloadUrl": "", + "id": "88ae32fd-476b-4820-8aef-62ab0525d309", + "node_id": "comfyui-seam-carving", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-seam-carving", + "publisher": { + "createdAt": "2024-05-23T04:55:27.562917Z", + "description": "", + "id": "spinagon", + "logo": "", + "members": [], + "name": "spinagon", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/spinagon/ComfyUI-seam-carving", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-04T18:36:51.744903Z", + "description": "Real-time Gallery for ComfyUI with image metadata inspection. Support for images and video.", + "downloads": 3161, + "github_stars": 43, + "icon": "https://raw.githubusercontent.com/PanicTitan/ComfyUI-Gallery/refs/heads/main/logo.png", + "id": "ComfyUI-Gallery", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-10T23:50:11.73847Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ed9f2929-1ec2-4492-be87-c8bab5e22432", + "node_id": "ComfyUI-Gallery", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "2.5.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Gallery", + "publisher": { + "createdAt": "2025-02-28T19:25:05.096153Z", + "description": "", + "id": "panic-titan", + "logo": "", + "members": [], + "name": "PanicTitan", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/PanicTitan/ComfyUI-Gallery", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-03T06:43:57.721591Z", + "description": "a node using pops in comfyUI", + "downloads": 1626, + "github_stars": 22, + "icon": "", + "id": "comfyui_pops", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-03T06:43:59.40502Z", + "dependencies": [ + "pyrallis" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a6209322-5506-4cd6-9d44-39a3aa4ecfe6", + "node_id": "comfyui_pops", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_Pops", + "publisher": { + "createdAt": "2024-06-24T08:32:00.788126Z", + "description": "", + "id": "smthemx", + "logo": "", + "members": [], + "name": "smthemx", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_Pops", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-06T15:52:55.822537Z", + "description": "toolkits", + "downloads": 1280, + "github_stars": 0, + "icon": "asset/image/logo.jpg", + "id": "comfyui-tool-2lab", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-09T02:14:51.726726Z", + "dependencies": [ + "Pillow", + "numpy", + "torch", + "requests" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e99ba992-5401-4f1a-add8-6bff98549d27", + "node_id": "comfyui-tool-2lab", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.4.1" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "comfyUI-tool-2lab", + "publisher": { + "createdAt": "2024-06-06T15:08:41.151289Z", + "description": "", + "id": "ai2lab", + "logo": "", + "members": [], + "name": "AI2lab", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AI2lab/comfyUI-tool-2lab", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-27T21:46:21.915026Z", + "description": "ComfyUI Node to work with Hugging Face repositories", + "downloads": 1879, + "github_stars": 19, + "icon": "", + "id": "comfyui-hf", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-27T21:46:22.191699Z", + "dependencies": [ + "transformers==4.26.1" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1fa0cf35-935c-4e12-99c7-27122c41c539", + "node_id": "comfyui-hf", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-HF", + "publisher": { + "createdAt": "2024-05-27T21:35:10.87886Z", + "description": "", + "id": "mbrostami", + "logo": "", + "members": [], + "name": "Mo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mbrostami/ComfyUI-HF", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-01T13:45:39.118844Z", + "description": "A collection of nodes for common tools, including text preview, text translation (multi-platform, multi-language), image loader, webcamera capture.", + "downloads": 2187, + "github_stars": 21, + "icon": "", + "id": "comfyui_zfkun", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-21T04:08:56.591737Z", + "dependencies": [ + "chardet", + "pyyaml", + "torch", + "numpy", + "pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "144eb17e-6100-45e0-8c6f-1e638daa7c85", + "node_id": "comfyui_zfkun", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.0.13" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_zfkun", + "publisher": { + "createdAt": "2025-01-01T11:23:17.74161Z", + "description": "", + "id": "zfkun", + "logo": "", + "members": [], + "name": "zfkun", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zfkun/ComfyUI_zfkun", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-15T14:13:54.489813Z", + "description": "ComfyUI nodes for editing background of images/videos with CUDA acceleration support.", + "downloads": 2266, + "github_stars": 22, + "icon": "", + "id": "comfyui-background-edit", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-18T16:39:36.065632Z", + "dependencies": [ + "torch", + "torchvision" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c372e69a-9aed-48ab-8895-6494f8adbc66", + "node_id": "comfyui-background-edit", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Background-Edit", + "publisher": { + "createdAt": "2024-11-15T00:44:34.283204Z", + "description": "", + "id": "yondonfu", + "logo": "", + "members": [], + "name": "Yondon Fu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yondonfu/ComfyUI-Background-Edit", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-25T03:54:40.330638Z", + "description": "A real-time system resource monitoring plugin designed for ComfyUI, helping you track computer resource usage during the AI image generation process. It can be freely dragged.", + "downloads": 1301, + "github_stars": 1, + "icon": "", + "id": "comfyui-extras", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-25T03:54:40.74246Z", + "dependencies": [ + "psutil>=5.9.0", + "pynvml>=11.0.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6b636a54-d017-4617-bb0e-2eeb0651ebd6", + "node_id": "comfyui-extras", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-extras", + "publisher": { + "createdAt": "2025-03-23T10:37:28.760389Z", + "description": "", + "id": "assemly", + "logo": "", + "members": [], + "name": "\u5361\u8010\u57fa\u7684\u53cd\u590d\u624b", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/assemly/comfyui-extras", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-12T19:41:06.399217Z", + "description": "A powerful ComfyUI node for rendering text with advanced styling options, including full support for Persian/Farsi and Arabic scripts.", + "downloads": 1546, + "github_stars": 19, + "icon": "", + "id": "comfyui-persiantext", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-23T17:43:52.667391Z", + "dependencies": [ + "torch", + "Pillow", + "arabic-reshaper", + "torchvision", + "python-bidi" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5312418e-47df-45e4-9947-0801d9bdf336", + "node_id": "comfyui-persiantext", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-PersianText", + "publisher": { + "createdAt": "2024-12-26T11:23:45.200385Z", + "description": "", + "id": "shahkoorosh", + "logo": "", + "members": [], + "name": "Koorosh", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shahkoorosh/ComfyUI-PersianText", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-09T09:24:57.198809Z", + "description": "Optional wildcards in ComfyUI", + "downloads": 2469, + "github_stars": 7, + "icon": "", + "id": "comfyui_prompt_wildcards", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-15T14:14:50.729882Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "9be62bb1-2c85-4826-902e-c43a8bbfaa48", + "node_id": "comfyui_prompt_wildcards", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Prompt-Wildcards", + "publisher": { + "createdAt": "2024-07-27T15:18:06.489076Z", + "description": "", + "id": "makki-shizu", + "logo": "", + "members": [], + "name": "Makki_Shizu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MakkiShizu/ComfyUI-Prompt-Wildcards", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-08T22:36:54.206537Z", + "description": "Create Video datasets straight from YT or a video file path", + "downloads": 1033, + "github_stars": 20, + "icon": "https://impactframes.ai/System/Icons/48x48/if.png", + "id": "comfyui-if_datasetmkr", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-09T17:38:49.490735Z", + "dependencies": [ + "torch>=2.0.0", + "pillow>=10.0.0", + "numpy>=1.24.0", + "huggingface_hub>=0.26.0", + "git+https://github.com/huggingface/transformers", + "accelerate", + "sentence-transformers", + "tokenizers>=0.15.0", + "safetensors>=0.3.1", + "qwen-vl-utils[decord]>=0.0.8", + "opencv-python>=4.8.0", + "decord>=0.6.0", + "ffmpeg-python>=0.2.0", + "imageio_ffmpeg>=0.6.0", + "moviepy>=2.1.2", + "scenedetect>=0.6.2", + "yt-dlp>=2023.3.4", + "tqdm>=4.66.1", + "requests>=2.31.0", + "python-slugify>=8.0.1", + "psutil>=5.9.0", + "packaging>=23.1", + "aiohttp>=3.8.5", + "dotenv-python>=0.0.1" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a94d1ee0-faf6-4ac1-a396-2f3a648c3ee6", + "node_id": "comfyui-if_datasetmkr", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.9" + }, + "license": "{\"file\": \"MIT License\"}", + "name": "IF_DatasetMkr", + "publisher": { + "createdAt": "2024-05-22T21:13:45.198878Z", + "description": "", + "id": "impactframes", + "logo": "", + "members": [], + "name": "impactframes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/if-ai/ComfyUI-IF_DatasetMkr", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-29T05:42:38.925119Z", + "description": "ComfyUI port of Vectorscope CC and Diffusion Color Grading by Haoming02. Makes it possible to adjust Brightness/Contrast/Saturation/Hue during image generation.", + "downloads": 3130, + "github_stars": 19, + "icon": "", + "id": "comfyui-vectorscope-cc", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-07T22:12:11.315335Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "004d9ac1-c6ca-40a4-b0e4-8e862e004004", + "node_id": "comfyui-vectorscope-cc", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.2" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI-vectorscope-cc", + "publisher": { + "createdAt": "2024-06-15T14:09:36.287328Z", + "description": "", + "id": "pamparamm", + "logo": "", + "members": [], + "name": "Pamparamm", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pamparamm/ComfyUI-vectorscope-cc", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-23T22:16:46.457275Z", + "description": "Transform AI image generation from random exploration into deliberate artistic navigation. This advanced KSampler replacement blends traditional noise with shader noise. Navigate latent space with intention using adjustable noise parameters, shape masks, and colors transformations.", + "downloads": 1347, + "github_stars": 46, + "icon": "", + "id": "comfyui-shadernoiseksampler", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-20T08:52:40.520888Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "8b001514-9b96-4237-8001-6f5990ecb1d7", + "node_id": "comfyui-shadernoiseksampler", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ShaderNoiseKSampler", + "publisher": { + "createdAt": "2024-12-21T21:30:01.317798Z", + "description": "", + "id": "aemotionstudio", + "logo": "", + "members": [], + "name": "AEmotionStudio", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AEmotionStudio/ComfyUI-ShaderNoiseKSampler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-25T10:38:44.104994Z", + "description": "ComfyUI Video Studio with Node-Controlled Timelines for Multi-Task Production.", + "downloads": 1543, + "github_stars": 20, + "icon": "", + "id": "comfyui-montagen", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-29T10:44:07.569157Z", + "dependencies": [ + "smbprotocol", + "ffmpeg-binaries", + "edge_tts", + "fish-audio-sdk" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b3276a86-f2a5-438c-bdc8-b0e399883cc1", + "node_id": "comfyui-montagen", + "status": "NodeVersionStatusPending", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.2.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Montagen", + "publisher": { + "createdAt": "2025-01-25T06:36:10.196171Z", + "description": "", + "id": "montagenai", + "logo": "", + "members": [], + "name": "MontagenAI", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MontagenAI/ComfyUI-Montagen", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-06T21:08:21.785837Z", + "description": "A collection of nodes for powerful and more ordered prompting. This does not /help/ you prompt better, it just helps you organize your prompting spaghetti.", + "downloads": 1837, + "github_stars": 82980, + "icon": "", + "id": "lth_extended_prompting_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-06T21:54:36.418613Z", + "dependencies": [ + "torch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "32ce3653-36af-485e-84b1-9c04a985630e", + "node_id": "lth_extended_prompting_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI", + "publisher": { + "createdAt": "2024-11-06T20:39:15.82912Z", + "description": "", + "id": "lithimlin", + "logo": "", + "members": [], + "name": "Lithimlin", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/comfyanonymous/ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-04T22:12:18.267474Z", + "description": "Recraft AI API Custom Nodes", + "downloads": 1710, + "github_stars": 62, + "icon": "https://www.recraft.ai/favicons/icon-192.png", + "id": "comfyui-recraftai", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-04T11:33:43.327356Z", + "dependencies": [ + "requests", + "torch", + "Pillow", + "numpy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7808b91e-41ee-4758-a837-54adc7bddae8", + "node_id": "comfyui-recraftai", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-RecraftAI", + "publisher": { + "createdAt": "2024-11-04T22:05:12.853155Z", + "description": "", + "id": "recraftai", + "logo": "", + "members": [], + "name": "Recraft AI", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/recraft-ai/ComfyUI-RecraftAI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-05T09:30:14.264052Z", + "description": "GlitchNodes is a collection of image processing nodes designed for ComfyUI that specializes in creating glitch art and retro effects.", + "downloads": 1380, + "github_stars": 52, + "icon": "", + "id": "glitchnodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-29T19:17:09.589562Z", + "dependencies": [ + "numpy", + "torch", + "tqdm", + "logging", + "Pillow", + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "149dbf88-0667-4cf3-a77e-9d043765f1d5", + "node_id": "glitchnodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "GlitchNodes", + "publisher": { + "createdAt": "2025-03-05T09:13:26.771194Z", + "description": "", + "id": "pxlpshr", + "logo": "", + "members": [], + "name": "pxlpshr", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pxl-pshr/GlitchNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-24T09:54:10.739133Z", + "description": "a plugin of ComfyUI for CosyVoice2", + "downloads": 1487, + "github_stars": 19, + "icon": "", + "id": "CosyVoice2", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-04T06:48:21.090329Z", + "dependencies": [ + "conformer==0.3.2", + "deepspeed==0.14.2", + "diffusers==0.27.2", + "gdown==5.1.0", + "grpcio==1.57.0", + "grpcio-tools==1.57.0", + "huggingface-hub==0.25.2", + "modelscope", + "hydra-core==1.3.2", + "HyperPyYAML==1.2.2", + "inflect==7.3.1", + "librosa==0.10.2", + "lightning==2.2.4", + "matplotlib==3.7.5", + "modelscope==1.15.0", + "networkx==3.1", + "omegaconf==2.3.0", + "openai-whisper", + "protobuf==4.25", + "pydantic==2.7.0", + "rich==13.7.1", + "soundfile==0.12.1", + "tensorboard", + "tensorrt-cu12", + "tensorrt-cu12-bindings", + "tensorrt-cu12-libs", + "transformers==4.40.1", + "wget==3.2", + "WeTextProcessing==1.0.3", + "onnxruntime-gpu", + "torch", + "torchvision", + "torchaudio" + ], + "deprecated": false, + "downloadUrl": "", + "id": "449a4daf-d39d-4204-95f3-8d14a9e34461", + "node_id": "CosyVoice2", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "GKK\u00b7CosyVoice", + "publisher": { + "createdAt": "2025-02-24T03:46:32.333024Z", + "description": "", + "id": "benda1989", + "logo": "", + "members": [], + "name": "GKK", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/benda1989/CosyVoice2_ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-06T08:00:36.197509Z", + "description": "A pose remapping node with support for joint locking, motion-aware scaling, and optional easing - perfect for animation refinement and mech rig control.", + "downloads": 572, + "github_stars": 23, + "icon": "", + "id": "Comfyui_SSsnap_pose-Remapping", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-06T08:00:36.598709Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "02b867e6-31c1-48f0-b9a7-fe537236008c", + "node_id": "Comfyui_SSsnap_pose-Remapping", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{}", + "name": "Comfyui_SSsnap_pose-Remapping", + "publisher": { + "createdAt": "2025-04-21T04:51:45.613704Z", + "description": "", + "id": "snap-demo", + "logo": "", + "members": [], + "name": "SSsnap", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SS-snap/Comfyui_SSsnap_pose-Remapping", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-06T11:52:52.181316Z", + "description": "Show Text; Filename Prefix By Date; Positive Only (CLIP Encode Prompt); ...", + "downloads": 2152, + "github_stars": 2, + "icon": "", + "id": "ardent-nodes-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-07T12:18:02.249713Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "75630f03-1734-4d4c-9d90-1abd7112ac8d", + "node_id": "ardent-nodes-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.3.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Ardent-Nodes-ComfyUI", + "publisher": { + "createdAt": "2025-02-04T22:38:04.302274Z", + "description": "", + "id": "ardentillumina", + "logo": "", + "members": [], + "name": "Ardent Illumina", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ardentillumina/ardent-comfy", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-16T20:29:27.300049Z", + "description": "A small collection of nodes intended for use with Lodestone Rock's Chroma model, for ComfyUI.", + "downloads": 2376, + "github_stars": 9, + "icon": "", + "id": "clybschromanodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-08T14:27:36.350617Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "651a9e97-89f2-4eaa-b6f2-75cd3adcf473", + "node_id": "clybschromanodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ClybsChromaNodes", + "publisher": { + "createdAt": "2024-06-20T18:24:40.844124Z", + "description": "", + "id": "clybius", + "logo": "", + "members": [], + "name": "Clybius", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Clybius/ComfyUI-ClybsChromaNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-04T05:30:37.94759Z", + "description": "Helpful stuff for my everyday process", + "downloads": 2476, + "github_stars": 18, + "icon": "", + "id": "klinter_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-04T05:30:41.535744Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "f696d5d0-ae82-4d5f-bae4-d4bc526e915f", + "node_id": "klinter_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "klinter_nodes", + "publisher": { + "createdAt": "2025-01-04T05:22:55.055126Z", + "description": "", + "id": "klinter", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/klinter007/klinter_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-17T16:46:10.818464Z", + "description": "Finegrain API ComfyUI custom nodes", + "downloads": 932, + "github_stars": 0, + "icon": "", + "id": "comfyui-finegrain", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-17T09:57:44.074184Z", + "dependencies": [ + "httpx-sse>=0.4.0", + "httpx>=0.27.0", + "pillow>=11.1.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "68f24605-f8de-495f-8021-7ad880bb8d42", + "node_id": "comfyui-finegrain", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.0" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "comfyui-finegrain", + "publisher": { + "createdAt": "2024-09-04T16:24:24.606467Z", + "description": "", + "id": "finegrain", + "logo": "", + "members": [], + "name": "Finegrain.ai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/finegrain-ai/comfyui-finegrain/", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-10T03:27:00.489249Z", + "description": "Color Grading for Stable Diffusion", + "downloads": 3734, + "github_stars": 100, + "icon": "", + "id": "comfyui-diffusion-cg", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-16T01:50:26.471765Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a118ed93-1e9c-4e0a-8158-7e171f71f51d", + "node_id": "comfyui-diffusion-cg", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.0" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "Diffusion CG", + "publisher": { + "createdAt": "2024-07-09T07:30:07.769811Z", + "description": "", + "id": "haoming02", + "logo": "", + "members": [], + "name": "Haoming02", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Haoming02/comfyui-diffusion-cg", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-13T08:13:10.860579Z", + "description": "Comfy UI in Telegram", + "downloads": 1486, + "github_stars": 20, + "icon": "https://raw.githubusercontent.com/daxcay/ComfyUI-TG/main/web/assets/img/logo.gif", + "id": "comfyui-tg", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-13T08:13:14.672281Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "d5d6fd39-d73f-40b5-9924-e6b191b888bb", + "node_id": "comfyui-tg", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-TG", + "publisher": { + "createdAt": "2024-05-23T03:32:31.512265Z", + "description": "", + "id": "daxcay", + "logo": "", + "members": [], + "name": "Daxton Caylor", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/daxcay/ComfyUI-TG", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-14T06:03:19.097518Z", + "description": "An unofficial Python library for [a/Suno AI](https://www.suno.ai/) API", + "downloads": 1533, + "github_stars": 19, + "icon": "", + "id": "comfyui-sunoai", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-03T04:15:09.669449Z", + "dependencies": [ + "curl_cffi", + "typer", + "python-dotenv" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d8c52bc1-0d78-4861-b6b4-a5344c1a0f49", + "node_id": "comfyui-sunoai", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-SunoAI", + "publisher": { + "createdAt": "2024-06-14T05:54:23.756611Z", + "description": "", + "id": "gentlemanhu", + "logo": "", + "members": [], + "name": "GentlemanHu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/GentlemanHu/ComfyUI-SunoAI", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-23T01:30:35.903536Z", + "description": "HeyGem AI avatar.", + "downloads": 542, + "github_stars": 86, + "icon": "", + "id": "heygem-mw", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-02T14:15:00.229116Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "33975578-0e50-4bd0-8bb5-a26f78a63e6e", + "node_id": "heygem-mw", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfyui_HeyGem", + "publisher": { + "createdAt": "2025-01-06T14:10:29.10336Z", + "description": "", + "id": "mw", + "logo": "", + "members": [], + "name": "MW", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/billwuhao/Comfyui_HeyGem", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-04T16:44:28.661565Z", + "description": "Send generated images to Eagle", + "downloads": 2332, + "github_stars": 16, + "icon": "", + "id": "comfyui-d2-send-eagle", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-10T14:32:03.052759Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "629dec83-5c8e-4943-a0c4-cd92de5f7fd6", + "node_id": "comfyui-d2-send-eagle", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.6.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-d2-send-eagle", + "publisher": { + "createdAt": "2024-08-04T16:12:17.464004Z", + "description": "", + "id": "da2el", + "logo": "", + "members": [], + "name": "da2el", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/da2el-ai/ComfyUI-d2-send-eagle", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T11:25:47.403549Z", + "description": "This node improves the quality of the image mask. more suitable for image composite matting", + "downloads": 1798, + "github_stars": 18, + "icon": "", + "id": "comfyui-image-matting", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-20T11:25:47.685876Z", + "dependencies": [ + "opencv-contrib-python>=4.7.0.72", + "opencv-contrib-python-headless>=4.7.0.72", + "opencv-python>=4.7.0.72", + "opencv-python-headless>=4.7.0.72", + "transformers @ git+https://github.com/huggingface/transformers" + ], + "deprecated": false, + "downloadUrl": "", + "id": "936f90d6-b9e2-4c2c-a9e4-ddcc3fa76bd1", + "node_id": "comfyui-image-matting", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-Image-Matting", + "publisher": { + "createdAt": "2024-06-20T11:19:21.20367Z", + "description": "", + "id": "hackkhai", + "logo": "", + "members": [], + "name": "hackkhai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hackkhai/ComfyUI-Image-Matting", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-14T12:11:57.405631Z", + "description": "some comfyui custom nodes to set it as known type", + "downloads": 1113, + "github_stars": 0, + "icon": "", + "id": "ymc-node-as-x-type", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-06T12:23:34.843845Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "dad46fdc-85e2-47a2-a88e-30d55b54cbbe", + "node_id": "ymc-node-as-x-type", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ymc-node-as-x-type", + "publisher": { + "createdAt": "2024-07-14T11:57:33.810062Z", + "description": "", + "id": "ymc-github", + "logo": "", + "members": [], + "name": "yemiancheng", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ymc-github/ymc-node-as-x-type", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-21T03:35:54.406055Z", + "description": "Ollama and Llava / vision integration for ComfyUI", + "downloads": 3718, + "github_stars": 17, + "icon": "", + "id": "comfyui-ollama-llms", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-27T03:03:55.585005Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "2e1038a3-77d9-41dc-8ac9-929f46def2c9", + "node_id": "comfyui-ollama-llms", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-ollama-llms", + "publisher": { + "createdAt": "2024-08-16T22:04:57.714002Z", + "description": "", + "id": "fairy-root", + "logo": "", + "members": [], + "name": "Fairy Root", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fairy-root/comfyui-ollama-llms", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-22T22:17:20.217858Z", + "description": "Parler TTS is a zeroshot voice synthesis with emotion and entonations, you can control the voice style via text prompt", + "downloads": 1638, + "github_stars": 17, + "icon": "https://impactframes.ai/System/Icons/48x48/if.png", + "id": "comfyui-if_ai_parlerttsnode", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-14T13:28:10.231046Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "74432564-b5a8-40a4-866e-8578c41eb4c8", + "node_id": "comfyui-if_ai_parlerttsnode", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"MIT License\"}", + "name": "IF_ParlerTTSNode", + "publisher": { + "createdAt": "2024-05-22T21:13:45.198878Z", + "description": "", + "id": "impactframes", + "logo": "", + "members": [], + "name": "impactframes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/if-ai/ComfyUI-IF_AI_ParlerTTSNode", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-21T06:39:07.870616Z", + "description": "ScenarioPrompt is a custom node that helps you understand what you're prompting for each property as you build your prompts", + "downloads": 1781, + "github_stars": 17, + "icon": "", + "id": "comfyui-scenarioprompt", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-21T06:39:08.171534Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4b9d5b41-c8a6-4b2e-b3eb-de27e95d0478", + "node_id": "comfyui-scenarioprompt", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ScenarioPrompt", + "publisher": { + "createdAt": "2024-06-21T06:00:42.452799Z", + "description": "", + "id": "ludobico", + "logo": "", + "members": [], + "name": "ComfyUI-ScenarioPrompt", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Ludobico/ComfyUI-ScenarioPrompt", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-27T18:20:56.479361Z", + "description": "A collection of useful custom nodes for ComfyUI workflows", + "downloads": 253, + "github_stars": 1, + "icon": "https://raw.githubusercontent.com/skycoder182/comfyui-skycoder-tools/main/Icon.png", + "id": "comfyui-skycoder-tools", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-08T12:27:31.310618Z", + "dependencies": [ + "Pillow>=8.0.0", + "torch>=1.9.0", + "numpy>=1.21.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "bb0f1bd9-177d-4b23-9312-2504a90ebbc8", + "node_id": "comfyui-skycoder-tools", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.5" + }, + "license": "{\"text\": \"MIT\"}", + "name": "Skycoder Tools", + "publisher": { + "createdAt": "2025-05-20T09:31:55.819934Z", + "description": "", + "id": "skycoder", + "logo": "", + "members": [], + "name": "Skycoder", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/skycoder182/comfyui-skycoder-tools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-22T02:27:54.83134Z", + "description": "Provides tools for applying and removing fisheye lens effects from images.", + "downloads": 1407, + "github_stars": 16, + "icon": "", + "id": "fisheye-effects", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-27T17:08:20.678601Z", + "dependencies": [ + "numpy>=1.22.0", + "opencv-python>=4.8.0", + "Pillow>=9.5.0", + "torch>=2.5.1" + ], + "deprecated": false, + "downloadUrl": "", + "id": "cd9fdd06-0647-4a8c-a792-f9d5edc4de99", + "node_id": "fisheye-effects", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Fisheye-effects", + "publisher": { + "createdAt": "2025-01-22T02:15:52.41946Z", + "description": "", + "id": "kidev", + "logo": "", + "members": [], + "name": "kidev", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Kidev/ComfyUI-Fisheye-effects", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-04T15:04:15.007344Z", + "description": "ComfyUI-Qwen-Omni is the first ComfyUI plugin supporting end-to-end multimodal interaction. \nIntegrating the Qwen2.5-Omni large multimodal model, it enables seamless joint generation and editing of text, images, audio, and video within the ComfyUI framework. \n\nKey features:\n- Dual-Mode Omni: Supports Qwen2.5-Omni-3B and Qwen2.5-Omni-7B models\n- Multi-modal input support: text prompts, images, audio files, and video frames\n- Unified output generation: coherent text descriptions and high-quality speech synthesis\n- Parameterized control: adjustable temperature, max tokens, sampling strategy\n- GPU optimization: 4-bit/8-bit quantization for low-memory environments\n- Cross-modal editing: modify content across different media types\n\nBy processing multiple input modalities simultaneously, the plugin delivers unprecedented in AI content creation, from creative writing to voiceovers and visual editing. Ideal for artists, developers, and researchers exploring the frontiers of multimodal AI.\n", + "downloads": 763, + "github_stars": 22, + "icon": "", + "id": "ComfyUI-Qwen-Omni", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-08T07:53:37.306209Z", + "dependencies": [ + "accelerate", + "qwen_omni_utils", + "numpy", + "soundfile", + "triton-windows", + "modelscope", + "bitsandbytes", + "pillow", + "requests" + ], + "deprecated": false, + "downloadUrl": "", + "id": "61eff081-b910-4f3d-83ec-6e8152f6633d", + "node_id": "ComfyUI-Qwen-Omni", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.1.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Qwen-Omni", + "publisher": { + "createdAt": "2025-04-03T11:23:35.117782Z", + "description": "", + "id": "sxqbw", + "logo": "", + "members": [], + "name": "Qwen", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SXQBW/ComfyUI-Qwen-Omni", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-20T03:34:10.126664Z", + "description": "ComfyUI nodes for StableAnimator", + "downloads": 1213, + "github_stars": 16, + "icon": "", + "id": "stableanimator", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-21T12:46:42.645936Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "70eade7b-0e95-4122-b2b6-68d062e93432", + "node_id": "stableanimator", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_StableAnimator", + "publisher": { + "createdAt": "2025-02-20T03:27:57.859548Z", + "description": "", + "id": "hjh-ailab", + "logo": "", + "members": [], + "name": "HJH-AILab", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/HJH-AILab/ComfyUI_StableAnimator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-24T19:38:46.313289Z", + "description": "A collection of utility nodes primarily for interacting with comfy via automated systems", + "downloads": 2614, + "github_stars": 18, + "icon": "", + "id": "easy-comfy-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-08T22:05:48.56558Z", + "dependencies": [ + "requests", + "boto3", + "rembg", + "pillow-avif-plugin", + "pillow-heif" + ], + "deprecated": false, + "downloadUrl": "", + "id": "53735987-ba54-42ff-9ca3-d8c25e81e694", + "node_id": "easy-comfy-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.0" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "easy-comfy-nodes", + "publisher": { + "createdAt": "2024-06-24T19:30:04.440326Z", + "description": "", + "id": "wmatson", + "logo": "", + "members": [], + "name": "sanguivore", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wmatson/easy-comfy-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-15T16:06:05.212632Z", + "description": "It make any text2image create seamless patten", + "downloads": 1530, + "github_stars": 17, + "icon": "", + "id": "comfyui_seamless_patten", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-19T13:45:03.137976Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "14600664-728d-4838-a6b7-c85974abef2a", + "node_id": "comfyui_seamless_patten", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Seamless_Patten", + "publisher": { + "createdAt": "2024-06-15T15:32:07.031322Z", + "description": "", + "id": "haiya7712", + "logo": "", + "members": [], + "name": "Haiya", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/moyi7712/ComfyUI_Seamless_Patten", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-13T18:28:54.0726Z", + "description": "Data analysis custom modules for ComfyUI \u2013 Integrates Pandas, Seaborn and Matplotlib into ComfyUI.", + "downloads": 1883, + "github_stars": 16, + "icon": "", + "id": "data-analysis", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-11T04:15:37.295629Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "89304d48-3d48-4887-8222-28d86f446722", + "node_id": "data-analysis", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "3.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Data-Analysis", + "publisher": { + "createdAt": "2025-02-13T18:14:58.535746Z", + "description": "", + "id": "how-to-sd", + "logo": "", + "members": [], + "name": "HowToSD", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/HowToSD/ComfyUI-Data-Analysis", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-21T11:56:23.847416Z", + "description": "A ComfyUI custom node for image compression that supports multiple compression formats and parameter adjustments.", + "downloads": 2282, + "github_stars": 20, + "icon": "\ud83d\udc1f", + "id": "comfyui-image-compressor", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-22T08:32:41.070592Z", + "dependencies": [ + "Pillow>=10.0.0", + "numpy>=1.24.0", + "torch>=2.0.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "4404d4d0-fc8d-4b03-8e18-29ba41b7b469", + "node_id": "comfyui-image-compressor", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "2.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Image-Compressor", + "publisher": { + "createdAt": "2024-12-21T11:32:11.395745Z", + "description": "", + "id": "liuqianhong", + "logo": "", + "members": [], + "name": "liuqianhong", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/liuqianhonga/ComfyUI-Image-Compressor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-09T12:51:14.747686Z", + "description": "ComfyUI Utility Nodes by Imagineer. 1: Catch and Edit Text; useful for grabbing AI generated prompts which you edit by hand. Doing so mutes the upstream node, improving speed and saving external calls and budget.
2. Preview Image - No Save: Previews as they should be", + "downloads": 2077, + "github_stars": 0, + "icon": "https://raw.githubusercontent.com/ImagineerNL/ComfyUI-IMGNR-Utils/refs/heads/main/img/IMGNR-Utils.jpg", + "id": "ComfyUI-IMGNR-Utils", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-19T22:10:39.716716Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "12d278af-3a29-4d50-b74a-7d0971780a29", + "node_id": "ComfyUI-IMGNR-Utils", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{}", + "name": "ComfyUI-IMGNR-Utils", + "publisher": { + "createdAt": "2025-03-29T12:48:13.233629Z", + "description": "", + "id": "imagineernl", + "logo": "", + "members": [], + "name": "ImagineerNL", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ImagineerNL/ComfyUI-IMGNR-Utils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T13:19:06.855958Z", + "description": "This extension provides various utility nodes. Inputs(image recycler, prompt, styles, dynamic, merger, ...), Outputs(style pile), Dashboard(selectors, loader, switch, ...), Networks(LORA, Embedding, Hypernetwork), Visuals(visual selectors, )", + "downloads": 3634, + "github_stars": 125, + "icon": "", + "id": "comfyui_primere_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-20T13:19:07.128487Z", + "dependencies": [ + "Pillow", + "PyYAML", + "Requests", + "addict", + "aiohttp", + "chardet", + "clip", + "dynamicprompts", + "ftfy", + "ipdb", + "numpy", + "opencv_contrib_python", + "opencv_python", + "opencv_python_headless", + "pandas", + "pefile", + "piexif", + "pipreqs", + "pycocotools", + "pyexiv2", + "pytorch_lightning", + "pytz", + "regex", + "segment_anything", + "setuptools", + "supervision", + "timm", + "tomli", + "torch", + "torchvision", + "tqdm", + "transformers", + "ultralytics", + "yapf", + "openai-clip", + "huggingface_hub" + ], + "deprecated": false, + "downloadUrl": "", + "id": "9e83c245-d094-435e-88d1-1888c80c3c42", + "node_id": "comfyui_primere_nodes", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.6.0" + }, + "license": "LICENSE", + "name": "ComfyUI_Primere_Nodes", + "publisher": { + "createdAt": "2024-06-20T12:37:49.039497Z", + "description": "", + "id": "primere", + "logo": "", + "members": [], + "name": "Primere", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/CosmicLaca/ComfyUI_Primere_Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-17T21:56:31.83811Z", + "description": "Node, workflow, and ComfyUI execution profiling. Find bottlenecks in your workflows. See trends over time.", + "downloads": 2807, + "github_stars": 60, + "icon": "\ud83d\udcc8", + "id": "comfyui_profilerx", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-26T18:33:29.68854Z", + "dependencies": [ + "psutil" + ], + "deprecated": false, + "downloadUrl": "", + "id": "00f13934-62c8-4f87-ae6d-f8304e0157c2", + "node_id": "comfyui_profilerx", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_ProfilerX", + "publisher": { + "createdAt": "2024-08-15T13:11:47.128123Z", + "description": "", + "id": "ryanontheinside", + "logo": "", + "members": [], + "name": "ryanontheinside", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ryanontheinside/ComfyUI_ProfilerX", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-20T04:45:17.613781Z", + "description": "This is a simple Hidream block swap node for ComfyUI native nodes, works by swapping upto 18 blocks to the CPU to reduce VRAM.", + "downloads": 694, + "github_stars": 2, + "icon": "", + "id": "hidreamblockswap", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-20T04:45:17.993483Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4397c77a-b7ce-4a8d-96ca-e2286bc8da69", + "node_id": "hidreamblockswap", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-HidreamBlockswap", + "publisher": { + "createdAt": "2025-04-20T04:22:43.542518Z", + "description": "", + "id": "njbx", + "logo": "", + "members": [], + "name": "Njbx", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Njbx/ComfyUI-HidreamBlockswap", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-29T01:06:28.659358Z", + "description": "Inline help panel for ComfyUI Nodes with remote HTML/Markdown support.", + "downloads": 390, + "github_stars": 1, + "icon": "https://raw.githubusercontent.com/Amorano/Jovimetrix-examples/refs/heads/master/res/logo-jovi_help.png", + "id": "jovi_help", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-17T08:24:50.191557Z", + "dependencies": [ + "aiohttp", + "loguru", + "markdownify" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b6f51e0a-c15f-4b25-be21-460414f0d6c8", + "node_id": "jovi_help", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Jovi Help", + "publisher": { + "createdAt": "2024-05-17T04:16:25.445017Z", + "description": "", + "id": "amorano", + "logo": "", + "members": [], + "name": "Joviex", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Amorano/Jovi_Help", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-07T11:23:07.003104Z", + "description": "", + "downloads": 1372, + "github_stars": 1, + "icon": "", + "id": "comfyui-fairlab", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-19T08:08:11.165675Z", + "dependencies": [ + "googletrans-py==4.0.0", + "datetime", + "opencv-python", + "asyncio", + "requests" + ], + "deprecated": false, + "downloadUrl": "", + "id": "0bc32b55-a6fc-470b-b0f1-ad5eb309c0a3", + "node_id": "comfyui-fairlab", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.27" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-FairLab", + "publisher": { + "createdAt": "2025-01-06T03:08:06.856727Z", + "description": "", + "id": "fffffair", + "logo": "", + "members": [], + "name": "Fair", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yanhuifair/ComfyUI-FairLab", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-16T03:51:52.91219Z", + "description": "ComfyUI custom nodes for Diffusion Attentive Attribution Maps (DAAM)", + "downloads": 1161, + "github_stars": 23, + "icon": "", + "id": "comfyui-daam", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-08T12:38:43.06607Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "2e3368a6-53ef-4d12-a232-687a941c7cdf", + "node_id": "comfyui-daam", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.4.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-DAAM", + "publisher": { + "createdAt": "2025-04-16T02:47:49.290907Z", + "description": "", + "id": "nisaruj", + "logo": "", + "members": [], + "name": "Nisaruj Rattanaaram", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nisaruj/comfyui-daam", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-28T16:53:19.014187Z", + "description": "Encapsulate the comfyui workflow as a gradio webui", + "downloads": 694, + "github_stars": 15, + "icon": "", + "id": "ComfyUI_to_webui", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-09T18:14:24.288833Z", + "dependencies": [ + "gradio>=3.0", + "Pillow", + "python-barcode", + "numpy", + "websocket", + "requests", + "imageio[ffmpeg]" + ], + "deprecated": false, + "downloadUrl": "", + "id": "811fd5dd-e9d3-4311-842d-60a90a09c28f", + "node_id": "ComfyUI_to_webui", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.3.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_to_webui", + "publisher": { + "createdAt": "2025-04-28T16:26:57.266006Z", + "description": "", + "id": "hua", + "logo": "", + "members": [], + "name": "ComfyUI_to_webui", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kungful/ComfyUI_to_webui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-28T00:12:45.572734Z", + "description": "ComfyUI Nodes that integrate GLSL shader support.", + "downloads": 1752, + "github_stars": 17, + "icon": "https://raw.githubusercontent.com/Amorano/Jovimetrix-examples/refs/heads/master/res/logo-jovi_glsl.png", + "id": "jovi_glsl", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-13T22:59:05.805991Z", + "dependencies": [ + "aenum>=3.1.15", + "git+https://github.com/cozy-comfyui/cozy_comfyui@main#egg=cozy_comfyui", + "glfw", + "numpy>=1.25.0", + "opencv-contrib-python", + "PyOpenGL", + "PyOpenGL-accelerate>=3.1.7; python_version < '3.12'" + ], + "deprecated": false, + "downloadUrl": "", + "id": "0eff5ef0-4381-4879-80d0-d73e41dfc8de", + "node_id": "jovi_glsl", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "version": "1.1.39" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Jovi GLSL", + "publisher": { + "createdAt": "2024-05-17T04:16:25.445017Z", + "description": "", + "id": "amorano", + "logo": "", + "members": [], + "name": "Joviex", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Amorano/Jovi_GLSL", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-02T03:18:24.094001Z", + "description": "Wrapper for EvTexture Video Upscaler: [a/https://github.com/DachunKai/EvTexture](https://github.com/DachunKai/EvTexture)", + "downloads": 1455, + "github_stars": 15, + "icon": "", + "id": "comfyui-evtexture", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-02T03:18:25.824933Z", + "dependencies": [ + "torch", + "torchvision>=0.9.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "dcaed4e6-b0be-462f-9b53-d9b9f57eaa56", + "node_id": "comfyui-evtexture", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{}", + "name": "ComfyUI-EvTexture", + "publisher": { + "createdAt": "2025-01-02T03:13:04.263885Z", + "description": "", + "id": "tocubed", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tocubed/ComfyUI-EvTexture", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T16:36:58.993908Z", + "description": "Blazingly Fast and Embarrassingly Simple End-to-End Full-Length Song Generation. A node for ComfyUI.", + "downloads": 3684, + "github_stars": 116, + "icon": "", + "id": "diffrhythm_mw", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-30T12:13:27.279482Z", + "dependencies": [ + "# accelerate==1.4.0", + "# torchdiffeq==0.2.5", + "# torchaudio==2.6.0", + "# transformers==4.49.0", + "# librosa==0.10.2.post1", + "# pyarrow==19.0.1", + "# pandas==2.2.3", + "# bitsandbytes", + "# jieba==0.42.1", + "# cn2an==0.5.23", + "# pypinyin==0.53.0", + "# onnxruntime", + "LangSegment", + "x-transformers", + "pylance", + "ema-pytorch", + "prefigure", + "muq", + "mutagen", + "pyopenjtalk", + "pykakasi", + "Unidecode", + "phonemizer" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a4e41284-a8d1-45a7-902d-19c0b69a0cab", + "node_id": "diffrhythm_mw", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.2.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_DiffRhythm_MW", + "publisher": { + "createdAt": "2025-01-06T14:10:29.10336Z", + "description": "", + "id": "mw", + "logo": "", + "members": [], + "name": "MW", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/billwuhao/ComfyUI_DiffRhythm", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-28T07:46:30.108139Z", + "description": "Provide two custom nodes to load and save images with captions as separate files.", + "downloads": 2738, + "github_stars": 8, + "icon": "", + "id": "comfyui-save-image-caption", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-28T07:46:33.845512Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "35736ec3-b239-4f74-8f62-e928d2cc9640", + "node_id": "comfyui-save-image-caption", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{}", + "name": "ComfyUI-Save-Image-Caption", + "publisher": { + "createdAt": "2024-06-18T17:31:02.726809Z", + "description": "", + "id": "tuantran1632001", + "logo": "", + "members": [], + "name": "Bill Tr\u1ea7n", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TheBill2001/ComfyUI-Save-Image-Caption", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-28T19:25:34.098703Z", + "description": "A comprehensive toolkit for ComfyUI that provides advanced image processing, analysis, and AI-powered features:\n- Semantic segmentation with multiple pre-trained models and mask processing\n- Image classification (age, food, documents, NSFW content, AI detection)\n- Image captioning using BLIP\n- Image quality scoring and filtering\n- Workflow utilities for seed management and image aspect ratio handling\n", + "downloads": 3009, + "github_stars": 30, + "icon": "\ud83d\udee0\ufe0f", + "id": "comfyui-lextools", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-26T17:46:57.907547Z", + "dependencies": [ + "torch>=2.0.0", + "transformers>=4.30.0", + "Pillow>=9.0.0", + "matplotlib>=3.0.0", + "numpy>=1.20.0", + "scipy>=1.7.0", + "huggingface_hub>=0.19.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7edc5105-5ff1-4db3-82e4-1359546328f0", + "node_id": "comfyui-lextools", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"text\": \"MIT\"}", + "name": "ComfyUI-LexTools", + "publisher": { + "createdAt": "2024-06-28T19:04:43.796921Z", + "description": "", + "id": "lexicon", + "logo": "", + "members": [], + "name": "Lexicon", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SOELexicon/ComfyUI-LexTools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-08T04:29:39.493217Z", + "description": "VideoX-Fun is a video generation pipeline that can be used to generate AI images and videos, as well as to train baseline and Lora models for Diffusion Transformer. We support direct prediction from pre-trained baseline models to generate videos with different resolutions, durations, and FPS. Additionally, we also support users in training their own baseline and Lora models to perform specific style transformations.", + "downloads": 6067, + "github_stars": 1208, + "icon": "", + "id": "videox-fun", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-08T04:29:39.900998Z", + "dependencies": [ + "Pillow", + "einops", + "safetensors", + "timm", + "tomesd", + "torch>=2.1.2", + "torchdiffeq", + "torchsde", + "decord", + "datasets", + "numpy", + "scikit-image", + "opencv-python", + "omegaconf", + "SentencePiece", + "albumentations", + "imageio[ffmpeg]", + "imageio[pyav]", + "tensorboard", + "beautifulsoup4", + "ftfy", + "func_timeout", + "accelerate>=0.25.0", + "gradio>=3.41.2,<=3.48.0", + "diffusers>=0.30.1,<=0.31.0", + "transformers>=4.46.2" + ], + "deprecated": false, + "downloadUrl": "", + "id": "3532ae78-5f87-47d7-acb2-4a3fe109cab2", + "node_id": "videox-fun", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "VideoX-Fun", + "publisher": { + "createdAt": "2025-01-13T02:07:45.112612Z", + "description": "", + "id": "bubbliiiing", + "logo": "", + "members": [], + "name": "bubbliiiing", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/aigc-apps/VideoX-Fun", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-09T09:18:50.405074Z", + "description": "ComfyUI nodes for merging, testing and more. SDNext Merge, VAE Merge, MBW Layers, Repeat VAE, Quantization.", + "downloads": 1845, + "github_stars": 14, + "icon": "", + "id": "comfyui-technodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-09T09:19:06.267247Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b7d69a2e-246d-4e18-822b-c5a60373fa48", + "node_id": "comfyui-technodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-TechNodes", + "publisher": { + "createdAt": "2024-08-09T09:12:20.321858Z", + "description": "", + "id": "technobyte", + "logo": "", + "members": [], + "name": "TechnoByte", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TechnoByteJS/ComfyUI-TechNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-22T21:14:25.202594Z", + "description": "The main node makes your conditioning go towards similar concepts so to enrich your composition or further away so to make it more precise. It gathers similar pre-cond vectors for as long as the cosine similarity score diminishes. If it climbs back it stops. This allows to set a relative direction to similar concepts.\nThere are examples at the end but [a/you can also check this imgur album](https://imgur.com/a/WvPd81Y) which demonstrates the capability of improving variety.", + "downloads": 3535, + "github_stars": 120, + "icon": "", + "id": "vector_sculptor_comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-22T21:14:25.487883Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "e9a6896d-6dd0-4f67-b846-a4fcca23c17f", + "node_id": "vector_sculptor_comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "Vector_Sculptor_ComfyUI", + "publisher": { + "createdAt": "2024-06-22T09:09:31.04495Z", + "description": "", + "id": "extraltodeus", + "logo": "", + "members": [], + "name": "Extraltodeus", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Extraltodeus/Vector_Sculptor_ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-22T23:18:20.160436Z", + "description": "Super fast multilingual speech recognition model based on Whisper Large-v3 Turbo. A node for ComfyUI.", + "downloads": 1041, + "github_stars": 15, + "icon": "", + "id": "erax-wow-turbo-mw", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-23T09:42:06.320627Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c47f5e0d-c08b-4ba4-94ef-622599b9b000", + "node_id": "erax-wow-turbo-mw", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "MW-ComfyUI_EraX-WoW-Turbo", + "publisher": { + "createdAt": "2025-01-06T14:10:29.10336Z", + "description": "", + "id": "mw", + "logo": "", + "members": [], + "name": "MW", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/billwuhao/ComfyUI_EraX-WoW-Turbo", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-02T19:31:42.398259Z", + "description": "A booru API powered prompt generator for A1111 and ComfyUI with flexible tag filtering system and customizable prompt templates.", + "downloads": 3008, + "github_stars": 40, + "icon": "", + "id": "lazy-pony-prompter", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-04T11:44:34.73496Z", + "dependencies": [ + "tqdm", + "requests" + ], + "deprecated": false, + "downloadUrl": "", + "id": "04231f73-b246-443a-a9e5-4b1ba3c33ab4", + "node_id": "lazy-pony-prompter", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "lazy-pony-prompter", + "publisher": { + "createdAt": "2024-07-02T19:14:16.679814Z", + "description": "", + "id": "siberpone", + "logo": "", + "members": [], + "name": "Siberpone", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Siberpone/lazy-pony-prompter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-24T03:00:18.349474Z", + "description": "Cyberdolphin nodes for wiring up OpenAI and compatible LLM APIs.", + "downloads": 1429, + "github_stars": 14, + "icon": "", + "id": "cyberdolphin", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-24T03:00:18.623514Z", + "dependencies": [ + "openai ~= 1.2.3", + "gradio_client", + "numpy", + "pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "3ee41faa-260c-4236-b646-d2c01ab4a80d", + "node_id": "cyberdolphin", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "cyberdolphin", + "publisher": { + "createdAt": "2024-05-23T03:13:04.442617Z", + "description": "", + "id": "whatbirdisthat", + "logo": "", + "members": [], + "name": "The Flying Dolphin", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/whatbirdisthat/cyberdolphin", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-06T17:55:48.931193Z", + "description": "This node is a registry version of Kijais https://github.com/kijai/ComfyUI-GIMM-VFI", + "downloads": 2918, + "github_stars": 1, + "icon": "", + "id": "comfy-gimm-vfi", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-06T17:55:49.326166Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "75aba2ff-8f06-48c2-b5e4-e430fe51831f", + "node_id": "comfy-gimm-vfi", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-GIMM-VFI-Registry", + "publisher": { + "createdAt": "2025-02-07T19:07:08.91332Z", + "description": "", + "id": "mattabyte", + "logo": "", + "members": [], + "name": "MattaByte", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Mattabyte/ComfyUI-GIMM-VFI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-29T05:55:00.730532Z", + "description": "Simple node to assits with prompting for Pony models", + "downloads": 2976, + "github_stars": 9, + "icon": "", + "id": "comfyui-easy-pony", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-01T20:37:17.774361Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "52b6a24a-782d-447c-9211-f4dae1dae405", + "node_id": "comfyui-easy-pony", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Easy Pony", + "publisher": { + "createdAt": "2024-11-29T05:47:52.886199Z", + "description": "", + "id": "itsjustregi", + "logo": "", + "members": [], + "name": "itsjustregi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/regiellis/ComfyUI-EasyPony", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-11T14:47:47.45392Z", + "description": "Search an index of videos by motion image", + "downloads": 1354, + "github_stars": 12, + "icon": "", + "id": "motion-video-search", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-13T08:47:11.68298Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "80494749-c5c0-4018-a373-0e10c155a6ec", + "node_id": "motion-video-search", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.8.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Motion-Video-Search", + "publisher": { + "createdAt": "2024-09-17T09:53:04.490236Z", + "description": "", + "id": "iggy101", + "logo": "", + "members": [], + "name": "IG", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/IDGallagher/MotionVideoSearch", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-22T17:51:42.256224Z", + "description": "A ComfyUI extension for controlling and managing node group execution flow. Features include single/multiple group execution, delay control, signal chaining, and execution list repetition processing.", + "downloads": 2242, + "github_stars": 147, + "icon": "", + "id": "comfyui_lg_groupexecutor", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-31T17:36:29.941096Z", + "dependencies": [ + "" + ], + "deprecated": false, + "downloadUrl": "", + "id": "20d486d1-60ec-4436-a19d-9ac162a8e2fb", + "node_id": "comfyui_lg_groupexecutor", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.4" + }, + "license": "{}", + "name": "Comfyui-LG_GroupExecutor", + "publisher": { + "createdAt": "2024-10-09T09:00:56.560993Z", + "description": "", + "id": "laogou666", + "logo": "", + "members": [], + "name": "LAOGOU-666", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LAOGOU-666/Comfyui-LG_GroupExecutor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-27T14:14:14.776229Z", + "description": "A ComfyUI extension for generating captions for your images. Runs on your own system, no external services used, no filter.\nUses various VLMs with APIs to generate captions for images. You can give instructions or ask questions in natural language.", + "downloads": 2514, + "github_stars": 15, + "icon": "https://raw.githubusercontent.com/neverbiasu/ComfyUI-Image-Captioner/main/assets/icon.png", + "id": "comfyui-image-captioner", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-01T03:33:20.052938Z", + "dependencies": [ + "http", + "torch", + "dashscope", + "torchvision" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1f690d11-eb0c-418d-b6b9-b924ed2d6765", + "node_id": "comfyui-image-captioner", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Image-Captioner", + "publisher": { + "createdAt": "2024-07-27T13:38:09.01838Z", + "description": "", + "id": "faych", + "logo": "", + "members": [], + "name": "Faych Chan", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/neverbiasu/ComfyUI-Image-Captioner", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-25T04:51:25.826283Z", + "description": "A node for ComfyUI that takes an input image and clips the color channels independently to increase contrast and alter color cast. This is a reinterpretation of PhotoShop's 'Auto Tone' algorithm.", + "downloads": 1903, + "github_stars": 14, + "icon": "https://example.com/icon.png", + "id": "comfyui-imageautotone", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-25T05:06:45.466997Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "93f08384-99d1-43a5-89fe-b13a24b86f23", + "node_id": "comfyui-imageautotone", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.2" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-ImageAutotone", + "publisher": { + "createdAt": "2024-11-22T01:36:07.508549Z", + "description": "", + "id": "sparknight", + "logo": "", + "members": [], + "name": "Sparknight", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SparknightLLC/ComfyUI-ImageAutotone", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-02T19:35:08.294055Z", + "description": "LiquidTime is a simple yet powerful frame interpolation node for ComfyUI. Just input your sequence and desired frame count - the node handles all complex calculations and generates smooth in-between frames for you. A must-have tool for AI animation and video creation that lets you shape time like liquid.", + "downloads": 1647, + "github_stars": 12, + "icon": "", + "id": "liquid-time-interpolation", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-14T18:11:53.6679Z", + "dependencies": [ + "torch>=2.0.0", + "numpy>=1.21.0", + "pillow>=9.0.0", + "tqdm>=4.65.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5809a795-4aac-4bba-a28d-1c0c4efd6c8d", + "node_id": "liquid-time-interpolation", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "LiquidTime - by PabloGFX", + "publisher": { + "createdAt": "2024-09-23T16:40:33.561343Z", + "description": "", + "id": "pablogfx", + "logo": "", + "members": [], + "name": "PabloGFX", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lazniak/LiquidTime-Interpolation", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-28T20:13:44.505839Z", + "description": "", + "downloads": 1471, + "github_stars": 12, + "icon": "", + "id": "comfyui-visualquerytemplate", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-28T20:13:48.282504Z", + "dependencies": [ + "torch", + "numpy", + "transformers" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5042dd7a-a03a-4b88-b2a3-8da2166a19ad", + "node_id": "comfyui-visualquerytemplate", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-VisualQueryTemplate", + "publisher": { + "createdAt": "2024-08-28T19:55:06.609769Z", + "description": "", + "id": "celoron", + "logo": "", + "members": [], + "name": "Celaleddin", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/celoron/ComfyUI-VisualQueryTemplate", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-04T04:19:07.839056Z", + "description": "This ComfyUI node pack allows the user to take a panoramic image and a corresponding depth map, and turn them into a 3D environment, which they can view in an immersive WebXR environment.", + "downloads": 1825, + "github_stars": 12, + "icon": "", + "id": "comfyui-environment-visualizer", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-06T07:16:12.523779Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "af543ed4-9c58-4c6c-968f-4eee73f8608a", + "node_id": "comfyui-environment-visualizer", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Environment-Visualizer", + "publisher": { + "createdAt": "2024-10-04T03:27:44.596631Z", + "description": "", + "id": "willchil", + "logo": "", + "members": [], + "name": "willchil", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/willchil/ComfyUI-Environment-Visualizer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-22T22:09:03.76326Z", + "description": "Custom nodes introducing everything-reactivity and timelines to ComfyUI", + "downloads": 1962, + "github_stars": 534, + "icon": "\ud83c\udf00", + "id": "comfyui_ryanontheinside", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-22T22:09:05.631354Z", + "dependencies": [ + "pygame", + "opencv-python==4.10.0", + "scipy", + "torchaudio", + "pillow", + "librosa==0.10.2", + "pymunk==6.8.1", + "matplotlib", + "openunmix", + "mido", + "scikit-image" + ], + "deprecated": false, + "downloadUrl": "", + "id": "566cf3a2-87ed-4544-bcbd-ee9417eb5914", + "node_id": "comfyui_ryanontheinside", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "RyanOnTheInside", + "publisher": { + "createdAt": "2024-08-15T13:11:47.128123Z", + "description": "", + "id": "ryanontheinside", + "logo": "", + "members": [], + "name": "ryanontheinside", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ryanontheinside/ComfyUI_RyanOnTheInside", + "status": "NodeStatusDeleted", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-21T07:02:03.070704Z", + "description": "Smart Face Alignment and Pasting Node", + "downloads": 1111, + "github_stars": 12, + "icon": "", + "id": "ComfyUI_FaceAlignPaste", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-21T07:02:03.505857Z", + "dependencies": [ + "numpy", + "opencv-python", + "torch", + "Pillow", + "mediapipe", + "dlib" + ], + "deprecated": false, + "downloadUrl": "", + "id": "54abd08a-b9bb-4dca-b547-e018a7c7833b", + "node_id": "ComfyUI_FaceAlignPaste", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_FaceAlignPaste", + "publisher": { + "createdAt": "2025-03-20T05:35:02.047454Z", + "description": "", + "id": "chaos", + "logo": "", + "members": [], + "name": "CHAOS", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/CHAOSEA/ComfyUI_FaceAlignPaste", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-02T20:05:29.444435Z", + "description": "This node allows the execution of Node.js application within ComfyUI by leveraging the ComfyUI-NODEJS, which starts alongside ComfyUI and facilitates the installation of Node.js. The integration enables Python subprocesses to execute Node.js scripts.", + "downloads": 1665, + "github_stars": 14, + "icon": "https://raw.githubusercontent.com/daxcay/ComfyUI-NODEJS/main/web/assets/img/logo.jpg", + "id": "comfyui-nodejs", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-02T20:05:29.703324Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4e578047-e9c0-4adb-8515-bc832d3f1169", + "node_id": "comfyui-nodejs", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-NODEJS", + "publisher": { + "createdAt": "2024-05-23T03:32:31.512265Z", + "description": "", + "id": "daxcay", + "logo": "", + "members": [], + "name": "Daxton Caylor", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/daxcay/ComfyUI-NODEJS", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-19T19:17:48.93112Z", + "description": "These are ComfyUI nodes to assist in converting images to paintings and to assist the Inspyrenet Rembg node to totally remove, or replace with a color, the original background from images so that the background does not reappear in videos or in nodes that do not retain the alpha channel in rgba images.", + "downloads": 7820, + "github_stars": 12, + "icon": "", + "id": "comfyui-img2paintingassistant", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-19T19:18:13.305655Z", + "dependencies": [ + "torch", + "numpy", + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "cc31c16b-76c1-4854-b6ea-0849510bbae5", + "node_id": "comfyui-img2paintingassistant", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Img2PaintingAssistant", + "publisher": { + "createdAt": "2024-08-15T06:07:51.42124Z", + "description": "", + "id": "isi-dev", + "logo": "", + "members": [], + "name": "isi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Isi-dev/ComfyUI-Img2PaintingAssistant", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-22T00:38:38.48961Z", + "description": "Powerful tools for image and text processing, including cross-platform workflow fixes, optimized resolution, dynamic text/image combos, and batch processing. Unlock seamless AI art creation and boost your productivity!", + "downloads": 1629, + "github_stars": 12, + "icon": "https://jammyfu.github.io/ComfyUI_PaintingCoderUtils/images/paiting_coder_icon_400.jpg", + "id": "painting_coder_utils", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-27T06:21:41.597669Z", + "dependencies": [ + "numpy>=1.21.0", + "Pillow>=9.0.0", + "torch>=1.7.0", + "gradio>=4.0.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "ce0cec83-450c-4f54-a842-9cda44c7030f", + "node_id": "painting_coder_utils", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.3.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_PaintingCoderUtils", + "publisher": { + "createdAt": "2025-01-12T12:07:01.581907Z", + "description": "", + "id": "jammyfu", + "logo": "", + "members": [], + "name": "jammyfu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jammyfu/ComfyUI_PaintingCoderUtils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-10T05:47:24.210023Z", + "description": "The project includes a set of efficient canvas tool nodes, which can place images in layers on the canvas for editing, and output the merged images and layer masks. It supports direct import of PSD files for picture elements and composition. The project also includes some nodes for improving efficiency in image and mask processing, prompt editing, logic processing, user interface control, dynamic sampling, etc.", + "downloads": 4113, + "github_stars": 16, + "icon": "", + "id": "ComfyUI_XISER_Nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-30T08:10:01.348973Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b496cb07-b4d9-4a66-85c1-dc01a7ca24e1", + "node_id": "ComfyUI_XISER_Nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.8" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_XISER_Nodes", + "publisher": { + "createdAt": "2025-02-13T15:33:03.208258Z", + "description": "", + "id": "xiser", + "logo": "", + "members": [], + "name": "XISER", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/grinlau18/ComfyUI_XISER_Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-31T20:09:59.180882Z", + "description": "I'm SD-VJ. (SD-Image share/receive to/from 3rd software using OpenGL GPU-memory-share)", + "downloads": 1448, + "github_stars": 12, + "icon": "https://www.decade.tw/wp-content/uploads/2021/09/cropped-DECADE512-150x150.png", + "id": "comfyui-decadetw-spout-syphon-im-vj", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-31T20:10:02.969144Z", + "dependencies": [ + "numpy", + "PyOpenGL", + "PyOpenGL_accelerate" + ], + "deprecated": false, + "downloadUrl": "", + "id": "2d2c1159-6b12-4914-bc97-e049ea399e69", + "node_id": "comfyui-decadetw-spout-syphon-im-vj", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.20240830.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-decadetw-spout-syphon-im-vj", + "publisher": { + "createdAt": "2024-08-24T07:56:59.30717Z", + "description": "", + "id": "xxlinxx", + "logo": "", + "members": [], + "name": "xxlinxx", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/xlinx/ComfyUI-decadetw-spout-syphon-im-vj", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-11T21:07:45.23841Z", + "description": "This extension provides various nodes to support multimodal workflows.", + "downloads": 3143, + "github_stars": 19, + "icon": "", + "id": "comfyui_fearnworksnodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-12T01:28:09.173081Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c7aea8ea-ab9c-479a-b675-89a742fe2c77", + "node_id": "comfyui_fearnworksnodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Fearnworks Nodes", + "publisher": { + "createdAt": "2024-07-11T20:50:54.40785Z", + "description": "", + "id": "fearnworks", + "logo": "", + "members": [], + "name": "fearnworks", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fearnworks/ComfyUI_FearnworksNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-02T08:15:21.63391Z", + "description": "Unofficial implementation of [a/dreamtalk](https://github.com/ali-vilab/dreamtalk) for ComfyUI", + "downloads": 1833, + "github_stars": 12, + "icon": "", + "id": "comfyui_dreamtalk", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-02T08:15:23.432769Z", + "dependencies": [ + "yacs", + "scipy", + "scikit-image", + "scikit-learn", + "PyYAML", + "Pillow", + "numpy", + "opencv-python", + "imageio", + "ffmpeg-python", + "av", + "torch", + "torchvision", + "torchaudio", + "urllib3", + "transformers", + "dlib", + "huggingface_hub" + ], + "deprecated": false, + "downloadUrl": "", + "id": "2d2b0033-4205-45aa-bda8-a59840ee6e18", + "node_id": "comfyui_dreamtalk", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Dreamtalk", + "publisher": { + "createdAt": "2024-07-02T07:53:33.661446Z", + "description": "", + "id": "hay86", + "logo": "", + "members": [], + "name": "Kaifeng Xu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hay86/ComfyUI_Dreamtalk", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-26T03:14:02.756475Z", + "description": "implementation easyanimate with llama3-8b-6bit instruction LLM generation prompt help", + "downloads": 1447, + "github_stars": 12, + "icon": "", + "id": "comfyui_llm_easyanimiate", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-26T03:14:03.024049Z", + "dependencies": [ + "torch==2.3.0+cu121", + "torchvision==0.18.0+cu121", + "Pillow", + "einops", + "safetensors", + "timm", + "tomesd", + "accelerate", + "torchdiffeq", + "torchsde", + "xformers", + "decord", + "datasets", + "numpy", + "scikit-image", + "opencv-python", + "omegaconf", + "SentencePiece", + "albumentations", + "diffusers==0.27.0", + "transformers==4.37.2", + "beautifulsoup4", + "ftfy", + "exllamav2>=0.0.17" + ], + "deprecated": false, + "downloadUrl": "", + "id": "2e86e44f-c724-494d-8ffb-f0b9a1ba8158", + "node_id": "comfyui_llm_easyanimiate", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_llm_easyanimiate", + "publisher": { + "createdAt": "2024-06-20T11:30:28.094387Z", + "description": "", + "id": "frankchieng", + "logo": "", + "members": [], + "name": "Frank Chieng", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/frankchieng/ComfyUI_llm_easyanimiate", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-08T06:22:17.292898Z", + "description": "A robust custom depth estimation node for ComfyUI using Depth-Anything models. It integrates depth estimation with configurable post-processing options including blur, median filtering, contrast enhancement, and gamma correction.", + "downloads": 1564, + "github_stars": 13, + "icon": "images/depth-estimation-icon.png", + "id": "comfyuidepthestimation", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-14T16:16:26.238836Z", + "dependencies": [ + "transformers>=4.20.0", + "tokenizers>=0.13.3", + "timm>=0.6.12", + "huggingface-hub>=0.16.0", + "protobuf==3.20.3", + "requests>=2.27.0", + "wget>=3.2" + ], + "deprecated": false, + "downloadUrl": "", + "id": "16ef799e-f90b-45d9-a955-bc140ea023e2", + "node_id": "comfyuidepthestimation", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Depth Estimation Node", + "publisher": { + "createdAt": "2024-06-18T23:56:15.482553Z", + "description": "", + "id": "limbicnation", + "logo": "", + "members": [], + "name": "Limbicnation", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Limbicnation/ComfyUIDepthEstimation", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-28T19:51:59.386304Z", + "description": "NODES:StyleShotApply", + "downloads": 1407, + "github_stars": 12, + "icon": "", + "id": "comfyui-styleshot", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-23T08:01:53.403458Z", + "dependencies": [ + "jmespath==0.10.0", + "python-dateutil==2.8.2", + "diffusers==0.29.1", + "transformers", + "accelerate==0.21.0", + "opencv-python==4.8.1.78", + "einops==0.7.0", + "botocore==1.34.139", + "basicsr" + ], + "deprecated": false, + "downloadUrl": "", + "id": "2714e674-22e4-4739-b170-193dd58d2d9f", + "node_id": "comfyui-styleshot", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-StyleShot", + "publisher": { + "createdAt": "2024-07-27T13:38:09.01838Z", + "description": "", + "id": "faych", + "logo": "", + "members": [], + "name": "Faych Chan", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/neverbiasu/ComfyUI-StyleShot", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-06T16:59:46.636881Z", + "description": "Map MIDI controllers, gamepads, and other devices to ComfyUI parameters", + "downloads": 751, + "github_stars": 15, + "icon": "\ud83c\udf9b\ufe0f", + "id": "comfyui_controlfreak", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-06T16:59:47.016012Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "cc21120f-2008-4cc4-9f21-b778968407f6", + "node_id": "comfyui_controlfreak", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_ControlFreak", + "publisher": { + "createdAt": "2024-08-15T13:11:47.128123Z", + "description": "", + "id": "ryanontheinside", + "logo": "", + "members": [], + "name": "ryanontheinside", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ryanontheinside/ComfyUI_ControlFreak", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-16T08:59:41.720252Z", + "description": "", + "downloads": 936, + "github_stars": 10, + "icon": "", + "id": "depthMapOperation", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-23T11:39:14.813356Z", + "dependencies": [ + "torch", + "numpy", + "pandas", + "scipy", + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "183e3f7d-576d-46d3-b4b4-987a7a929f8c", + "node_id": "depthMapOperation", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.5" + }, + "license": "{\"text\": \"GPL-3.0\"}", + "name": "ComfyUI_depthMapOperation", + "publisher": { + "createdAt": "2025-03-16T08:38:47.164103Z", + "description": "", + "id": "arcanomandrake", + "logo": "", + "members": [], + "name": "Arcano_Mandrake", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chri002/ComfyUI_depthMapOperation", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-29T23:18:08.926916Z", + "description": "A small collection of custom nodes for use with ComfyUI, by [Discopixel](https://discopixel.studio)", + "downloads": 1365, + "github_stars": 12, + "icon": "https://discopixel.nyc3.cdn.digitaloceanspaces.com/marketing/discopixel-studio-logo.png", + "id": "comfyui-discopixel", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-29T23:18:12.718979Z", + "dependencies": [ + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c3ce0fe9-ac7a-4291-8f64-dec27de3d450", + "node_id": "comfyui-discopixel", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.2.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "PhotoRoom Nodes by Discopixel", + "publisher": { + "createdAt": "2024-09-29T22:40:28.849221Z", + "description": "", + "id": "discopixel", + "logo": "", + "members": [], + "name": "Discopixel", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/discopixel-studio/comfyui-discopixel", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-04T08:27:02.714976Z", + "description": "Download models from Hugging Face and CivitAI.", + "downloads": 5931, + "github_stars": 75, + "icon": "", + "id": "comfyui-model-downloader", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-04T08:27:04.308111Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a7e4c824-e9aa-47f1-9d63-379e1d1eeac8", + "node_id": "comfyui-model-downloader", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Model Downloader", + "publisher": { + "createdAt": "2025-01-04T08:20:25.878013Z", + "description": "", + "id": "ciri", + "logo": "", + "members": [], + "name": "Ciri", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ciri/comfyui-model-downloader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T18:23:39.033319Z", + "description": "A ComfyUI extension to add spatial anchors/waypoints to better navigate large workflows.", + "downloads": 1380, + "github_stars": 6, + "icon": "\u2693", + "id": "comfyui-anchors", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-20T18:23:39.298516Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1eb94363-0e1a-4a99-98ec-a92a3793eeaa", + "node_id": "comfyui-anchors", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-Anchors", + "publisher": { + "createdAt": "2024-06-20T17:57:04.084176Z", + "description": "", + "id": "drjkl", + "logo": "", + "members": [], + "name": "DrJKL", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DrJKL/ComfyUI-Anchors", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-28T20:53:08.905576Z", + "description": "Adds a setting that lets you configure the default input values that nodes will load with", + "downloads": 1589, + "github_stars": 11, + "icon": "", + "id": "comfyui-default-values-manager", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-28T20:53:12.678089Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "bbfeeba7-3bf5-48b7-ab67-3cf64c581387", + "node_id": "comfyui-default-values-manager", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "comfyui-default-values-manager", + "publisher": { + "createdAt": "2024-05-26T02:18:06.707962Z", + "description": "", + "id": "christian-byrne", + "logo": "", + "members": [], + "name": "christian-byrne", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/christian-byrne/comfyui-default-values-manager", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-05T00:29:03.663998Z", + "description": "A control panel that shows all widgets from selected nodes. A whole new way to interact with Comfy!", + "downloads": 2907, + "github_stars": 72, + "icon": "", + "id": "cg-controller", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-14T01:36:03.33385Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "cd5ffe38-78d7-4697-8ce2-cf802c1f8ae4", + "node_id": "cg-controller", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.7.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "cg-controller", + "publisher": { + "createdAt": "2024-05-20T00:41:38.315381Z", + "description": "", + "id": "chrisgoringe", + "logo": "", + "members": [], + "name": "ChrisG", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chrisgoringe/cg-controller", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T11:52:12.027764Z", + "description": "Original author is ByteDance.\nComfyUI sampler for HyperSDXL UNet\nPorted from: https://huggingface.co/ByteDance/Hyper-SD", + "downloads": 2994, + "github_stars": 11, + "icon": "", + "id": "comfyui-hypersdxl1stepunetscheduler", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-20T11:52:12.284275Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "284a77a7-5d0c-48a4-aeea-d48b35db1aec", + "node_id": "comfyui-hypersdxl1stepunetscheduler", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-HyperSDXL1StepUnetScheduler", + "publisher": { + "createdAt": "2024-06-20T11:47:18.175863Z", + "description": "", + "id": "fofr", + "logo": "", + "members": [], + "name": "fofr", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fofr/ComfyUI-HyperSDXL1StepUnetScheduler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-18T15:26:37.798729Z", + "description": "ComfyUI node of Conversational Speech Model (CSM).", + "downloads": 748, + "github_stars": 5, + "icon": "", + "id": "csm_mw", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-02T14:00:47.943224Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b5878b95-8469-48c1-a592-45f8dd1e475f", + "node_id": "csm_mw", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_CSM", + "publisher": { + "createdAt": "2025-01-06T14:10:29.10336Z", + "description": "", + "id": "mw", + "logo": "", + "members": [], + "name": "MW", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/billwuhao/ComfyUI_CSM", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-03T22:45:56.009766Z", + "description": "ComfyUI Nodes for using Spout streams ", + "downloads": 1511, + "github_stars": 7, + "icon": "https://raw.githubusercontent.com/Amorano/Jovimetrix-examples/refs/heads/master/res/logo-jovi_spout.png", + "id": "jovi_spout", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-05T19:22:37.207998Z", + "dependencies": [ + "aenum", + "git+https://github.com/cozy-comfyui/cozy_comfyui@main#egg=cozy_comfyui", + "numpy<2", + "PyOpenGL", + "PyOpenGL-accelerate; python_version < '3.12'", + "SpoutGL; platform_system==\"Windows\"" + ], + "deprecated": false, + "downloadUrl": "", + "id": "dbe9d2b7-a823-4638-9cb8-ce1d1373bd0d", + "node_id": "jovi_spout", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "version": "1.1.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Jovi Spout", + "publisher": { + "createdAt": "2024-05-17T04:16:25.445017Z", + "description": "", + "id": "amorano", + "logo": "", + "members": [], + "name": "Joviex", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Amorano/Jovi_Spout", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-13T09:26:50.781135Z", + "description": "A ComfyUI node for integrating Topaz Photo AI's powerful image enhancement capabilities", + "downloads": 825, + "github_stars": 14, + "icon": "", + "id": "Comfy-Topaz-Photo", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-13T09:26:51.170352Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "0f882ee6-762e-40be-b50d-b7df6c99f93d", + "node_id": "Comfy-Topaz-Photo", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfy-Topaz-Photo", + "publisher": { + "createdAt": "2025-04-13T09:15:52.906618Z", + "description": "", + "id": "leoleexh", + "logo": "", + "members": [], + "name": "leolee", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/leoleelxh/Comfy-Topaz-Photo", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-24T23:11:12.957495Z", + "description": "image and latent quilting nodes for comfyui", + "downloads": 1368, + "github_stars": 10, + "icon": "", + "id": "comfyui_quilting", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-18T19:41:24.91247Z", + "dependencies": [ + "bmquilting[comfy] @ git+https://github.com/bmad4ever/bmquilting.git@f02c4f2d92bf3668399a661ed04a43f7a0898c22" + ], + "deprecated": false, + "downloadUrl": "", + "id": "786d69e3-21b5-4db8-bee0-819a2dc9223e", + "node_id": "comfyui_quilting", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "3.0.2" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "comfyui_quilting", + "publisher": { + "createdAt": "2024-05-22T19:48:40.164036Z", + "description": "", + "id": "bmad4ever", + "logo": "", + "members": [], + "name": "bmad", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bmad4ever/comfyui_quilting", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-08T20:48:49.236514Z", + "description": "Colorize ComfyUI nodes with defaults per node, node category or via regex filtering.", + "downloads": 1146, + "github_stars": 6, + "icon": "https://raw.githubusercontent.com/Amorano/Jovimetrix-examples/refs/heads/master/res/logo-jovi_colorizer.png", + "id": "jovi_colorizer", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-22T20:00:41.05089Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "28d28633-540a-45ac-8e3a-5b3f313debb1", + "node_id": "jovi_colorizer", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Jovi Colorizer", + "publisher": { + "createdAt": "2024-05-17T04:16:25.445017Z", + "description": "", + "id": "amorano", + "logo": "", + "members": [], + "name": "Joviex", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Amorano/Jovi_Colorizer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-26T09:42:53.372457Z", + "description": "StableDelight: Revealing Hidden Textures by Removing Specular Reflections(\u79fb\u9664\u7eb9\u7406\u8868\u9762\u955c\u9762\u53cd\u5c04)", + "downloads": 1475, + "github_stars": 12, + "icon": "", + "id": "comfyui_stabledelight_ll", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-26T09:42:57.148264Z", + "dependencies": [ + "numpy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "0afee254-8c5b-45f2-b303-615ff5b0a196", + "node_id": "comfyui_stabledelight_ll", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_StableDelight_ll", + "publisher": { + "createdAt": "2024-08-02T08:30:49.205493Z", + "description": "", + "id": "lldacing", + "logo": "", + "members": [], + "name": "lldacing", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lldacing/ComfyUI_StableDelight_ll", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-14T03:22:22.665858Z", + "description": "Nodes: Neural Neighbor, CAST, EFDM, MicroAST, UniST, AesPA, TSSAT, AesFA, ...", + "downloads": 1574, + "github_stars": 11, + "icon": "", + "id": "comfyui-styletransferplus", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-14T15:43:05.336098Z", + "dependencies": [ + "torch", + "torchvision", + "scikit-image", + "einops" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6883fb3e-3b09-4f3e-aa3b-8ebd0b8b2380", + "node_id": "comfyui-styletransferplus", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-StyleTransferPlus", + "publisher": { + "createdAt": "2024-07-01T09:04:25.846954Z", + "description": "", + "id": "fuoumarinas", + "logo": "", + "members": [], + "name": "FuouM", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/FuouM/ComfyUI-StyleTransferPlus", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-13T11:32:18.147313Z", + "description": "Nodes provide an option to combine prior and decoder models of Kandinsky 2.2.", + "downloads": 1402, + "github_stars": 10, + "icon": "https://raw.githubusercontent.com/vsevolod-oparin/comfyui-kandinsky22/main/pics/icon.jpg", + "id": "comfyui-kandinsky22", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-31T16:04:14.867506Z", + "dependencies": [ + "accelerate==0.27.2", + "diffusers @ git+https://github.com/huggingface/diffusers@31de879fb4530ad203dbdaef993404c924daf35d", + "torch>=2.2.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "fdbccf13-18ae-4792-b70c-ce0d9145ced6", + "node_id": "comfyui-kandinsky22", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"text\": \"Apache License 2.0\"}", + "name": "comfyui-kandinsky22", + "publisher": { + "createdAt": "2024-06-22T04:57:43.622836Z", + "description": "", + "id": "seva", + "logo": "", + "members": [], + "name": "Seva Oparin", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/vsevolod-oparin/comfyui-kandinsky22", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-01T04:33:19.776525Z", + "description": "ComfyUI Loop Image is a node package specifically designed for image loop processing. It provides two main processing modes: Batch Image Processing and Single Image Processing, along with supporting image segmentation and merging functions.", + "downloads": 4349, + "github_stars": 34, + "icon": "", + "id": "loop-image", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-25T08:36:58.743251Z", + "dependencies": [ + "opencv-python", + "numpy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6222a8f7-3fd6-4aec-87b6-3c8698784fc0", + "node_id": "loop-image", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Loop-image", + "publisher": { + "createdAt": "2025-01-01T04:03:59.356145Z", + "description": "", + "id": "cybereve-wain", + "logo": "", + "members": [], + "name": "CyberEve\ud83d\udc30", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/WainWong/ComfyUI-Loop-image", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-30T14:17:37.015945Z", + "description": "This custom node for ComfyUI allows you to use the Doubutsu small VLM model to describe images. Credit and further information on Doubutsu: [a/https://huggingface.co/qresearch/doubutsu-2b-pt-756](https://huggingface.co/qresearch/doubutsu-2b-pt-756)", + "downloads": 1596, + "github_stars": 10, + "icon": "", + "id": "comfyui-doubutsu-describer", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-30T14:17:38.784374Z", + "dependencies": [ + "torch", + "transformers", + "Pillow", + "bitsandbytes", + "peft" + ], + "deprecated": false, + "downloadUrl": "", + "id": "131d1db6-96e1-44f3-9307-cb0e750b6d05", + "node_id": "comfyui-doubutsu-describer", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{}", + "name": "ComfyUI-Doubutsu-Describer", + "publisher": { + "createdAt": "2024-07-26T01:45:42.941977Z", + "description": "", + "id": "enragedantelope", + "logo": "", + "members": [], + "name": "EnragedAntelope", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/EnragedAntelope/ComfyUI-Doubutsu-Describer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-21T22:12:47.809962Z", + "description": "A pack of nodes(only 2 for now) to make my life easier and hopefully yours ;)", + "downloads": 1721, + "github_stars": 10, + "icon": "", + "id": "comfyui-mzmaxam", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-21T22:12:55.641633Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "43ebcfaf-3f3a-4a91-9104-35c7e368ec50", + "node_id": "comfyui-mzmaxam", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUi-MzMaXaM", + "publisher": { + "createdAt": "2024-10-21T19:30:34.158235Z", + "description": "", + "id": "mzmaxam", + "logo": "", + "members": [], + "name": "MzMaXaM", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MzMaXaM/ComfyUi-MzMaXaM", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-26T10:57:52.308689Z", + "description": "TiledAttentionCouple is a custom node for ComfyUI that enables Attention Coupling across horizontal or vertical tiles. It allows fine(r)-grained control of prompts across different sections of the image. This is especially useful in scenarios where multiple subjects or themes need to coexist in an image without blending them.", + "downloads": 737, + "github_stars": 3, + "icon": "", + "id": "comfyui-tiledattentioncouple", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-04T16:23:08.657884Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "04bd62c5-6c13-4b6f-b275-e2687de5bce9", + "node_id": "comfyui-tiledattentioncouple", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-TiledAttentionCouple", + "publisher": { + "createdAt": "2025-05-26T10:45:58.721579Z", + "description": "", + "id": "deathspike", + "logo": "", + "members": [], + "name": "Deathspike", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Deathspike/ComfyUI-TiledAttentionCouple", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-15T09:54:32.267999Z", + "description": "", + "downloads": 1468, + "github_stars": 10, + "icon": "", + "id": "comfyui-self-guidance", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-19T11:05:49.413714Z", + "dependencies": [ + "diffusers==0.26.3", + "fuzzywuzzy==0.18.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "155022fe-0510-4909-8e14-391daa47d73b", + "node_id": "comfyui-self-guidance", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-self-guidance", + "publisher": { + "createdAt": "2024-08-15T09:26:50.030542Z", + "description": "", + "id": "forever22777", + "logo": "", + "members": [], + "name": "forever22", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/forever22777/comfyui-self-guidance", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-01T08:58:48.045663Z", + "description": "Nodes: MergeBlockWeighted", + "downloads": 1583, + "github_stars": 16, + "icon": "", + "id": "mergeblockweighted_fo_comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-01T08:58:49.769676Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3b7c578c-2a8e-4e01-9b81-ef097fe6ad2a", + "node_id": "mergeblockweighted_fo_comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "MergeBlockWeighted_fo_ComfyUI", + "publisher": { + "createdAt": "2024-07-01T08:43:48.472231Z", + "description": "", + "id": "yin-bailiang", + "logo": "", + "members": [], + "name": "YinBailiang", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/YinBailiang/MergeBlockWeighted_fo_ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-23T21:41:45.798583Z", + "description": "A node that processes input text with the [a/Unprompted templating language](https://github.com/ThereforeGames/unprompted).\n", + "downloads": 2832, + "github_stars": 10, + "icon": "", + "id": "comfyui-unprompted", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-23T21:41:46.078345Z", + "dependencies": [ + "unprompted@git+https://github.com/ThereforeGames/unprompted", + "opencv-python", + "nltk", + "pattern@git+https://github.com/NicolasBizzozzero/pattern" + ], + "deprecated": false, + "downloadUrl": "", + "id": "72b11513-1b6e-4544-9c74-e901da51e594", + "node_id": "comfyui-unprompted", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.2.1" + }, + "license": "LICENSE", + "name": "ComfyUI-Unprompted", + "publisher": { + "createdAt": "2024-06-23T21:24:01.798198Z", + "description": "", + "id": "thereforegames", + "logo": "", + "members": [], + "name": "Therefore Games", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ThereforeGames/ComfyUI-Unprompted", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-14T13:26:23.740882Z", + "description": "Convert PoseKeypoint to mask, please refer to the example workflow for usage instructions.", + "downloads": 1812, + "github_stars": 11, + "icon": "", + "id": "comfyui-posekeypoint-mask", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-14T13:26:24.057076Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "39e8792f-8853-4931-841d-c50e193ce3a9", + "node_id": "comfyui-posekeypoint-mask", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-PoseKeypoint-Mask", + "publisher": { + "createdAt": "2024-06-14T13:16:53.247288Z", + "description": "", + "id": "muzi12888", + "logo": "", + "members": [], + "name": "muzi12888", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/muzi12888/ComfyUI-PoseKeypoint-Mask", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-25T02:33:45.531203Z", + "description": "Nodes:Word Cloud, Load Text File", + "downloads": 4087, + "github_stars": 109, + "icon": "", + "id": "comfyui_wordcloud", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-25T02:33:45.79202Z", + "dependencies": [ + "numpy", + "pillow", + "torch", + "matplotlib", + "wordcloud", + "jieba" + ], + "deprecated": false, + "downloadUrl": "", + "id": "9e085f6d-652d-488f-9833-d103ecfadcfc", + "node_id": "comfyui_wordcloud", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_WordCloud", + "publisher": { + "createdAt": "2024-05-23T03:18:42.518862Z", + "description": "", + "id": "chflame163", + "logo": "", + "members": [], + "name": "chflame163", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chflame163/ComfyUI_WordCloud", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-20T10:28:17.564211Z", + "description": "The node mapping file has been readjusted to achieve a download and use functionality, thereby reducing the number of operational steps.", + "downloads": 1305, + "github_stars": 10, + "icon": "", + "id": "counternodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-20T12:59:07.530488Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c7c25bf0-428a-4c3c-961a-419157c81400", + "node_id": "counternodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Counternodes", + "publisher": { + "createdAt": "2025-02-20T08:24:57.602178Z", + "description": "", + "id": "ghostlxh", + "logo": "", + "members": [], + "name": "GHOSTLXH", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/GHOSTLXH/ComfyUI-Counternodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-10T02:33:10.577956Z", + "description": "Add a button that formats the prompts in textfields", + "downloads": 2048, + "github_stars": 34, + "icon": "", + "id": "comfyui-prompt-format", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-20T04:29:26.797122Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5879783f-7e68-46a1-bb0f-6cf593a82ee3", + "node_id": "comfyui-prompt-format", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "Prompt Format", + "publisher": { + "createdAt": "2024-07-09T07:30:07.769811Z", + "description": "", + "id": "haoming02", + "logo": "", + "members": [], + "name": "Haoming02", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Haoming02/comfyui-prompt-format", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-17T10:56:44.206277Z", + "description": "A prompt generator and CLIP encoder using AI provided by Ollama.", + "downloads": 3178, + "github_stars": 13, + "icon": "https://github.com/ScreamingHawk/comfyui-ollama-prompt-encode/blob/main/docs/icon.png?raw=true", + "id": "comfyui-ollama-prompt-encode", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-29T21:44:36.066414Z", + "dependencies": [ + "ollama==0.4.2" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d4827490-6b28-496f-9e60-a8230cb8566c", + "node_id": "comfyui-ollama-prompt-encode", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-ollama-prompt-encode", + "publisher": { + "createdAt": "2024-06-17T10:20:55.120863Z", + "description": "", + "id": "michaelstanden", + "logo": "", + "members": [], + "name": "Michael Standen", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ScreamingHawk/comfyui-ollama-prompt-encode", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-17T13:12:23.427007Z", + "description": "The Flux Prompt Saver is set of simple nodes for saving images generated with Flux with A1111-style metadata.", + "downloads": 5279, + "github_stars": 13, + "icon": "", + "id": "comfyui-flux-prompt-saver", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-30T10:47:54.457325Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "44e52635-6758-48c7-bf86-6034f1809bbc", + "node_id": "comfyui-flux-prompt-saver", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Flux-Prompt-Saver", + "publisher": { + "createdAt": "2024-08-17T13:06:18.62583Z", + "description": "", + "id": "markury", + "logo": "", + "members": [], + "name": "Markury", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/markuryy/ComfyUI-Flux-Prompt-Saver", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-05T03:56:09.944004Z", + "description": "A set of ComfyUI nodes to quickly test generated QR codes for scannability. A companion project to ComfyQR.", + "downloads": 1880, + "github_stars": 12, + "icon": "", + "id": "comfyqr-scanning-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-26T16:15:44.946222Z", + "dependencies": [ + "pyzbar" + ], + "deprecated": false, + "downloadUrl": "", + "id": "350d6900-c3a2-4f5f-9f5f-35397877247a", + "node_id": "comfyqr-scanning-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.1" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyQR-scanning-nodes", + "publisher": { + "createdAt": "2024-07-05T02:54:54.568646Z", + "description": "", + "id": "coreyryanhanson", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/coreyryanhanson/ComfyQR-scanning-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-17T14:15:06.250027Z", + "description": "Flux Pro via Replicate API\nCreate API key at [a/https://replicate.com/account/api-tokens](https://replicate.com/account/api-tokens)\nCopy config.ini.example to config.ini and put the replicate key there.", + "downloads": 1801, + "github_stars": 23, + "icon": "", + "id": "comfyui-flux-replicate-api", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-26T16:21:20.557495Z", + "dependencies": [ + "torch", + "repicate" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e6884803-6bec-4cac-ad01-04b9ae9fd0a1", + "node_id": "comfyui-flux-replicate-api", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Flux-Replicate-API", + "publisher": { + "createdAt": "2024-08-17T12:28:33.405892Z", + "description": "", + "id": "seeminglee", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smlbiobot/ComfyUI-Flux-Replicate-API", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-15T12:47:28.792575Z", + "description": "ComfyUI LayerDivider is custom nodes that generating layered psd files inside ComfyUI[w/Please follow readme and run install_windows_portable_win_py311_cu121 for ComfyUI embedded python.]", + "downloads": 2390, + "github_stars": 97, + "icon": "", + "id": "comfyui-layerdivider", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-15T15:03:16.822806Z", + "dependencies": [ + "scikit-image", + "scikit-learn", + "pandas", + "opencv-python", + "segment_anything", + "onnx" + ], + "deprecated": false, + "downloadUrl": "", + "id": "21363db8-ffb1-45fb-8a87-771a0b27bf22", + "node_id": "comfyui-layerdivider", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "LICENSE", + "name": "ComfyUI-LayerDivider", + "publisher": { + "createdAt": "2024-06-15T12:22:05.599707Z", + "description": "", + "id": "jtydhr88", + "logo": "", + "members": [], + "name": "Terry Jia", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jtydhr88/ComfyUI-LayerDivider", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-28T10:51:47.077519Z", + "description": "", + "downloads": 890, + "github_stars": 20, + "icon": "", + "id": "comfyui_kktranslator_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-16T03:59:27.259459Z", + "dependencies": [ + "torch", + "transformers", + "requests", + "json" + ], + "deprecated": false, + "downloadUrl": "", + "id": "9d444795-7dda-4f19-99f2-e234de305482", + "node_id": "comfyui_kktranslator_nodes", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_kkTranslator_nodes", + "publisher": { + "createdAt": "2024-08-28T10:46:44.37879Z", + "description": "", + "id": "kingzcheung", + "logo": "", + "members": [], + "name": "bbking", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kingzcheung/ComfyUI_kkTranslator_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-12T13:11:11.474834Z", + "description": "A lightweight image tray forked from Comfy-UI-CustomScripts with simple sorting, positioning and filtering options.", + "downloads": 1636, + "github_stars": 10, + "icon": "", + "id": "comfyui-simplefeed", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-15T04:41:38.145135Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "d3ed2a69-6780-4776-bd7c-70f697852166", + "node_id": "comfyui-simplefeed", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-simplefeed", + "publisher": { + "createdAt": "2024-09-11T11:26:01.963661Z", + "description": "", + "id": "tachyon-beep", + "logo": "", + "members": [], + "name": "John Morrissey", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tachyon-beep/comfyui-simplefeed", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-19T21:20:13.387365Z", + "description": "Automatically creates checkpoints during workflow execution. If If an workflow is canceled or ComfyUI crashes mid-execution, then these checkpoints are used when the workflow is re-queued to resume execution with minimal progress loss.", + "downloads": 1786, + "github_stars": 11, + "icon": "", + "id": "comfyui-workflowcheckpointing", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-17T20:00:03.70772Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "34b7c14d-2756-466b-9f8c-b94c71578bdc", + "node_id": "comfyui-workflowcheckpointing", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-WorkflowCheckpointing", + "publisher": { + "createdAt": "2024-06-19T21:14:26.402245Z", + "description": "", + "id": "austinmroz", + "logo": "", + "members": [], + "name": "AustinMroz", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AustinMroz/ComfyUI-WorkflowCheckpointing", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-25T15:08:11.634046Z", + "description": "A custom node for ComfyUI that analyzes and sorts images based on head orientation using MediaPipe. It detects facial landmarks, calculates head pose, and intelligently sorts images for enhanced AI image processing workflows.", + "downloads": 1673, + "github_stars": 10, + "icon": "", + "id": "head-orientation-node", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-25T15:08:13.085854Z", + "dependencies": [ + "numpy>=1.19.3", + "opencv-python>=4.5.5.64", + "mediapipe>=0.8.9.1", + "Pillow>=8.3.1", + "torch>=1.9.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "ba99e451-a03d-4982-b750-1bc3de1505da", + "node_id": "head-orientation-node", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.11" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Head-Orientation-Node - by PabloGFX", + "publisher": { + "createdAt": "2024-09-23T16:40:33.561343Z", + "description": "", + "id": "pablogfx", + "logo": "", + "members": [], + "name": "PabloGFX", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lazniak/Head-Orientation-Node-for-ComfyUI---by-PabloGFX", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-22T14:37:42.565724Z", + "description": "A custom node for ComfyUI that combines multiple videos from a directory with optional transitions and background music. Perfect for batch processing and creating seamless video compilations.", + "downloads": 4536, + "github_stars": 5, + "icon": "", + "id": "comfyui-videodircombiner", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-22T14:37:46.063415Z", + "dependencies": [ + "ffmpeg-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "431ff7c0-62e2-4674-964b-aba6b00b8496", + "node_id": "comfyui-videodircombiner", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-VideoDirCombiner", + "publisher": { + "createdAt": "2024-12-22T14:32:01.333392Z", + "description": "", + "id": "darioft", + "logo": "", + "members": [], + "name": "Dario Fernandez Torre", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DarioFT/ComfyUI-VideoDirCombiner", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-29T11:41:07.525426Z", + "description": "This node can easily switch between vertical and horizontal values with a single button.", + "downloads": 1335, + "github_stars": 1, + "icon": "", + "id": "comfyui_mittimi_width_height", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-07T07:48:25.201566Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "f1853f93-67e2-47bc-b7f3-d9495daaf57f", + "node_id": "comfyui_mittimi_width_height", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_mittimiWidthHeight", + "publisher": { + "createdAt": "2024-08-25T10:31:13.036141Z", + "description": "", + "id": "mittimi", + "logo": "", + "members": [], + "name": "mittimi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mittimi/ComfyUI_mittimiWidthHeight", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-25T00:52:22.487752Z", + "description": "using streamv2v in comfyui ", + "downloads": 1473, + "github_stars": 10, + "icon": "", + "id": "comfyui_streamv2v_plus", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-25T00:52:22.88409Z", + "dependencies": [ + "einops", + "av", + "peft", + "fire" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7a5c917e-145c-4f5d-af49-c5151777ed20", + "node_id": "comfyui_streamv2v_plus", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_Streamv2v_Plus", + "publisher": { + "createdAt": "2024-06-24T08:32:00.788126Z", + "description": "", + "id": "smthemx", + "logo": "", + "members": [], + "name": "smthemx", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_Streamv2v_Plus", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-25T01:13:07.960448Z", + "description": "a node for easy using hub pipe", + "downloads": 1515, + "github_stars": 10, + "icon": "", + "id": "comfyui_pipeline_tool", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-25T01:13:08.21426Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4ca37bef-f934-4c8c-8610-3b3e9f479331", + "node_id": "comfyui_pipeline_tool", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_Pipeline_Tool", + "publisher": { + "createdAt": "2024-06-24T08:32:00.788126Z", + "description": "", + "id": "smthemx", + "logo": "", + "members": [], + "name": "smthemx", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_Pipeline_Tool", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-25T15:53:59.522421Z", + "description": "This is an extension for ComfyUI. It retains multiple workflow tabs so that they are not lost when reloading or restarting.", + "downloads": 1258, + "github_stars": 5, + "icon": "", + "id": "keep-multiple-tabs", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-25T15:54:01.37593Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "722fe7a4-d16d-4202-b016-0e49fea18b61", + "node_id": "keep-multiple-tabs", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.1" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "comfyui-keep-multiple-tabs", + "publisher": { + "createdAt": "2024-05-23T13:19:52.220496Z", + "description": "", + "id": "taremin", + "logo": "", + "members": [], + "name": "Taremin", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Taremin/comfyui-keep-multiple-tabs", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-16T17:59:31.834659Z", + "description": "A Text To Speech node using Kokoro TTS in ComfyUI. Supports 8 languages and 150 voices", + "downloads": 2933, + "github_stars": 26, + "icon": "", + "id": "kokorotts_mw", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-02T13:22:39.241534Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "910730b3-f29c-49a7-887d-140364daaaed", + "node_id": "kokorotts_mw", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_KokoroTTS_MW", + "publisher": { + "createdAt": "2025-01-06T14:10:29.10336Z", + "description": "", + "id": "mw", + "logo": "", + "members": [], + "name": "MW", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/billwuhao/ComfyUI_KokoroTTS_MW", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-13T20:13:33.499067Z", + "description": "ComfyUI-MagnifyGlass: A powerful & customizable magnifying glass for ComfyUI. Zoom into canvas details with smooth controls, configurable activation, custom styles (shape, size, border) & WebGL performance.", + "downloads": 471, + "github_stars": 12, + "icon": "", + "id": "comfyui-magnifyglass", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-13T06:19:49.724619Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4258bb8e-3c3b-4918-943f-df246b9fc113", + "node_id": "comfyui-magnifyglass", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.4.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-MagnifyGlass", + "publisher": { + "createdAt": "2024-12-21T21:30:01.317798Z", + "description": "", + "id": "aemotionstudio", + "logo": "", + "members": [], + "name": "AEmotionStudio", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AEmotionStudio/ComfyUI-MagnifyGlass", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-07T01:51:31.169304Z", + "description": "Custom nodes to run apple/DepthPro model.", + "downloads": 1310, + "github_stars": 3, + "icon": "", + "id": "comfyui-depthpro", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-12T14:15:55.240446Z", + "dependencies": [ + "timm>=0.9.16", + "numpy<2" + ], + "deprecated": false, + "downloadUrl": "", + "id": "335a821b-ef01-468a-84a7-545c6636f468", + "node_id": "comfyui-depthpro", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"Apache License 2.0\"}", + "name": "ComfyUI-DepthPro", + "publisher": { + "createdAt": "2024-06-28T00:35:00.27544Z", + "description": "", + "id": "alexisrolland", + "logo": "", + "members": [], + "name": "alexisrolland", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alexisrolland/ComfyUI-DepthPro", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-14T11:36:11.810702Z", + "description": "OuteTTS - Unified Text-To-Speech. A node for ComfyUI.", + "downloads": 593, + "github_stars": 9, + "icon": "", + "id": "qutets-mw", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-23T09:44:10.601544Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "2060bd13-f532-41e8-9ed2-595b33eaf14a", + "node_id": "qutets-mw", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "MW-ComfyUI_OuteTTS", + "publisher": { + "createdAt": "2025-01-06T14:10:29.10336Z", + "description": "", + "id": "mw", + "logo": "", + "members": [], + "name": "MW", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/billwuhao/ComfyUI_OuteTTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-22T23:26:22.91173Z", + "description": "Multi language translation comfyui nodes. XiaoMi GemmaX, quickmt etc.", + "downloads": 1030, + "github_stars": 23, + "icon": "", + "id": "gemmax-mw", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-30T12:18:06.622483Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5044cae7-e0fe-4166-aafe-9480e1c6e774", + "node_id": "gemmax-mw", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "MW-ComfyUI_gemmax", + "publisher": { + "createdAt": "2025-01-06T14:10:29.10336Z", + "description": "", + "id": "mw", + "logo": "", + "members": [], + "name": "MW", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/billwuhao/ComfyUI_gemmax", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-19T23:05:16.956133Z", + "description": "Use model bending to push your model beyond its visuals limits. These nodes allow you to apply transformations to the intemediate densoising steps during sampling, e.g. add, multiplty, scale, rotate, dilate, erode ..etc.", + "downloads": 936, + "github_stars": 13, + "icon": "", + "id": "ComfyUI-Model-Bending", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-24T01:37:35.416501Z", + "dependencies": [ + "kornia", + "scikit-learn" + ], + "deprecated": false, + "downloadUrl": "", + "id": "dd2007db-3cc3-4113-b740-b9c9d9df1f5a", + "node_id": "ComfyUI-Model-Bending", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.8" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Model Bending", + "publisher": { + "createdAt": "2025-03-19T22:27:25.616517Z", + "description": "", + "id": "abuzreq", + "logo": "", + "members": [], + "name": "abuzreq", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/abuzreq/ComfyUI-Model-Bending", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-24T05:10:48.643498Z", + "description": "A custom node for a LMStudio integration into ComfyUI.", + "downloads": 1662, + "github_stars": 10, + "icon": "", + "id": "YANC_LMStudio", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-30T14:57:36.582814Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "86bb5274-e808-410c-908b-d40dcd3c94e9", + "node_id": "YANC_LMStudio", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "YANC_LMStudio", + "publisher": { + "createdAt": "2025-03-22T06:39:51.711684Z", + "description": "", + "id": "alatentplace", + "logo": "", + "members": [], + "name": "A Latent Place", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ALatentPlace/YANC_LMStudio", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-21T22:18:39.498836Z", + "description": "This initiative represents a solo venture dedicated to integrating a stereopsis effect within ComfyUI (Stable Diffusion). Presently, the project is focused on the refinement of node categorization within a unified framework, as it is in the early stages of development. However, it has achieved functionality in a fundamental capacity. By processing a video through the Side-by-Side (SBS) node and applying Frame Delay to one of the inputs, it facilitates the creation of a stereopsis effect. This effect is compatible with any Virtual Reality headset that supports SBS video playback, offering a practical application in immersive media experiences.", + "downloads": 1443, + "github_stars": 9, + "icon": "", + "id": "comfyui-stereopsis", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-21T22:18:39.886072Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "d68e610b-602e-4f3b-99a5-0fff5574b553", + "node_id": "comfyui-stereopsis", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-Stereopsis", + "publisher": { + "createdAt": "2024-06-21T20:44:56.637386Z", + "description": "", + "id": "isitdanorai", + "logo": "", + "members": [], + "name": "IsItDanOrAi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/IsItDanOrAi/ComfyUI-Stereopsis", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-26T06:51:02.763981Z", + "description": "A ComfyUI node for producing stereoscopic and autostereogram (magic eye) images and videos.", + "downloads": 1725, + "github_stars": 9, + "icon": "https://www.mws.biz/wp-content/uploads/2021/02/cropped-MWSoftwareFavicon-1-180x180.png", + "id": "comfyui-stereovision", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-04T14:11:24.63754Z", + "dependencies": [ + "torch", + "Pillow", + "numpy", + "tqdm", + "numba", + "opencv-python", + "scipy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7dcc2a05-6eca-47ff-9cee-0417356ecf09", + "node_id": "comfyui-stereovision", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "StereoVision", + "publisher": { + "createdAt": "2024-07-15T13:02:49.468005Z", + "description": "", + "id": "drunreal", + "logo": "", + "members": [], + "name": "Dr. Unreal", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DrMWeigand/ComfyUI-StereoVision", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-25T01:03:58.709067Z", + "description": "you can using customnet in comfyUI ", + "downloads": 1378, + "github_stars": 10, + "icon": "", + "id": "comfyui_customnet", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-25T01:03:59.019227Z", + "dependencies": [ + "carvekit-colab==4.1.0", + "torch-fidelity==0.3.0", + "lovely-numpy>=0.2.8", + "lovely-tensors>=0.1.14", + "-e git+https://github.com/CompVis/taming-transformers.git@master#egg=taming-transformers" + ], + "deprecated": false, + "downloadUrl": "", + "id": "06bcf8bf-01a0-4bc0-b2a3-1ad15855ab7e", + "node_id": "comfyui_customnet", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_CustomNet", + "publisher": { + "createdAt": "2024-06-24T08:32:00.788126Z", + "description": "", + "id": "smthemx", + "logo": "", + "members": [], + "name": "smthemx", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_CustomNet", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-30T03:42:28.814046Z", + "description": "This is a simple node for creating prompts using a .csv file. I created this node as an easy way to output different prompts each time a workflow is run.", + "downloads": 1961, + "github_stars": 10, + "icon": "", + "id": "comfyui-csv-prompt-builder", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-30T03:42:30.575Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1f3c4f2d-15cb-479d-ad58-ee5abfc02f99", + "node_id": "comfyui-csv-prompt-builder", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-CSV-prompt-builder", + "publisher": { + "createdAt": "2024-06-30T03:30:51.907333Z", + "description": "", + "id": "jroc22", + "logo": "", + "members": [], + "name": "jroc", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jroc22/ComfyUI-CSV-prompt-builder", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-05T00:09:48.234392Z", + "description": "This is a custom node to convert only the Diffusion model part or CLIP model part to fp8 in ComfyUI.\nVAE fp8 conversion is not supported.\nThe advantage of this node is that you do not need to separate unet/clip/vae in advance when converting to fp8, but can use the safetenros files that ComfyUI provides.", + "downloads": 3011, + "github_stars": 24, + "icon": "", + "id": "comfyui_diffusionmodel_fp8_converter", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-05T00:09:52.00292Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "fab966ea-56b4-4f2e-bc52-ad212b790dec", + "node_id": "comfyui_diffusionmodel_fp8_converter", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_DiffusionModel_fp8_converter", + "publisher": { + "createdAt": "2024-08-29T19:25:10.712416Z", + "description": "", + "id": "shiba2shiba", + "logo": "", + "members": [], + "name": "Shiba's ComfyUI Nodes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Shiba-2-shiba/ComfyUI_DiffusionModel_fp8_converter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-26T02:58:00.79501Z", + "description": "API call node for Third-party platforms both official and local. Support VLMs LLMs Dalle3 Flux-Pro etc(new Support gpt-image-1 api!!!). And some little tools: img to b64 url, b64 url to img, b64 url to b64 data, reg text to word and ',' only, etc.", + "downloads": 1585, + "github_stars": 10, + "icon": "", + "id": "comfyui_billbum_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-03T02:48:53.797291Z", + "dependencies": [ + "tenacity", + "openai", + "pillow", + "requests", + "torch", + "numpy", + "tiktoken" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e6f67d74-96c4-4b3b-9cde-828148715e57", + "node_id": "comfyui_billbum_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_BillBum_Nodes", + "publisher": { + "createdAt": "2024-10-22T04:04:40.717681Z", + "description": "", + "id": "billbum", + "logo": "", + "members": [], + "name": "billbum", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AhBumm/ComfyUI_BillBum_Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-21T12:01:48.757629Z", + "description": "NODES: Webpage Screenshot, Camera Watermark, Template To Image", + "downloads": 1490, + "github_stars": 11, + "icon": "\ud83d\udc1f", + "id": "comfyui-html2image", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-22T07:59:13.676601Z", + "dependencies": [ + "selenium>=4.0.0", + "Pillow>=9.0.0", + "webdriver_manager>=4.0.0", + "torch>=2.0.0", + "numpy>=1.24.0", + "jinja2>=3.0.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "2d3252a2-6fc9-471f-9bab-7438a869bd79", + "node_id": "comfyui-html2image", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "2.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Html2Image", + "publisher": { + "createdAt": "2024-12-21T11:32:11.395745Z", + "description": "", + "id": "liuqianhong", + "logo": "", + "members": [], + "name": "liuqianhong", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/liuqianhonga/ComfyUI-Html2Image", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-19T15:45:09.394492Z", + "description": "Various nodes related to audio.", + "downloads": 1386, + "github_stars": 9, + "icon": "", + "id": "audio-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-22T13:50:31.951751Z", + "dependencies": [ + "funcy", + "encodec" + ], + "deprecated": false, + "downloadUrl": "", + "id": "516b9a77-69f8-40cb-9912-e62a4ef940b2", + "node_id": "audio-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Audio nodes", + "publisher": { + "createdAt": "2025-01-07T15:38:30.271927Z", + "description": "", + "id": "mylo", + "logo": "", + "members": [], + "name": "Mylo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gitmylo/ComfyUI-audio-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-07T19:50:11.12898Z", + "description": "A node to replicate https://huggingface.co/spaces/latentexplorers/latentnavigation-flux", + "downloads": 1866, + "github_stars": 9, + "icon": "", + "id": "comfyui-clipslider", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-07T19:50:14.899647Z", + "dependencies": [ + "diffusers" + ], + "deprecated": false, + "downloadUrl": "", + "id": "9573f7be-1579-4334-ae72-fc688d420a49", + "node_id": "comfyui-clipslider", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-CLIPSlider", + "publisher": { + "createdAt": "2024-08-06T19:57:24.499274Z", + "description": "", + "id": "rhizonymph", + "logo": "", + "members": [], + "name": "RhizoNymph", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/RhizoNymph/ComfyUI-CLIPSlider", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-03T16:19:20.931605Z", + "description": "ComfyUI GLM-4 Wrapper. This powerful tool enhances your prompt engineering process by allowing users to easily construct detailed, high-quality prompts for image/video generation based on user image and/or user prompts.", + "downloads": 1723, + "github_stars": 19, + "icon": "", + "id": "comfyui_glm4_wrapper", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-03T16:19:24.730475Z", + "dependencies": [ + "torch>=2.4.0", + "torchvision>=0.19.0", + "transformers==4.44.0", + "huggingface-hub>=0.24.5", + "sentencepiece>=0.2.0", + "jinja2>=3.1.4", + "pydantic>=2.8.2", + "timm>=1.0.8", + "tiktoken>=0.7.0", + "numpy==1.26.4", + "accelerate>=0.33.0", + "sentence_transformers>=3.0.1", + "einops>=0.8.0", + "pillow>=10.4.0", + "sse-starlette>=2.1.3", + "bitsandbytes>=0.43.3", + "optimum>=1.22.0", + "botocore>=1.35.10" + ], + "deprecated": false, + "downloadUrl": "", + "id": "aeaedea6-c088-4a4c-af7d-dc8223a04433", + "node_id": "comfyui_glm4_wrapper", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_GLM4_Wrapper", + "publisher": { + "createdAt": "2024-10-03T16:10:09.23222Z", + "description": "", + "id": "nojahhh", + "logo": "", + "members": [], + "name": "Nojahhh", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Nojahhh/ComfyUI_GLM4_Wrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-27T00:24:08.435378Z", + "description": "Utility custom nodes for special effects, image manipulation and quality of life tools.", + "downloads": 1841, + "github_stars": 25, + "icon": "https://github.com/gonzalu/ComfyUI_YFG_Comical/raw/main/img/lion-face.svg", + "id": "comfyui_yfg_comical", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-03T20:30:31.701833Z", + "dependencies": [ + "transformers", + "typer", + "typing-extensions" + ], + "deprecated": false, + "downloadUrl": "", + "id": "9ad47ed1-a591-4a9a-8032-15b2c283a59f", + "node_id": "comfyui_yfg_comical", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.1" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI_YFG_Comical", + "publisher": { + "createdAt": "2024-06-26T18:23:33.722647Z", + "description": "", + "id": "gonzalu", + "logo": "", + "members": [], + "name": "Manny Gonzalez", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gonzalu/ComfyUI_YFG_Comical", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-02T02:34:14.296968Z", + "description": "Custom nodes to run microsoft/Phi models.", + "downloads": 1455, + "github_stars": 9, + "icon": "", + "id": "comfyui-phi", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-02T16:03:34.757027Z", + "dependencies": [ + "accelerate>=0.31.0", + "backoff>=2.2.1", + "peft>=0.13.2" + ], + "deprecated": false, + "downloadUrl": "", + "id": "4d6a0feb-5a69-4d69-b5c1-1af1f3eff5b8", + "node_id": "comfyui-phi", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "4.0.3" + }, + "license": "{\"text\": \"Apache License 2.0\"}", + "name": "ComfyUI-Phi", + "publisher": { + "createdAt": "2024-06-28T00:35:00.27544Z", + "description": "", + "id": "alexisrolland", + "logo": "", + "members": [], + "name": "alexisrolland", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alexisrolland/ComfyUI-Phi", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-29T12:59:12.048744Z", + "description": "This is a custom node for ComfyUI.\nFeatures:Removes white areas in the input image by making them transparent based on brightness, Outputs in black and transparent, Outputs in gray and transparent.\nThis is a simple node with the above functionalities implemented. It also supports sequential processing.", + "downloads": 1385, + "github_stars": 9, + "icon": "", + "id": "aap", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-29T12:59:12.452902Z", + "dependencies": [ + "numpy", + "torch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e00c367f-f852-4c93-9ade-6474e4cebcc5", + "node_id": "aap", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-AAP", + "publisher": { + "createdAt": "2025-01-29T12:34:46.60351Z", + "description": "", + "id": "hakoniwa", + "logo": "", + "members": [], + "name": "hakoniwa", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/852wa/ComfyUI-AAP", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-17T03:56:52.442848Z", + "description": "Used to process video redrawing, frame skipping, frame ending early, etc.", + "downloads": 2274, + "github_stars": 12, + "icon": "", + "id": "comfyui-frameskipping", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-17T04:37:27.794808Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4acc998c-45cd-4786-987b-c52a36f7aa83", + "node_id": "comfyui-frameskipping", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-FrameSkipping", + "publisher": { + "createdAt": "2024-06-17T03:23:30.054242Z", + "description": "", + "id": "baicai99", + "logo": "", + "members": [], + "name": "baicai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/baicai99/ComfyUI-FrameSkipping", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-23T07:48:44.624347Z", + "description": "This node is to fill image for outpainting(inpainting)\nFill image using cv2 methods(cv2_ns, cv2_telea and edge_pad)", + "downloads": 2104, + "github_stars": 9, + "icon": "", + "id": "comfyui-fill-image-for-outpainting", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-26T00:40:30.937675Z", + "dependencies": [ + "opencv-python==4.8.1.78", + "SciPy==1.11.4" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c2cc6b2e-17a2-481b-8c7e-4f0021905d95", + "node_id": "comfyui-fill-image-for-outpainting", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Fill-Image-for-Outpainting", + "publisher": { + "createdAt": "2024-08-23T05:46:47.037234Z", + "description": "", + "id": "hyejinlee12", + "logo": "", + "members": [], + "name": "Lhyejin", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Lhyejin/ComfyUI-Fill-Image-for-Outpainting", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-09T10:13:17.61734Z", + "description": "Implementation of Fast Fourier Transform in COMFYUI", + "downloads": 1343, + "github_stars": 8, + "icon": "", + "id": "comfyui_lg_fft", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-09T10:13:21.171267Z", + "dependencies": [ + "torch", + "torchvision", + "numpy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "364c1d60-13c4-4cc4-897d-85ff97e8ec00", + "node_id": "comfyui_lg_fft", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_LG_FFT", + "publisher": { + "createdAt": "2024-10-09T09:00:56.560993Z", + "description": "", + "id": "laogou666", + "logo": "", + "members": [], + "name": "LAOGOU-666", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LAOGOU-666/ComfyUI_LG_FFT", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-16T08:41:24.71558Z", + "description": "This custom node for ComfyUI allows you to create layers of an image based on input masks and save them into a PSD file.", + "downloads": 2811, + "github_stars": 54, + "icon": "", + "id": "comfyui-layers", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-16T08:41:28.211322Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "942d2e29-5527-4f80-8c52-9a0891137827", + "node_id": "comfyui-layers", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-Layers", + "publisher": { + "createdAt": "2024-07-15T12:00:41.934469Z", + "description": "", + "id": "alezonta", + "logo": "", + "members": [], + "name": "Alessandro Zonta", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alessandrozonta/ComfyUI-Layers", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-14T23:47:02.041459Z", + "description": "FLOAT Talking Portrait (image+audio to talking video) Optimize nodes. FLOAT is the Generative Motion Latent Flow Matching for Audio-driven Talking Portrait. It can animate an image using an audio. Nodes from simple to complex are provided. Optimized for low VRAM and supporting the use of one single file model. You can also experiment with very advanced nodes and dynamic emotions.", + "downloads": 1033, + "github_stars": 18, + "icon": "", + "id": "float-optimized", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-03T11:58:54.006726Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "7916b978-d4c3-4157-881c-256948dd0a81", + "node_id": "float-optimized", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE.md\"}", + "name": "FLOAT Optimized", + "publisher": { + "createdAt": "2024-11-21T16:22:47.52117Z", + "description": "", + "id": "set-soft", + "logo": "", + "members": [], + "name": "Salvador Eduardo Tropea", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/set-soft/ComfyUI-FLOAT_Optimized", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-21T21:00:34.717759Z", + "description": "These nodes provide a wrapper for calling Draw Things image generations from ComfyUI. The Draw Things app has been optimized for Apple hardware and runs roughly x3 faster than ComfyUI generations. But ComfyUI is a flexible and powerful tool, and has some features - like queuing and face swapping - that haven't been implemented in Draw Things.", + "downloads": 1864, + "github_stars": 32, + "icon": "", + "id": "comfyui-drawthingswrapper", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-21T21:00:38.565866Z", + "dependencies": [ + "numpy", + "PIL", + "requests", + "torch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "311de4b0-a1c0-468b-923c-33d03462d01f", + "node_id": "comfyui-drawthingswrapper", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-DrawThingsWrapper", + "publisher": { + "createdAt": "2024-10-21T16:39:52.144723Z", + "description": "", + "id": "seosamh", + "logo": "", + "members": [], + "name": "Seosamh", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/JosephThomasParker/ComfyUI-DrawThingsWrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-29T10:45:08.629714Z", + "description": "A custom node for ComfyUI that provides the ability to clear the cache directly from your workflow.", + "downloads": 607, + "github_stars": 8, + "icon": "", + "id": "cache-cleaner", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-29T10:45:09.063089Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "468ea578-742b-4f88-aac5-2649c5ab5f7d", + "node_id": "cache-cleaner", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-cache-cleaner", + "publisher": { + "createdAt": "2025-05-28T12:03:54.588527Z", + "description": "", + "id": "aitoldmeto", + "logo": "", + "members": [], + "name": "AIToldMeTo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIToldMeTo/comfyui-cache-cleaner", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-12T20:02:32.341697Z", + "description": "This is a collection of nodes created to aid when managing area conditionings.", + "downloads": 5270, + "github_stars": 72, + "icon": "", + "id": "comfyui-visualarea-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-05T17:01:15.304431Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "59ba75d7-9c81-4aeb-9172-02c91406b15d", + "node_id": "comfyui-visualarea-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-VisualArea-Nodes", + "publisher": { + "createdAt": "2024-09-12T19:53:40.873259Z", + "description": "", + "id": "fuwuffyi", + "logo": "", + "members": [], + "name": "Fuwuffy", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Fuwuffyi/ComfyUI-VisualArea-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-26T17:35:22.380912Z", + "description": "checkpointloader extension: auto add VAELoader and CLIPSetLastLayer, with checkpoints info manager(right click the node)", + "downloads": 2368, + "github_stars": 0, + "icon": "", + "id": "comfyui_checkpointloader_ext", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-26T17:35:23.830402Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "cd338dab-ddf0-481f-bafb-21db411da15d", + "node_id": "comfyui_checkpointloader_ext", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_CheckPointLoader_Ext", + "publisher": { + "createdAt": "2024-08-26T15:24:30.828041Z", + "description": "", + "id": "shuanshuanzai", + "logo": "", + "members": [], + "name": "quanse.cn", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shuanshuan/ComfyUI_CheckPointLoader_Ext", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-12T14:46:40.570118Z", + "description": "Interactive sigma schedule editor with graph and text input.", + "downloads": 581, + "github_stars": 8, + "icon": "https://i.imgur.com/eysFHSU.png", + "id": "TWanSigmaGraph", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-17T08:40:31.573494Z", + "dependencies": [ + "# requirements.txt for TWanSigmaGraph", + "# This custom node requires PyTorch to create the sigma schedule tensor.", + "torch>=2.6.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "06c0c0d0-2b59-4993-8abb-d6c8da595022", + "node_id": "TWanSigmaGraph", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.2.0-alpha" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI", + "publisher": { + "createdAt": "2025-04-12T13:08:21.175817Z", + "description": "", + "id": "temult", + "logo": "", + "members": [], + "name": "Temult", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Temult/TWanSigmaGraph", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-25T03:06:26.266952Z", + "description": "A model cached-loader custom node for ComfyUI.", + "downloads": 708, + "github_stars": 8, + "icon": "", + "id": "ComfyUI_Model_Cache", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-25T03:06:26.65163Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b49718db-ecaa-4873-983d-6ffe821326bf", + "node_id": "ComfyUI_Model_Cache", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Model_Cache", + "publisher": { + "createdAt": "2025-03-24T09:45:11.461476Z", + "description": "", + "id": "caijizhuo", + "logo": "", + "members": [], + "name": "caijizhuo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/infinigence/ComfyUI_Model_Cache", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-24T09:29:18.627518Z", + "description": "This project implements a set of custom nodes for ComfyUI, integrating some of the API interfaces provided by [a/TAMS](https://tams.tensor.art/).", + "downloads": 1094, + "github_stars": 9, + "icon": "https://image.tensorartassets.com/cdn-cgi/image/anim=true,plain=false,f=avif,q=85/frontend/1720777845454.svg", + "id": "ComfyUI_TENSOR_ART", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-27T08:53:24.36491Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a4c94101-9e4a-4df6-97c1-1d998928fa1f", + "node_id": "ComfyUI_TENSOR_ART", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_TENSOR_ART", + "publisher": { + "createdAt": "2025-03-24T09:18:26.41431Z", + "description": "", + "id": "cage1993", + "logo": "", + "members": [], + "name": "cage1993", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Tensor-Art/ComfyUI_TENSOR_ART", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-09T09:26:07.940592Z", + "description": "Add a button that formats the workflow graph", + "downloads": 1564, + "github_stars": 8, + "icon": "", + "id": "comfyui-node-beautify", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-09T09:05:00.509644Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "10a11901-2509-4e84-bce2-9cec6014b471", + "node_id": "comfyui-node-beautify", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "Node Beautify", + "publisher": { + "createdAt": "2024-07-09T07:30:07.769811Z", + "description": "", + "id": "haoming02", + "logo": "", + "members": [], + "name": "Haoming02", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Haoming02/comfyui-node-beautify", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-28T14:28:04.097937Z", + "description": "LatentSync 1.5 wrapper for ComfyUI", + "downloads": 949, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-AV-LatentSync", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-28T14:28:04.531864Z", + "dependencies": [ + "diffusers", + "transformers", + "huggingface-hub", + "omegaconf", + "einops", + "opencv-python", + "mediapipe", + "face-alignment", + "decord", + "ffmpeg-python", + "safetensors", + "soundfile" + ], + "deprecated": false, + "downloadUrl": "", + "id": "55022cfd-5a47-441c-8a0c-a1767ddfc38e", + "node_id": "ComfyUI-AV-LatentSync", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-AV-LatentSync", + "publisher": { + "createdAt": "2025-04-16T14:14:31.729599Z", + "description": "", + "id": "av", + "logo": "", + "members": [], + "name": "Aven", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/avenstack/ComfyUI-AV-LatentSync", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-25T11:42:36.07569Z", + "description": "Miscellaneous utility nodes, including wilcards, macros and variables", + "downloads": 1697, + "github_stars": 8, + "icon": "", + "id": "comfyui-utility-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-25T11:42:36.366976Z", + "dependencies": [ + "lark", + "jinja2" + ], + "deprecated": false, + "downloadUrl": "", + "id": "684eb912-a9c1-40c2-ac68-5cd095ce3a2e", + "node_id": "comfyui-utility-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI utility nodes", + "publisher": { + "createdAt": "2024-05-23T17:42:14.692322Z", + "description": "", + "id": "asagi4", + "logo": "", + "members": [], + "name": "asagi4", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/asagi4/comfyui-utility-nodes", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-26T05:00:21.569264Z", + "description": "The Qwen3 ComfyUI Integration is a powerful tool designed specifically for ComfyUI workflows, aiming to seamlessly integrate Qwen series large language models (LLMs).", + "downloads": 491, + "github_stars": 6, + "icon": "", + "id": "ComfyUI-Qwen3", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-26T05:00:21.949969Z", + "dependencies": [ + "accelerate>=1.0", + "huggingface-hub>=0.26.2", + "torch>=2.6", + "transformers>=4.51.0", + "modelscope" + ], + "deprecated": false, + "downloadUrl": "", + "id": "3af77f60-8b0d-4ca6-96e8-f558d4c146fb", + "node_id": "ComfyUI-Qwen3", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Qwen", + "publisher": { + "createdAt": "2025-04-03T11:23:35.117782Z", + "description": "", + "id": "sxqbw", + "logo": "", + "members": [], + "name": "Qwen", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SXQBW/ComfyUI-Qwen", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-09T02:53:00.241611Z", + "description": "Nodes to interact with the mrv2 player", + "downloads": 1314, + "github_stars": 4, + "icon": "", + "id": "comfyui-mrv2", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-27T17:25:01.681536Z", + "dependencies": [ + "openexr", + "pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "64024f95-1523-4323-a307-89424474d318", + "node_id": "comfyui-mrv2", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-mrv2", + "publisher": { + "createdAt": "2024-10-08T16:34:17.105444Z", + "description": "", + "id": "ggarra13", + "logo": "", + "members": [], + "name": "Gonzalo Garramu\u00f1o", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ggarra13/ComfyUI-mrv2", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-22T05:32:49.165336Z", + "description": "Several utility nodes for use with ComfyUI.", + "downloads": 1353, + "github_stars": 8, + "icon": "", + "id": "comfyui-nich-utils", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-22T05:32:49.460304Z", + "dependencies": [ + "torchvision", + "numpy", + "torch", + "PIL" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6b03a254-189d-42d7-b287-146b6fe3445b", + "node_id": "comfyui-nich-utils", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.6" + }, + "license": "LICENSE", + "name": "ComfyUI Nich Utils", + "publisher": { + "createdAt": "2024-06-16T10:40:39.991474Z", + "description": "", + "id": "nickve28", + "logo": "", + "members": [], + "name": "ComfyUI Nich Utils", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nickve28/ComfyUI-Nich-Utils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-29T10:37:36.280385Z", + "description": "Yet another set of LLM nodes for ComfyUI (for local/remote OpenAI-like APIs, multi-modal models supported)", + "downloads": 1566, + "github_stars": 3, + "icon": "", + "id": "comfyui-yallm-node", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-28T12:37:51.406002Z", + "dependencies": [ + "openai", + "pydantic", + "pyyaml" + ], + "deprecated": false, + "downloadUrl": "", + "id": "836ee109-e4b8-4a2f-95e4-16880ea211eb", + "node_id": "comfyui-yallm-node", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.4.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-YALLM-node", + "publisher": { + "createdAt": "2024-09-29T10:13:00.168645Z", + "description": "", + "id": "asaddi", + "logo": "", + "members": [], + "name": "Allan Saddi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/asaddi/ComfyUI-YALLM-node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-24T03:46:26.917172Z", + "description": "Random nodes for ComfyUI I made to solve my struggle with ComfyUI (ex: pipe, process). Have varying quality.", + "downloads": 4757, + "github_stars": 128, + "icon": "", + "id": "comfyui-0246", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-15T03:39:54.701299Z", + "dependencies": [ + "wrapt", + "natsort" + ], + "deprecated": false, + "downloadUrl": "", + "id": "bbc56e10-7f11-451e-8bf6-6ae0002af257", + "node_id": "comfyui-0246", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-0246", + "publisher": { + "createdAt": "2024-05-24T03:28:59.211484Z", + "description": "", + "id": "trung0246", + "logo": "", + "members": [], + "name": "Trung0246", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Trung0246/ComfyUI-0246", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-22T02:26:48.306207Z", + "description": "ComfyUI node library for fine-tuning LLMs", + "downloads": 1397, + "github_stars": 7, + "icon": "", + "id": "comfyui_llm_schools", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-22T02:26:52.127359Z", + "dependencies": [ + "huggingface_hub", + "datasets", + "transformers", + "peft" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b87b4d2a-2a66-4646-a2a0-5594719d4f46", + "node_id": "comfyui_llm_schools", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_LLM_schools", + "publisher": { + "createdAt": "2024-08-22T01:07:33.770142Z", + "description": "", + "id": "heshengtao", + "logo": "", + "members": [], + "name": "heshengtao", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/heshengtao/comfyui_LLM_schools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-05T14:08:39.330452Z", + "description": "Nodes:MultiTextEncode, KolorsMultiTextEncode, Caption, BatchImageProcessor", + "downloads": 1492, + "github_stars": 0, + "icon": "", + "id": "comfyui_emojiiii_custom_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-03T00:57:44.828457Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3ca489bd-5130-48b1-9e40-76e7cb3c1aa0", + "node_id": "comfyui_emojiiii_custom_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Emojiiii_Custom_Nodes", + "publisher": { + "createdAt": "2024-08-05T14:00:50.444074Z", + "description": "", + "id": "emojiiii", + "logo": "", + "members": [], + "name": "emojiiii", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/emojiiii/ComfyUI_Emojiiii_Custom_Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-14T06:20:08.826085Z", + "description": "Adds a gallery to the Load Image node and tabs for Load Checkpoint/Lora/etc nodes", + "downloads": 3294, + "github_stars": 37, + "icon": "", + "id": "comfyui-load-image-gallery", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-24T08:30:54.527691Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "48686b8f-6c45-4141-ade3-b49a18f73f17", + "node_id": "comfyui-load-image-gallery", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.1.0" + }, + "license": "{}", + "name": "ComfyUI-Gallery-and-Tabs", + "publisher": { + "createdAt": "2024-08-14T05:34:16.977397Z", + "description": "", + "id": "ogrelemonsoup", + "logo": "", + "members": [], + "name": "OgreLemonSoup", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/OgreLemonSoup/ComfyUI-Load-Image-Gallery", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-18T05:37:35.572353Z", + "description": "ComfyUI implementation of '[a/Blind Image Restoration via Fast Diffusion Inversion](https://github.com/hamadichihaoui/BIRD)' Original [a/article](https://arxiv.org/abs/2405.19572)", + "downloads": 1448, + "github_stars": 8, + "icon": "", + "id": "comfyui-nua-bird", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-18T05:37:35.856532Z", + "dependencies": [ + "numpy", + "torch", + "torchvision", + "blobfile", + "tqdm", + "pyYaml", + "pillow", + "diffusers" + ], + "deprecated": false, + "downloadUrl": "", + "id": "144a206b-9c73-47a7-9543-f2c79a511689", + "node_id": "comfyui-nua-bird", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI-NuA-BIRD", + "publisher": { + "createdAt": "2024-06-14T18:16:44.577381Z", + "description": "", + "id": "nuanarchy", + "logo": "", + "members": [], + "name": "nuanarchy", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nuanarchy/ComfyUI-NuA-BIRD", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-16T23:56:13.237151Z", + "description": "This node is based on MykolaL/StableDesign", + "downloads": 1270, + "github_stars": 8, + "icon": "", + "id": "interior-design-for-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-20T01:27:40.601839Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "30e24eac-54b6-4101-adb3-f96faea21222", + "node_id": "interior-design-for-comfyui", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "2.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Interior Design for Comfyui", + "publisher": { + "createdAt": "2024-08-26T20:29:53.044291Z", + "description": "", + "id": "rodrigoskohl", + "logo": "", + "members": [], + "name": "Rodrigo S. Kohl", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/RodrigoSKohl/InteriorDesign-for-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-21T21:05:23.52851Z", + "description": "A simple node for stereoscopic image generation. Nodes: Stereo Image Node - a basic port from the Automatic1111 stereo script with som extra features added, such as edge and direction aware blurring of the depth map. DeoVR View - A node for launching and viewing images and videos in DeoVR. See readme for more details and setup of autostart of DeoVR", + "downloads": 3202, + "github_stars": 24, + "icon": "", + "id": "comfystereo", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-23T18:46:12.070281Z", + "dependencies": [ + "torch", + "numpy", + "Pillow", + "opencv-python", + "numba", + "scipy", + "psutil" + ], + "deprecated": false, + "downloadUrl": "", + "id": "ee6ab0fa-7245-4166-82f9-9652ea4c6cb1", + "node_id": "comfystereo", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyStereo", + "publisher": { + "createdAt": "2025-02-20T07:46:25.083473Z", + "description": "", + "id": "dobidop", + "logo": "", + "members": [], + "name": "Dobidop", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Dobidop/ComfyStereo", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-30T06:45:27.364337Z", + "description": "Ports the official ComfyUI GPT-API node, adding support for customizable api_base, auth_token, and model settings.", + "downloads": 681, + "github_stars": 8, + "icon": "", + "id": "comfyui-gpt-image", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-19T10:44:14.444428Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4d342fa1-9774-4285-a859-d724ea65acaf", + "node_id": "comfyui-gpt-image", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.3.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-gpt-image", + "publisher": { + "createdAt": "2025-04-30T05:21:28.660848Z", + "description": "", + "id": "lceric", + "logo": "", + "members": [], + "name": "lceric", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lceric/comfyui-gpt-image", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-18T12:04:52.580741Z", + "description": "Seamless Clone Using OpenCV for ComfyUI", + "downloads": 1542, + "github_stars": 9, + "icon": "", + "id": "comfyui-seamless-clone", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-22T09:21:45.027788Z", + "dependencies": [ + "numpy==2.2.0", + "opencv_python==4.10.0.84", + "torch==2.5.1" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e18cd6c7-fd7f-4d46-984b-8cd5652547de", + "node_id": "comfyui-seamless-clone", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Seamless Clone", + "publisher": { + "createdAt": "2024-12-18T11:49:39.108048Z", + "description": "", + "id": "mahdi", + "logo": "", + "members": [], + "name": "Mahdi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Aksaz/comfyui-seamless-clone", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-25T00:32:18.363728Z", + "description": "This Comfyui node creates an anaglyph image from a color and depth map input. It achieves high speeds suitable for video to anaglyph conversion by using CUDA GPU acceleration.", + "downloads": 762, + "github_stars": 7, + "icon": "anaglyphtool.jpg", + "id": "anaglyphtool-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-25T16:54:50.626504Z", + "dependencies": [ + "torch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "212200fa-4389-457a-b1a1-1619f1d1a63e", + "node_id": "anaglyphtool-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.3.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "anaglyphTool-Comfyui", + "publisher": { + "createdAt": "2025-04-24T11:19:03.915776Z", + "description": "", + "id": "cryptox", + "logo": "", + "members": [], + "name": "Timon", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Cryptyox/anaglyphTool-Comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-05T12:08:16.216955Z", + "description": "Various custom nodes will be added.", + "downloads": 2393, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-hybs-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-28T07:15:43.426181Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "bf3d132b-5d48-4a50-ad14-3e4854127ddd", + "node_id": "ComfyUI-hybs-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI-hybs-nodes", + "publisher": { + "createdAt": "2025-05-05T10:49:18.288142Z", + "description": "", + "id": "hybskgks28275", + "logo": "", + "members": [], + "name": "hybs", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hybskgks28275/ComfyUI-hybs-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-21T20:38:12.340596Z", + "description": "Custom ComfyUI Nodes for TTS with Kokoro, genenrate and merge speakers for new style generations.", + "downloads": 8602, + "github_stars": 53, + "icon": "", + "id": "comfyui-kokoro", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-17T13:24:25.30477Z", + "dependencies": [ + "kokoro-onnx", + "onnxruntime", + "numpy", + "requests", + "tqdm" + ], + "deprecated": false, + "downloadUrl": "", + "id": "25cd426e-6fc9-40eb-9328-27fb4f4e4780", + "node_id": "comfyui-kokoro", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-kokoro", + "publisher": { + "createdAt": "2024-06-25T20:33:26.18372Z", + "description": "", + "id": "stavsap", + "logo": "", + "members": [], + "name": "Stav Sapir", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/stavsap/comfyui-kokoro", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-09T15:41:13.56148Z", + "description": "WIP. Nodes: Fetch e621/danbooru image and/or tags etc from a given URL; Get the Wiki entry for a tag through a button press.", + "downloads": 915, + "github_stars": 5, + "icon": "", + "id": "e621_booru_toolkit", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-09T02:30:53.477082Z", + "dependencies": [ + "requests" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6e7149af-5556-4df0-9de5-d73def8d7f73", + "node_id": "e621_booru_toolkit", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_e621_booru_toolkit", + "publisher": { + "createdAt": "2025-01-06T15:37:31.751301Z", + "description": "", + "id": "drac", + "logo": "", + "members": [], + "name": "Drac", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DraconicDragon/ComfyUI_e621_booru_toolkit", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-09T21:26:18.693733Z", + "description": "The ComfyUI-FilePathCreator is a custom node extension for ComfyUI designed to generate dynamic filenames based on user-defined parameters. This node helps streamline the process of creating organized and timestamped filenames, ideal for saving output files in a structured manner.", + "downloads": 2168, + "github_stars": 7, + "icon": "https://github.com/HECer/ComfyUI-FilePathCreator/blob/main/images/icon.jpeg?raw=true", + "id": "comfyui-filepathcreator", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-09T22:02:40.432324Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5e44d309-03b7-40b6-a5e3-3132ab77dd4b", + "node_id": "comfyui-filepathcreator", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "LICENSE", + "name": "ComfyUI-FilePathCreator", + "publisher": { + "createdAt": "2024-07-09T20:55:20.777889Z", + "description": "", + "id": "hecer", + "logo": "", + "members": [], + "name": "HECer", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/HECer/ComfyUI-FilePathCreator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-27T21:04:44.365515Z", + "description": "Read and write 'stealth metadata' in PNG files", + "downloads": 1630, + "github_stars": 3, + "icon": "", + "id": "comfyui_stealth_pnginfo", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-09T03:39:51.355271Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "6a49b1b4-b719-490a-882d-a9fee4ceb56d", + "node_id": "comfyui_stealth_pnginfo", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.4" + }, + "license": "{}", + "name": "comfyui_stealth_pnginfo", + "publisher": { + "createdAt": "2024-09-27T20:57:29.156182Z", + "description": "", + "id": "catboxanon", + "logo": "", + "members": [], + "name": "catboxanon", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/catboxanon/comfyui_stealth_pnginfo", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-01T00:12:15.48378Z", + "description": "A set of simple nodes for loading image files and basic translation. These include a simple remote connection node to Photoshop, a node that can overlay and preview an image using a mask, nodes that can load images directly from file paths and URLs, and a node capable of using Google Translate.", + "downloads": 2690, + "github_stars": 7, + "icon": "", + "id": "comfyui_zwng_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-01T00:12:19.313134Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3c7ae9b0-81ad-4593-b7ee-f53f78a3a571", + "node_id": "comfyui_zwng_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Zwng_Nodes", + "publisher": { + "createdAt": "2024-06-30T23:45:29.007821Z", + "description": "", + "id": "zawango", + "logo": "", + "members": [], + "name": "zwng", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/za-wa-n-go/ComfyUI_Zwng_Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-31T19:11:24.324243Z", + "description": "Nodes related to [a/PaddleOCR](https://paddlepaddle.github.io/PaddleOCR) OCR.", + "downloads": 1462, + "github_stars": 7, + "icon": "", + "id": "comfyui-paddleocr", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-31T19:11:27.940737Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "bcb54234-4925-435e-8345-f46c7273bc9d", + "node_id": "comfyui-paddleocr", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-PaddleOcr", + "publisher": { + "createdAt": "2024-10-08T02:14:16.385089Z", + "description": "", + "id": "civen-cn", + "logo": "", + "members": [], + "name": "civen-cn", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/civen-cn/ComfyUI-PaddleOcr", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-25T03:26:52.324512Z", + "description": "ComfyUI-DonutNodes offers custom nodes for grouped weight/bias scaling, per-block SDXL control, dual-branch CLIP blending, block-weighted LoRA stacking, and teacache for sdxl.", + "downloads": 2925, + "github_stars": 6, + "icon": "", + "id": "donutnodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-20T13:01:58.197434Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "fa4951ab-fbaa-4419-b7f9-ff7829c8d81f", + "node_id": "donutnodes", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.22" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-DonutNodes", + "publisher": { + "createdAt": "2025-04-03T12:27:08.638735Z", + "description": "", + "id": "donutsdelivery", + "logo": "", + "members": [], + "name": "DonutsDelivery", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DonutsDelivery/ComfyUI-DonutNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-24T09:27:19.677696Z", + "description": "Node to pause a workflow with a continue button", + "downloads": 2141, + "github_stars": 16, + "icon": "", + "id": "wywywywy-pause", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-24T09:34:20.823403Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "17028c79-0593-48e7-a324-7185a1346c2b", + "node_id": "wywywywy-pause", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-pause", + "publisher": { + "createdAt": "2025-03-24T09:05:58.988879Z", + "description": "", + "id": "wywywywy", + "logo": "", + "members": [], + "name": "wywywywy", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wywywywy/ComfyUI-pause", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-15T02:52:05.808269Z", + "description": "Support adding custom text to the generated images.", + "downloads": 1944, + "github_stars": 8, + "icon": "", + "id": "add_text_2_img", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-15T02:52:13.623535Z", + "dependencies": [ + "pillow", + "numpy", + "torch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "4ff11747-8826-486a-ae3c-de5a6698f4f8", + "node_id": "add_text_2_img", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "add_text_2_img", + "publisher": { + "createdAt": "2024-08-15T02:49:31.489555Z", + "description": "", + "id": "add-text-2-img", + "logo": "", + "members": [], + "name": "add_text_2_img", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yuan199696/add_text_2_img", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-22T12:59:41.871165Z", + "description": "Enjoy the latest GEMINI V2 API for ComfyUI to generate images, transcribe audio and summarize videos. Making a separate implementation of my old IF_AI tools for easy installation", + "downloads": 2817, + "github_stars": 31, + "icon": "https://impactframes.ai/System/Icons/48x48/if.png", + "id": "comfyui-if_gemini", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-06T02:33:56.645477Z", + "dependencies": [ + "torch>=2.0.0", + "pillow>=10.0.0", + "numpy>=1.24.0", + "google-generativeai", + "google-genai", + "python-dotenv", + "requests>=2.31.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "cd4e4c66-e459-4147-8345-906199796d42", + "node_id": "comfyui-if_gemini", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.1.4" + }, + "license": "{\"file\": \"MIT License\"}", + "name": "IF_Gemini", + "publisher": { + "createdAt": "2024-05-22T21:13:45.198878Z", + "description": "", + "id": "impactframes", + "logo": "", + "members": [], + "name": "impactframes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/if-ai/ComfyUI-IF_Gemini", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-01T20:25:24.328979Z", + "description": "A utility that allows you to input registered prompts with a single button click.", + "downloads": 1399, + "github_stars": 3, + "icon": "", + "id": "d2-promptselector-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-05T03:00:54.808432Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1b38ace0-98c5-498c-b9bf-ba5c0b562c80", + "node_id": "d2-promptselector-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "D2-PromptSelector-ComfyUI", + "publisher": { + "createdAt": "2024-08-04T16:12:17.464004Z", + "description": "", + "id": "da2el", + "logo": "", + "members": [], + "name": "da2el", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/da2el-ai/D2-PromptSelector-comfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-18T17:48:53.227734Z", + "description": "Nodes for Jasper's LBM models", + "downloads": 291, + "github_stars": 2, + "icon": "", + "id": "lbm", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-18T19:02:29.482492Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "31b1a7f9-6b73-4501-a4f5-e4f41a6d2227", + "node_id": "lbm", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.1" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "LBM Latent Bridge Matching", + "publisher": { + "createdAt": "2025-05-18T17:38:46.929805Z", + "description": "", + "id": "thrumdev", + "logo": "", + "members": [], + "name": " Thrum", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/thrumdev/lbm-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-28T15:33:00.102802Z", + "description": "This node pack helps to convert various files to Markdown. It supports pdf, pptx, xlsx, docx, html and image files.", + "downloads": 1544, + "github_stars": 8, + "icon": "https://raw.githubusercontent.com/ciga2011/ComfyUI-MarkItDown/main/logo.png", + "id": "markitdown", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-28T15:33:03.877193Z", + "dependencies": [ + "markitdown==0.0.1a3", + "openai==1.58.1", + "pythondotenv==1.0.1" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7740397b-eebc-4060-aa5e-5dc8ef868c84", + "node_id": "markitdown", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-MarkItDown", + "publisher": { + "createdAt": "2024-12-28T15:00:27.413223Z", + "description": "", + "id": "ciga2011", + "logo": "", + "members": [], + "name": "ciga2011", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ciga2011/ComfyUI-MarkItDown", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-18T18:18:08.146751Z", + "description": "This node allows you to compare two images and determine their visual similarity using deep learning features extracted from ResNet models. It outputs both a boolean indicating if the images are similar (based on a threshold) and the actual cosine similarity score.", + "downloads": 1848, + "github_stars": 7, + "icon": "", + "id": "imagesimilarity", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-18T18:18:11.796823Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "e99e886f-2197-4199-baf6-e9dbc1f92380", + "node_id": "imagesimilarity", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ImageSimilarity", + "publisher": { + "createdAt": "2025-01-18T17:24:35.750533Z", + "description": "", + "id": "ngosset", + "logo": "", + "members": [], + "name": "ngosset", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ngosset/ComfyUI-ImageSimilarity", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-03T02:49:10.926342Z", + "description": "Node for ComfyUI to manipulate values with multiple sliders.", + "downloads": 1391, + "github_stars": 5, + "icon": "", + "id": "comfyui-ns-manysliders", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-03T02:49:14.721823Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "695b3368-aed9-4c25-8925-f983337efc43", + "node_id": "comfyui-ns-manysliders", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-NS-ManySliders", + "publisher": { + "createdAt": "2024-08-25T00:48:09.246502Z", + "description": "", + "id": "nakamurashippo", + "logo": "", + "members": [], + "name": "Nakamura Shippo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/NakamuraShippo/ComfyUI-NS-ManySliders", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-27T03:51:05.132956Z", + "description": "Nodes:Generate Stable Diffsution Prompt With LLM, Translate Text With LLM, Chat With LLM", + "downloads": 1933, + "github_stars": 8, + "icon": "", + "id": "comfyui-llm-assistant", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-27T03:51:06.605769Z", + "dependencies": [ + "pyyaml", + "openai" + ], + "deprecated": false, + "downloadUrl": "", + "id": "bf5ed469-d8a2-4502-b55c-e0a660f1d76d", + "node_id": "comfyui-llm-assistant", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "comfyui-llm-assistant", + "publisher": { + "createdAt": "2024-05-24T07:30:11.627807Z", + "description": "", + "id": "longgui0318", + "logo": "", + "members": [], + "name": "\u72d7\u7684\u8d1d", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/longgui0318/comfyui-llm-assistant", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-15T03:19:08.989772Z", + "description": "Custom utility nodes for ComfyUI by Nilor Corp. Probably not useful for most people, but contains stuff for working with lists, filenames, image batches, etc in a very specifc way.", + "downloads": 1472, + "github_stars": 3, + "icon": "", + "id": "nilor-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-15T03:30:37.508136Z", + "dependencies": [ + "huggingface_hub", + "openexr" + ], + "deprecated": false, + "downloadUrl": "", + "id": "0d83f209-8476-4c71-9905-0adcce75a603", + "node_id": "nilor-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "nilor-nodes", + "publisher": { + "createdAt": "2024-11-15T03:08:44.86154Z", + "description": "", + "id": "stephennilor", + "logo": "", + "members": [], + "name": "[Nilor Corp] Stephen", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nilor-corp/nilor-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-25T18:05:37.006793Z", + "description": "A ComfyUI custom node that integrates Google Photos into your workflows. List albums, load images from specific albums, and search photos directly within ComfyUI. Features customizable image loading options, sorting, and efficient caching for seamless integration of your Google Photos library into AI image processing pipelines.", + "downloads": 1465, + "github_stars": 3, + "icon": "", + "id": "google-photos-loader", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-25T18:05:41.248403Z", + "dependencies": [ + "aiohttp>=3.7.4", + "google-auth-oauthlib>=0.4.1", + "google-auth>=1.30.0", + "Pillow>=8.0.0", + "torch>=1.7.0", + "termcolor>=1.1.0", + "numpy>=1.19.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "de485572-ab07-4b2a-a492-ec783c0087f4", + "node_id": "google-photos-loader", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.11" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Google Photos Loader - by PabloGFX", + "publisher": { + "createdAt": "2024-09-23T16:40:33.561343Z", + "description": "", + "id": "pablogfx", + "logo": "", + "members": [], + "name": "PabloGFX", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lazniak/comfyui-google-photos-loader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-16T08:42:59.247101Z", + "description": "This extension contains a custom node for ComfyUI. The node, called 'Bounding Box Crop', is designed to compute the top-left coordinates of a cropped bounding box based on input coordinates and dimensions of the final cropped image. It does so computing the center of the cropping area and then computing where the top-left coordinates would be.", + "downloads": 1684, + "github_stars": 7, + "icon": "", + "id": "comfyui-centernode", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-14T12:21:02.527999Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a069a94d-1fb3-42e0-a3bb-da206fdab8bb", + "node_id": "comfyui-centernode", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-CenterNode", + "publisher": { + "createdAt": "2024-07-15T12:00:41.934469Z", + "description": "", + "id": "alezonta", + "logo": "", + "members": [], + "name": "Alessandro Zonta", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alessandrozonta/ComfyUI-CenterNode", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-25T23:50:33.2628Z", + "description": "Advanced nodes of the Level Pixel company (aka levelpixel, LP). Includes convenient advanced nodes for working with LLM \u0438 VLM models (LLaVa, Multimodal Generator) with GGUF format. Qwen2.5-VL and Qwen2.5 supported, based on llama-mtmd. Also included is a node for the RAM model. Nodes have the ability to automatically unload models from VRAM. This package also includes Autotagger (WD), Image Remove Background (based on RMBG-2.0, on BiRefNet, on BiRefNet-HR-Matter, on RemBG). Licensed under GNU GPLv3. Repository: https://github.com/LevelPixel/ComfyUI-LevelPixel-Advanced", + "downloads": 1994, + "github_stars": 6, + "icon": "https://avatars.githubusercontent.com/u/175361036", + "id": "comfyui-levelpixel-advanced", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-09T13:45:42.663085Z", + "dependencies": [ + "torch>=2.0.1", + "torchvision>=0.15.2", + "pillow>=9.4.0", + "numpy>=1.26.4", + "huggingface-hub>=0.19.0", + "transformers>=4.35.0", + "safetensors>=0.3.0", + "scikit-build-core>=0.10.7", + "transparent-background>=1.2.4", + "timm>=0.4.12", + "tqdm>=4.65.0", + "fairscale>=0.4.4", + "rembg>=2.0.66", + "diskcache>=5.6.1", + "jinja2>=2.11.3", + "typing-extensions>=4.5.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "08fd6506-4122-470b-b701-11ddce436718", + "node_id": "comfyui-levelpixel-advanced", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.3.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI Level Pixel Advanced", + "publisher": { + "createdAt": "2025-05-25T22:59:41.044573Z", + "description": "", + "id": "levelpixel", + "logo": "", + "members": [], + "name": "Level Pixel", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LevelPixel/ComfyUI-LevelPixel-Advanced", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-08T23:21:59.736247Z", + "description": "Adds nodes that are designed to be used for scripting ComfyUI. These nodes just describe themselves as 'api'. This can be used in conjunction with the npm library '@hypnodes/comfyui-api-nodes' for scripting via javascript.", + "downloads": 899, + "github_stars": 0, + "icon": "https://raw.githubusercontent.com/hypnodes/ComfyUI_ApiNodes/d57125be90d1dd95917f8e68eb4ce4f50c875e93/icon.png", + "id": "comfyui-api-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-09T00:52:16.168875Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1347f2f7-2733-4be9-b4b2-22b8de05285f", + "node_id": "comfyui-api-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.52.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Api Nodes", + "publisher": { + "createdAt": "2024-11-08T23:16:52.625228Z", + "description": "", + "id": "hypnodes", + "logo": "", + "members": [], + "name": "Hypnodes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hypnodes/ComfyUI_ApiNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-25T03:10:27.552775Z", + "description": "A Chinese and English text translation plugin for ComfyUI.", + "downloads": 3441, + "github_stars": 48, + "icon": "", + "id": "comfyui_baidutranslate", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-25T03:10:27.821923Z", + "dependencies": [ + "requests", + "pyexecjs" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6b9b46b4-e017-4c50-8526-de8d729387f9", + "node_id": "comfyui_baidutranslate", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_BaiduTranslate", + "publisher": { + "createdAt": "2024-05-23T03:18:42.518862Z", + "description": "", + "id": "chflame163", + "logo": "", + "members": [], + "name": "chflame163", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chflame163/ComfyUI_BaiduTranslate", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-30T07:19:59.879225Z", + "description": "An implementation of Nari-Labs Dia TTS", + "downloads": 930, + "github_stars": 8, + "icon": "", + "id": "comfyui-diatts", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-30T07:20:00.50768Z", + "dependencies": [ + "descript-audio-codec" + ], + "deprecated": false, + "downloadUrl": "", + "id": "abb76aec-029c-42f8-a8b6-14d9f9abfb65", + "node_id": "comfyui-diatts", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.3.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-DiaTTS", + "publisher": { + "createdAt": "2025-04-30T04:38:53.073102Z", + "description": "", + "id": "bobrandomnumber", + "logo": "", + "members": [], + "name": "BobRandomNumber", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BobRandomNumber/ComfyUI-DiaTTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-24T08:25:38.496058Z", + "description": "Auto msg to ur mobile (LINE | Telegram | Discord)\nMotivation: Mobile phone wallpaper., an architect like: architect, cloth designer, art-worker, When u outdoor, ...", + "downloads": 1470, + "github_stars": 8, + "icon": "https://www.decade.tw/wp-content/uploads/2021/09/cropped-DECADE512-150x150.png", + "id": "comfyui-decadetw-auto-messaging-realtime", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-25T09:33:26.390286Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4b67ffe6-d578-4888-814f-244f2e9365e7", + "node_id": "comfyui-decadetw-auto-messaging-realtime", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.20240825.2" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI-decadetw-auto-messaging-realtime", + "publisher": { + "createdAt": "2024-08-24T07:56:59.30717Z", + "description": "", + "id": "xxlinxx", + "logo": "", + "members": [], + "name": "xxlinxx", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/xlinx/ComfyUI-decadetw-auto-messaging-realtime", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-08T09:38:31.662845Z", + "description": "A custom node for ComfyUI to FramePack.", + "downloads": 4398, + "github_stars": 18, + "icon": "", + "id": "framepack-hy", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-08T09:38:32.079576Z", + "dependencies": [ + "accelerate>=1.6.0", + "diffusers>=0.33.1", + "transformers>=4.46.2", + "scipy>=1.12.0", + "torchsde>=0.2.6", + "einops", + "safetensors" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7cbc206a-4480-40af-b3bb-2a715ad64e91", + "node_id": "framepack-hy", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-FramePack-HY", + "publisher": { + "createdAt": "2024-09-29T10:55:36.930737Z", + "description": "", + "id": "cychenyue", + "logo": "", + "members": [], + "name": "cychenyue", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/CY-CHENYUE/ComfyUI-FramePack-HY", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-29T18:12:10.398189Z", + "description": "Unofficial implementation of siliconflow API for ComfyUI", + "downloads": 1391, + "github_stars": 8, + "icon": "", + "id": "comfyui-siliconflow-api-2lab", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-29T18:12:12.148094Z", + "dependencies": [ + "openai" + ], + "deprecated": false, + "downloadUrl": "", + "id": "78f0fa86-8b11-44a5-a30e-5c482d7fc267", + "node_id": "comfyui-siliconflow-api-2lab", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyUI-siliconflow-api-2lab", + "publisher": { + "createdAt": "2024-06-06T15:08:41.151289Z", + "description": "", + "id": "ai2lab", + "logo": "", + "members": [], + "name": "AI2lab", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AI2lab/comfyUI-siliconflow-api-2lab", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-29T18:28:21.755359Z", + "description": "", + "downloads": 1403, + "github_stars": 7, + "icon": "", + "id": "embeddings_curve_editor", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-29T18:28:23.417485Z", + "dependencies": [ + "numpy>=1.26.4", + "Pillow>=9.5.0", + "regex>=2024.5.10", + "scipy>=1.13.1" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7706a57a-ff49-418f-a490-98ff6a1bf511", + "node_id": "embeddings_curve_editor", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "MIT", + "name": "Embeddings Curve Editor", + "publisher": { + "createdAt": "2024-06-29T17:44:33.397385Z", + "description": "", + "id": "chris-the-wiz", + "logo": "", + "members": [], + "name": "Chris", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chris-the-wiz/EmbeddingsCurveEditor_ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-13T08:49:59.619842Z", + "description": "A set of nodes including a universal bus, an Inpainting By Mask and a large Upscaler/Refiner", + "downloads": 6618, + "github_stars": 154, + "icon": "https://raw.githubusercontent.com/MaraScott/ComfyUI_MaraScott_Nodes/main/web/assets/img/logo.svg", + "id": "comfyui_marascott_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-17T14:30:26.772012Z", + "dependencies": [ + "blend_modes", + "numba", + "color-matcher", + "groq", + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d28a578b-bc9c-4392-b979-21e2f779e329", + "node_id": "comfyui_marascott_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "5.8.7" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "MaraScott Nodes", + "publisher": { + "createdAt": "2024-06-13T07:34:52.403056Z", + "description": "", + "id": "marascott", + "logo": "", + "members": [], + "name": "MaraScott", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MaraScott/ComfyUI_MaraScott_Nodes", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-07T17:32:16.837046Z", + "description": "This node allows downloading models and other resources used within a ComfyUI workflow making it easier to resolve referenced assets and share workflows from HuggingFace, CivitAI and other sources.", + "downloads": 1216, + "github_stars": 7, + "icon": "", + "id": "comfy-asset-downloader", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-08T14:47:46.564105Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "91b25321-00bc-483e-b875-3580c7cbf845", + "node_id": "comfy-asset-downloader", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.4.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfy Asset Downloader", + "publisher": { + "createdAt": "2025-05-07T17:25:07.60693Z", + "description": "", + "id": "servicestack", + "logo": "", + "members": [], + "name": "ServiceStack", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ServiceStack/comfy-asset-downloader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-04T21:43:47.475651Z", + "description": "An advanced chat node integrating LLMs, real-time web search, image handling, and image scraping. Supports APIs from OpenAI, Google, Anthropic, Grok, DeepSeek, and local Ollama. Includes custom node finder, smart assistant tools, and growing subnodes like text masking and concept eraser.", + "downloads": 2497, + "github_stars": 64, + "icon": "hhttps://avatars.githubusercontent.com/u/197819028?v=4", + "id": "llm_polymath", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-04T21:43:47.931309Z", + "dependencies": [ + "openai", + "googlesearch-python", + "requests", + "bs4", + "jax" + ], + "deprecated": false, + "downloadUrl": "", + "id": "25a3d0c1-19ab-42b1-89aa-4bc23241c43e", + "node_id": "llm_polymath", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_LLM_Polymath", + "publisher": { + "createdAt": "2025-02-04T21:36:23.988945Z", + "description": "", + "id": "lum3on", + "logo": "", + "members": [], + "name": "Lum3on", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lum3on/comfyui_LLM_Polymath", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-23T20:37:16.658209Z", + "description": "Navigate workflows faster using keyboard. Shift+F to open/close. Shift+Left/Right to cycle through search history.", + "downloads": 1607, + "github_stars": 8, + "icon": "https://img.icons8.com/?size=100&id=112468&format=png&color=000000", + "id": "comfyui-search-navigation", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-26T04:41:34.091901Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c93d253a-89c0-4b4e-9cc8-c6fff6004142", + "node_id": "comfyui-search-navigation", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "LICENSE", + "name": "comfyui-search-navigation", + "publisher": { + "createdAt": "2024-05-26T02:18:06.707962Z", + "description": "", + "id": "christian-byrne", + "logo": "", + "members": [], + "name": "christian-byrne", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/christian-byrne/comfyui-search-navigation", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-28T19:59:35.722933Z", + "description": "!!! Deprecated !!! \n\nUse ComfyUI-Fooocus-V2-Expansion > = 1.10 \n\nhttps://registry.comfy.org/publishers/panic-titan/nodes/ComfyUI-Fooocus-V2-Expansion ", + "downloads": 911, + "github_stars": 9, + "icon": "https://raw.githubusercontent.com/PanicTitan/ComfyUI-Fooocus-V2-Expansion/refs/heads/main/logo.svg", + "id": "fooocus-v2-expansion", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-28T19:59:36.125311Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "0e9be54a-e489-4ab5-9e6a-0fd3fcaffe24", + "node_id": "fooocus-v2-expansion", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Deprecated-Node", + "publisher": { + "createdAt": "2025-02-28T19:25:05.096153Z", + "description": "", + "id": "panic-titan", + "logo": "", + "members": [], + "name": "PanicTitan", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/PanicTitan/ComfyUI-Fooocus-V2-Expansion", + "status": "NodeStatusDeleted", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-02T15:18:47.768369Z", + "description": "Miscellaneous utility nodes", + "downloads": 1219, + "github_stars": 0, + "icon": "", + "id": "duckcomfy_personal_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-04T20:36:26.582659Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b045be8e-f344-4113-91ec-d5810faba330", + "node_id": "duckcomfy_personal_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "8.0.0" + }, + "license": "{\"text\": \"GNU General Public License v3\"}", + "name": "duckcomfy personal nodes", + "publisher": { + "createdAt": "2025-05-02T14:05:21.632195Z", + "description": "", + "id": "duckcomfy", + "logo": "", + "members": [], + "name": "duckcomfy", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/duckcomfy/duckcomfy_personal_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-26T06:37:58.998804Z", + "description": "A collection of ComfyUI custom nodes for interacting with various cloud services, such as LLM providers Groq and OpenRouter. These nodes are designed to work with any ComfyUI instance, including cloud-hosted environments (such as MimicPC) where users may have limited system access. ", + "downloads": 1926, + "github_stars": 6, + "icon": "", + "id": "eacloudnodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-22T00:45:15.853344Z", + "dependencies": [ + "pillow", + "requests", + "torch", + "torchvision" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f7589834-b3bf-497d-8d9f-3b9a36b4d5e0", + "node_id": "eacloudnodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.23" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-EACloudNodes", + "publisher": { + "createdAt": "2024-07-26T01:45:42.941977Z", + "description": "", + "id": "enragedantelope", + "logo": "", + "members": [], + "name": "EnragedAntelope", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/EnragedAntelope/ComfyUI-EACloudNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-28T23:56:52.916161Z", + "description": "A collection of ComfyUI directory automation utility nodes. Directory Get-It-Right adds a GUI directory browser, and a smart directory loop/iteration node that supports regex + file extension filtering + sorting methods.", + "downloads": 3565, + "github_stars": 25, + "icon": "https://github.com/AshMartian/ComfyUI-DirGir/blob/main/docs/GIR_happy.jpg?raw=true", + "id": "comfyui-dirgir", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-16T01:45:59.352486Z", + "dependencies": [ + "aiohttp", + "tk" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d5c37162-35aa-4e9b-a396-2b22e8bc416d", + "node_id": "comfyui-dirgir", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.5" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI-DirGir", + "publisher": { + "createdAt": "2024-05-28T23:53:36.043283Z", + "description": "", + "id": "ashmartian", + "logo": "", + "members": [], + "name": "Ash Martian", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AshMartian/ComfyUI-DirGir", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-25T09:06:49.791927Z", + "description": "Tara is a powerful node for ComfyUI that integrates Large Language Models (LLMs) to enhance and automate workflow processes. With Tara, you can create complex, intelligent workflows that refine and generate content, manage API keys, and seamlessly integrate various LLMs into your projects.", + "downloads": 7619, + "github_stars": 107, + "icon": "", + "id": "comfyui-tara-llm-integration", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-25T09:06:50.118147Z", + "dependencies": [ + "orjson", + "openai" + ], + "deprecated": false, + "downloadUrl": "", + "id": "834ff821-5296-469d-861a-886cabdd2342", + "node_id": "comfyui-tara-llm-integration", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Tara-LLM-Integration", + "publisher": { + "createdAt": "2024-06-25T08:59:57.947579Z", + "description": "", + "id": "ronniebasak", + "logo": "", + "members": [], + "name": "Sohan :) ", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ronniebasak/ComfyUI-Tara-LLM-Integration", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-21T12:05:57.288395Z", + "description": "NODES: String Formatter, String List", + "downloads": 1862, + "github_stars": 8, + "icon": "\ud83d\udc1f", + "id": "comfyui-string-helper", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-22T07:57:10.695523Z", + "dependencies": [ + "translators>=5.8.8", + "chardet>=5.0.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1125d4de-76f8-422c-9afb-82a424fff2f6", + "node_id": "comfyui-string-helper", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "2.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-String-Helper", + "publisher": { + "createdAt": "2024-12-21T11:32:11.395745Z", + "description": "", + "id": "liuqianhong", + "logo": "", + "members": [], + "name": "liuqianhong", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/liuqianhonga/ComfyUI-String-Helper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-14T16:47:58.370337Z", + "description": "ComfyUI-MiniMax-Remover is a custom node for ComfyUI that enables fast and efficient object removal using minimax optimization. It works in two stages: first, it trains a remover with a simplified DiT model; then it distills a robust version using CFG guidance and fewer inference steps.", + "downloads": 637, + "github_stars": 53, + "icon": "", + "id": "ComfyUI-MiniMax-Remover", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-27T14:16:17.002685Z", + "dependencies": [ + "torch>=1.13.0", + "diffusers>=0.21.0", + "decord>=0.6.0", + "pillow>=8.0.0", + "einops>=0.6.0", + "scipy>=1.9.0", + "numpy>=1.21.0", + "opencv-python>=4.5.0", + "huggingface_hub>=0.16.0", + "omegaconf>=2.1.0", + "accelerate>=0.20.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "8b36b16e-323d-43c0-a0e0-30db8cccbd89", + "node_id": "ComfyUI-MiniMax-Remover", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-MiniMax-Remover", + "publisher": { + "createdAt": "2024-07-01T23:11:45.570672Z", + "description": "", + "id": "ailab", + "logo": "", + "members": [], + "name": "AILab", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/1038lab/ComfyUI-MiniMax-Remover", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-07T10:54:05.411531Z", + "description": "A suite of powerful, intuitive, and highly customizable nodes for ComfyUI, featuring a high-performance Media Browser and OOM-safe video tools.\n\n---\n### Changelog v1.2.0\n- **Features & Optimizations**:\n - Added one-click workflow loading and file downloading directly from the browser.\n - Implemented a manual refresh button and automatic refresh on view switching.\n - Redesigned icon buttons into a clean, hover-activated overlay.\n - Enhanced backend for more robust thumbnailing and metadata extraction.\n- **Bug Fixes**:\n - Fixed a race condition preventing the 'Load Workflow' button from appearing in list view.\n - Correctly sets workflow names on load for both standard and API formats.\n - Resolved issues with the icon sizing slider, ensuring instant and correct view updates.\n", + "downloads": 920, + "github_stars": 7, + "icon": "", + "id": "aiia", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-07T11:35:57.472121Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a5e385f2-27ec-49ba-9ba7-20b06861d6ce", + "node_id": "aiia", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_AIIA", + "publisher": { + "createdAt": "2025-06-07T10:24:34.970571Z", + "description": "", + "id": "hawk", + "logo": "", + "members": [], + "name": "\u6642\u7a7a\u4e2d\u7684\u5875\u57c3", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/havvk/ComfyUI_AIIA", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-01T06:42:45.274716Z", + "description": "Read and Process data from MIDI devices inside of ComfyUI.", + "downloads": 1444, + "github_stars": 6, + "icon": "https://raw.githubusercontent.com/Amorano/Jovimetrix-examples/refs/heads/master/res/logo-jovi_midi.png", + "id": "jovi_midi", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-05T04:11:27.861244Z", + "dependencies": [ + "aenum", + "git+https://github.com/cozy-comfyui/cozy_comfyui@main#egg=cozy_comfyui", + "mido[ports-rtmidi]" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f791f2e0-1634-4e4b-8472-9d51f23348d3", + "node_id": "jovi_midi", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Jovi MIDI", + "publisher": { + "createdAt": "2024-05-17T04:16:25.445017Z", + "description": "", + "id": "amorano", + "logo": "", + "members": [], + "name": "Joviex", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Amorano/Jovi_MIDI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-25T02:40:29.732077Z", + "description": "A text-to-speech plugin used under ComfyUI. It utilizes the Microsoft Speech TTS interface to convert text content into MP3 format audio files.", + "downloads": 2394, + "github_stars": 29, + "icon": "", + "id": "comfyui_msspeech_tts", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-25T02:40:29.986263Z", + "dependencies": [ + "numpy", + "edge_tts", + "asyncio", + "pyglet", + "arcade", + "pygame" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5e4713d3-5c82-4ff1-ba9f-90fb00cb49fd", + "node_id": "comfyui_msspeech_tts", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_MSSpeech_TTS", + "publisher": { + "createdAt": "2024-05-23T03:18:42.518862Z", + "description": "", + "id": "chflame163", + "logo": "", + "members": [], + "name": "chflame163", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chflame163/ComfyUI_MSSpeech_TTS", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-29T08:06:35.319541Z", + "description": "An extension for merging LoRAs. Offers a wide range of LoRA merge techniques (including dare) and XY plots. XY plots require efficiency nodes.", + "downloads": 6604, + "github_stars": 47, + "icon": "", + "id": "lora-merger-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-29T08:06:36.972295Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "57e88cc2-f4f9-4dfa-ad70-d645bae79c3e", + "node_id": "lora-merger-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "LoRA-Merger-ComfyUI", + "publisher": { + "createdAt": "2024-06-29T07:38:33.054075Z", + "description": "", + "id": "larsupb", + "logo": "", + "members": [], + "name": "larsupb", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/larsupb/LoRA-Merger-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-12T23:58:00.007339Z", + "description": "model merging nodes powered by sd-mecha, a memory efficient merging library", + "downloads": 3455, + "github_stars": 82, + "icon": "", + "id": "comfy-mecha", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-09T02:41:18.584195Z", + "dependencies": [ + "sd-mecha==1.0.5" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b43f1f6a-4a5d-43db-9333-7b05c0305125", + "node_id": "comfy-mecha", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.38" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "mecha", + "publisher": { + "createdAt": "2024-06-11T20:42:01.939197Z", + "description": "", + "id": "ljleb", + "logo": "", + "members": [], + "name": "ljleb", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ljleb/comfy-mecha", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-22T01:07:06.748388Z", + "description": "This custom node is based on the [a/rembg-comfyui-node](https://github.com/Jcd1230/rembg-comfyui-node) but provides additional functionality to select ONNX models.", + "downloads": 1636, + "github_stars": 1, + "icon": "", + "id": "wtq-rembg-comfyui-node", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-22T01:07:08.223259Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "9c5aaae8-5763-4feb-b7d5-92410d461baa", + "node_id": "wtq-rembg-comfyui-node", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "wtq-rembg-comfyui-node", + "publisher": { + "createdAt": "2024-11-22T01:04:08.653472Z", + "description": "", + "id": "wtq", + "logo": "", + "members": [], + "name": "wtq", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/waytooquick/wtq-rembg-comfyui-node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-27T18:36:59.187057Z", + "description": "Scaled Uniform Noise for Ancestral & Stochastic samplers and Noisy latent image", + "downloads": 4959, + "github_stars": 13, + "icon": "", + "id": "comfyui_sunoise", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-24T15:26:18.282108Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "8ccd702c-0fb7-4203-a88a-73dd5de79ab5", + "node_id": "comfyui_sunoise", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.0" + }, + "license": "{\"text\": \"GNU General Public License v3.0\"}", + "name": "ComfyUI_SUNoise", + "publisher": { + "createdAt": "2024-06-23T11:33:12.747281Z", + "description": "", + "id": "bvhari", + "logo": "", + "members": [], + "name": "BVH", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bvhari/ComfyUI_SUNoise", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-25T19:30:05.009025Z", + "description": "A custom node for ComfyUI that enables Large Language Model (LLM) chat interactions with optional image input support.", + "downloads": 5219, + "github_stars": 6, + "icon": "", + "id": "llm-api", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-25T19:30:05.458396Z", + "dependencies": [ + "numpy>=1.24.0", + "Pillow>=10.0.0", + "litellm>=1.30.0", + "typing>=3.7.4" + ], + "deprecated": false, + "downloadUrl": "", + "id": "ca32ec35-e089-4f00-b6a9-bf36b56be7e5", + "node_id": "llm-api", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-LLM-API", + "publisher": { + "createdAt": "2025-01-06T15:32:58.749924Z", + "description": "", + "id": "danielw1108", + "logo": "", + "members": [], + "name": "Daniel W", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tianyuw/ComfyUI-LLM-API", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-18T10:57:23.976836Z", + "description": "", + "downloads": 148, + "github_stars": 6, + "icon": "", + "id": "condition-utils", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-18T10:57:24.452261Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a96888ce-c8fe-44df-abbb-63d8719277b3", + "node_id": "condition-utils", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfyui-Condition-Utils", + "publisher": { + "createdAt": "2024-12-25T07:03:37.474647Z", + "description": "", + "id": "lrzjason", + "logo": "", + "members": [], + "name": "lrzjason", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lrzjason/Comfyui-Condition-Utils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-22T10:26:55.87448Z", + "description": "This custom node provides a smooth step function that normalizes LoRA values by enhancing elements above the mean while reducing those below it. Users can independently control both the LoRA strength and smooth step intensity to fine-tune their results, though the effectiveness may vary between different seeds and LoRA types.", + "downloads": 1899, + "github_stars": 6, + "icon": "", + "id": "comfyui-smooth-step-lora-loader", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-25T18:35:04.409911Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5e6d827a-fd46-4924-83ed-1c5f036ef685", + "node_id": "comfyui-smooth-step-lora-loader", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-smooth-step-lora-loader", + "publisher": { + "createdAt": "2024-12-22T10:17:33.875427Z", + "description": "", + "id": "neph1", + "logo": "", + "members": [], + "name": "neph1", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/neph1/comfyui-smooth-step-lora-loader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-15T01:40:38.497233Z", + "description": "", + "downloads": 1424, + "github_stars": 6, + "icon": "", + "id": "comfyui-mosaic-mask", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-15T01:40:42.292433Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "dacb9601-2fec-4089-ae61-7879fcc08fc3", + "node_id": "comfyui-mosaic-mask", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Mosaic-Mask", + "publisher": { + "createdAt": "2024-08-15T01:29:48.304563Z", + "description": "", + "id": "okgo4", + "logo": "", + "members": [], + "name": "okgo4", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/okgo4/ComfyUI-Mosaic-Mask", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-02T11:49:00.067772Z", + "description": "ComfyUI Node to create Object-Oriented Prompts", + "downloads": 1077, + "github_stars": 8, + "icon": "", + "id": "oop", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-02T11:49:00.443925Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1a2fc87e-273f-46e2-a123-74132e44fb4e", + "node_id": "oop", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-OOP", + "publisher": { + "createdAt": "2025-03-02T11:38:27.513697Z", + "description": "", + "id": "ravenblack", + "logo": "", + "members": [], + "name": "0xRavenBlack", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/0xRavenBlack/ComfyUI-OOP", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-11T22:33:35.321434Z", + "description": "Image metrics nodes for ComfyUI", + "downloads": 1304, + "github_stars": 2, + "icon": "https://raw.githubusercontent.com/Amorano/Jovimetrix-examples/refs/heads/master/res/logo-jovi_measure.png", + "id": "jovi_measure", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-05T04:10:55.40461Z", + "dependencies": [ + "git+https://github.com/cozy-comfyui/cozy_comfyui@main#egg=cozy_comfyui", + "numpy<2", + "scikit-image" + ], + "deprecated": false, + "downloadUrl": "", + "id": "107be3aa-7d37-45ab-b6b4-3755abdef834", + "node_id": "jovi_measure", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Jovi Measure", + "publisher": { + "createdAt": "2024-05-17T04:16:25.445017Z", + "description": "", + "id": "amorano", + "logo": "", + "members": [], + "name": "Joviex", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Amorano/Jovi_Measure", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-24T16:13:34.831516Z", + "description": "OmniGen Unified Image Generation Model Integration.", + "downloads": 1857, + "github_stars": 6, + "icon": "", + "id": "comfyui-omnigenx", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-24T16:13:36.624746Z", + "dependencies": [ + "numpy", + "datasets", + "accelerate", + "peft", + "diffusers", + "timm" + ], + "deprecated": false, + "downloadUrl": "", + "id": "62df4faa-48a6-4e30-92e4-6f652e7c5f24", + "node_id": "comfyui-omnigenx", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-OmniGenX", + "publisher": { + "createdAt": "2024-09-29T10:55:36.930737Z", + "description": "", + "id": "cychenyue", + "logo": "", + "members": [], + "name": "cychenyue", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/CY-CHENYUE/ComfyUI-OmniGenX", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-08T02:15:42.038309Z", + "description": "Comfyui SD-API API/NOVEL AI request node, support nai3/nai4", + "downloads": 1256, + "github_stars": 3, + "icon": "", + "id": "ComfyUI_API_Request", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-08T02:44:03.886524Z", + "dependencies": [ + "python-dotenv" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b2b6c30d-2ef4-4063-8894-320db718d523", + "node_id": "ComfyUI_API_Request", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_NovelAI_API_Request", + "publisher": { + "createdAt": "2025-02-08T02:06:47.710121Z", + "description": "", + "id": "diaodaiachan", + "logo": "", + "members": [], + "name": "DiaoDaiaChan", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DiaoDaiaChan/ComfyUI_API_Request", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-09T01:17:26.841294Z", + "description": "Custom nodes introducing everything-reactivity and timelines to ComfyUI", + "downloads": 7511, + "github_stars": 534, + "icon": "\ud83c\udf00", + "id": "comfyui_ryanonyheinside", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-31T21:23:31.010511Z", + "dependencies": [ + "pygame", + "opencv-python>=4.10.0", + "scipy", + "torchaudio", + "pillow", + "librosa>=0.10.2", + "pymunk==6.8.1", + "matplotlib", + "openunmix", + "mido", + "scikit-image" + ], + "deprecated": false, + "downloadUrl": "", + "id": "cfb4b945-69fb-4d97-9f2c-810f7ee4ddaf", + "node_id": "comfyui_ryanonyheinside", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.12" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "RyanOnTheInside", + "publisher": { + "createdAt": "2024-08-15T13:11:47.128123Z", + "description": "", + "id": "ryanontheinside", + "logo": "", + "members": [], + "name": "ryanontheinside", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ryanontheinside/ComfyUI_RyanOnTheInside", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-01T11:50:40.557824Z", + "description": "Non-native [a/AttentionDistillation](https://github.com/xugao97/AttentionDistillation) for ComfyUI.\nOfficial ComfyUI demo for the paper AttentionDistillation, implemented as an extension of ComfyUI. Note that this extension incorporates AttentionDistillation using diffusers.", + "downloads": 2106, + "github_stars": 110, + "icon": "", + "id": "attention-distillation", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-10T09:01:43.199939Z", + "dependencies": [ + "diffusers", + "accelerate", + "Pillow", + "torch>=2.1.0", + "tqdm", + "huggingface_hub", + "sentencepiece", + "protobuf" + ], + "deprecated": false, + "downloadUrl": "", + "id": "baf28525-cab6-4dfa-9985-bbaae8d129a0", + "node_id": "attention-distillation", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Attention-Distillation", + "publisher": { + "createdAt": "2025-03-01T11:19:00.531762Z", + "description": "", + "id": "zichongc", + "logo": "", + "members": [], + "name": "zichongc", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zichongc/ComfyUI-Attention-Distillation", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-26T21:11:30.399699Z", + "description": "Calculates the percentage of a mask area compared to the total image size and outputs a boolean based on a defined threshold.", + "downloads": 570, + "github_stars": 3, + "icon": "", + "id": "ComfyUI_MaskAreaCondition", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-28T08:23:59.563511Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3012896f-8e4e-4d1e-93b6-e02c792c53cf", + "node_id": "ComfyUI_MaskAreaCondition", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_MaskAreaCondition", + "publisher": { + "createdAt": "2025-01-09T15:11:06.760903Z", + "description": "", + "id": "a-und-b", + "logo": "", + "members": [], + "name": "a-und-b", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/a-und-b/ComfyUI_MaskAreaCondition", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-22T22:29:29.028381Z", + "description": "Downloads repos/spaces and individual files from HuggingFace", + "downloads": 6041, + "github_stars": 19, + "icon": "https://impactframes.ai/System/Icons/48x48/if.png", + "id": "comfyui-if_ai_hfdownloadernode", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-29T11:10:23.90873Z", + "dependencies": [ + "huggingface_hub", + "python-dotenv", + "aiohttp", + "tqm" + ], + "deprecated": false, + "downloadUrl": "", + "id": "31d85cd4-0261-428e-abf7-de5118d45ea1", + "node_id": "comfyui-if_ai_hfdownloadernode", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"MIT License\"}", + "name": "IF_HuggingFace_downloader", + "publisher": { + "createdAt": "2024-05-22T21:13:45.198878Z", + "description": "", + "id": "impactframes", + "logo": "", + "members": [], + "name": "impactframes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/if-ai/ComfyUI-IF_AI_HFDownloaderNode", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-24T03:39:10.515325Z", + "description": "Random useful nodes I've devloped.", + "downloads": 1627, + "github_stars": 6, + "icon": "", + "id": "comfyui-hiero-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-24T03:39:10.79776Z", + "dependencies": [ + "numpy", + "Pillow", + "discord-webhook" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c58b3b24-e109-42d9-aa54-2546e4bb960c", + "node_id": "comfyui-hiero-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-Hiero-Nodes", + "publisher": { + "createdAt": "2024-06-24T03:08:52.123579Z", + "description": "", + "id": "hierophant", + "logo": "", + "members": [], + "name": "Hiero", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Hiero207/ComfyUI-Hiero-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-29T11:21:16.330762Z", + "description": "Float project applicable to ComfyUI.Generates speaking portrait video frames from an image and audio.\u9002\u7528\u4e8eComfyUI\u7684\u5f3a\u5927[FLOAT]\u9879\u76ee\uff0c\u5b9e\u73b0\u7531\u8096\u50cf\u751f\u6210\u97f3\u9891\u9a71\u52a8\u7684\u8bf4\u8bdd\u89c6\u9891\u3002", + "downloads": 676, + "github_stars": 4, + "icon": "", + "id": "Float_Animator", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-16T06:49:43.771852Z", + "dependencies": [ + "opencv-python", + "pandas", + "matplotlib", + "flow-vis", + "librosa", + "transformers>=4.30.2", + "albumentations>=1.4.15", + "albucore>=0.0.16", + "torchdiffeq>=0.2.5", + "timm>=1.0.9", + "face_alignment>=1.4.1", + "av>=12.0.0", + "huggingface_hub", + "gdown", + "# gdown For downloading float.pth from Google Drive" + ], + "deprecated": false, + "downloadUrl": "", + "id": "07c990ba-d00e-4f04-8ff8-1f501c487d8c", + "node_id": "Float_Animator", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.5.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Float_Animator", + "publisher": { + "createdAt": "2025-04-09T01:54:01.815357Z", + "description": "", + "id": "kerry", + "logo": "", + "members": [], + "name": "Kerry", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/KERRY-YUAN/ComfyUI_Float_Animator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-28T02:11:29.434297Z", + "description": "RGB to CMYK (save as tif)", + "downloads": 409, + "github_stars": 2, + "icon": "", + "id": "comfyui-rgb2cmyk", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-28T02:11:30.499248Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a70c8fca-595f-49d1-b9cd-ddb93a2eb15e", + "node_id": "comfyui-rgb2cmyk", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-rgb2cmyk", + "publisher": { + "createdAt": "2025-04-27T15:39:04.444519Z", + "description": "", + "id": "linsensen", + "logo": "", + "members": [], + "name": "Jacky-MYQ", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Jacky-MYQ/comfyui-rgb2cmyk", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-02T03:35:15.960664Z", + "description": "Capture Webcamera and URL media streams as ComfyUI images", + "downloads": 1295, + "github_stars": 6, + "icon": "https://raw.githubusercontent.com/Amorano/Jovimetrix-examples/refs/heads/master/res/logo-jovi_capture.png", + "id": "jovi_capture", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-31T18:38:46.092365Z", + "dependencies": [ + "aiohttp", + "git+https://github.com/cozy-comfyui/cozy_comfyui@main#egg=cozy_comfyui", + "mss", + "numpy<2", + "opencv-contrib-python", + "Pillow", + "pyobjc-framework-Quartz; platform_system=='Darwin'", + "pywin32; platform_system=='Windows'", + "pywinctl", + "Xlib; platform_system=='Linux'" + ], + "deprecated": false, + "downloadUrl": "", + "id": "0febd206-0bbb-492d-a160-fff2355fe9c1", + "node_id": "jovi_capture", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Jovi Capture", + "publisher": { + "createdAt": "2024-05-17T04:16:25.445017Z", + "description": "", + "id": "amorano", + "logo": "", + "members": [], + "name": "Joviex", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Amorano/Jovi_Capture", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-24T14:45:08.761167Z", + "description": "Custom ComfyUI nodes including LLM integration, GPT Image 1, LoRA switchers, aspect ratio helper, image tools, and more", + "downloads": 735, + "github_stars": 6, + "icon": "https://github.com/oshtz.png", + "id": "comfyui-oshtz-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-22T09:55:32.717806Z", + "dependencies": [ + "requests", + "torch", + "pydantic", + "Pillow", + "boto3>=1.34.101" + ], + "deprecated": false, + "downloadUrl": "", + "id": "07fae932-a866-47a4-a0fd-32cd5b89d215", + "node_id": "comfyui-oshtz-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "oshtz Nodes", + "publisher": { + "createdAt": "2025-03-24T14:40:42.143961Z", + "description": "", + "id": "oshtz", + "logo": "", + "members": [], + "name": "oshtz", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/oshtz/ComfyUI-oshtz-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-11T21:11:16.602656Z", + "description": "Shuffle nodes after queue execution.", + "downloads": 338, + "github_stars": 5, + "icon": "", + "id": "comfyui-dynamic-routes", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-11T21:11:16.999917Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "75911736-b5d5-44dd-8dca-799584b5305d", + "node_id": "comfyui-dynamic-routes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-dynamic-routes", + "publisher": { + "createdAt": "2024-07-03T02:48:16.838562Z", + "description": "", + "id": "shinich39", + "logo": "", + "members": [], + "name": "shinich39", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shinich39/comfyui-dynamic-routes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-23T23:44:19.657993Z", + "description": "This is a custom node of ComfyUI that categorizes tags outputted by tools like WD14Tagger, filters them by each category, and returns the filtered results.", + "downloads": 6083, + "github_stars": 58, + "icon": "", + "id": "comfyui_tag_fillter", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-03T14:50:15.940302Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c6c54a8c-3862-48c9-a4e7-efaaca5f0ad0", + "node_id": "comfyui_tag_fillter", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.9" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_tag_fillter", + "publisher": { + "createdAt": "2024-05-23T02:14:53.032875Z", + "description": "", + "id": "sugarknight", + "logo": "", + "members": [], + "name": "Sugar Knight", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sugarkwork/comfyui_tag_fillter", + "status": "", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-09T06:55:59.885496Z", + "description": "Image cropping and Image resizing", + "downloads": 341, + "github_stars": 5, + "icon": "", + "id": "comfyui-DataCleaning", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-09T06:56:01.134146Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5c09c094-b46b-4a79-85c7-3b27a74ee210", + "node_id": "comfyui-DataCleaning", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-DataCleaning", + "publisher": { + "createdAt": "2025-04-27T15:39:04.444519Z", + "description": "", + "id": "linsensen", + "logo": "", + "members": [], + "name": "Jacky-MYQ", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Jacky-MYQ/comfyui-DataCleaning", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-06T03:46:15.840754Z", + "description": "A handful of image filters for ComfyUI (darken, lighten, levels, saturate, hue)", + "downloads": 1421, + "github_stars": 6, + "icon": "icon.png", + "id": "basix_image_filters", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-15T23:49:38.057407Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "37f5fa5f-71a4-4b6a-bce7-1a0ae07b9d11", + "node_id": "basix_image_filters", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "basix_image_filters", + "publisher": { + "createdAt": "2024-11-06T00:35:59.815892Z", + "description": "", + "id": "basix", + "logo": "", + "members": [], + "name": "basix", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/maludwig/basix_image_filters", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-10T07:47:43.240022Z", + "description": "\u0421omfyUI version of [a/Euler Smea Dyn Sampler](https://github.com/Koishi-Star/Euler-Smea-Dyn-Sampler). It adds samplers directly to KSampler nodes.", + "downloads": 3304, + "github_stars": 209, + "icon": "", + "id": "euler-smea-dyn-sampler-patched", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-10T07:47:46.769081Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "07d10871-2568-4d9c-9343-2601f0d6c7fe", + "node_id": "euler-smea-dyn-sampler-patched", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "Euler-Smea-Dyn-Sampler-patched", + "publisher": { + "createdAt": "2025-01-10T07:31:43.420228Z", + "description": "", + "id": "yoinked", + "logo": "", + "members": [], + "name": "yoinked \"parsee mizuhashi\" yoinked", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Koishi-Star/Euler-Smea-Dyn-Sampler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-21T02:09:06.20904Z", + "description": "NODES:Nsfw Image Check or Cover Node, The size and dependency of the library are very small, which reduces the problem of conflicts", + "downloads": 1490, + "github_stars": 7, + "icon": "", + "id": "nsfw-image-check-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-02T03:59:50.613244Z", + "dependencies": [ + "numpy", + "opencv-python", + "pillow", + "typing", + "onnxruntime", + "torchvision" + ], + "deprecated": false, + "downloadUrl": "", + "id": "2667d850-80e7-4ace-9c65-d9cd15bd0bdd", + "node_id": "nsfw-image-check-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "nsfw-image-check-comfyui", + "publisher": { + "createdAt": "2024-12-21T02:05:44.5758Z", + "description": "", + "id": "falling", + "logo": "", + "members": [], + "name": "nsfw-image-check-comfyui", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fallingmeteorite/nsfw-image-check-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-01T09:14:48.373945Z", + "description": "ComfyUI-native nodes to run First Order Motion Model for Image Animation and its non-diffusion-based successors. [a/https://github.com/AliaksandrSiarohin/first-order-model](https://github.com/AliaksandrSiarohin/first-order-model)", + "downloads": 1403, + "github_stars": 5, + "icon": "", + "id": "comfyui-firstordermm", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-17T15:27:00.625519Z", + "dependencies": [ + "numpy", + "torch", + "scipy", + "pyyaml", + "matplotlib", + "einops", + "timm" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1493eaed-db76-453b-8e8f-2a7363165ca8", + "node_id": "comfyui-firstordermm", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.7" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-FirstOrderMM", + "publisher": { + "createdAt": "2024-07-01T09:04:25.846954Z", + "description": "", + "id": "fuoumarinas", + "logo": "", + "members": [], + "name": "FuouM", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/FuouM/ComfyUI-FirstOrderMM", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-05T05:49:57.908046Z", + "description": "A powerful node alignment and color management plugin for ComfyUI, designed to enhance your workflow efficiency", + "downloads": 2578, + "github_stars": 151, + "icon": "", + "id": "ComfyUI-Align", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-12T09:40:26.654732Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "d3ef5c3a-266e-4a01-a814-fad487d30e63", + "node_id": "ComfyUI-Align", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.2.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Align", + "publisher": { + "createdAt": "2025-03-31T03:17:16.840656Z", + "description": "", + "id": "moon", + "logo": "", + "members": [], + "name": "Moon", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Moooonet/ComfyUI-Align", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-27T01:54:14.585907Z", + "description": "[a/A3D](https://github.com/n0neye/A3D) is an AI x 3D hybrid tool that allows you to compose 3D scenes and render them with AI. This integration allows you to send the color & depth images to ComfyUI. You can use it as a pose controller, or scene composer for your ComfyUI workflows.", + "downloads": 807, + "github_stars": 6, + "icon": "https://storage.googleapis.com/nontech-webpage/ai-editor/assets/logo_circle_512.png", + "id": "a3d-comfyui-integration", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-28T03:54:53.893301Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4939415c-7b41-414b-a065-24f89c37a484", + "node_id": "a3d-comfyui-integration", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "A3D ComfyUI Integration", + "publisher": { + "createdAt": "2025-04-27T01:42:29.402217Z", + "description": "", + "id": "n0neye", + "logo": "", + "members": [], + "name": "NONEYE", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/n0neye/A3D-comfyui-integration", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-01T19:03:38.504392Z", + "description": "a simple resize image node(s) in comfyui. This repository is not specific to the length and width values of an image, but focuses more on adjusting the total pixel count, side length specifications, and size ratios of the image.", + "downloads": 1815, + "github_stars": 5, + "icon": "", + "id": "comfyui_reimgsize", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-27T15:35:18.805099Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "f9b702f8-ed31-42f7-b29c-f50f11ca16cf", + "node_id": "comfyui_reimgsize", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_reimgsize", + "publisher": { + "createdAt": "2024-07-27T15:18:06.489076Z", + "description": "", + "id": "makki-shizu", + "logo": "", + "members": [], + "name": "Makki_Shizu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MakkiShizu/comfyui_reimgsize", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-30T20:42:41.772882Z", + "description": "a collection of ComfyUI image processing nodes", + "downloads": 6598, + "github_stars": 0, + "icon": "", + "id": "syntax-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-30T20:42:42.175074Z", + "dependencies": [ + "Pillow", + "opencv-python", + "numpy", + "torch", + "librosa", + "scipy", + "mediapipe" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e80fc597-3dce-48a2-89c6-057932d31fd1", + "node_id": "syntax-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"text\": \"Your License Text Here\"}", + "name": "syntax-nodes", + "publisher": { + "createdAt": "2025-02-02T16:54:18.069056Z", + "description": "", + "id": "syntaxdiffusion", + "logo": "", + "members": [], + "name": "Syntax Diffusion", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dream-computing/syntax-nodes.git", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-21T05:25:37.253486Z", + "description": "This node is used to enhance image details. We can add a latent space image and introduce any amount of noise. Then, we can start denoising at any timestep. This allows us to add more details to the image while maintaining overall consistency as much as possible.", + "downloads": 640, + "github_stars": 6, + "icon": "", + "id": "ComfyUI-Ad_scheduler", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-21T05:25:37.663821Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "528057b6-8c14-49a0-89be-8736ce88572a", + "node_id": "ComfyUI-Ad_scheduler", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Ad_scheduler", + "publisher": { + "createdAt": "2025-04-21T04:51:45.613704Z", + "description": "", + "id": "snap-demo", + "logo": "", + "members": [], + "name": "SSsnap", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SS-snap/ComfyUI-Ad_scheduler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-27T19:55:17.715894Z", + "description": "AGoogle Moogle is a Google Translator node for ComfyUI that provides easy-to-use text translation capabilities directly within your ComfyUI workflows.", + "downloads": 1054, + "github_stars": 5, + "icon": "", + "id": "google_moogle", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-27T19:55:18.113125Z", + "dependencies": [ + "anyio", + "googletrans", + "sniffio", + "typing-extensions" + ], + "deprecated": false, + "downloadUrl": "", + "id": "402ab4f8-0ac8-4c84-97f2-c72c809dc9bf", + "node_id": "google_moogle", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "google_moogle", + "publisher": { + "createdAt": "2024-12-23T04:42:15.258848Z", + "description": "", + "id": "shmuel", + "logo": "", + "members": [], + "name": " Shmuel Ronen", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShmuelRonen/google_moogle", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-03T05:31:06.792632Z", + "description": "A set of nodes for basic Llama 3.2 Vision support in ComfyUI. Give it an image and query and it will output a text response.", + "downloads": 1299, + "github_stars": 5, + "icon": "", + "id": "yallm-llamavision", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-26T03:46:13.628374Z", + "dependencies": [ + "transformers>=4.45.0", + "accelerate", + "bitsandbytes", + "pydantic" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f86019ec-3909-469d-8190-0cd7020f596a", + "node_id": "yallm-llamavision", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.2.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "YALLM-LlamaVision", + "publisher": { + "createdAt": "2024-09-29T10:13:00.168645Z", + "description": "", + "id": "asaddi", + "logo": "", + "members": [], + "name": "Allan Saddi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/asaddi/YALLM-LlamaVision", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-12T06:24:21.109747Z", + "description": "OmniGen node for AI image generation", + "downloads": 12043, + "github_stars": 278, + "icon": "", + "id": "comfyui-omnigen", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-23T00:54:33.086777Z", + "dependencies": [ + "torch>=2.0.0", + "numpy>=1.26.0", + "pillow>=10.0.0", + "huggingface_hub", + "requests>=2.31.0", + "transformers>=4.30.0", + "accelerate>=0.26.0", + "einops>=0.6.0", + "safetensors>=0.3.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1376dcc9-be61-42bf-8745-2307a198c0fa", + "node_id": "comfyui-omnigen", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-OmniGen", + "publisher": { + "createdAt": "2024-07-01T23:11:45.570672Z", + "description": "", + "id": "ailab", + "logo": "", + "members": [], + "name": "AILab", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/1038lab/ComfyUI-OmniGen", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-28T21:19:39.731524Z", + "description": "Bytebeat is like composing music with the tools of a programmer\u2019s toolkit. Instead of piano keys, you have operators like >>, |, and &. It\u2019s like giving your CPU a guitar and letting it shred! \ud83e\udd18", + "downloads": 1429, + "github_stars": 5, + "icon": "", + "id": "comfyui_beatbyte", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-28T21:19:43.503586Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "cde53653-08d5-4b13-81b8-e4d929b158d4", + "node_id": "comfyui_beatbyte", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_BeatByte", + "publisher": { + "createdAt": "2024-12-21T20:09:47.339116Z", + "description": "", + "id": "c0ffymachyne", + "logo": "", + "members": [], + "name": "c0ffymachyne", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/c0ffymachyne/ComfyUI_BeatByte", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-27T23:12:27.037057Z", + "description": "Custom nodes for ComfyUI by unwdef.", + "downloads": 2326, + "github_stars": 5, + "icon": "", + "id": "unwdef-nodes-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-27T10:41:56.160608Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "7a1f3d35-9db6-4e02-9746-9f5fa22ee408", + "node_id": "unwdef-nodes-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "unwdef-nodes-comfyui", + "publisher": { + "createdAt": "2024-06-27T22:58:42.893575Z", + "description": "", + "id": "unwdef", + "logo": "", + "members": [], + "name": "unwdef", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/unwdef/unwdef-nodes-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-01T00:06:10.965279Z", + "description": "An expanding collection of ComfyUI nodes focused on new papers. Including: WFEN, RealViFormer, ProPIH, CoLIE, VFIMamba, ConvIR, StabStitch", + "downloads": 1635, + "github_stars": 5, + "icon": "", + "id": "fm_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-12T04:47:01.25912Z", + "dependencies": [ + "torch", + "einops" + ], + "deprecated": false, + "downloadUrl": "", + "id": "af724806-003a-4a64-9149-898cb44a53a6", + "node_id": "fm_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "FM_nodes", + "publisher": { + "createdAt": "2024-07-01T09:04:25.846954Z", + "description": "", + "id": "fuoumarinas", + "logo": "", + "members": [], + "name": "FuouM", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/FuouM/FM_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-02T23:07:45.300439Z", + "description": "An 'opinionated' Wave Function Collapse implementation with a set of nodes for comfyui", + "downloads": 1320, + "github_stars": 5, + "icon": "", + "id": "comfyui_wfc_like", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-02T23:07:45.588714Z", + "dependencies": [ + "py_search" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1ee53a74-8ca8-484e-9dfc-0d1187a41c01", + "node_id": "comfyui_wfc_like", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_wfc_like", + "publisher": { + "createdAt": "2024-05-22T19:48:40.164036Z", + "description": "", + "id": "bmad4ever", + "logo": "", + "members": [], + "name": "bmad", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bmad4ever/comfyui_wfc_like", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-04T06:42:05.553525Z", + "description": "youtube video player in comfyui", + "downloads": 1586, + "github_stars": 6, + "icon": "https://raw.githubusercontent.com/daxcay/ComfyUI-YouTubeVideoPlayer/refs/heads/main/web/assets/logo.png", + "id": "comfyui-youtubevideoplayer", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-04T06:42:09.35753Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "61bfecff-2b16-497c-a248-ddf28ced8524", + "node_id": "comfyui-youtubevideoplayer", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-YouTubeVideoPlayer", + "publisher": { + "createdAt": "2024-05-23T03:32:31.512265Z", + "description": "", + "id": "daxcay", + "logo": "", + "members": [], + "name": "Daxton Caylor", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/daxcay/ComfyUI-YouTubeVideoPlayer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-05T09:31:17.654143Z", + "description": "ComfyUI custom node based on ByteDance's MegaTTS3, supporting Chinese and English text-to-speech with high-quality voice cloning.", + "downloads": 1146, + "github_stars": 42, + "icon": "", + "id": "ComfyUI-MegaTTS", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-11T23:47:19.463513Z", + "dependencies": [ + "setproctitle>=1.2.0", + "attrdict>=2.0.1", + "librosa>=0.9.2", + "pydub>=0.25.1", + "pyloudnorm>=0.1.0", + "x-transformers>=0.25.0", + "torchdiffeq>=0.2.2", + "openai-whisper>=20230314", + "tqdm>=4.65.0", + "torch>=2.0.0", + "numpy>=1.20.0", + "requests>=2.28.0", + "pyyaml>=6.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "0e44fd09-ce20-4730-9c41-c2231db3020f", + "node_id": "ComfyUI-MegaTTS", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-MegaTTS", + "publisher": { + "createdAt": "2024-07-01T23:11:45.570672Z", + "description": "", + "id": "ailab", + "logo": "", + "members": [], + "name": "AILab", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/1038lab/ComfyUI-MegaTTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-26T03:08:05.473492Z", + "description": "RiceRound is an open-source project that migrates local AI workflows (built with ComfyUI) to the cloud, enabling distributed deployment. Creators can design and run workflows while monitoring progress and node status in real-time. The platform supports one-click cloud node generation and online page creation.", + "downloads": 1169, + "github_stars": 17, + "icon": "https://www.riceround.online/RiceRound.ico", + "id": "comfyui_riceround", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-17T17:48:18.776672Z", + "dependencies": [ + "aiohttp", + "pyzipper", + "websockets", + "portalocker", + "tomlkit" + ], + "deprecated": false, + "downloadUrl": "", + "id": "957011df-be6d-4999-ab81-173aad29617f", + "node_id": "comfyui_riceround", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_RiceRound", + "publisher": { + "createdAt": "2024-10-23T14:48:45.245034Z", + "description": "", + "id": "riceround", + "logo": "", + "members": [], + "name": "RiceRound", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/RiceRound/ComfyUI_RiceRound", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-08T07:10:15.828574Z", + "description": "ComfyUI_Appstore, a tool that converts ComfyUI workflows into web apps on huaxiaobao.net with one click, and supports payments, like bxb does. Providing a way for the comfyui authors to get profit from.", + "downloads": 1254, + "github_stars": 5, + "icon": "", + "id": "comfyui_appstore", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-08T07:10:20.002644Z", + "dependencies": [ + "Pillow", + "tqdm", + "aiohttp", + "filetype", + "websockets", + "aiohttp-cors", + "requests", + "numpy", + "piexif" + ], + "deprecated": false, + "downloadUrl": "", + "id": "59b8e74b-29bb-4ce1-9a7a-790359fd29ec", + "node_id": "comfyui_appstore", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Appstore", + "publisher": { + "createdAt": "2024-11-08T07:02:30.690321Z", + "description": "", + "id": "w00dycomfyuirun", + "logo": "", + "members": [], + "name": "w00dy@comfyui.run", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ronaldzgithub/ComfyUI_Appstore", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-16T16:17:48.779465Z", + "description": "This platform extension provides ZhipuAI nodes, enabling you to configure a workflow for online video generation.", + "downloads": 1316, + "github_stars": 5, + "icon": "", + "id": "comfyui-zhipuai-platform", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-16T16:17:52.572777Z", + "dependencies": [ + "zhipuai-platform-video" + ], + "deprecated": false, + "downloadUrl": "", + "id": "4bc14efb-1c56-4355-9600-d590ea5d2a73", + "node_id": "comfyui-zhipuai-platform", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ZhipuAI-Platform", + "publisher": { + "createdAt": "2024-09-16T16:05:27.295691Z", + "description": "", + "id": "metaglm", + "logo": "", + "members": [], + "name": "MetaGLM", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MetaGLM/ComfyUI-ZhipuAI-Platform", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-10T07:38:02.079207Z", + "description": "\u0421omfyUI version of [a/Euler Smea Dyn Sampler](https://github.com/Koishi-Star/Euler-Smea-Dyn-Sampler). It adds samplers directly to KSampler nodes.", + "downloads": 2630, + "github_stars": 209, + "icon": "", + "id": "euler-smea-dyn-sampler", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-10T07:38:03.533438Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a7897221-ef6d-4815-97d0-b925f2219b94", + "node_id": "euler-smea-dyn-sampler", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "Euler-Smea-Dyn-Sampler-patched", + "publisher": { + "createdAt": "2025-01-10T07:31:43.420228Z", + "description": "", + "id": "yoinked", + "logo": "", + "members": [], + "name": "yoinked \"parsee mizuhashi\" yoinked", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Koishi-Star/Euler-Smea-Dyn-Sampler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-23T04:47:02.354916Z", + "description": "Add a node that outputs width and height of the size selected from the preset (.csv).", + "downloads": 7589, + "github_stars": 7, + "icon": "", + "id": "comfyui-sizefrompresets", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-23T04:47:02.688421Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5af60d29-8c27-4227-8d42-c12dbb379a20", + "node_id": "comfyui-sizefrompresets", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-SizeFromPresets", + "publisher": { + "createdAt": "2024-06-23T04:27:13.079228Z", + "description": "", + "id": "nkchocoai", + "logo": "", + "members": [], + "name": "nk choco", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nkchocoai/ComfyUI-SizeFromPresets", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-03T12:57:30.330051Z", + "description": "Adds a custom node for saving images in webp, jpeg, avif, jxl (no metadata) and supports loading workflows from saved images", + "downloads": 1969, + "github_stars": 5, + "icon": "", + "id": "comfyui_extendedimageformats", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-03T12:57:30.589148Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "9899a1a7-c66f-48fd-8d2d-425d41a2e3bd", + "node_id": "comfyui_extendedimageformats", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Extended Image Formats", + "publisher": { + "createdAt": "2024-06-03T12:46:43.180099Z", + "description": "", + "id": "kaan", + "logo": "", + "members": [], + "name": "Kaan B\u00fcy\u00fckerdem", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kaanyalova/ComfyUI_ExtendedImageFormats", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-27T02:13:56.46767Z", + "description": "Match image/mask sizes", + "downloads": 1626, + "github_stars": 5, + "icon": "https://img.icons8.com/?size=100&id=46251&format=png&color=000000", + "id": "size-match-compositing-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-05T17:43:58.091689Z", + "dependencies": [ + "TensorImgUtils" + ], + "deprecated": false, + "downloadUrl": "", + "id": "93c4f31b-22ea-4288-958a-38cd9df12c29", + "node_id": "size-match-compositing-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"text\": \"UNLICENSE\"}", + "name": "Image/Mask Size Matching and Simple Compositing", + "publisher": { + "createdAt": "2024-05-26T02:18:06.707962Z", + "description": "", + "id": "christian-byrne", + "logo": "", + "members": [], + "name": "christian-byrne", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/christian-byrne/size-match-compositing-nodes", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-23T04:54:58.97945Z", + "description": "Add a node for drawing text with CR Draw Text of ComfyUI_Comfyroll_CustomNodes to the area of SEGS detected by Ultralytics Detector of ComfyUI-Impact-Pack.", + "downloads": 9463, + "github_stars": 12, + "icon": "", + "id": "comfyui-textonsegs", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-23T04:54:59.283318Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a038593f-84b5-4cbe-a209-b42c9e30fd1a", + "node_id": "comfyui-textonsegs", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-TextOnSegs", + "publisher": { + "createdAt": "2024-06-23T04:27:13.079228Z", + "description": "", + "id": "nkchocoai", + "logo": "", + "members": [], + "name": "nk choco", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nkchocoai/ComfyUI-TextOnSegs", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-28T12:53:29.919161Z", + "description": "Create colorful mosaic images in ComfyUI by computing label images and applying lookup tables.", + "downloads": 1418, + "github_stars": 6, + "icon": "https://github.com/Mason-McGough/ComfyUI-Mosaica/blob/main/docs/mason-mcgough.png?raw=true", + "id": "comfyui-mosaica", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-29T12:58:13.992221Z", + "dependencies": [ + "matplotlib", + "scikit-learn" + ], + "deprecated": false, + "downloadUrl": "", + "id": "2c2d72d4-bea8-4757-8b79-002e58eaf020", + "node_id": "comfyui-mosaica", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Mosaica", + "publisher": { + "createdAt": "2024-05-28T12:45:05.547193Z", + "description": "", + "id": "masonmcgough", + "logo": "", + "members": [], + "name": "Mason McGough", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Mason-McGough/ComfyUI-Mosaica", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-06T18:25:44.108103Z", + "description": "Simple node to assist with prompt generation for NOOBAI XL / Illustrious models", + "downloads": 3230, + "github_stars": 30, + "icon": "", + "id": "comfyui-easy-noobai", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-02T22:05:35.271543Z", + "dependencies": [ + "psutil", + "colorama", + "tqdm", + "inquirer" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e5372c40-eb94-4089-994e-3b05cd5f91e1", + "node_id": "comfyui-easy-noobai", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Easy Noobai", + "publisher": { + "createdAt": "2024-11-29T05:47:52.886199Z", + "description": "", + "id": "itsjustregi", + "logo": "", + "members": [], + "name": "itsjustregi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/regiellis/ComfyUI-EasyNoobai", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-05T07:04:39.294887Z", + "description": "A simple node to filter NSFW outputs using AdamCodd/vit-base-nsfw-detector.", + "downloads": 1517, + "github_stars": 5, + "icon": "", + "id": "comfyui-yetanothersafetychecker", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-05T07:04:43.054934Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5e031bce-0b78-4378-b145-cb907cb6f571", + "node_id": "comfyui-yetanothersafetychecker", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-YetAnotherSafetyChecker", + "publisher": { + "createdAt": "2024-07-19T17:38:46.26651Z", + "description": "", + "id": "betadoggo", + "logo": "", + "members": [], + "name": "BetaDoggo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BetaDoggo/ComfyUI-YetAnotherSafetyChecker", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-27T03:48:59.704972Z", + "description": "The comfyui supported version of the [a/Magic Clothing](https://github.com/ShineChen1024/MagicClothing) project, not the diffusers version, allows direct integration with modules such as ipadapter", + "downloads": 4767, + "github_stars": 78, + "icon": "", + "id": "comfyui-magic-clothing", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-27T03:49:00.486125Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "127e4336-a0c6-4da6-bcf2-ef33b65213cc", + "node_id": "comfyui-magic-clothing", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "comfyui-magic-clothing", + "publisher": { + "createdAt": "2024-05-24T07:30:11.627807Z", + "description": "", + "id": "longgui0318", + "logo": "", + "members": [], + "name": "\u72d7\u7684\u8d1d", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/longgui0318/comfyui-magic-clothing", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-26T00:03:18.520307Z", + "description": "A node for ComfyUI that takes a list of masks and returns a single mask based on your criteria.", + "downloads": 1313, + "github_stars": 4, + "icon": "https://example.com/icon.png", + "id": "comfyui-maskarbiter", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-01T01:37:06.394568Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c4a74006-722e-4e46-bb2f-3df561eb108c", + "node_id": "comfyui-maskarbiter", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-MaskArbiter", + "publisher": { + "createdAt": "2024-11-22T01:36:07.508549Z", + "description": "", + "id": "sparknight", + "logo": "", + "members": [], + "name": "Sparknight", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SparknightLLC/ComfyUI-MaskArbiter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-05T15:36:57.735975Z", + "description": "A ComfyUI extension for Qwen-VL series large language models, supporting multi-modal functions such as text generation, image understanding, and video analysis.Support for Qwen2-VL, Qwen2.5-VL.", + "downloads": 548, + "github_stars": 7, + "icon": "", + "id": "ComfyUI-Qwen-VL", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-26T03:52:49.883038Z", + "dependencies": [ + "accelerate>=1.0", + "bitsandbytes", + "huggingface-hub>=0.26.2", + "numpy", + "pillow>=9.4.0", + "qwen-vl-utils", + "torch>=2.0.1", + "torchvision>=0.15.2", + "transformers>=4.46", + "modelscope", + "Requests" + ], + "deprecated": false, + "downloadUrl": "", + "id": "13851007-e1c1-40bc-9114-ccf35f8e3500", + "node_id": "ComfyUI-Qwen-VL", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Qwen-VL", + "publisher": { + "createdAt": "2025-04-03T11:23:35.117782Z", + "description": "", + "id": "sxqbw", + "logo": "", + "members": [], + "name": "Qwen", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SXQBW/ComfyUI-Qwen-VL", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-02T00:35:43.288353Z", + "description": "A custom ComfyUI node for interactive 360\u00b0 panorama image previews. Panoramic 360 images are also sometimes known as VR photography (virtual reality), HDRI environments (ex: skyboxes), image spheres, spherical images, 360 pano, and 360 degree photos.", + "downloads": 3687, + "github_stars": 62, + "icon": "", + "id": "comfyui-preview360panorama", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-25T19:27:05.290727Z", + "dependencies": [ + "" + ], + "deprecated": false, + "downloadUrl": "", + "id": "371eaa2e-6bab-4525-a41d-e3749a52c61d", + "node_id": "comfyui-preview360panorama", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_preview360panorama", + "publisher": { + "createdAt": "2025-01-28T00:40:42.265881Z", + "description": "", + "id": "progamergov", + "logo": "", + "members": [], + "name": "Ben", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ProGamerGov/ComfyUI_preview360panorama", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-26T01:00:55.332117Z", + "description": "ComfyUI_FlipStreamViewer is a tool that provides a customizable viewer interface for flipping images with frame interpolation.", + "downloads": 1592, + "github_stars": 5, + "icon": "", + "id": "comfyui_flipstreamviewer", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-05T01:10:23.158642Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "094df8c9-ecd7-4c58-bc68-402a5a9f75f2", + "node_id": "comfyui_flipstreamviewer", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "3.4.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI_FlipStreamViewer", + "publisher": { + "createdAt": "2024-08-26T00:39:27.244452Z", + "description": "", + "id": "sakura1bgx", + "logo": "", + "members": [], + "name": "sakura1bgx", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sakura1bgx/ComfyUI_FlipStreamViewer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-06T18:35:30.580058Z", + "description": "This node can easily switch between models and prompts by saving presets.", + "downloads": 1425, + "github_stars": 4, + "icon": "", + "id": "comfyui_mittimi_load_preset2", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-18T14:53:07.226649Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b0b8faf8-08ae-466d-9dee-44e839e336f4", + "node_id": "comfyui_mittimi_load_preset2", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_mittimiLoadPreset2", + "publisher": { + "createdAt": "2024-08-25T10:31:13.036141Z", + "description": "", + "id": "mittimi", + "logo": "", + "members": [], + "name": "mittimi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mittimi/ComfyUI_mittimiLoadPreset2", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-25T10:45:15.215764Z", + "description": "A custom node suite to augment the capabilities of the [a/AP Workflows for ComfyUI](https://perilli.com/ai/comfyui/).", + "downloads": 478, + "github_stars": 4, + "icon": "https://apworkflows.perilli.com/APW_logo.png", + "id": "apw_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-19T14:39:30.100147Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "cf25c1cf-0035-4690-9922-c075355a72ef", + "node_id": "apw_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "APW Nodes", + "publisher": { + "createdAt": "2025-04-25T10:01:55.129725Z", + "description": "", + "id": "perilli", + "logo": "", + "members": [], + "name": "Perilli", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alessandroperilli/APW_Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-18T03:08:36.241043Z", + "description": "Background removal based on BEN. NODES:LoadRembgByBenModel, RembgByBen, GetMaskByBen, RembgByBenAdvanced, BlurFusionForegroundEstimation.", + "downloads": 2501, + "github_stars": 4, + "icon": "", + "id": "comfyui_ben_ll", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-22T07:02:02.018295Z", + "dependencies": [ + "timm", + "packaging" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5ed1e4bd-cd42-41fb-bc55-67f4d2224d73", + "node_id": "comfyui_ben_ll", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_BEN_ll", + "publisher": { + "createdAt": "2024-08-02T08:30:49.205493Z", + "description": "", + "id": "lldacing", + "logo": "", + "members": [], + "name": "lldacing", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lldacing/ComfyUI_BEN_ll", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-23T20:02:57.580593Z", + "description": "Kalman-Inspired Feature Propagation for Video Face Super-Resolution", + "downloads": 767, + "github_stars": 46, + "icon": "", + "id": "ComfyUI-KEEP", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-04T11:36:00.485988Z", + "dependencies": [ + "addict", + "future", + "lmdb", + "numpy", + "opencv-python", + "Pillow", + "pyyaml", + "scikit-image", + "scipy", + "torch", + "torchvision", + "tqdm", + "yapf", + "ffmpeg-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a49863f6-767e-4412-8133-66b1ebf62e06", + "node_id": "ComfyUI-KEEP", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-KEEP", + "publisher": { + "createdAt": "2025-05-23T19:23:03.551719Z", + "description": "", + "id": "wildai", + "logo": "", + "members": [], + "name": "Wildminder", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wildminder/ComfyUI-KEEP", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-27T14:08:05.971135Z", + "description": "GLHF is a ComfyUI node that facilitates seamless interaction with the GLHF chat API. Designed to enhance user experience, it supports multiple language models, web search integration, and customizable instructions, making it a powerful extension for AI-driven workflows.", + "downloads": 1302, + "github_stars": 4, + "icon": "", + "id": "comfyui-glhf", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-27T14:25:03.18383Z", + "dependencies": [ + "openai", + "googlesearch-python", + "requests", + "bs4" + ], + "deprecated": false, + "downloadUrl": "", + "id": "9ab9e409-1084-4539-8ee7-ba425bf67fad", + "node_id": "comfyui-glhf", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-GLHF", + "publisher": { + "createdAt": "2024-08-16T22:04:57.714002Z", + "description": "", + "id": "fairy-root", + "logo": "", + "members": [], + "name": "Fairy Root", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fairy-root/ComfyUI-GLHF", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-29T20:47:29.875213Z", + "description": "Nodes for calling LLMs, enabled by LiteLLM", + "downloads": 1381, + "github_stars": 6, + "icon": "https://avatars.githubusercontent.com/u/154278219?s=48&v=4", + "id": "litellm", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-29T20:57:03.38939Z", + "dependencies": [ + "pyyaml", + "addict", + "litellm", + "boto3" + ], + "deprecated": false, + "downloadUrl": "", + "id": "bc258000-57aa-4081-8279-ff09ebf19600", + "node_id": "litellm", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "MIT", + "name": "ComfyUI_LiteLLM", + "publisher": { + "createdAt": "2024-06-24T06:41:24.413766Z", + "description": "", + "id": "hmg", + "logo": "", + "members": [], + "name": "HMG", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Hopping-Mad-Games/ComfyUI_LiteLLM", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-08T09:01:40.990478Z", + "description": "A ComfyUI node that extends an image vertically to add a label", + "downloads": 1550, + "github_stars": 4, + "icon": "", + "id": "comfyui-imagelabel", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-08T09:01:44.547556Z", + "dependencies": [ + "torch", + "torchvision", + "Pillow>=8" + ], + "deprecated": false, + "downloadUrl": "", + "id": "57b588bc-fa6b-4d43-9e71-31f9b97b563d", + "node_id": "comfyui-imagelabel", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ImageLabel", + "publisher": { + "createdAt": "2025-01-07T13:13:33.736384Z", + "description": "", + "id": "gremlation", + "logo": "", + "members": [], + "name": "Gremlation", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gremlation/ComfyUI-ImageLabel", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-09T12:41:45.559708Z", + "description": "ComfyUI nodes for Janus", + "downloads": 1671, + "github_stars": 4, + "icon": "", + "id": "comfyui-janus", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-09T18:52:57.420764Z", + "dependencies": [ + "git+https://github.com/deepseek-ai/Janus.git" + ], + "deprecated": false, + "downloadUrl": "", + "id": "992ec176-623a-4fa0-8442-902dd3ed6533", + "node_id": "comfyui-janus", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-janus", + "publisher": { + "createdAt": "2025-01-06T03:08:06.856727Z", + "description": "", + "id": "fffffair", + "logo": "", + "members": [], + "name": "Fair", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yanhuifair/comfyui-janus", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-17T15:12:30.410386Z", + "description": "Portrait Tools: Facial detection cropping, alignment, ID photo, etc.", + "downloads": 6526, + "github_stars": 17, + "icon": "", + "id": "portraittools-mw", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-15T13:32:08.757704Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "42c0a882-c77f-4cf6-b351-4a8e9312f69c", + "node_id": "portraittools-mw", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.9" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "MW-ComfyUI_PortraitTools", + "publisher": { + "createdAt": "2025-01-06T14:10:29.10336Z", + "description": "", + "id": "mw", + "logo": "", + "members": [], + "name": "MW", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/billwuhao/ComfyUI_PortraitTools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-01T15:42:18.094786Z", + "description": "Get random images from gelbooru or rule34.", + "downloads": 1604, + "github_stars": 4, + "icon": "", + "id": "comfyui-gelbooru", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-15T05:08:56.408201Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5acaee67-441f-4bbc-8c3a-8009fe7d5aa9", + "node_id": "comfyui-gelbooru", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "Comfyui-Gelbooru", + "publisher": { + "createdAt": "2024-10-30T03:19:52.359217Z", + "description": "", + "id": "mckw", + "logo": "", + "members": [], + "name": "\u5ddd", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/1mckw/Comfyui-Gelbooru", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-23T17:16:44.216956Z", + "description": "Generate image captions/prompts using the CLIP-L model you already have loaded", + "downloads": 13109, + "github_stars": 54, + "icon": "", + "id": "comfyui-cliption", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-04T05:10:28.510642Z", + "dependencies": [ + "huggingface-hub", + "safetensors", + "transformers" + ], + "deprecated": false, + "downloadUrl": "", + "id": "bf757b1f-1acc-4935-a282-bf474671891e", + "node_id": "comfyui-cliption", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENCE.txt\"}", + "name": "ComfyUI-CLIPtion", + "publisher": { + "createdAt": "2024-12-21T01:03:45.104495Z", + "description": "", + "id": "pharmapsychotic", + "logo": "", + "members": [], + "name": "pharmapsychotic", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pharmapsychotic/comfy-cliption", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-30T21:13:36.271283Z", + "description": "A collection of custom nodes for working with and converting between 360 degree equirectangular images, cubemap, and perspective images. Panoramic 360 images are also sometimes known as VR photography (virtual reality), HDRI environments (ex: skyboxes), image spheres, spherical images, 360 pano.", + "downloads": 2031, + "github_stars": 13, + "icon": "", + "id": "comfyui-pytorch360convert", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-30T21:13:36.65785Z", + "dependencies": [ + "pytorch360convert" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6aceebf4-171e-4b5d-b6d0-d6a5d2fb0360", + "node_id": "comfyui-pytorch360convert", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_pytorch360convert", + "publisher": { + "createdAt": "2025-01-28T00:40:42.265881Z", + "description": "", + "id": "progamergov", + "logo": "", + "members": [], + "name": "Ben", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ProGamerGov/ComfyUI_pytorch360convert", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-24T01:40:08.080252Z", + "description": "Run Local and API LLMs, Features OCR-RAG (Bialdy), nanoGraphRAG, Supervision Object Detection, Conditioning manipulation via Omost, supports Ollama, LlamaCPP LMstudio, Koboldcpp, TextGen, Transformers or via APIs Anthropic, Groq, OpenAI, Google Gemini, Mistral, xAI and create your own charcters assistants (SystemPrompts) with custom presets and muchmore", + "downloads": 2876, + "github_stars": 0, + "icon": "", + "id": "comfyui-if_ai_promptimagem", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-27T00:33:29.194968Z", + "dependencies": [ + "anthropic", + "groq", + "mistralai", + "huggingface_hub", + "sentence-transformers", + "IPython", + "python-dotenv", + "nltk", + "tiktoken", + "pydantic", + "rich" + ], + "deprecated": false, + "downloadUrl": "", + "id": "74cfb528-1c0d-4e4d-8bd5-efc7457927be", + "node_id": "comfyui-if_ai_promptimagem", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.3" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "Changed name Deleteme", + "publisher": { + "createdAt": "2024-05-22T21:13:45.198878Z", + "description": "", + "id": "impactframes", + "logo": "", + "members": [], + "name": "impactframes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/if-ai/Changedname", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-22T21:57:02.954518Z", + "description": "Run Local and API LLMs, Features OCR-RAG (Bialdy), nanoGraphRAG, Supervision Object Detection, Conditioning manipulation via Omost, supports Ollama, LlamaCPP LMstudio, Koboldcpp, TextGen, Transformers or via APIs Anthropic, Groq, OpenAI, Google Gemini, Mistral, xAI and create your own charcters assistants (SystemPrompts) with custom presets and muchmore", + "downloads": 16493, + "github_stars": 657, + "icon": "https://impactframes.ai/System/Icons/48x48/if.png", + "id": "comfyui-if_ai_tools", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-03T10:36:42.145429Z", + "dependencies": [ + "anthropic", + "groq", + "mistralai", + "huggingface_hub", + "pypdf2", + "pdf2image", + "timm", + "sentence-transformers", + "byaldi", + "opencv-python", + "IPython", + "python-dotenv", + "nltk", + "tiktoken", + "matplotlib", + "plotly", + "kaleido", + "networkx", + "fastparquet", + "pydantic", + "rich", + "supervision", + "nano-graphrag", + "qwen-vl-utils" + ], + "deprecated": false, + "downloadUrl": "", + "id": "93302b6c-554a-4f66-95a8-c97a62482b24", + "node_id": "comfyui-if_ai_tools", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.2" + }, + "license": "{\"file\": \"MIT License\"}", + "name": "IF_AI_tools", + "publisher": { + "createdAt": "2024-05-22T21:13:45.198878Z", + "description": "", + "id": "impactframes", + "logo": "", + "members": [], + "name": "impactframes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/if-ai/ComfyUI-IF_AI_tools", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-02T02:06:06.652873Z", + "description": "Add invisible watermark to images to protect your images", + "downloads": 1042, + "github_stars": 5, + "icon": "", + "id": "gaussianshadingwatermark", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-02T02:29:30.686922Z", + "dependencies": [ + "Pillow>=8.0.0", + "numpy>=1.19.0", + "scikit-image>=0.17.0", + "torch>=1.8.0", + "cryptography>=3.4.7", + "scipy>=1.5.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e05930bc-bbe2-4d30-b974-221b547a6259", + "node_id": "gaussianshadingwatermark", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-GaussianShadingWatermark", + "publisher": { + "createdAt": "2025-03-02T01:35:05.885886Z", + "description": "", + "id": "lthero", + "logo": "", + "members": [], + "name": "lthero", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lthero-big/ComfyUI-GaussianShadingWatermark", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-16T13:57:25.835682Z", + "description": "Additional ComfyUI nodes to utilise the Transformers pipeline in a simple and modular way.", + "downloads": 1395, + "github_stars": 4, + "icon": "\u00f0\u0178\u0161\u00b0", + "id": "comfyui-transformers-pipeline", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-16T13:57:26.22966Z", + "dependencies": [ + "torch", + "transformers", + "accelerate", + "pillow", + "bitsandbytes", + "exifread" + ], + "deprecated": false, + "downloadUrl": "", + "id": "dc1d906e-b455-4592-a920-dc6ae5d74096", + "node_id": "comfyui-transformers-pipeline", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Transformers-Pipeline", + "publisher": { + "createdAt": "2025-02-13T01:25:13.868849Z", + "description": "", + "id": "mediocre", + "logo": "", + "members": [], + "name": "That Mediocre Coding Guy", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mediocreatmybest/ComfyUI-Transformers-Pipeline", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-09T21:29:41.15419Z", + "description": "Drift Johnson's KokoroTTS nodes", + "downloads": 1331, + "github_stars": 6, + "icon": "", + "id": "DJZ-KokoroTTS", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-09T21:29:41.539119Z", + "dependencies": [ + "kokoro-onnx" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7a115084-3416-46f9-a518-fa5a20918dd8", + "node_id": "DJZ-KokoroTTS", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "DJZ-KokoroTTS", + "publisher": { + "createdAt": "2024-08-27T08:12:40.017079Z", + "description": "", + "id": "driftjohnson", + "logo": "", + "members": [], + "name": "Drift Johnson", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MushroomFleet/DJZ-KokoroTTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-10T15:43:37.229514Z", + "description": "Implementation of Instance nodes, Replicate nodes, and standard Save UI to improve the workflow into ComfyUI.", + "downloads": 836, + "github_stars": 4, + "icon": "", + "id": "xenoflow", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-10T16:31:36.839622Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "2cfd9e2a-0934-4020-b127-4383ea53692b", + "node_id": "xenoflow", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-XenoFlow", + "publisher": { + "createdAt": "2025-03-10T15:23:32.06965Z", + "description": "", + "id": "jerome7562", + "logo": "", + "members": [], + "name": "Jerome Bacquet", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jerome7562/ComfyUI-XenoFlow", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-22T18:50:33.743144Z", + "description": "Node to automate batch generation with randomize prompts from text files. It mimics Forge's functionality, allowing you to combine text elements and LoRA. The node supports writing LoRA in any order within a text file using formats like , without needing separate nodes. The node understands LoRA names in Forge's style, when the name is not the filename, but the internal name from the metadata.", + "downloads": 2280, + "github_stars": 7, + "icon": "", + "id": "simplebutcher", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-23T10:47:22.953618Z", + "dependencies": [ + "piexif" + ], + "deprecated": false, + "downloadUrl": "", + "id": "16db93e6-5f6f-4c8a-b0d6-0ede5f8db942", + "node_id": "simplebutcher", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_SimpleButcher", + "publisher": { + "createdAt": "2025-01-22T17:04:39.152651Z", + "description": "", + "id": "kll535", + "logo": "", + "members": [], + "name": "KLL535", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/KLL535/ComfyUI_SimpleButcher", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-06T10:15:53.528114Z", + "description": "This node manipulates the pixel art image in ways that it should look pixel perfect (downscales, changes palette, upscales etc.).", + "downloads": 5638, + "github_stars": 307, + "icon": "https://raw.githubusercontent.com/dimtoneff/ComfyUI-PixelArt-Detector/main/examples/community/image-041.jpg", + "id": "comfyui-pixelart-detector", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-06T10:15:57.253785Z", + "dependencies": [ + "opencv-python>=4.8.0", + "Pillow", + "numpy~=1.23.5", + "torch", + "scipy~=1.11.3" + ], + "deprecated": false, + "downloadUrl": "", + "id": "07187a07-ee12-4caf-994d-f5b33affe4bc", + "node_id": "comfyui-pixelart-detector", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.5.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-PixelArt-Detector", + "publisher": { + "createdAt": "2024-07-06T10:04:45.330817Z", + "description": "", + "id": "dimtoneff", + "logo": "", + "members": [], + "name": "DT", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dimtoneff/ComfyUI-PixelArt-Detector", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-07T16:46:17.544927Z", + "description": "One click replacement of smart objects or layers in PSD", + "downloads": 781, + "github_stars": 4, + "icon": "https://fonts.gstatic.com/s/e/notoemoji/latest/1fa84/512.webp", + "id": "ComfyUI-PSD-Replace", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-07T16:46:18.024906Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a8d41c2d-6589-42e8-be19-916ec30ecb5c", + "node_id": "ComfyUI-PSD-Replace", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-PSD-Replace", + "publisher": { + "createdAt": "2024-12-25T10:18:44.733898Z", + "description": "", + "id": "lgldl", + "logo": "", + "members": [], + "name": "lgldl", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lgldlk/ComfyUI-PSD-Replace", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-08T21:55:46.116731Z", + "description": "Selector and Recourse. Presets & failsafes. Work flow. EXDYSA", + "downloads": 1561, + "github_stars": 4, + "icon": "", + "id": "comfyui-selector", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-13T23:28:46.396679Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4b525e24-8768-483e-8327-f9f973c650f3", + "node_id": "comfyui-selector", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "4.0.7" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-selector", + "publisher": { + "createdAt": "2024-06-08T20:37:30.625282Z", + "description": "", + "id": "exdysa", + "logo": "", + "members": [], + "name": "EXDYSA", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/exdysa/comfyui-selector", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-07T19:48:08.11522Z", + "description": "Frontend extension that adds a sidebar for easy viewing of PNG file metadata.", + "downloads": 3422, + "github_stars": 17, + "icon": "", + "id": "pnginfo_sidebar", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-16T13:12:08.74012Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "200744ad-9b40-4fb0-9dac-12bf9dd5da48", + "node_id": "pnginfo_sidebar", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_PNGInfo_Sidebar", + "publisher": { + "createdAt": "2025-01-22T17:04:39.152651Z", + "description": "", + "id": "kll535", + "logo": "", + "members": [], + "name": "KLL535", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/KLL535/ComfyUI_PNGInfo_Sidebar", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-30T06:13:54.25852Z", + "description": "Small collection of typed primitive nodes.", + "downloads": 2033, + "github_stars": 6, + "icon": "", + "id": "primitive-types", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-30T06:13:55.934321Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "d9e1ac49-c59a-433d-a2dc-79982ec8c8fa", + "node_id": "primitive-types", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "primitive-types", + "publisher": { + "createdAt": "2024-06-30T05:36:52.787425Z", + "description": "", + "id": "drustan-hawk", + "logo": "", + "members": [], + "name": "Drustan Hawk", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/drustan-hawk/primitive-types", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-13T16:57:26.762062Z", + "description": "A simple and easy to use Hugging Face model loader.", + "downloads": 1426, + "github_stars": 4, + "icon": "", + "id": "comfyui-hfloader", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-13T17:06:06.994354Z", + "dependencies": [ + "huggingface-hub" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f0d05d99-10d6-4d39-a49b-27cbd9424f5b", + "node_id": "comfyui-hfloader", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-HfLoader", + "publisher": { + "createdAt": "2025-02-13T08:55:37.726723Z", + "description": "", + "id": "olduvai-jp", + "logo": "", + "members": [], + "name": "olduvai-jp", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/olduvai-jp/ComfyUI-HfLoader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-09T08:42:03.41551Z", + "description": "Use the Tab key to switch between textfields", + "downloads": 1461, + "github_stars": 4, + "icon": "", + "id": "comfyui-tab-handler", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-09T09:21:23.737867Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "d95f4ae1-74b0-4f77-b251-5166f1bdf12a", + "node_id": "comfyui-tab-handler", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "Tab Handler", + "publisher": { + "createdAt": "2024-07-09T07:30:07.769811Z", + "description": "", + "id": "haoming02", + "logo": "", + "members": [], + "name": "Haoming02", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Haoming02/comfyui-tab-handler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-07T10:45:12.423288Z", + "description": "NODES: remove think from reasioning llm response.", + "downloads": 1378, + "github_stars": 4, + "icon": "", + "id": "thinkremover", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-07T10:45:12.820756Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "882352db-b294-4b74-88ca-059d5f35e4e8", + "node_id": "thinkremover", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfyui-ThinkRemover", + "publisher": { + "createdAt": "2024-12-25T07:03:37.474647Z", + "description": "", + "id": "lrzjason", + "logo": "", + "members": [], + "name": "lrzjason", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lrzjason/Comfyui-ThinkRemover", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-23T18:50:25.741501Z", + "description": "kokoro-onnx (opensource TTS model) wrapper for ComfyUI.", + "downloads": 2175, + "github_stars": 4, + "icon": "", + "id": "comfyui-jhj-kokoro-onnx", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-23T19:30:20.234896Z", + "dependencies": [ + "onnxruntime-gpu", + "kokoro-onnx" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6b6687c2-cdec-4581-832d-96a467e8376d", + "node_id": "comfyui-jhj-kokoro-onnx", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI jhj Kokoro Onnx", + "publisher": { + "createdAt": "2024-08-24T13:04:03.484731Z", + "description": "", + "id": "jhj0517", + "logo": "", + "members": [], + "name": "jhj0517", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jhj0517/ComfyUI-jhj-Kokoro-Onnx.git", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-16T02:25:12.793912Z", + "description": "Optimize prompts for text-to-image models at no cost.", + "downloads": 2907, + "github_stars": 7, + "icon": "https://raw.githubusercontent.com/ciga2011/ComfyUI-PromptOptimizer/main/icon256.png", + "id": "promptoptimizer", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-16T02:25:14.492202Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "40637be4-95c7-497c-87ae-f27c9a098a20", + "node_id": "promptoptimizer", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-PromptOptimizer", + "publisher": { + "createdAt": "2024-12-28T15:00:27.413223Z", + "description": "", + "id": "ciga2011", + "logo": "", + "members": [], + "name": "ciga2011", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ciga2011/ComfyUI-PromptOptimizer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-14T10:56:49.783317Z", + "description": "Nodes that allow making the UI interactive, with selectors and switches, etc.. Enables selecting across multiple options with the click of a button to move a workflow forward.", + "downloads": 2788, + "github_stars": 41, + "icon": "", + "id": "comfyui-interactive", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-01T03:40:07.411137Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "539d2247-b43f-45f6-b38d-b2935ae9c5c1", + "node_id": "comfyui-interactive", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Interactive", + "publisher": { + "createdAt": "2024-06-20T04:42:10.628776Z", + "description": "", + "id": "lquesada", + "logo": "", + "members": [], + "name": "Luis Quesada", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lquesada/ComfyUI-Interactive", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-29T02:53:35.52538Z", + "description": "Download youtube (or any website) videos/playlists", + "downloads": 1479, + "github_stars": 4, + "icon": "", + "id": "youtube-dl-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-29T02:53:39.308502Z", + "dependencies": [ + "yt-dlp" + ], + "deprecated": false, + "downloadUrl": "", + "id": "22c7b6e3-863b-4d05-adf2-0e75eab60084", + "node_id": "youtube-dl-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "youtube-dl-comfyui", + "publisher": { + "createdAt": "2024-05-26T02:18:06.707962Z", + "description": "", + "id": "christian-byrne", + "logo": "", + "members": [], + "name": "christian-byrne", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/christian-byrne/youtube-dl-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-15T12:33:34.876706Z", + "description": "ComfyUI custom node for directly downloading generated images to your local PC with customizable filenames and formats (PNG/JPEG).", + "downloads": 1714, + "github_stars": 4, + "icon": "", + "id": "comfyui-save-image-local", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-15T12:33:38.499477Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "210e2b35-ec67-4594-878f-1b1eaa644279", + "node_id": "comfyui-save-image-local", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Local Save Node", + "publisher": { + "createdAt": "2024-08-24T05:44:13.928977Z", + "description": "", + "id": "yas-ponotech", + "logo": "", + "members": [], + "name": "Yas | PONOTECH", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yhayano-ponotech/comfyui-save-image-local", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-03T15:27:27.855291Z", + "description": "A custom node for ComfyUI that calculates CLIP and LPIPS similarity scores between two images.", + "downloads": 1531, + "github_stars": 4, + "icon": "", + "id": "similarity-score", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-03T15:27:31.421989Z", + "dependencies": [ + "torch>=2.0.0", + "torchvision>=0.15.0", + "clip-interrogator>=0.6.0", + "lpips>=0.1.4", + "Pillow>=9.0.0", + "numpy>=1.22.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "416e2e4a-c191-40d5-9e4f-911dee0f28dd", + "node_id": "similarity-score", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Similarity-Score", + "publisher": { + "createdAt": "2025-01-03T15:19:28.533667Z", + "description": "", + "id": "risunobushi", + "logo": "", + "members": [], + "name": "Andrea Baioni", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/risunobushi/ComfyUI-Similarity-Score", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-10T06:55:30.947841Z", + "description": "Simple custom node for ComfyUI to artificially delay a workflow at any point.", + "downloads": 1750, + "github_stars": 4, + "icon": "", + "id": "delay", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-10T11:21:29.506375Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "f409512a-3240-4b43-ab2c-498f678863b6", + "node_id": "delay", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Delay", + "publisher": { + "createdAt": "2025-01-09T15:11:06.760903Z", + "description": "", + "id": "a-und-b", + "logo": "", + "members": [], + "name": "a-und-b", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/a-und-b/ComfyUI_Delay", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-23T12:47:57.389594Z", + "description": "A simple set of tooling nodes", + "downloads": 1586, + "github_stars": 4, + "icon": "", + "id": "comfyui-fofr-toolkit", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-23T12:56:29.622826Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "28521513-1c0c-4d94-8303-4d9cb8ba186c", + "node_id": "comfyui-fofr-toolkit", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-fofr-toolkit", + "publisher": { + "createdAt": "2024-06-20T11:47:18.175863Z", + "description": "", + "id": "fofr", + "logo": "", + "members": [], + "name": "fofr", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fofr/comfyui-fofr-toolkit", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-26T05:32:28.193659Z", + "description": "SegGPT model for comfyui,segmentation everything with mask prompt. Download (https://huggingface.co/BAAI/SegGPT/blob/main/seggpt_vit_large.pth) in this node path.", + "downloads": 1491, + "github_stars": 6, + "icon": "", + "id": "comfyui-seggpt", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-26T05:32:31.988554Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "cfeb099b-3e8b-4493-be07-9f54abc13fa7", + "node_id": "comfyui-seggpt", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-SegGPT", + "publisher": { + "createdAt": "2024-08-26T05:14:42.41648Z", + "description": "", + "id": "nicehero", + "logo": "", + "members": [], + "name": "nicehero", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nicehero/comfyui-SegGPT", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-10T06:43:59.147339Z", + "description": "ComfyUI-IF_AI_tools is a set of custom nodes to Run Local and API LLMs and LMMs, Features OCR-RAG (Bialdy), nanoGraphRAG, Supervision Object Detection, supports Ollama, LlamaCPP LMstudio, Koboldcpp, TextGen, Transformers or via APIs Anthropic, Groq, OpenAI, Google Gemini, Mistral, xAI and create your own charcters assistants (SystemPrompts) with custom presets and muchmore", + "downloads": 1915, + "github_stars": 0, + "icon": "", + "id": "comfyui_if_ai_tools", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-10T06:44:02.938166Z", + "dependencies": [ + "anthropic", + "groq", + "mistralai", + "huggingface_hub", + "pypdf2", + "pdf2image", + "timm", + "sentence-transformers", + "byaldi", + "opencv-python", + "IPython", + "python-dotenv", + "nltk", + "tiktoken", + "matplotlib", + "plotly", + "kaleido", + "networkx", + "fastparquet", + "pydantic", + "rich", + "supervision", + "nano-graphrag", + "qwen-vl-utils" + ], + "deprecated": true, + "downloadUrl": "", + "id": "654f255b-b949-44a7-8c83-45670ac7f606", + "node_id": "comfyui_if_ai_tools", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI_IF", + "publisher": { + "createdAt": "2024-05-22T21:13:45.198878Z", + "description": "", + "id": "impactframes", + "logo": "", + "members": [], + "name": "impactframes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/if-ai/", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-25T18:36:19.209035Z", + "description": "A ComfyUI custom node that randomly selects a height and width pair from a list in a config file", + "downloads": 2107, + "github_stars": 5, + "icon": "", + "id": "comfyui-randomsize", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-25T18:36:21.011289Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c1777372-098b-4f94-865f-3ee2202d6c3f", + "node_id": "comfyui-randomsize", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI-RandomSize", + "publisher": { + "createdAt": "2024-08-25T18:27:44.220303Z", + "description": "", + "id": "jerry-orbach-jr", + "logo": "", + "members": [], + "name": "JerryOrbachJr", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/JerryOrbachJr/ComfyUI-RandomSize", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T14:53:04.425008Z", + "description": "This adds a node that can run shader code on a tensor of image nodes. Implemented Nodes:Shadertoy, Shader, ColorChannelOffset.", + "downloads": 1375, + "github_stars": 4, + "icon": "", + "id": "comfyui-shadertoygl", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-20T14:53:04.703991Z", + "dependencies": [ + "glfw", + "PyOpenGL", + "PyOpenGL-accelerate" + ], + "deprecated": false, + "downloadUrl": "", + "id": "bf5bb0e9-b7a5-4820-9f83-6d4a1675fc81", + "node_id": "comfyui-shadertoygl", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-ShadertoyGL", + "publisher": { + "createdAt": "2024-06-20T14:48:24.700832Z", + "description": "", + "id": "e7mac", + "logo": "", + "members": [], + "name": "e7mac", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/e7mac/ComfyUI-ShadertoyGL", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-15T05:16:53.243098Z", + "description": "Custom nodes use gigapixelai in comfyui.", + "downloads": 2563, + "github_stars": 152, + "icon": "", + "id": "gigapixelai", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-15T05:17:02.455597Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "826f6d13-f857-4f68-a4d8-f80566ca798e", + "node_id": "gigapixelai", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-GigapixelAI", + "publisher": { + "createdAt": "2025-01-14T08:02:55.855601Z", + "description": "", + "id": "sh570655308", + "logo": "", + "members": [], + "name": "Raven", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sh570655308/ComfyUI-GigapixelAI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-22T23:28:56.274671Z", + "description": "A node for ComfyUI that takes a list of masks and returns a single mask based on your criteria.", + "downloads": 1315, + "github_stars": 3, + "icon": "https://example.com/icon.png", + "id": "comfyui-conditionalinterrupt", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-30T01:27:07.206704Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "2dfbfddd-16bb-44fe-b328-7f7a46f73662", + "node_id": "comfyui-conditionalinterrupt", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.3" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-ConditionalInterrupt", + "publisher": { + "createdAt": "2024-11-22T01:36:07.508549Z", + "description": "", + "id": "sparknight", + "logo": "", + "members": [], + "name": "Sparknight", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SparknightLLC/ComfyUI-ConditionalInterrupt", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-29T20:02:01.11332Z", + "description": "This is a custom node to convert png images into color ASCII art. As noted below, multiple font sizes are used in the specification. The resolution of the generated file is set to be the same as the input image.", + "downloads": 1488, + "github_stars": 3, + "icon": "", + "id": "comfyui-color-ascii-art-node", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-12T11:09:07.657946Z", + "dependencies": [ + "Pillow", + "colorama" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a88139bb-7573-4a40-911d-295b56a38cdd", + "node_id": "comfyui-color-ascii-art-node", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-color-ascii-art-node", + "publisher": { + "createdAt": "2024-08-29T19:25:10.712416Z", + "description": "", + "id": "shiba2shiba", + "logo": "", + "members": [], + "name": "Shiba's ComfyUI Nodes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Shiba-2-shiba/comfyui-color-ascii-art-node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-08T06:15:28.859141Z", + "description": "A custom ComfyUI node using Together AI's Vision models for free image descriptions, image generation, and image-to-image transformation. Features include customizable prompts, advanced parameters, and robust error handling.", + "downloads": 482, + "github_stars": 4, + "icon": "icon.svg", + "id": "comfyui-togethervision", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-26T18:48:46.822546Z", + "dependencies": [ + "together", + "python-dotenv" + ], + "deprecated": false, + "downloadUrl": "", + "id": "13855fe5-ea53-44c3-9f02-511000564336", + "node_id": "comfyui-togethervision", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "2.2.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-TogetherVision", + "publisher": { + "createdAt": "2025-01-16T15:55:57.198675Z", + "description": "", + "id": "theshubzworld", + "logo": "", + "members": [], + "name": "Shubz World", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/theshubzworld/ComfyUI-TogetherVision", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-28T21:34:48.694962Z", + "description": "A collection of custom nodes for ComfyUI.", + "downloads": 466, + "github_stars": 22, + "icon": "https://avatars.githubusercontent.com/u/100093512", + "id": "comfyui-dezoomer-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-28T17:37:02.757755Z", + "dependencies": [ + "accelerate>=0.25.0", + "bitsandbytes>=0.41.0", + "flash-attn>=2.3.0", + "huggingface_hub>=0.19.0", + "numpy>=1.24.0", + "opencv-python>=4.8.0", + "Pillow>=10.0.0", + "qwen-vl-utils[decord]==0.0.8", + "torch>=2.0.0", + "torchvision>=0.15.0", + "transformers>=4.36.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "27ba8b25-de9e-4b03-87b5-3db2efaa081c", + "node_id": "comfyui-dezoomer-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-DeZoomer-Nodes", + "publisher": { + "createdAt": "2025-04-28T20:24:02.978802Z", + "description": "", + "id": "dezoomer", + "logo": "", + "members": [], + "name": "DeZoomer", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/De-Zoomer/ComfyUI-DeZoomer-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-02T13:12:58.998165Z", + "description": "Node pack designed to save images with metadata supported by Civitai.", + "downloads": 2003, + "github_stars": 3, + "icon": "", + "id": "mangonodepack", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-02T13:12:59.394763Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3da5f4d1-5613-46e2-8e47-234ce674eb2c", + "node_id": "mangonodepack", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "MangoNodePack", + "publisher": { + "createdAt": "2025-03-02T12:56:17.506532Z", + "description": "", + "id": "mang01010", + "logo": "", + "members": [], + "name": "Mango1010", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mang01010/MangoNodePack", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-30T08:40:32.254712Z", + "description": "Comfyui-CatVTON This repository is the modified official Comfyui node of CatVTON, which is a simple and efficient virtual try-on diffusion model with 1) Lightweight Network (899.06M parameters totally), 2) Parameter-Efficient Training (49.57M parameters trainable) 3) Simplified Inference (< 8G VRAM for 1024X768 resolution).\nThe original GitHub project is [a/https://github.com/Zheng-Chong/CatVTON](https://github.com/Zheng-Chong/CatVTON)", + "downloads": 4367, + "github_stars": 166, + "icon": "", + "id": "comfyui-catvton", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-30T08:40:33.964396Z", + "dependencies": [ + "accelerate>=0.30.0", + "black", + "cloudpickle", + "diffusers>=0.26.3", + "future", + "fvcore", + "huggingface_hub", + "hydra-core", + "iopath", + "matplotlib<=3.9.1", + "numpy>=1.24.4", + "omegaconf", + "opencv_python", + "pillow>=10.3.0", + "pycocotools", + "pydot", + "PyYAML==6.0.1", + "scipy<=1.13.1", + "setuptools", + "scikit-image<=0.24.0", + "tabulate", + "tensorboard", + "termcolor", + "tqdm<=4.66.4", + "transformers>=4.27.3", + "xformers>=0.0.23.post1", + "yacs", + "Ninja==1.11.1.1", + "git+https://github.com/facebookresearch/detectron2.git@v0.6", + "git+https://github.com/facebookresearch/detectron2.git@v0.6#subdirectory=projects/DensePose" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f8077b65-628e-40f3-8a0b-a654225bed71", + "node_id": "comfyui-catvton", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfyui-CatVTON", + "publisher": { + "createdAt": "2024-07-31T18:04:53.596268Z", + "description": "", + "id": "pzc163", + "logo": "", + "members": [], + "name": "PrimerYang", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pzc163/Comfyui-CatVTON", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-09T03:17:42.603911Z", + "description": "Nodes: PhotoMakerLoaderV2,PhotoMakerEncodeV2", + "downloads": 2579, + "github_stars": 10, + "icon": "", + "id": "comfyui-photomakerv2-native", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-09T03:17:46.12505Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "8b7df114-9c83-4a5f-8021-eb4a798abfeb", + "node_id": "comfyui-photomakerv2-native", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.9.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_photomakerV2_native", + "publisher": { + "createdAt": "2024-11-09T03:01:48.535275Z", + "description": "", + "id": "zhangp3652", + "logo": "", + "members": [], + "name": "ComfyUI_photomakerV2_native", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zhangp365/ComfyUI_photomakerV2_native", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-28T20:41:45.779367Z", + "description": "ComfyUI nodes collection featuring ImageResizeFaceAware, FrameBlend, MiniCPM-V vision-language model, enhanced primitives (Text++, Number++), Load Media, and other package forks and QoL utilities", + "downloads": 3242, + "github_stars": 4, + "icon": "", + "id": "comfyui-dreambait-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-15T01:14:48.046496Z", + "dependencies": [ + "opencv-python", + "piexif", + "py7zr", + "lpips", + "tsp_solver", + "einops", + "tqdm", + "numpy>=1.22.0", + "torch>=2.0.0", + "transformers>=4.45.0", + "huggingface-hub>=0.19.0", + "moviepy", + "pyloudnorm>=0.1.0", + "sentencepiece>=0.1.99", + "pillow>=10.1.0", + "bitsandbytes>=0.43.1", + "accelerate>=0.30.1", + "torchaudio>=2.0.0", + "librosa", + "pyphen>=0.14.0", + "pywin32>=306; platform_system == 'Windows'" + ], + "deprecated": false, + "downloadUrl": "", + "id": "2bda2668-a6cf-4b78-96f7-529ee6141fc1", + "node_id": "comfyui-dreambait-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.3.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-dreambait-nodes", + "publisher": { + "createdAt": "2024-08-28T20:24:04.364032Z", + "description": "", + "id": "drmbt", + "logo": "", + "members": [], + "name": "drmbt", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/drmbt/comfyui-dreambait-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-08T21:59:16.549692Z", + "description": "NODES:Custom Resolution Latent Node, Style Selector, Rescale Image To Side, Image Overlay, Text Behind Image, Face(s) Detector & Cropper.\n This Custom node pack offers various nodes to make it easier to use ComfyUI.", + "downloads": 902, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-KGnodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-10T01:27:38.82287Z", + "dependencies": [ + "pillow", + "numpy", + "torch", + "piexif", + "PIL", + "cv2" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b6347832-1c30-4be9-9ae7-753cee3c7d3f", + "node_id": "ComfyUI-KGnodes", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.4.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-KGnodes", + "publisher": { + "createdAt": "2024-12-26T11:23:45.200385Z", + "description": "", + "id": "shahkoorosh", + "logo": "", + "members": [], + "name": "Koorosh", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shahkoorosh/ComfyUI-KGnodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-22T04:52:49.696755Z", + "description": "", + "downloads": 2479, + "github_stars": 23, + "icon": "\ud83c\udf3a", + "id": "comfy-rvc", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-22T04:52:51.436447Z", + "dependencies": [ + "librosa~=0.10.2", + "numpy", + "fairseq==0.12.2", + "faiss-cpu", + "ffmpeg-python", + "tqdm", + "audioread", + "audio-separator[gpu]", + "onnxruntime-gpu", + "ffmpy", + "samplerate", + "pyaudio", + "spacy", + "monotonic_align", + "textacy", + "pytube", + "spacytextblob" + ], + "deprecated": false, + "downloadUrl": "", + "id": "371fdfe3-d35e-443b-b129-d92ddb6af447", + "node_id": "comfy-rvc", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"{file = \\\"LICENSE\\\"}\"}", + "name": "Comfy-RVC", + "publisher": { + "createdAt": "2024-06-25T14:53:44.055882Z", + "description": "", + "id": "sayanoai", + "logo": "", + "members": [], + "name": "Sayano AI", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SayanoAI/Comfy-RVC", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-27T23:01:06.912667Z", + "description": "A collection of utility, quality-of-life nodes for ComfyUI. Probably only useful to me.", + "downloads": 832, + "github_stars": 3, + "icon": "", + "id": "comfyui-y7nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-04T14:04:18.911909Z", + "dependencies": [ + "torch", + "transformers", + "protobuf", + "sentencepiece", + "huggingface_hub", + "accelerate", + "pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "afd9f9a6-67fe-449b-a30f-3f163fb9e859", + "node_id": "comfyui-y7nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.24" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Y7Nodes", + "publisher": { + "createdAt": "2025-03-24T22:03:49.00079Z", + "description": "", + "id": "yushan777", + "logo": "", + "members": [], + "name": "yushan777", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yushan777/ComfyUI-Y7Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-06T07:18:54.349645Z", + "description": "This node loads prompts (txt) and images (png) from a specified directory. By specifying an index, it outputs the selected file.", + "downloads": 1814, + "github_stars": 3, + "icon": "", + "id": "comfyui-load-directoryfiles", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-06T07:18:57.921925Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ab011b14-6ad7-4da1-a8bd-0f012122fad2", + "node_id": "comfyui-load-directoryfiles", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Load-DirectoryFiles", + "publisher": { + "createdAt": "2024-10-06T06:16:25.337895Z", + "description": "", + "id": "educator-art", + "logo": "", + "members": [], + "name": "e", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/educator-art/ComfyUI-Load-DirectoryFiles", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-17T20:27:11.487036Z", + "description": "A set of custom nodes that are using Anthropic's Claude models for describing images and transforming texts.", + "downloads": 1381, + "github_stars": 4, + "icon": "", + "id": "comfyui_claude", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-28T08:08:07.876349Z", + "dependencies": [ + "anthropic>=0.36.0", + "pillow>=10.2.0", + "comfyui-types>=1.3.4" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e9679c03-1498-4702-b522-51502731ef17", + "node_id": "comfyui_claude", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Claude", + "publisher": { + "createdAt": "2024-10-14T11:38:25.307278Z", + "description": "", + "id": "tkreuziger", + "logo": "", + "members": [], + "name": "Tristan Kreuziger", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tkreuziger/comfyui-claude", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-09T15:21:02.579073Z", + "description": "Simple custom node for ComfyUI that converts JSON strings to JSON objects.", + "downloads": 1339, + "github_stars": 4, + "icon": "", + "id": "json_helper", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-09T15:56:11.916827Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "d9f1f246-08ed-48ae-9dc8-41c3d9a5c3b5", + "node_id": "json_helper", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_JSON_Helper", + "publisher": { + "createdAt": "2025-01-09T15:11:06.760903Z", + "description": "", + "id": "a-und-b", + "logo": "", + "members": [], + "name": "a-und-b", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/a-und-b/ComfyUI_JSON_Helper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-21T11:01:56.131859Z", + "description": "NODES: StarNode Startsettings for Flux and SD, Samplers for Flux and SD, Save layers as PSD, Wildcards and more helper nodes", + "downloads": 5903, + "github_stars": 41, + "icon": "", + "id": "comfyui_starnodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-14T07:54:21.929309Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "7ccfef12-87e8-49d2-bdc9-2915510acb04", + "node_id": "comfyui_starnodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.5.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_StarNodes", + "publisher": { + "createdAt": "2024-12-21T08:21:09.665128Z", + "description": "", + "id": "starnodes", + "logo": "", + "members": [], + "name": "Starnodes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Starnodes2024/ComfyUI_StarNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-09T22:37:02.099752Z", + "description": "SASolver for Comfyui. Adapted from [a/comfyanonymous/ComfyUI#4454](https://github.com/comfyanonymous/ComfyUI/pull/4454) and [a/https://github.com/Koishi-Star/Euler-Smea-Dyn-Sampler](https://github.com/Koishi-Star/Euler-Smea-Dyn-Sampler)", + "downloads": 1606, + "github_stars": 3, + "icon": "", + "id": "sasolver", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-09T22:37:37.880054Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a78bbdf5-3b22-4b63-9fac-6d6163800341", + "node_id": "sasolver", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-sasolver", + "publisher": { + "createdAt": "2025-01-09T18:20:39.75369Z", + "description": "", + "id": "mirav", + "logo": "", + "members": [], + "name": "mirav", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mira-6/comfyui-sasolver", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-16T13:36:55.891149Z", + "description": "A simple-as-possible custom node for ComfyUI to load LoRA models from a public URL.", + "downloads": 1249, + "github_stars": 3, + "icon": "", + "id": "lora_from_url", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-16T13:36:59.507365Z", + "dependencies": [ + "requests>=2.31.0", + "tqdm>=4.66.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "0ea89f58-2e2f-4b31-a777-3e217f66ef87", + "node_id": "lora_from_url", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_LoRA_from_URL", + "publisher": { + "createdAt": "2025-01-09T15:11:06.760903Z", + "description": "", + "id": "a-und-b", + "logo": "", + "members": [], + "name": "a-und-b", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/a-und-b/ComfyUI_LoRA_from_URL", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-30T21:20:35.106499Z", + "description": "marduk191s nodes.", + "downloads": 2092, + "github_stars": 3, + "icon": "https://raw.githubusercontent.com/marduk191/comfyui-marnodes/main/icon/RA.png", + "id": "comfyui-marnodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-13T22:15:32.811071Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1da87167-77d4-4893-b011-d719e932efb0", + "node_id": "comfyui-marnodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.7" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "comfyui-marnodes", + "publisher": { + "createdAt": "2024-06-17T16:19:43.686404Z", + "description": "", + "id": "marduk191", + "logo": "", + "members": [], + "name": "marduk191", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/marduk191/comfyui-marnodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-22T20:18:27.83343Z", + "description": "Given a set of lists, the node adjusts them so that when used as input to another node all the possible argument permutations are computed.", + "downloads": 1434, + "github_stars": 4, + "icon": "", + "id": "comfyui_lists_cartesian_product", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-22T20:18:28.140084Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "54ca40c8-49e0-45a8-8728-4def3622bd8f", + "node_id": "comfyui_lists_cartesian_product", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "comfyui_lists_cartesian_product", + "publisher": { + "createdAt": "2024-05-22T19:48:40.164036Z", + "description": "", + "id": "bmad4ever", + "logo": "", + "members": [], + "name": "bmad", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bmad4ever/comfyui_lists_cartesian_product", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-15T07:05:33.010236Z", + "description": "Provides a series of utility nodes designed for interacting with MinIO & Aliyun OSS, including functionalities such as uploading and downloading files and folders, as well as creating buckets if they do not already exist.", + "downloads": 861, + "github_stars": 3, + "icon": "https://github.com/MieMieeeee/ComfyUI-MieNodes/blob/2f617ba2539e8fd13a91fe790e6b5e9ae1718a58/images/channels4_profile.jpg?raw=true", + "id": "comfyui_minioconnector", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-21T09:09:31.103673Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5889127d-ba9d-41fe-9a23-eea19a5e1a66", + "node_id": "comfyui_minioconnector", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.8" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_MinioConnector", + "publisher": { + "createdAt": "2025-02-10T08:44:10.88859Z", + "description": "", + "id": "mie", + "logo": "", + "members": [], + "name": "Mie", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MieMieeeee/ComfyUI-MinioConnector", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-30T03:38:26.751984Z", + "description": "A node that assists in one click generation of prompts (for image and video generation, etc.) in Comfyui.", + "downloads": 1171, + "github_stars": 21, + "icon": "", + "id": "onebuttonprompt-mw", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-07T08:49:00.323676Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "60a6e91a-07f5-43e5-93b4-f98d046a335a", + "node_id": "onebuttonprompt-mw", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "MW-ComfyUI_OneButtonPrompt", + "publisher": { + "createdAt": "2025-01-06T14:10:29.10336Z", + "description": "", + "id": "mw", + "logo": "", + "members": [], + "name": "MW", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/billwuhao/ComfyUI_OneButtonPrompt", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-14T02:41:40.850171Z", + "description": "ComfyUI adaptation of [a/GHOST 2.0](https://github.com/ai-forever/ghost-2.0).", + "downloads": 720, + "github_stars": 4, + "icon": "", + "id": "ghost2_comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-14T02:41:41.249468Z", + "dependencies": [ + "comfy==0.0.1", + "einops==0.8.1", + "imgaug==0.4.0", + "numpy==2.2.3", + "omegaconf==2.3.0", + "onnxruntime_gpu==1.16.0", + "opencv_contrib_python==4.10.0.84", + "opencv_python==4.10.0.84", + "opencv_python_headless==4.10.0.84", + "packaging==24.2", + "Pillow==9.5.0", + "Pillow==11.1.0", + "simple_lama_inpainting==0.1.2", + "skimage==0.0", + "torch==2.2.2", + "torchvision==0.17.2", + "transformers==4.42.3" + ], + "deprecated": false, + "downloadUrl": "", + "id": "9304c246-e3de-4999-ba98-6e871f17b256", + "node_id": "ghost2_comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Ghost2_Comfyui", + "publisher": { + "createdAt": "2025-03-14T01:36:47.370515Z", + "description": "", + "id": "holasyb", + "logo": "", + "members": [], + "name": "holasyb", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Holasyb918/Ghost2_Comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-28T19:20:57.737972Z", + "description": "Nodes: MSSqlTableNode, MSSqlSelectNode. This extension provides custom nodes to interact with MSSQL.", + "downloads": 1265, + "github_stars": 4, + "icon": "", + "id": "comfyui-lexmsdbnodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-28T19:20:59.352514Z", + "dependencies": [ + "numpy", + "opencv-python", + "git+https://github.com/facebookresearch/detectron2.git", + "pyodbc" + ], + "deprecated": false, + "downloadUrl": "", + "id": "77c6cf28-edbe-4482-a268-185aae9a7260", + "node_id": "comfyui-lexmsdbnodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-LexMSDBNodes", + "publisher": { + "createdAt": "2024-06-28T19:04:43.796921Z", + "description": "", + "id": "lexicon", + "logo": "", + "members": [], + "name": "Lexicon", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SOELexicon/ComfyUI-LexMSDBNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T18:16:37.86011Z", + "description": "A collection of custom nodes for ComfyUI", + "downloads": 741, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-Simple-Video-XY-Plot", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-12T18:16:38.272057Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b1e1da9e-b7d9-442b-a023-fab2738d7ae7", + "node_id": "ComfyUI-Simple-Video-XY-Plot", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.1" + }, + "license": "{\"text\": \"MIT license\"}", + "name": "Video XY Plot", + "publisher": { + "createdAt": "2025-03-12T17:55:17.662125Z", + "description": "", + "id": "markuryy", + "logo": "", + "members": [], + "name": "Markury", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/markuryy/ComfyUI-Simple-Video-XY-Plot", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-06T21:46:13.770567Z", + "description": "A set of photo effects for ComfyUI, like Bleach Bypass or RGB curve. More to come!", + "downloads": 870, + "github_stars": 3, + "icon": "", + "id": "ComfyUI_M3D_photo_effects", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-11T12:10:20.220867Z", + "dependencies": [ + "Pillow", + "numpy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1996254a-426f-459b-934d-77f7e2df1346", + "node_id": "ComfyUI_M3D_photo_effects", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "M3D photo effects", + "publisher": { + "createdAt": "2024-09-13T05:02:19.220629Z", + "description": "", + "id": "metal3d", + "logo": "", + "members": [], + "name": "Metal3d", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/metal3d/ComfyUI_M3D_photo_effects", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-28T17:25:13.375572Z", + "description": "", + "downloads": 788, + "github_stars": 32, + "icon": "", + "id": "deep-exemplar-based-video-colorization", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-28T17:25:13.760298Z", + "dependencies": [ + "# requirements.txt", + "numpy", + "tqdm>=4.23.0", + "# scipy==1.2 # Consider removing specific version unless absolutely required", + "scipy", + "# torchsummary>=1.3 # Likely not needed for inference", + "# matplotlib>=2.2.2 # Likely not needed for inference", + "torchvision>=0.3.0", + "# scikit_image>=0.15.0 # Likely not needed for inference", + "# torchviz>=0.0.1 # Likely not needed for inference", + "Pillow>=6.1.0", + "torch", + "# easydict # Likely not needed for inference", + "# prefetch_generator # Likely not needed for inference", + "# PyYAML # Likely not needed for inference", + "# tensorboard # Likely not needed for inference", + "future", + "# numba # Likely not needed for inference", + "# pypng # Likely not needed for inference", + "opencv-python>=4.5 # Base OpenCV", + "opencv-contrib-python>=4.5 # Add this for WLS filter functionality", + "kornia>=0.7.0 # Add Kornia for Guided Filter" + ], + "deprecated": false, + "downloadUrl": "", + "id": "173fdfe8-889b-4742-bcf4-783ebd61d43d", + "node_id": "deep-exemplar-based-video-colorization", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Deep-Exemplar-based-Video-Colorization", + "publisher": { + "createdAt": "2025-03-28T17:04:44.463691Z", + "description": "", + "id": "jonstreeter", + "logo": "", + "members": [], + "name": "J Streeter", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jonstreeter/ComfyUI-Deep-Exemplar-based-Video-Colorization", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-17T01:08:01.907616Z", + "description": "A ComfyUI extension for Riffusion audio generation.", + "downloads": 1328, + "github_stars": 3, + "icon": "", + "id": "riffusion", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-17T16:46:02.667643Z", + "dependencies": [ + "numpy>=1.21.0", + "Pillow>=9.0.0", + "scipy>=1.7.0", + "torch>=1.9.0", + "torchaudio>=0.9.0", + "pedalboard>=0.7.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "26edda99-5ca6-48f2-850c-3222be2a6126", + "node_id": "riffusion", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Riffusion", + "publisher": { + "createdAt": "2024-06-10T16:21:33.996006Z", + "description": "", + "id": "traugdor", + "logo": "", + "members": [], + "name": "quadmoon", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/traugdor/ComfyUI-Riffusion", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-19T02:17:18.633348Z", + "description": "Adds a sidebar allowing easy discovery, access, navigation, and use of a massive collection (100+) of LECO (Slider) LoRAs.", + "downloads": 2588, + "github_stars": 40, + "icon": "", + "id": "comfyui_slider_sidebar", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-19T02:17:22.390325Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "fbf58619-ea59-442e-b12e-3bedd867582a", + "node_id": "comfyui_slider_sidebar", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Slider_Sidebar", + "publisher": { + "createdAt": "2024-09-09T06:42:20.954873Z", + "description": "", + "id": "kinglord", + "logo": "", + "members": [], + "name": "KingLord", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Kinglord/ComfyUI_Slider_Sidebar", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-09T10:03:31.445291Z", + "description": "Snaps the menu to the corner automatically", + "downloads": 1367, + "github_stars": 3, + "icon": "", + "id": "comfyui-menu-anchor", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-19T11:43:14.230521Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1ae6ac37-ce95-495e-b82a-c5cdf1f60d36", + "node_id": "comfyui-menu-anchor", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "Menu Anchor", + "publisher": { + "createdAt": "2024-07-09T07:30:07.769811Z", + "description": "", + "id": "haoming02", + "logo": "", + "members": [], + "name": "Haoming02", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Haoming02/comfyui-menu-anchor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-11T07:24:33.520808Z", + "description": "Nodes to use [a/latte](https://github.com/Vchitect/Latte) for text to video generation", + "downloads": 1300, + "github_stars": 3, + "icon": "", + "id": "comfyui-latte", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-11T07:24:35.233925Z", + "dependencies": [ + "diffusers @ git+https://github.com/huggingface/diffusers.git" + ], + "deprecated": false, + "downloadUrl": "", + "id": "ff228626-b291-4f77-a75b-68b9a27d8015", + "node_id": "comfyui-latte", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Latte", + "publisher": { + "createdAt": "2024-08-06T19:57:24.499274Z", + "description": "", + "id": "rhizonymph", + "logo": "", + "members": [], + "name": "RhizoNymph", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/RhizoNymph/ComfyUI-Latte", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-27T23:03:53.047946Z", + "description": "Custom node that allows storing and accessing strings, meant to be parts of a prompt, in a simplified manner. Partially supports dynamic prompt syntax.", + "downloads": 1644, + "github_stars": 3, + "icon": "", + "id": "comfyui_simple_string_repository", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-27T23:04:00.881028Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "d89839bc-f281-4173-99eb-5a9764ec66c0", + "node_id": "comfyui_simple_string_repository", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "Simple String Repository", + "publisher": { + "createdAt": "2024-12-27T13:42:12.319537Z", + "description": "", + "id": "io", + "logo": "", + "members": [], + "name": "IO", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/IgalOgonov/ComfyUI_Simple_String_Repository", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-06T14:40:06.826351Z", + "description": "Custom set of nodes used by glif.app. With glif you can build mini apps that are powered by custom comfy workflows.", + "downloads": 2420, + "github_stars": 0, + "icon": "\ud83c\uddec", + "id": "comfyui-glifnodes-fork", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-10T08:20:29.043793Z", + "dependencies": [ + "diffusers==0.32.2" + ], + "deprecated": false, + "downloadUrl": "", + "id": "496034ea-ae37-421f-bb0d-3e4d704e4505", + "node_id": "comfyui-glifnodes-fork", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI-GlifNodes", + "publisher": { + "createdAt": "2025-03-05T16:25:46.095055Z", + "description": "", + "id": "kosbekokos", + "logo": "", + "members": [], + "name": "Kosbekokos", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kosbeko/ComfyUI-GlifNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-26T08:00:43.250956Z", + "description": "This node was designed to help with checkpoint configuration. Fee free to add new checkpoint configurations!", + "downloads": 1707, + "github_stars": 3, + "icon": "", + "id": "comfyui-checkpoint-automatic-config", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-05T14:23:53.677827Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3e825642-b280-4905-a3f5-679f3a35244c", + "node_id": "comfyui-checkpoint-automatic-config", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-checkpoint-automatic-config", + "publisher": { + "createdAt": "2024-05-26T07:46:47.835253Z", + "description": "", + "id": "darkdindon", + "logo": "", + "members": [], + "name": "Maxime", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mech-tools/comfyui-checkpoint-automatic-config", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-25T01:16:10.229172Z", + "description": "you can using pic2story in comfyUI", + "downloads": 2373, + "github_stars": 9, + "icon": "", + "id": "comfyui_pic2story", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-25T01:16:10.485521Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "62295e3d-8744-4b42-9c0f-f37a31304e54", + "node_id": "comfyui_pic2story", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_Pic2Story", + "publisher": { + "createdAt": "2024-06-24T08:32:00.788126Z", + "description": "", + "id": "smthemx", + "logo": "", + "members": [], + "name": "smthemx", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_Pic2Story", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-12T05:12:27.858785Z", + "description": "A very simple Discord webhook integration node for ComfyUI that lets you post images and text.", + "downloads": 1425, + "github_stars": 3, + "icon": "", + "id": "comfyui-discordwebhook", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-12T05:12:28.599132Z", + "dependencies": [ + "discord_webhook[async]" + ], + "deprecated": false, + "downloadUrl": "", + "id": "3a42bff4-d91f-437f-97f8-19ac0fb73aff", + "node_id": "comfyui-discordwebhook", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Discord Webhook", + "publisher": { + "createdAt": "2024-10-09T17:20:12.845564Z", + "description": "", + "id": "dayuppy", + "logo": "", + "members": [], + "name": "Dayuppy", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Dayuppy/ComfyUI-DiscordWebhook", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-15T13:21:33.145442Z", + "description": "A Python package for detecting whether images are colored or black and white using two different color spaces: RGB and LAB. \nThe package includes two classes: \n- `ColorDetection`: Analyzes images in the RGB color space, calculating mean deviation from pixel color mean to determine color presence.\n- `LABColorDetection`: Analyzes images in the LAB color space, assessing color presence by analyzing differences between the A and B channels.\n\nFeatures:\n- Detects colored vs. black and white images.\n- Supports analysis of image tensors.\n- Adjustable thresholds for color detection.\n- Uses a percentage of highest deviations for more robust detection.\n- Efficient processing with PyTorch and OpenCV integration.\n", + "downloads": 1768, + "github_stars": 3, + "icon": "https://www.mws.biz/wp-content/uploads/2021/02/cropped-MWSoftwareFavicon-1-180x180.png", + "id": "colorimagedetection", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-15T13:21:36.890046Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "e6a84c40-51c2-4d6a-8999-47b82c8a8bd5", + "node_id": "colorimagedetection", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "", + "name": "Color Image Detection", + "publisher": { + "createdAt": "2024-07-15T13:02:49.468005Z", + "description": "", + "id": "drunreal", + "logo": "", + "members": [], + "name": "Dr. Unreal", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DrMWeigand/ComfyUI_ColorImageDetection", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T15:35:00.369175Z", + "description": "This repo cast Recursive Generalization Transformer for Image Super-Resolution to ComfyUI, the original [a/paper link](https://arxiv.org/abs/2303.06373) and [a/github link](https://github.com/zhengchen1999/RGT)", + "downloads": 1910, + "github_stars": 8, + "icon": "", + "id": "comfyui-rgt", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-20T15:35:00.626445Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "20310ae5-94b2-48b9-8c04-4ad20db9ccd9", + "node_id": "comfyui-rgt", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-RGT", + "publisher": { + "createdAt": "2024-06-20T14:50:44.914163Z", + "description": "", + "id": "viper", + "logo": "", + "members": [], + "name": "Zephrus shawn", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/viperyl/ComfyUI-RGT", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-27T01:24:06.44955Z", + "description": "It has the ability to concatenate text.", + "downloads": 195, + "github_stars": 0, + "icon": "", + "id": "comfyui_mittimi_daisy_chain_text", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-09T08:51:45.594909Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "48297e42-d48b-4064-a77f-f4c5d21412e5", + "node_id": "comfyui_mittimi_daisy_chain_text", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_mittimiDaisyChainText", + "publisher": { + "createdAt": "2024-08-25T10:31:13.036141Z", + "description": "", + "id": "mittimi", + "logo": "", + "members": [], + "name": "mittimi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mittimi/ComfyUI_mittimiDaisyChainText", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-25T21:45:40.79281Z", + "description": "Toolkit for creating embeddings for various models in ComfyUI.", + "downloads": 387, + "github_stars": 7, + "icon": "", + "id": "ComfyUI_EmbeddingToolkit", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-04T08:31:16.364489Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b6330b75-437a-4a36-9cae-023dfe2c6b5b", + "node_id": "ComfyUI_EmbeddingToolkit", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_EmbeddingToolkit", + "publisher": { + "createdAt": "2024-09-17T18:22:05.116266Z", + "description": "", + "id": "silveroxides", + "logo": "", + "members": [], + "name": "silveroxides", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/silveroxides/ComfyUI_EmbeddingToolkit", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-30T17:51:00.979864Z", + "description": "Comfyg Switch is a custom node that dynamically selects model configuration parameters based on the chosen checkpoint. It reads model-specific settings from a JSON file (model_configs.json).", + "downloads": 713, + "github_stars": 3, + "icon": "", + "id": "comfyg-switch", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-30T17:51:01.377229Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "0a17bba0-efcf-48cc-9542-8b844984a519", + "node_id": "comfyg-switch", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyg-switch", + "publisher": { + "createdAt": "2025-02-26T11:48:13.488089Z", + "description": "", + "id": "guerreiro", + "logo": "", + "members": [], + "name": "Gabriel Guerreiro", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/guerreiro/comfyg-switch", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-23T03:09:13.821203Z", + "description": "This repository is the official implementation of the [a/HelloMeme](https://arxiv.org/pdf/2410.22901) ComfyUI interface", + "downloads": 4393, + "github_stars": 367, + "icon": "https://github.com/HelloVision/ComfyUI_HelloMeme/blob/eee70819a114a44c4c689c865b42fa0e523a31e5/examples/helloicon.png", + "id": "comfyui_hellomeme", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-27T09:47:20.928521Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "e48499ce-a502-4ffe-9481-9ee0b5571944", + "node_id": "comfyui_hellomeme", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.3.28" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "hellomeme-api", + "publisher": { + "createdAt": "2024-12-23T02:53:29.192338Z", + "description": "", + "id": "hellomeme-api", + "logo": "", + "members": [], + "name": "hellomeme-api-publisher", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/HelloVision/ComfyUI_HelloMeme", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-25T20:15:28.611851Z", + "description": "A custom [ComfyUI](https://github.com/comfyanonymous/ComfyUI) node that lets you upload generated media directly to your [BASE](https://getbase.app) account \u2014 no manual downloads or re-uploads needed.", + "downloads": 281, + "github_stars": 4, + "icon": "https://go.getbase.app/logo.png", + "id": "base-comfyui-node", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-23T16:12:39.89547Z", + "dependencies": [ + "requests", + "Pillow", + "torch", + "numpy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5a14196a-fc03-4026-9d03-135c92653c24", + "node_id": "base-comfyui-node", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "base-comfyui-node", + "publisher": { + "createdAt": "2025-05-25T19:09:44.038058Z", + "description": "", + "id": "base", + "logo": "", + "members": [], + "name": "BASE", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/babe-and-spencer-enterprises/base-comfyui-node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-20T02:44:36.883346Z", + "description": "parakeet-tdt-0.6b-v2: Automatic speech recognition (ASR) model designed for high-quality English transcription, featuring support for punctuation, capitalization, and accurate timestamp prediction.", + "downloads": 311, + "github_stars": 3, + "icon": "", + "id": "parakeet-tdt-mw", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-23T09:44:30.615821Z", + "dependencies": [ + "pybind11", + "cuda-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "11298353-f4dd-4ba8-9779-30adde74ef84", + "node_id": "parakeet-tdt-mw", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_parakeet-tdt", + "publisher": { + "createdAt": "2025-01-06T14:10:29.10336Z", + "description": "", + "id": "mw", + "logo": "", + "members": [], + "name": "MW", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/billwuhao/ComfyUI_parakeet-tdt", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-21T08:37:38.603899Z", + "description": "A wrapper of [a/CosyVoice2](https://github.com/FunAudioLLM/CosyVoice/)'s ComfyUI custom_nodes", + "downloads": 895, + "github_stars": 3, + "icon": "", + "id": "ComfyUI_CosyVoice2", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-21T08:37:39.026563Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "05ab1d72-6349-4f17-9617-94324bfb4b98", + "node_id": "ComfyUI_CosyVoice2", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_CosyVoice2", + "publisher": { + "createdAt": "2025-02-20T03:27:57.859548Z", + "description": "", + "id": "hjh-ailab", + "logo": "", + "members": [], + "name": "HJH-AILab", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/HJH-AILab/ComfyUI_CosyVoice2", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-22T18:13:25.103544Z", + "description": "Collection of nodes for ComfyUI for automation", + "downloads": 277, + "github_stars": 2, + "icon": "", + "id": "northtools", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-22T18:13:25.57337Z", + "dependencies": [ + "pillow", + "numpy", + "torch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "129b7022-e3ce-4256-8259-cb6b8fb9e8b4", + "node_id": "northtools", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-northTools", + "publisher": { + "createdAt": "2025-05-22T16:33:31.746207Z", + "description": "", + "id": "northumber", + "logo": "", + "members": [], + "name": "Teo Toscano", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/northumber/ComfyUI-northTools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-14T17:31:50.567781Z", + "description": "Updated version of IPAdapter Plus.\nComfyUI reference implementation for the IPAdapter models. The IPAdapter are very powerful models for image conditioning. The style and composition of a reference can be easily transferred to the generation. Think of it as a 1-image lora.", + "downloads": 4186, + "github_stars": 1, + "icon": "", + "id": "comfyui_ipadapter_plus_fork", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-15T00:26:08.003835Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a60eb059-2c5d-488e-ba7f-894ace9edd3e", + "node_id": "comfyui_ipadapter_plus_fork", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "3.0.2" + }, + "license": "{\"text\": \"GNU General Public License v3.0\"}", + "name": "ComfyUI_IPAdapter_plus_fork", + "publisher": { + "createdAt": "2024-06-15T14:09:36.287328Z", + "description": "", + "id": "pamparamm", + "logo": "", + "members": [], + "name": "Pamparamm", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pamparamm/ComfyUI_IPAdapter_plus", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-06T19:54:56.548087Z", + "description": "Using Spark-TTS in Comfyui. Spark-TTS: An Efficient LLM-Based Text-to-Speech Model with Single-Stream Decoupled Speech Tokenss", + "downloads": 2616, + "github_stars": 45, + "icon": "", + "id": "sparktts_mw", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-23T09:45:33.399615Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "75461042-c99a-462e-9946-e1f3eea0060b", + "node_id": "sparktts_mw", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_SparkTTS", + "publisher": { + "createdAt": "2025-01-06T14:10:29.10336Z", + "description": "", + "id": "mw", + "logo": "", + "members": [], + "name": "MW", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/billwuhao/ComfyUI_SparkTTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-05T13:12:11.596793Z", + "description": "Detail-Oriented Pixelization based on Contrast-Aware Outline Expansion.", + "downloads": 2047, + "github_stars": 336, + "icon": "https://kblueleaf.net/_astro/pixeloe-icon.L5crpG2M.jpg", + "id": "pixeloe", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-05T13:12:11.990557Z", + "dependencies": [ + "opencv-python", + "numpy", + "pillow", + "torch", + "kornia" + ], + "deprecated": false, + "downloadUrl": "", + "id": "88b6b982-cbb9-474f-af3d-6178aa0049e7", + "node_id": "pixeloe", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.4" + }, + "license": "{\"text\": \"Apache License 2.0\"}", + "name": "PixelOE", + "publisher": { + "createdAt": "2024-12-21T03:05:34.782934Z", + "description": "", + "id": "kblueleaf", + "logo": "", + "members": [], + "name": "KohakuBlueLeaf", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/KohakuBlueleaf/PixelOE", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-22T01:46:05.764817Z", + "description": "A node for ComfyUI that modifies the values in the samples input that fall outside of a min and max range using a multiplier.", + "downloads": 2842, + "github_stars": 2, + "icon": "https://example.com/icon.png", + "id": "comfyui-latentclamp", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-22T01:46:09.540861Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "d5143c6c-3101-42a5-bebc-e64bc9b916a0", + "node_id": "comfyui-latentclamp", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.2" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-LatentClamp", + "publisher": { + "createdAt": "2024-11-22T01:36:07.508549Z", + "description": "", + "id": "sparknight", + "logo": "", + "members": [], + "name": "Sparknight", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SparknightLLC/ComfyUI-LatentClamp", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-07T18:10:41.091916Z", + "description": "ReforgeCFG is a ComfyUI node designed to add details to your image. [a/While it already exists in Comfy Core](https://github.com/comfyanonymous/ComfyUI/blob/80a44b97f5cbcb890896e2b9e65d177f1ac6a588/comfy_extras/nodes_model_advanced.py#L258), it lacks timesteps for adjustment.", + "downloads": 934, + "github_stars": 25, + "icon": "", + "id": "rescalecfgadvanced", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-07T18:10:41.516782Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "badaa985-fb85-4873-9ff0-612f82928a65", + "node_id": "rescalecfgadvanced", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUi-RescaleCFGAdvanced", + "publisher": { + "createdAt": "2025-05-07T18:03:32.809108Z", + "description": "", + "id": "bigstationw", + "logo": "", + "members": [], + "name": "BigStationW", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BigStationW/ComfyUi-RescaleCFGAdvanced", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-21T06:19:43.596467Z", + "description": "A collection of ComfyUI custom nodes for formatting and debugging string data with the intention of collecting generation data to be processed by a custom node pack like comfy-image-saver, as well as miscellaneous extra nodes to experiment with.", + "downloads": 3501, + "github_stars": 2, + "icon": "", + "id": "comfyui-stringsandthings", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-21T06:19:45.313807Z", + "dependencies": [ + "torch==2.5.1", + "torchvision==0.20.1", + "scipy==1.13.1", + "Pillow==10.3.0", + "numpy==1.26.4" + ], + "deprecated": false, + "downloadUrl": "", + "id": "50d9d030-c52a-4621-8e6c-290f6e4d4584", + "node_id": "comfyui-stringsandthings", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-StringsAndThings", + "publisher": { + "createdAt": "2024-12-21T06:04:48.215498Z", + "description": "", + "id": "presswagon", + "logo": "", + "members": [], + "name": "PressWagon", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/PressWagon/ComfyUI-StringsAndThings", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-05T07:49:00.346514Z", + "description": "This repository support processing Comfyui image nodes with ICC profile, load and save images with ICC profile", + "downloads": 1402, + "github_stars": 2, + "icon": "", + "id": "comfyui-icc-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-05T07:49:04.097406Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "d50beabf-a93b-4370-97ae-bc482b3eea48", + "node_id": "comfyui-icc-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ICC-nodes", + "publisher": { + "createdAt": "2024-10-10T11:01:11.077098Z", + "description": "", + "id": "duhaifeng", + "logo": "", + "members": [], + "name": "duhaifeng", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/rubi-du/ComfyUI-ICC-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-02T08:46:38.399233Z", + "description": "Automatically archives generated files to Amazon S3 or S3-compatible storage services", + "downloads": 549, + "github_stars": 2, + "icon": "", + "id": "comfyui-cloudarchive", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-15T07:19:00.561658Z", + "dependencies": [ + "boto3", + "watchdog" + ], + "deprecated": false, + "downloadUrl": "", + "id": "595f8bca-7567-4fc9-ab02-086afb782fad", + "node_id": "comfyui-cloudarchive", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-CloudArchive", + "publisher": { + "createdAt": "2025-02-13T08:55:37.726723Z", + "description": "", + "id": "olduvai-jp", + "logo": "", + "members": [], + "name": "olduvai-jp", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/olduvai-jp/ComfyUI-CloudArchive", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-27T19:06:36.425544Z", + "description": "A node to pause execution of the workflow and select which input images should proceed to the output.", + "downloads": 645, + "github_stars": 2, + "icon": "https://raw.githubusercontent.com/marklieberman/ComfyUI-Liebs-Picker/refs/heads/main/comfy-icon.png", + "id": "liebs-picker", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-20T19:49:10.040133Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c8a21892-fdf0-4479-a0c3-c86ff0db1b28", + "node_id": "liebs-picker", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Liebs-Picker", + "publisher": { + "createdAt": "2025-04-27T18:55:33.437033Z", + "description": "", + "id": "markliebs", + "logo": "", + "members": [], + "name": "markliebs", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/marklieberman/ComfyUI-Liebs-Picker", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-05T13:49:18.344473Z", + "description": "For using multiple LoRA easily.", + "downloads": 3137, + "github_stars": 9, + "icon": "", + "id": "comfyui-lora-tuner", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-12T11:46:20.591113Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a0d2d43b-51f7-4827-940b-15c27ad69f2f", + "node_id": "comfyui-lora-tuner", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-LoRA-Tuner", + "publisher": { + "createdAt": "2024-07-05T12:41:28.312248Z", + "description": "", + "id": "aonekoss", + "logo": "", + "members": [], + "name": "AonekoSS", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AonekoSS/ComfyUI-LoRA-Tuner", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-13T10:35:14.745206Z", + "description": "A ComfyUI node that uses NVIDIA's DAM model to identify objects in masked regions", + "downloads": 374, + "github_stars": 6, + "icon": "", + "id": "comfyui-dam-object-extractor", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-13T11:11:07.061926Z", + "dependencies": [ + "torch>=2.5.1", + "torchvision>=0.20.1", + "transformers>=4.52.0.dev0", + "accelerate>=1.1.1", + "numpy>=1.26.4", + "timm>=1.0.12", + "pillow>=11.2.1", + "opencv-python>=4.11.0", + "huggingface-hub>=0.30.2", + "safetensors>=0.5.3" + ], + "deprecated": false, + "downloadUrl": "", + "id": "863d4ad0-9949-4198-a209-6f6a7ae7c970", + "node_id": "comfyui-dam-object-extractor", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.5" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "", + "publisher": { + "createdAt": "2025-05-08T05:58:03.572143Z", + "description": "", + "id": "irsalkhan", + "logo": "", + "members": [], + "name": "Irsal Khan", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Irsalistic/comfyui-dam-object-extractor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-22T09:49:36.163276Z", + "description": "A custom node for ComfyUI to have many sliders with interactive dynamic behavior.", + "downloads": 518, + "github_stars": 3, + "icon": "", + "id": "Dynamic_Sliders_stack", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-22T09:49:36.582925Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "f078ac04-3c12-434f-95dc-f68e065f48b6", + "node_id": "Dynamic_Sliders_stack", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "Dynamic Sliders Stack", + "publisher": { + "createdAt": "2025-04-22T07:02:57.766991Z", + "description": "", + "id": "funnyfinger", + "logo": "", + "members": [], + "name": "FunnyFinger", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/FunnyFinger/Dynamic_Sliders_stack", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-15T16:52:07.984785Z", + "description": "This repository contains custom nodes for ComfyUI designed to help structure, filter, and generate text prompts using categorized tag definitions stored in a YAML file.", + "downloads": 642, + "github_stars": 2, + "icon": "https://avatars.githubusercontent.com/u/68666984", + "id": "prompt-formatter", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-10T19:30:16.103289Z", + "dependencies": [ + "# /ComfyUI-Prompt-Formatter/requirements.txt", + "PyYAML>=5.1" + ], + "deprecated": false, + "downloadUrl": "", + "id": "89b551f2-3847-4f1a-a659-7222c445e420", + "node_id": "prompt-formatter", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.4.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Prompt-Formatter", + "publisher": { + "createdAt": "2025-04-15T16:37:26.278176Z", + "description": "", + "id": "xlegende", + "logo": "", + "members": [], + "name": "Legende", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/xLegende/ComfyUI-Prompt-Formatter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-07T07:44:45.765108Z", + "description": "Saves the image in Photoshop format (PSD)", + "downloads": 641, + "github_stars": 3, + "icon": "", + "id": "D2-SavePSD-ComfyUI", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-08T15:28:25.304951Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "fb7b1e11-9d07-414a-9d95-e44c6bfa8e25", + "node_id": "D2-SavePSD-ComfyUI", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.11.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "D2-SavePSD-ComfyUI", + "publisher": { + "createdAt": "2024-08-04T16:12:17.464004Z", + "description": "", + "id": "da2el", + "logo": "", + "members": [], + "name": "da2el", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/da2el-ai/D2-SavePSD-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-04T19:46:00.183184Z", + "description": "Simple node to convert lora_stack output into string to generate a1111-style lora strength output text, like . Used to include your Lora names from Lora Stack in text input-output nodes and so on.", + "downloads": 1718, + "github_stars": 3, + "icon": "", + "id": "format-lora-stack", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-04T19:46:00.620255Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "cc606349-3845-4d45-a527-083423a1f2ba", + "node_id": "format-lora-stack", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_format-lora-stack", + "publisher": { + "createdAt": "2025-04-04T19:29:16.731282Z", + "description": "", + "id": "applepie1337", + "logo": "", + "members": [], + "name": "applepie1337", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mobilehacker/ComfyUI_format-lora-stack", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-27T05:40:43.531593Z", + "description": "\u628a\u56fe\u7247\u8f6c\u4e3a\u77e2\u91cf\u56fe\uff0cconcert image to raster. ", + "downloads": 453, + "github_stars": 2, + "icon": "", + "id": "comfyui-image-vector", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-27T05:40:43.970605Z", + "dependencies": [ + "vtracer", + "Wand", + "Pillow", + "torch", + "numpy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "abf00d1f-1ecd-464e-8429-ef097c686b9a", + "node_id": "comfyui-image-vector", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI-Image-Vector", + "publisher": { + "createdAt": "2025-01-23T03:20:24.38645Z", + "description": "", + "id": "cyber-blackcat", + "logo": "", + "members": [], + "name": "Cyber-BlackCat", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Cyber-BlackCat/ComfyUI-Image-Vector", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-13T03:05:58.539733Z", + "description": "ComfyUI Batch Toolkit: Custom nodes that simplify batch operations and improve efficiency. ComfyUI\u6279\u5904\u7406\u5de5\u5177\u96c6\uff1a\u7b80\u5316\u6279\u5904\u7406\u64cd\u4f5c\uff0c\u63d0\u9ad8\u6548\u7387\u7684\u81ea\u5b9a\u4e49\u8282\u70b9\u3002", + "downloads": 592, + "github_stars": 2, + "icon": "", + "id": "comfyui-qbug-batch", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-13T03:05:58.94864Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "d27586e7-8bb3-41c9-8c10-a729b589ce61", + "node_id": "comfyui-qbug-batch", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-qbug-batch", + "publisher": { + "createdAt": "2024-10-13T12:03:30.576054Z", + "description": "", + "id": "qbug", + "logo": "", + "members": [], + "name": "Q-Bug", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Q-Bug4/comfyui-qbug-batch", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-28T00:31:06.114211Z", + "description": "Post images and video to Discord. Nodes to facilitate communication using REST.", + "downloads": 1290, + "github_stars": 2, + "icon": "https://raw.githubusercontent.com/Amorano/Jovimetrix-examples/refs/heads/master/res/logo-cozy-comfyui.png", + "id": "cozy_comm", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-03T17:03:15.420563Z", + "dependencies": [ + "discord-webhook>=1.3.1", + "loguru", + "opencv-contrib-python", + "requests>=2.32.3" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6f2c584b-cb2e-4cc3-bad7-eb4d9613cf59", + "node_id": "cozy_comm", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Cozy Communication", + "publisher": { + "createdAt": "2024-05-17T04:16:25.445017Z", + "description": "", + "id": "amorano", + "logo": "", + "members": [], + "name": "Joviex", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cozy-comfyui/cozy_comm", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-09T03:06:11.756452Z", + "description": "This node package contains automatic sampler setting according to model name in ComfyUI, adjusting image size according to specific constraints and some other nodes.", + "downloads": 610, + "github_stars": 2, + "icon": "", + "id": "simple_executor", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-09T03:25:50.803711Z", + "dependencies": [ + "torch>=1.12.0", + "numpy>=1.21.0", + "Pillow>=8.0.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5373982e-2ba7-4b81-956e-36ce9a69983e", + "node_id": "simple_executor", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Simple_Executor", + "publisher": { + "createdAt": "2025-04-09T01:54:01.815357Z", + "description": "", + "id": "kerry", + "logo": "", + "members": [], + "name": "Kerry", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/KERRY-YUAN/ComfyUI_Simple_Executor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-08T09:28:42.290585Z", + "description": "Call LLM and VLM from ComfyUI using the OpenAI API standard. Compatible with custom inference servers like vLLM or TGI thru their support of their OpenAI API implementation.", + "downloads": 821, + "github_stars": 5, + "icon": "", + "id": "openai-api", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-08T09:28:42.671134Z", + "dependencies": [ + "openai", + "numpy>=1.25.0", + "Pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "26cdc947-246e-4d25-ace0-46d2ca630850", + "node_id": "openai-api", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "OpenAI API", + "publisher": { + "createdAt": "2025-04-08T09:16:45.072064Z", + "description": "", + "id": "hekmon", + "logo": "", + "members": [], + "name": "Hekmon", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hekmon/comfyui-openai-api", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-14T09:13:01.275469Z", + "description": "A custom node collection developed for ComfyUI, offering preset dimensions for Latent, loading LoRA from folders, and integrating multiple commonly used custom nodes.", + "downloads": 1796, + "github_stars": 3, + "icon": "\ud83d\udc1f", + "id": "qhnodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-22T08:33:44.596151Z", + "dependencies": [ + "google-generativeai>=0.3.0", + "Pillow>=10.0.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "374e213e-447b-47a4-9bd9-ce6c963adc70", + "node_id": "qhnodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "3.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-QHNodes", + "publisher": { + "createdAt": "2024-12-21T11:32:11.395745Z", + "description": "", + "id": "liuqianhong", + "logo": "", + "members": [], + "name": "liuqianhong", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/liuqianhonga/ComfyUI-QHNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-08T07:59:14.681281Z", + "description": "This repository contains a simple custom node for ComfyUI that implements familiar PS-style blend modes using PyTorch. The PSBlendNode allows you to blend two images together using a variety of blend modes and an opacity parameter.", + "downloads": 1486, + "github_stars": 2, + "icon": "", + "id": "comfyui_ps_blend_node", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-08T07:59:18.406843Z", + "dependencies": [ + "torch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "ac2a7186-5dbc-4081-b832-cfe00bbffe5b", + "node_id": "comfyui_ps_blend_node", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_PS_Blend_Node", + "publisher": { + "createdAt": "2024-07-08T07:49:49.04895Z", + "description": "", + "id": "bluevisor", + "logo": "", + "members": [], + "name": "BlueVisor", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bluevisor/ComfyUI_PS_Blend_Node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-18T19:51:58.639529Z", + "description": "comfyui_kj, A tool that can package workflows into projects and publish them to a WeChat Mini Program named Kaji, allowing charges to be collected from users.", + "downloads": 2045, + "github_stars": 6, + "icon": "", + "id": "comfyui_kj", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-20T13:23:37.024778Z", + "dependencies": [ + "aiohttp" + ], + "deprecated": false, + "downloadUrl": "", + "id": "8c099f18-7ddd-404d-890c-135a520d38e9", + "node_id": "comfyui_kj", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.7" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_kj", + "publisher": { + "createdAt": "2025-01-18T19:03:11.242896Z", + "description": "", + "id": "lingha0h", + "logo": "", + "members": [], + "name": "comfyui_kj", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lingha0h/comfyui_kj", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-28T08:23:32.10499Z", + "description": "Extend LoadImage node with subfolder support", + "downloads": 1681, + "github_stars": 3, + "icon": "", + "id": "comfyui-loadimagewithsubfolder", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-28T08:23:35.879316Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "890753d4-54fe-408f-b411-a6022fa84aff", + "node_id": "comfyui-loadimagewithsubfolder", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "comfyui-loadimagewithsubfolder", + "publisher": { + "createdAt": "2024-07-28T03:57:39.761388Z", + "description": "", + "id": "blingbling", + "logo": "", + "members": [], + "name": "blingbling", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/liangt/comfyui-loadimagewithsubfolder", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-13T18:16:45.917809Z", + "description": "A simple, lightweight AMD GPU monitoring tool for ComfyUI that displays real-time information about your AMD GPU directly in the UI.", + "downloads": 930, + "github_stars": 3, + "icon": "", + "id": "amdgpumonitor", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-13T18:16:46.312562Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5d4c7b4d-b1db-4b7b-9ca9-b7ea83d73b04", + "node_id": "amdgpumonitor", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-AMDGPUMonitor", + "publisher": { + "createdAt": "2025-03-13T18:06:45.086548Z", + "description": "", + "id": "idappa", + "logo": "", + "members": [], + "name": "iDAPPA", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/iDAPPA/ComfyUI-AMDGPUMonitor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-18T10:58:42.644231Z", + "description": "Strings should be easy, and simple. This extension aims to provide a set of nodes that make working with strings in ComfyUI a little bit easier.", + "downloads": 2171, + "github_stars": 2, + "icon": "", + "id": "comfyui-better-strings", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-18T10:58:46.431521Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "59f60acb-8ca0-456d-8a6c-bce1cb9ebffc", + "node_id": "comfyui-better-strings", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Better-Strings", + "publisher": { + "createdAt": "2024-10-21T12:13:07.280418Z", + "description": "", + "id": "greysion", + "logo": "", + "members": [], + "name": "Hayden Reeve", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/HaydenReeve/ComfyUI-Better-Strings", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-07T12:36:52.708789Z", + "description": "Nodes:BBOXPadding, BBOXResize, ResizeKeepRatio.", + "downloads": 1778, + "github_stars": 2, + "icon": "\u24c2\ufe0e", + "id": "comfyui_met_suite", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-07T12:36:56.431536Z", + "dependencies": [ + "pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d62806ec-b51e-4b51-9372-edc8becdaa89", + "node_id": "comfyui_met_suite", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "comfyui_met_suite", + "publisher": { + "createdAt": "2024-07-06T14:11:37.70238Z", + "description": "", + "id": "metncelik", + "logo": "", + "members": [], + "name": "Metin Celik", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/metncelik/comfyui_met_suite", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-23T07:15:02.139254Z", + "description": "This ComfyUI extension provides custom nodes for working with Google Gemini and OpenAI ChatGPT.", + "downloads": 744, + "github_stars": 2, + "icon": "", + "id": "AS_LLM_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-23T12:06:05.098542Z", + "dependencies": [ + "Pillow", + "requests", + "google-generativeai", + "openai" + ], + "deprecated": false, + "downloadUrl": "", + "id": "dbc703e8-6e47-47cf-931b-69199a4e4c2d", + "node_id": "AS_LLM_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "AS_LLM_nodes", + "publisher": { + "createdAt": "2025-02-24T16:15:08.023904Z", + "description": "", + "id": "svetozarov", + "logo": "", + "members": [], + "name": "Artem Svetozarov", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/svetozarov/AS_LLM_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-16T03:25:03.890436Z", + "description": "Custom nodes for managing, saving and loading of T5XXL and Redux/Style based embeddings.", + "downloads": 446, + "github_stars": 1, + "icon": "", + "id": "ComfyUI_ReduxEmbedToolkit", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-16T04:31:25.94988Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "6c1f751a-1ce8-480a-b32a-1d453829764d", + "node_id": "ComfyUI_ReduxEmbedToolkit", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Redux & T5XXL Embed Toolkit", + "publisher": { + "createdAt": "2024-09-17T18:22:05.116266Z", + "description": "", + "id": "silveroxides", + "logo": "", + "members": [], + "name": "silveroxides", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/silveroxides/ComfyUI_ReduxEmbedToolkit", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-24T10:02:42.732911Z", + "description": "a plugin of ComfyUI for Long Sonic", + "downloads": 1711, + "github_stars": 3, + "icon": "", + "id": "Sonic", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-24T10:05:24.840948Z", + "dependencies": [ + "diffusers", + "torch", + "torchaudio", + "torchvision", + "transformers", + "imageio", + "imageio-ffmpeg", + "omegaconf", + "tqdm", + "librosa", + "einops" + ], + "deprecated": false, + "downloadUrl": "", + "id": "61ba73d4-5df5-48ec-868d-7081825cf6cb", + "node_id": "Sonic", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "GKK\u00b7Sonic", + "publisher": { + "createdAt": "2025-02-24T03:46:32.333024Z", + "description": "", + "id": "benda1989", + "logo": "", + "members": [], + "name": "GKK", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/benda1989/Sonic_ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-25T03:59:53.027988Z", + "description": "TinySanaPreview is a custom ComfyUI node that implements real-time previews during generation for Sana diffusion models.", + "downloads": 1799, + "github_stars": 2, + "icon": "", + "id": "tiny-sana-preview", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-08T00:37:10.75777Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "7e32ceef-ba4f-48a0-99e4-555ea3ef2865", + "node_id": "tiny-sana-preview", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE.md\"}", + "name": "tiny-sana-preview", + "publisher": { + "createdAt": "2025-01-25T03:43:37.05278Z", + "description": "", + "id": "cake-ml", + "logo": "", + "members": [], + "name": "cake-ml", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cake-ml/tiny-sana-preview", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-21T15:20:42.82829Z", + "description": "Nodes:Badman_Blend, Badman_HexGenerator, Badman_String, Badman_Concat_String, Badman_Print, BadmanIO, BadmanIntUtil", + "downloads": 1374, + "github_stars": 2, + "icon": "", + "id": "comfyui-badmannodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-21T15:20:43.116226Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "e23d08fb-e8bd-45b7-9e8e-756eff656f2d", + "node_id": "comfyui-badmannodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-BadmanNodes", + "publisher": { + "createdAt": "2024-06-20T15:46:27.905646Z", + "description": "", + "id": "bigting", + "logo": "", + "members": [], + "name": "32bitbadman", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MariusKM/ComfyUI-BadmanNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-16T06:53:49.295845Z", + "description": "A ComfyUI custom node that converts prompts between different AI image generation models.", + "downloads": 1624, + "github_stars": 3, + "icon": "", + "id": "comfyui-promptconverter", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-21T05:00:09.913603Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "aac96666-e842-4c9b-a22a-f617bc156a9b", + "node_id": "comfyui-promptconverter", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-PromptConverter", + "publisher": { + "createdAt": "2025-01-16T06:30:45.953796Z", + "description": "", + "id": "vkff5833", + "logo": "", + "members": [], + "name": "SenY", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/vkff5833/ComfyUI-PromptConverter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-07T05:11:35.054391Z", + "description": "Node:Image Fit Calculator", + "downloads": 1206, + "github_stars": 2, + "icon": "", + "id": "comfyui-oneforone", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-07T22:53:50.872585Z", + "dependencies": [ + "numpy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1abe581b-3960-4169-9e92-f72f9d90b48e", + "node_id": "comfyui-oneforone", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-OneForOne", + "publisher": { + "createdAt": "2025-01-07T04:48:44.687006Z", + "description": "", + "id": "meettya", + "logo": "", + "members": [], + "name": "meettya", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Meettya/ComfyUI-OneForOne", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-22T20:56:01.860938Z", + "description": "ImageTransceiver is a custom node that enables image generating clients to connect directly to ComfyUI, and send those images in near real-time. For example, an image manipulation program like GIMP can connect an image to a workflow in ComfyUI, and every time the image changes in GIMP, the changes are immediately made in the workflow. Cloning", + "downloads": 1312, + "github_stars": 2, + "icon": "https://github.com/Charlweed/image_transceiver/blob/2ba3d544d0d974e787d49a847bd6bf9c85fbb2f8/illustrations/transceiver_256sq.png", + "id": "image_transceiver", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-27T21:07:17.00095Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "bb6c3532-50f6-4e1e-8c14-dacc4964f582", + "node_id": "image_transceiver", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.7.11" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "image_transceiver", + "publisher": { + "createdAt": "2024-10-01T23:53:51.938341Z", + "description": "", + "id": "charlweed", + "logo": "", + "members": [], + "name": "Charlweed Hymerfan", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Charlweed/image_transceiver", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-20T15:57:29.783839Z", + "description": "Tell your dream and it interprets it and puts you inside your dream", + "downloads": 2037, + "github_stars": 80, + "icon": "", + "id": "comfyui-dream-interpreter", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-31T16:11:27.001705Z", + "dependencies": [ + "Pillow>=10.1.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "645ce22b-f5e8-43f6-9625-9302dd7a4915", + "node_id": "comfyui-dream-interpreter", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Dream-Interpreter", + "publisher": { + "createdAt": "2024-05-20T14:41:34.085962Z", + "description": "", + "id": "gokayfem", + "logo": "", + "members": [], + "name": "gokayfem", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gokayfem/ComfyUI-Dream-Interpreter", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-23T22:27:23.536622Z", + "description": "Custom nodes for ComfyUI for reading and writing XMP metadata", + "downloads": 1263, + "github_stars": 2, + "icon": "", + "id": "comfyui-jh-xmp-metadata-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-24T16:32:17.261747Z", + "dependencies": [ + "lxml==5.3.0 ; python_version >= \"3.12\" and python_version < \"4.0\"" + ], + "deprecated": false, + "downloadUrl": "", + "id": "edc4415f-5d36-4774-8ecc-9ec9e07e6df8", + "node_id": "comfyui-jh-xmp-metadata-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "JH XMP Metadata Nodes", + "publisher": { + "createdAt": "2024-12-23T22:04:47.174667Z", + "description": "", + "id": "jefferyharrell", + "logo": "", + "members": [], + "name": "Jeffery Harrell", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ComfyUI-JH/ComfyUI-JH-XMP-Metadata-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-29T21:28:29.140812Z", + "description": "ComfyUI Chatterbox TTS & Voice Conversion Node", + "downloads": 3979, + "github_stars": 28, + "icon": "", + "id": "ComfyUI-ChatterboxTTS", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-29T21:28:29.52373Z", + "dependencies": [ + "torch", + "torchaudio", + "librosa", + "numpy", + "huggingface_hub", + "resemble-perth", + "einops", + "scipy", + "tokenizers", + "soundfile", + "s3tokenizer", + "tqdm", + "conformer" + ], + "deprecated": false, + "downloadUrl": "", + "id": "28ef58e3-ee5c-45c6-beaa-2817f5e4c84d", + "node_id": "ComfyUI-ChatterboxTTS", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ChatterboxTTS", + "publisher": { + "createdAt": "2025-05-23T19:23:03.551719Z", + "description": "", + "id": "wildai", + "logo": "", + "members": [], + "name": "Wildminder", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wildminder/ComfyUI-Chatterbox", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-23T06:10:10.946193Z", + "description": "This repository contains a user-defined node for ComfyUI, currently there are nodes for capturing captions. But will be expanded in the future.", + "downloads": 2014, + "github_stars": 2, + "icon": "", + "id": "comfyui-bvortexnodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-23T09:20:20.476643Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "cbb7f5c6-3f10-4803-89a1-bb88a43f448c", + "node_id": "comfyui-bvortexnodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.8" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-BVortexNodes", + "publisher": { + "createdAt": "2024-10-19T16:22:17.619032Z", + "description": "", + "id": "blackvortex", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BlackVortexAI/ComfyUI-BVortexNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-07T09:19:32.070581Z", + "description": "ComfyUI\u5b66\u4e60\u4e2d\u5fc3\u63d2\u4ef6\uff0c\u63d0\u4f9b\u4ea4\u4e92\u5f0f\u5b66\u4e60\u4f53\u9a8c\uff0c\u5e2e\u52a9\u7528\u6237\u4ece\u96f6\u5f00\u59cb\u5b66\u4e60ComfyUI\u3002", + "downloads": 525, + "github_stars": 2, + "icon": "", + "id": "comfyui-learningcenter", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-07T09:19:32.467557Z", + "dependencies": [ + "pillow>=9.2.0", + "aiohttp>=3.8.3", + "numpy>=1.20.0", + "opencv-python>=4.5.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "ad4d57a0-6a4a-462c-bdfc-4a72b04f1b51", + "node_id": "comfyui-learningcenter", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Learning Center", + "publisher": { + "createdAt": "2025-03-23T10:37:28.760389Z", + "description": "", + "id": "assemly", + "logo": "", + "members": [], + "name": "\u5361\u8010\u57fa\u7684\u53cd\u590d\u624b", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/assemly/comfyui-learningcenter.git", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T07:24:32.958525Z", + "description": "Save Image Plus is a custom node for ComfyUI that allows you to save images in JPEG and WEBP formats with optional metadata embedding.", + "downloads": 7588, + "github_stars": 12, + "icon": "", + "id": "comfyui-saveimage-plus", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-20T07:24:33.236948Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "fbc721ce-fc1c-42c7-9aab-b921674ce5a0", + "node_id": "comfyui-saveimage-plus", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-saveimage-plus", + "publisher": { + "createdAt": "2024-06-20T07:16:36.973168Z", + "description": "", + "id": "goktug", + "logo": "", + "members": [], + "name": "Goktug", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Goktug/comfyui-saveimage-plus", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-03T14:16:28.152473Z", + "description": "a comfyui custom node, which can select value from inputs", + "downloads": 1261, + "github_stars": 2, + "icon": "", + "id": "comfyui-select-any", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-03T14:16:29.611682Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "bdee9cb4-22b9-4eee-8aed-18b3f11bde5e", + "node_id": "comfyui-select-any", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-Select-Any", + "publisher": { + "createdAt": "2024-07-03T14:02:44.45997Z", + "description": "", + "id": "hwhaocool", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hwhaocool/ComfyUI-Select-Any", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-23T19:20:02.890755Z", + "description": "EmbeddingsNameLoader, EmbendingList", + "downloads": 2117, + "github_stars": 2, + "icon": "", + "id": "comfyui-embeddings-tools", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-23T19:20:03.174662Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "964b741c-2ed6-4839-b322-a3f2400aa4aa", + "node_id": "comfyui-embeddings-tools", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-Embeddings-Tools", + "publisher": { + "createdAt": "2024-06-20T11:32:04.855532Z", + "description": "", + "id": "zedarkadam", + "logo": "", + "members": [], + "name": "OLEG", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ZeDarkAdam/ComfyUI-Embeddings-Tools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-01T07:35:07.187904Z", + "description": "CRT-Nodes is a collection of custom nodes for ComfyUI", + "downloads": 6239, + "github_stars": 6, + "icon": "", + "id": "crt-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-16T20:41:11.722071Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3b43a18a-e197-45f9-b2f9-d2ec760ccdc4", + "node_id": "crt-nodes", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.5.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "CRT-Nodes", + "publisher": { + "createdAt": "2024-10-01T06:07:55.799711Z", + "description": "", + "id": "crt", + "logo": "", + "members": [], + "name": "crt-nodes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/plugcrypt/CRT-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-07T08:23:11.165999Z", + "description": "ComfyUI-Benripack is an extension for ComfyUI that provides a CharacterPipe node to simplify workflows, a 3d model loader and an AnimationExtractor to generate keyframe tilesets from animated 3d-models", + "downloads": 1542, + "github_stars": 3, + "icon": "", + "id": "comfyui-benripack", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-07T09:06:21.138783Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "75621c13-ec09-4803-bd8d-c349bdf312d1", + "node_id": "comfyui-benripack", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Benripack", + "publisher": { + "createdAt": "2024-09-07T08:13:50.987664Z", + "description": "", + "id": "blackcodetavern", + "logo": "", + "members": [], + "name": "blackcodetavern", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/blackcodetavern/ComfyUI-Benripack", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-29T03:26:33.743987Z", + "description": "This extension is a node that directly expands the functionality of KSampler, rather than being in the form of a custom node. [w/Workflows created using this feature are not compatible with other users.]", + "downloads": 2631, + "github_stars": 10, + "icon": "", + "id": "comfyui-restart-sampler", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-29T03:26:35.489603Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "dbf5175c-c383-453d-9d87-e021203562da", + "node_id": "comfyui-restart-sampler", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"GNU General Public License v3.0\"}", + "name": "ComfyUI-Restart-Sampler", + "publisher": { + "createdAt": "2024-06-29T02:56:17.137114Z", + "description": "", + "id": "licyk", + "logo": "", + "members": [], + "name": "licyk", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/licyk/ComfyUI-Restart-Sampler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-29T22:35:21.476211Z", + "description": "A ComfyUI Custom Node that enables arrow key canvas navigation with a pan speed setting.", + "downloads": 1214, + "github_stars": 2, + "icon": "https://avatars.githubusercontent.com/u/23065574", + "id": "comfyui-arrow-key-canvas-navigation", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-29T22:35:23.205978Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a935a395-6b1c-484a-9ab5-bd2833c342f7", + "node_id": "comfyui-arrow-key-canvas-navigation", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Arrow-Key-Canvas-Navigation", + "publisher": { + "createdAt": "2024-09-29T21:32:29.743048Z", + "description": "", + "id": "codecringebinge", + "logo": "", + "members": [], + "name": "codecringebinge", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/codecringebinge/ComfyUI-Arrow-Key-Canvas-Navigation", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-28T22:07:29.979492Z", + "description": "This ComfyUI custom node enhances the standard CLIP text encoding functionality by integrating ethnicity, hairstyle, and expression selection into the positive prompt. Designed to work seamlessly with ComfyUI, this node allows you to influence the conditioning process by dynamically appending descriptive modifiers. Users can choose a specific ethnicity, hairstyle, or expression, or opt for a random selection that picks an option from a predefined CSV list.", + "downloads": 1685, + "github_stars": 2, + "icon": "icon.svg", + "id": "ethnicity_hairstyle_clip_encoder", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-28T22:07:30.400658Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "124f28b7-d573-4bb2-8968-9d00c17446f2", + "node_id": "ethnicity_hairstyle_clip_encoder", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-ethnicity_hairstyle_clip_encoder", + "publisher": { + "createdAt": "2025-02-28T14:41:16.129654Z", + "description": "", + "id": "ajbergh", + "logo": "", + "members": [], + "name": "Adam Bergh", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ajbergh/comfyui-ethnicity_hairstyle_clip_encoder", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-23T12:57:42.554659Z", + "description": "Utility nodes for interacting with images and image sizes", + "downloads": 1043, + "github_stars": 21, + "icon": "", + "id": "comfy_felsirnodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-31T14:26:16.093594Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1cf058ba-d155-4475-bf47-87bda517a79c", + "node_id": "comfy_felsirnodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Felsir-image-tools", + "publisher": { + "createdAt": "2024-08-23T11:59:07.314459Z", + "description": "", + "id": "felsir", + "logo": "", + "members": [], + "name": "Felsir", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Felsir/Comfy_Felsirnodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-03T18:48:26.75413Z", + "description": "A set of ComfyUI nodes for GPC Storage access", + "downloads": 1233, + "github_stars": 2, + "icon": "", + "id": "gcp_storage_tools", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-03T18:48:30.30833Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5ecd2454-5a8b-444e-81b1-d265abe0407f", + "node_id": "gcp_storage_tools", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-GCP_Storage_tools", + "publisher": { + "createdAt": "2025-01-03T18:08:23.767745Z", + "description": "", + "id": "ahernandezmiro", + "logo": "", + "members": [], + "name": "Aleix Hernandez Miro", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ahernandezmiro/ComfyUI-GCP_Storage_tools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-24T20:04:36.844452Z", + "description": "The primary goal of these nodes is to provide a way to access files generated by ComfyUI workflows, local to the machine running ComfyUI. These nodes should always return an updated list of files when triggered.", + "downloads": 1636, + "github_stars": 2, + "icon": "", + "id": "comfyui-loadfiles", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-31T23:59:57.162798Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "8633e1f3-18f2-4548-aefe-9d60a24e0702", + "node_id": "comfyui-loadfiles", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-LoadFiles", + "publisher": { + "createdAt": "2024-08-24T17:51:54.197962Z", + "description": "", + "id": "daryltucker", + "logo": "", + "members": [], + "name": "Daryl Tucker", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/daryltucker/ComfyUI-LoadFiles", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-26T17:31:43.1023Z", + "description": "A collection of nodes for rerouting multiple I/O lines together in a bus.", + "downloads": 1398, + "github_stars": 2, + "icon": "", + "id": "comfyui-bus-plugin", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-22T18:47:55.513007Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "7cb6d400-3e4e-4581-b604-f1e1102afa0b", + "node_id": "comfyui-bus-plugin", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-bus-plugin", + "publisher": { + "createdAt": "2024-06-26T17:10:14.317571Z", + "description": "", + "id": "rhdunn", + "logo": "", + "members": [], + "name": "Reece Dunn", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/rhdunn/comfyui-bus-plugin", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-23T20:24:20.906217Z", + "description": "first 'real' push", + "downloads": 1233, + "github_stars": 2, + "icon": "", + "id": "comfyui-qaishelper", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-23T20:24:21.192225Z", + "dependencies": [ + "numpy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "12a8c786-536d-4a76-8a66-29ca43c5b531", + "node_id": "comfyui-qaishelper", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-QaisHelper", + "publisher": { + "createdAt": "2024-05-23T19:40:16.698642Z", + "description": "", + "id": "qais-malkawi", + "logo": "", + "members": [], + "name": "Qais Malkawi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/QaisMalkawi/ComfyUI-QaisHelper", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-10T00:10:59.578197Z", + "description": "Nodes: List Combine with custom separator, Multiline String, Prompt Minimizer, Quality Tag Prepend, Tavern Card Info, Tavern Card Creation", + "downloads": 1414, + "github_stars": 0, + "icon": "", + "id": "zer0gear-comfy-utilities", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-26T19:34:19.709833Z", + "dependencies": [ + "tiktoken" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d5bff567-fc22-4bbb-b9bb-385d1842ffef", + "node_id": "zer0gear-comfy-utilities", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "3.2.3" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "zer0ComfyUtilities", + "publisher": { + "createdAt": "2024-11-10T00:00:50.713668Z", + "description": "", + "id": "zer0gear", + "logo": "", + "members": [], + "name": "zer0gear", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zer0thgear/zer0-comfy-utils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-22T21:11:26.478975Z", + "description": "Easy prompting for generation of endless random art pieces and photographs!", + "downloads": 8083, + "github_stars": 256, + "icon": "", + "id": "comfyui_dagthomas", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-22T21:11:26.778959Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "7b0a26bc-f54e-4e3c-989e-94814919bf10", + "node_id": "comfyui_dagthomas", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "comfyui_dagthomas", + "publisher": { + "createdAt": "2024-05-22T21:03:37.181571Z", + "description": "", + "id": "dagthomas", + "logo": "", + "members": [], + "name": "dagthomas", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dagthomas/comfyui_dagthomas", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-08T12:22:54.701676Z", + "description": "A custom node that returns the generation time of the KSampler. Intended for benchmarking or debugging.", + "downloads": 1741, + "github_stars": 2, + "icon": "https://raw.githubusercontent.com/my-opencode/ComfyUI_KSamplerTimer/main/logo-small.png", + "id": "comfyui_ksamplertimer", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-31T14:13:42.025255Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "f4b3a9a9-4cae-424e-a06c-cbf48a6fa569", + "node_id": "comfyui_ksamplertimer", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_KSamplerTimer", + "publisher": { + "createdAt": "2024-07-08T09:44:53.071042Z", + "description": "", + "id": "industrialvectors", + "logo": "", + "members": [], + "name": "Industrial Vectors", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/my-opencode/ComfyUI_KSamplerTimer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-18T17:22:33.049193Z", + "description": "Custom nodes that preview image with a magnifier.", + "downloads": 1419, + "github_stars": 2, + "icon": "", + "id": "comfyui_preview_magnifier", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-31T13:59:33.565341Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "799d8ad8-7693-4f8d-ae9d-99fab86e5ee5", + "node_id": "comfyui_preview_magnifier", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Preview_Magnifier", + "publisher": { + "createdAt": "2024-07-18T17:13:50.602211Z", + "description": "", + "id": "ycchanau", + "logo": "", + "members": [], + "name": "YC", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ycchanau/ComfyUI_Preview_Magnifier", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-10T20:34:20.864774Z", + "description": "Slightly better random prompt generation tools that allow combining and picking prompts from both file and text input sources.", + "downloads": 10565, + "github_stars": 8, + "icon": "", + "id": "darkprompts", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-10T20:37:46.5004Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "7ae2bb7a-6534-4db8-b7bc-b496c2e4dde3", + "node_id": "darkprompts", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "darkprompts", + "publisher": { + "createdAt": "2024-05-23T19:40:08.933717Z", + "description": "", + "id": "darkpixel", + "logo": "", + "members": [], + "name": "Aaron C. de Bruyn", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/darkpixel/darkprompts", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-01T04:41:46.797395Z", + "description": "Preview images of LoRA files and edit their associated JSON files.", + "downloads": 754, + "github_stars": 4, + "icon": "", + "id": "lorainfo-sidebar", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-30T18:30:13.551826Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3f0788ca-8596-4829-b279-fd6de4d1bd42", + "node_id": "lorainfo-sidebar", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "lorainfo-sidebar", + "publisher": { + "createdAt": "2025-05-01T03:54:35.208884Z", + "description": "", + "id": "somesomebody", + "logo": "", + "members": [], + "name": "somesomebody", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/somesomebody/lorainfo-sidebar", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-31T23:34:12.827171Z", + "description": "Simple custom node pack for nodes I use in my workflows. Includes Dilate Mask Linear for animating masks.", + "downloads": 2493, + "github_stars": 26, + "icon": "https://i.imgur.com/aiqQI7U.png", + "id": "comfyui-akatz-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-05T00:47:17.741086Z", + "dependencies": [ + "numpy", + "torch", + "opencv-python", + "pydub" + ], + "deprecated": false, + "downloadUrl": "", + "id": "78f794fe-bacd-4d3f-991e-d9346327bf0d", + "node_id": "comfyui-akatz-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.11.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-AKatz-Nodes", + "publisher": { + "createdAt": "2024-07-31T23:17:26.625774Z", + "description": "", + "id": "akatz", + "logo": "", + "members": [], + "name": "Akatz", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/akatz-ai/ComfyUI-AKatz-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-01T05:37:30.527835Z", + "description": "Provide utilities for batch based video generation workflows (s.a. AnimateDiff and Stable Video Diffusion).", + "downloads": 11907, + "github_stars": 72, + "icon": "", + "id": "comfyui-dream-video-batches", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-23T10:29:02.849171Z", + "dependencies": [ + "imageio", + "pilgram", + "scipy", + "numpy<2.0,>=1.18", + "torchvision", + "evalidate" + ], + "deprecated": false, + "downloadUrl": "", + "id": "93f25948-7c5c-425f-b1f8-5801cfc20d64", + "node_id": "comfyui-dream-video-batches", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-dream-video-batches", + "publisher": { + "createdAt": "2024-07-01T05:05:05.064583Z", + "description": "", + "id": "altkeyproject", + "logo": "", + "members": [], + "name": "Alt Key Project", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alt-key-project/comfyui-dream-video-batches", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-19T05:35:02.962383Z", + "description": "A collection of custom nodes for ComfyUI that enable the creation of various ASCII art effects, from static images to complex, colorized typing animations and video conversions.", + "downloads": 437, + "github_stars": 1, + "icon": "", + "id": "asciiartnode", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-19T05:35:03.360598Z", + "dependencies": [ + "# Requirements for ComfyUI_ASCIINodes", + "# Pillow is used for image manipulation, text rendering, and font handling.", + "Pillow>=9.0.0", + "# torch and numpy are expected to be provided by the ComfyUI environment." + ], + "deprecated": false, + "downloadUrl": "", + "id": "193ddfb1-5a4a-458d-8b51-7d4af0551e01", + "node_id": "asciiartnode", + "status": "NodeVersionStatusPending", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ASCIIArtNode", + "publisher": { + "createdAt": "2025-05-19T05:13:46.492265Z", + "description": "", + "id": "ctrlaltart", + "logo": "", + "members": [], + "name": "CtrlAltArt", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LamEmil/ComfyUI_ASCIIArtNode", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-27T00:54:18.399857Z", + "description": "ComfyUI Google Image Search Node - Search and retrieve images from Google", + "downloads": 267, + "github_stars": 3, + "icon": "", + "id": "google_image_search", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-27T00:54:18.824041Z", + "dependencies": [ + "oauth2client<4.0.0", + "google-api-python-client>=2.0.0", + "requests>=2.0.0", + "Pillow>=9.0.0", + "torch>=2.0.0", + "numpy>=1.0.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "dee92a4f-d7bd-4cd2-886c-2c97ff1dda01", + "node_id": "google_image_search", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Google-Image-Search", + "publisher": { + "createdAt": "2025-05-27T00:09:36.657516Z", + "description": "", + "id": "gabe-init", + "logo": "", + "members": [], + "name": "Gabe", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gabe-init/ComfyUI-Google-Image-Search", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-15T09:57:10.366083Z", + "description": "A ComfyUI node that breaks closed loops in masks to prevent inpainting models from modifying enclosed regions", + "downloads": 334, + "github_stars": 1, + "icon": "https://github.com/krmahil/comfyui-hollow-preserve/blob/main/examples/ComfyUI_00005_.png", + "id": "comfyui-hollow-preserve", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-15T09:57:10.862537Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "02e04d22-7574-4139-9d84-6bd6c05f3fb1", + "node_id": "comfyui-hollow-preserve", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.0" + }, + "license": "{\"text\": \"MIT\"}", + "name": "Hollow Preserve", + "publisher": { + "createdAt": "2025-05-15T07:34:41.870636Z", + "description": "", + "id": "mahilkr", + "logo": "", + "members": [], + "name": "mahilkr", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/krmahil/comfyui-hollow-preserve", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-23T09:08:23.719307Z", + "description": "OpenVINO node is designed for optimizing the performance of model inference in ComfyUI by leveraging Intel OpenVINO toolkits. It can support running model on Intel CPU, GPU and NPU device.", + "downloads": 1107, + "github_stars": 19, + "icon": "https://avatars.githubusercontent.com/u/55443902?s=200&v=4", + "id": "comfyui-openvino", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-10T01:18:50.610405Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "aea94979-f28e-4a63-82c0-f279496f1b6e", + "node_id": "comfyui-openvino", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-OpenVINO", + "publisher": { + "createdAt": "2025-05-23T03:26:10.087533Z", + "description": "", + "id": "ethanyang", + "logo": "", + "members": [], + "name": "OpenVINO", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/openvino-dev-samples/comfyui_openvino", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-25T00:27:52.245682Z", + "description": "Two powerful custom nodes for ComfyUI to create stunning before-and-after transition videos. These nodes are designed for visual comparisons, transformations, and creative effects, supporting both standard and depth map-based transitions.", + "downloads": 308, + "github_stars": 1, + "icon": "https://i.ibb.co/DP66DXhB/Sam-Seen-logo-dark.png", + "id": "ComfyUI_SSBeforeAfterNode", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-25T02:25:40.044798Z", + "dependencies": [ + "torch", + "numpy", + "Pillow", + "opencv-python", + "imageio" + ], + "deprecated": false, + "downloadUrl": "", + "id": "40ede882-1c28-4249-9a5d-eade9faac6de", + "node_id": "ComfyUI_SSBeforeAfterNode", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.3" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "SSBeforeAfterNode", + "publisher": { + "createdAt": "2024-06-30T03:39:39.961106Z", + "description": "", + "id": "samseen", + "logo": "", + "members": [], + "name": "SamSeen", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MrSamSeen/ComfyUI_SSBeforeAfterNode", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-16T06:40:43.311592Z", + "description": "NODES:Google Translate", + "downloads": 3436, + "github_stars": 3, + "icon": "", + "id": "comfyui-googletrans", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-20T04:48:42.792831Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "38683838-f56c-42b1-b3a1-3b329ee3666c", + "node_id": "comfyui-googletrans", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.1" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI-googletrans", + "publisher": { + "createdAt": "2024-10-16T06:01:26.956431Z", + "description": "", + "id": "sweetndata", + "logo": "", + "members": [], + "name": "Sweetndata", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sweetndata/ComfyUI-googletrans", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-24T23:49:26.569262Z", + "description": "Automatic background removal and transparency generation for ComfyUI", + "downloads": 429, + "github_stars": 5, + "icon": "https://raw.githubusercontent.com/Limbicnation/ComfyUI-TransparencyBackgroundRemover/main/icon.png", + "id": "ComfyUI-TransparencyBackgroundRemover", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-04T00:29:10.075908Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "eb5488db-74fe-48b2-b461-c51c0126b0c4", + "node_id": "ComfyUI-TransparencyBackgroundRemover", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Transparency Background Remover", + "publisher": { + "createdAt": "2024-06-18T23:56:15.482553Z", + "description": "", + "id": "limbicnation", + "logo": "", + "members": [], + "name": "Limbicnation", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Limbicnation/ComfyUI-TransparencyBackgroundRemover", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-23T09:31:18.636175Z", + "description": "Spark-TTS controllable synthesis and voice cloning. \u7528\u4e8e\u53ef\u63a7\u8bed\u97f3\u5408\u6210\u548c\u8bed\u97f3\u514b\u9686\uff0c\u57fa\u4e8e\u5b98\u65b9 Spark-TTS \u5e93\u7684\u6838\u5fc3\u903b\u8f91\u5b9e\u73b0\u3002.", + "downloads": 433, + "github_stars": 2, + "icon": "", + "id": "spark_tts", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-10T06:16:57.564028Z", + "dependencies": [ + "einops>=0.8.1", + "einx>=0.3.0", + "numpy>=2.2.3", + "omegaconf>=2.3.0", + "packaging>=24.2", + "safetensors>=0.5.2", + "soundfile>=0.12.1", + "soxr>=0.5.0.post1", + "torch>=2.5.1", + "torchaudio>=2.5.1", + "tqdm>=4.66.5", + "transformers>=4.46.2", + "# ComfyUI environment usually handles torch and torchaudio.", + "# Transformers is a key dependency.", + "# omegaconf, soundfile, soxr are used by SparkTTS's internal utils." + ], + "deprecated": false, + "downloadUrl": "", + "id": "e01809d7-07ea-4c1b-8c2a-24bcff37b636", + "node_id": "spark_tts", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Spark_TTS", + "publisher": { + "createdAt": "2025-04-09T01:54:01.815357Z", + "description": "", + "id": "kerry", + "logo": "", + "members": [], + "name": "Kerry", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/KERRY-YUAN/ComfyUI_Spark_TTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-14T22:58:00.430869Z", + "description": "[WIP]Custom nodes for handling, inspecting, modifying and creating various model files.", + "downloads": 636, + "github_stars": 1, + "icon": "https://github.com/silveroxides/ComfyUI-ModelUtils/raw/refs/heads/main/assets/tools-icon.svg", + "id": "ComfyUI-ModelUtils", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-14T22:58:00.836569Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b9625d23-8dc2-4de9-bcd5-5e7ea6240f13", + "node_id": "ComfyUI-ModelUtils", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Model Utility Toolkit", + "publisher": { + "createdAt": "2024-09-17T18:22:05.116266Z", + "description": "", + "id": "silveroxides", + "logo": "", + "members": [], + "name": "silveroxides", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/silveroxides/ComfyUI-ModelUtils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-27T03:23:47.84939Z", + "description": "Just like when your pizza is ready and the oven goes 'Ding! \ud83c\udf55', this plugin lets your ComfyUI notify you when your AI creations are done baking!\nA ComfyUI custom node that sends you a friendly 'ding-dong' notification when your workflows are fully cooked and ready to serve. No more staring at the screen waiting - let the AI kitchen tell you when dinner's ready! \ud83d\udc68\u200d\ud83c\udf73", + "downloads": 2931, + "github_stars": 77, + "icon": "https://tikolu.net/emojimix/emojis/231a.svg", + "id": "comfyui-pc-ding-dong", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-27T03:23:51.604982Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "f8776041-5a37-49c5-a21a-c2e0175d08ba", + "node_id": "comfyui-pc-ding-dong", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-PC-ding-dong", + "publisher": { + "createdAt": "2024-12-25T10:18:44.733898Z", + "description": "", + "id": "lgldl", + "logo": "", + "members": [], + "name": "lgldl", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lgldlk/ComfyUI-PC-ding-dong", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-28T08:30:11.300317Z", + "description": "A semi-random prompt generator for danbooru tags that works alongside your character prompt, allowing you to put your waifu in many scenarios. (for Illustrious/NoobAI/Pony)", + "downloads": 1951, + "github_stars": 5, + "icon": "", + "id": "raffle", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-28T08:30:11.720611Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "049ad0cf-dc63-46b6-addd-3b2fb1e74f66", + "node_id": "raffle", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Raffle", + "publisher": { + "createdAt": "2025-03-28T08:22:42.96364Z", + "description": "", + "id": "rainlizard", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/rainlizard/ComfyUI-Raffle", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-03T18:09:22.124579Z", + "description": "collection of SVG manipulation tools", + "downloads": 521, + "github_stars": 6, + "icon": "", + "id": "SVG-Suite", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-03T18:09:22.50309Z", + "dependencies": [ + "vtracer>=0.0.8", + "PyMuPDF>=1.20.0", + "numpy>=1.20.0", + "pillow>=9.0.0", + "torch>=1.7.0", + "SVGCompress>=0.13", + "svg.path", + "Shapely", + "rdp", + "Scour", + "lxml" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a4892d8e-5b4a-44ab-81a0-c8b2d4a49b87", + "node_id": "SVG-Suite", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_SVG-Suite", + "publisher": { + "createdAt": "2024-08-27T08:12:40.017079Z", + "description": "", + "id": "driftjohnson", + "logo": "", + "members": [], + "name": "Drift Johnson", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MushroomFleet/svg-suite", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-29T03:11:09.88481Z", + "description": "ComfyUI nodes for (V)LLM Structured Outputs", + "downloads": 1223, + "github_stars": 1, + "icon": "https://example.com/icon.png", + "id": "comfyui-structured-outputs", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-02T03:58:16.149719Z", + "dependencies": [ + "aiohappyeyeballs==2.4.4", + "aiohttp==3.11.11", + "aiosignal==1.3.2", + "annotated-types==0.7.0", + "anyio==4.8.0", + "attrs==25.1.0", + "certifi==2024.12.14", + "charset-normalizer==3.4.1", + "click==8.1.8", + "colorama==0.4.6 ; sys_platform == 'win32'", + "distro==1.9.0", + "docstring-parser==0.16", + "filelock==3.17.0", + "frozenlist==1.5.0", + "fsspec==2024.12.0", + "h11==0.14.0", + "httpcore==1.0.7", + "httpx==0.28.1", + "idna==3.10", + "instructor==1.7.2", + "jinja2==3.1.5", + "jiter==0.8.2", + "markdown-it-py==3.0.0", + "markupsafe==3.0.2", + "mdurl==0.1.2", + "mpmath==1.3.0", + "multidict==6.1.0", + "networkx==3.4.2", + "numpy==2.2.2", + "nvidia-cublas-cu12==12.4.5.8 ; platform_machine == 'x86_64' and sys_platform == 'linux'", + "nvidia-cuda-cupti-cu12==12.4.127 ; platform_machine == 'x86_64' and sys_platform == 'linux'", + "nvidia-cuda-nvrtc-cu12==12.4.127 ; platform_machine == 'x86_64' and sys_platform == 'linux'", + "nvidia-cuda-runtime-cu12==12.4.127 ; platform_machine == 'x86_64' and sys_platform == 'linux'", + "nvidia-cudnn-cu12==9.1.0.70 ; platform_machine == 'x86_64' and sys_platform == 'linux'", + "nvidia-cufft-cu12==11.2.1.3 ; platform_machine == 'x86_64' and sys_platform == 'linux'", + "nvidia-curand-cu12==10.3.5.147 ; platform_machine == 'x86_64' and sys_platform == 'linux'", + "nvidia-cusolver-cu12==11.6.1.9 ; platform_machine == 'x86_64' and sys_platform == 'linux'", + "nvidia-cusparse-cu12==12.3.1.170 ; platform_machine == 'x86_64' and sys_platform == 'linux'", + "nvidia-nccl-cu12==2.21.5 ; platform_machine == 'x86_64' and sys_platform == 'linux'", + "nvidia-nvjitlink-cu12==12.4.127 ; platform_machine == 'x86_64' and sys_platform == 'linux'", + "nvidia-nvtx-cu12==12.4.127 ; platform_machine == 'x86_64' and sys_platform == 'linux'", + "openai==1.60.2", + "pillow==11.1.0", + "propcache==0.2.1", + "pydantic==2.10.6", + "pydantic-core==2.27.2", + "pygments==2.19.1", + "python-dotenv==1.0.1", + "requests==2.32.3", + "rich==13.9.4", + "setuptools==75.8.0", + "shellingham==1.5.4", + "sniffio==1.3.1", + "sympy==1.13.1", + "tenacity==9.0.0", + "torch==2.5.1", + "torchvision==0.20.1", + "tqdm==4.67.1", + "triton==3.1.0 ; python_full_version < '3.13' and platform_machine == 'x86_64' and sys_platform == 'linux'", + "typer==0.15.1", + "typing-extensions==4.12.2", + "urllib3==2.3.0", + "yarl==1.18.3" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6b638f63-0aa2-4c53-8d90-b5a9b473b0e9", + "node_id": "comfyui-structured-outputs", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.2.0" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI Structured Outputs", + "publisher": { + "createdAt": "2025-01-29T02:45:25.802133Z", + "description": "", + "id": "tigeryy2", + "logo": "", + "members": [], + "name": "Tiger", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tigeryy2/comfyui-structured-outputs", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-07T08:19:27.210484Z", + "description": "Based on the original SaveImage node from ComfyUI This ComfyUI node provides functionality to save images in PNG format while simultaneously generating and returning their Base64 encoded strings. This is particularly useful for applications that require image data to be transmitted as strings, such as web applications.", + "downloads": 576, + "github_stars": 1, + "icon": "", + "id": "images_base64", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-13T07:03:41.079244Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "63b26216-1d42-496f-b189-18893315ec73", + "node_id": "images_base64", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "images_base64", + "publisher": { + "createdAt": "2025-05-07T07:52:45.232273Z", + "description": "", + "id": "grailgreg", + "logo": "", + "members": [], + "name": "GrailGreg", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/GrailGreg/images_base64", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-12T15:41:29.794688Z", + "description": "Nodes to generate a pecha-kucha presentation in ComfyUI", + "downloads": 310, + "github_stars": 1, + "icon": "https://www.pechakucha.com/static/media/PK_logo_wide_darkmode.b18e1f231e00fe884e4169f95cd0dc26.svg", + "id": "ComfyUI-PechaKucha", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-12T15:41:30.196628Z", + "dependencies": [ + "python-pptx >= 1.0.2" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c891cd02-0139-4575-8491-e97913c02abc", + "node_id": "ComfyUI-PechaKucha", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Pecha Kucha", + "publisher": { + "createdAt": "2025-05-12T15:27:35.301291Z", + "description": "", + "id": "lerignoux", + "logo": "", + "members": [], + "name": "Lerignoux", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lerignoux/ComfyUI-PechaKucha.git", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-28T06:47:13.488314Z", + "description": "A collection of ComfyUI custom nodes designed for image batch processing, per-index image operations, and AWS integration using EventBridge.", + "downloads": 731, + "github_stars": 2, + "icon": "https://avatars.githubusercontent.com/u/53106728?v=4", + "id": "foreach", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-28T06:47:14.3025Z", + "dependencies": [ + "pillow", + "boto3", + "opencv-python-headless", + "numpy", + "# torch" + ], + "deprecated": true, + "downloadUrl": "", + "id": "9ea277d2-609d-4382-ad0f-64c9234250ac", + "node_id": "foreach", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfy_ForEach", + "publisher": { + "createdAt": "2025-04-28T06:33:58.01535Z", + "description": "", + "id": "pupba", + "logo": "", + "members": [], + "name": "Pupba", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pupba/Comfy_ForEach", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-17T06:39:36.698141Z", + "description": "Flow is a custom node designed to provide a more user-friendly interface for ComfyUI by acting as an alternative user interface for running workflows. It is not a replacement for workflow creation.\nFlow is currently in the early stages of development, so expect bugs and ongoing feature enhancements. With your support and feedback, Flow will settle into a steady stream.", + "downloads": 6052, + "github_stars": 551, + "icon": "", + "id": "comfyui-disty-flow", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-17T06:39:40.563317Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5e477c9d-ac12-4337-8dc9-d5e653c7fe4c", + "node_id": "comfyui-disty-flow", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-disty-Flow", + "publisher": { + "createdAt": "2024-10-17T05:24:34.737364Z", + "description": "", + "id": "disty", + "logo": "", + "members": [], + "name": "diSty", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/diStyApps/ComfyUI-disty-Flow", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-14T08:25:36.781319Z", + "description": "ComfyUI Node that uses browser side code to access the webcam and display the video feed in a node.", + "downloads": 1953, + "github_stars": 4, + "icon": "./workflow-example.png", + "id": "comfyui-webcam-node", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-14T08:25:37.104392Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "269df03a-1f3c-4996-bd7a-a7ad01104efc", + "node_id": "comfyui-webcam-node", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "comfyui-webcam-node", + "publisher": { + "createdAt": "2024-06-14T08:17:12.997667Z", + "description": "", + "id": "uetuluk", + "logo": "", + "members": [], + "name": "Utku Tuluk", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/uetuluk/comfyui-webcam-node", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-27T01:08:35.766472Z", + "description": "This is a node to generate new image that combine 2 objects from different scene.", + "downloads": 1188, + "github_stars": 1, + "icon": "", + "id": "objectfusion_comfyui_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-27T01:08:39.582352Z", + "dependencies": [ + "einops==0.8.0", + "spandrel==0.3.4", + "kornia==0.7.3", + "nltk==3.9.1", + "ollama==0.3.1", + "openai==1.42.0", + "opencv_python==4.8.0.76", + "opencv_python_headless==4.10.0.84", + "Pillow==10.4.0", + "psutil==5.9.0", + "PyYAML==6.0.2", + "Requests==2.31.0", + "safetensors==0.4.4", + "scipy==1.14.1", + "sentencepiece==0.2.0", + "scikit-image==0.24.0", + "supervision==0.22.0", + "torch==2.4.0", + "torchaudio==2.4.0", + "torchsde==0.2.6", + "torchvision==0.19.0", + "tqdm==4.66.4", + "transformers==4.44.0", + "ultralytics==8.2.78", + "websocket_client==1.8.0", + "xformers==0.0.27.post2", + "inference-gpu[yolo-world]==0.16.2", + "bitsandbytes==0.43.3", + "accelerate==0.33.0", + "TensorImgUtils", + "timm>=1.0.7" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1997fd3a-c887-44af-acf6-bb0cc4d94b1c", + "node_id": "objectfusion_comfyui_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ObjectFusion_ComfyUI_nodes", + "publisher": { + "createdAt": "2024-08-27T00:54:01.931017Z", + "description": "", + "id": "ducido", + "logo": "", + "members": [], + "name": "Ducido", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ducido/ObjectFusion_ComfyUI_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-22T08:42:26.622121Z", + "description": "A Custom Node for ComfyUi to add an interactive Radar graph to visually control weights.", + "downloads": 398, + "github_stars": 1, + "icon": "", + "id": "ComfyUi-RadarWeightNode", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-22T08:42:27.041615Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "2437c96e-e7a4-4c4d-b5dd-bbcff0a0b1a6", + "node_id": "ComfyUi-RadarWeightNode", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "Radar Weights Node", + "publisher": { + "createdAt": "2025-04-22T07:02:57.766991Z", + "description": "", + "id": "funnyfinger", + "logo": "", + "members": [], + "name": "FunnyFinger", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/FunnyFinger/ComfyUi-RadarWeightNode", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-03T03:17:00.184591Z", + "description": "A collection of custom nodes for ComfyUI that allow working with LoRAs and trigger words by index selection.", + "downloads": 1306, + "github_stars": 3, + "icon": "", + "id": "ComfyUI-loras-loader", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-03T03:17:00.56741Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "abb7fe36-6d76-41bc-bb4a-94a8b000cf9b", + "node_id": "ComfyUI-loras-loader", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.1" + }, + "license": "{\"text\": \"MIT\"}", + "name": "loras-loader", + "publisher": { + "createdAt": "2025-04-03T03:10:16.954496Z", + "description": "", + "id": "hubentu", + "logo": "", + "members": [], + "name": "hubentu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hubentu/ComfyUI-loras-loader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-19T15:13:40.580229Z", + "description": "This custom node allow you to upload result images to imgbb.", + "downloads": 1319, + "github_stars": 1, + "icon": "", + "id": "comfyui_saveimage_imgbb", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-23T10:50:11.029602Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3abaf404-227a-4dc3-88f5-652218332d03", + "node_id": "comfyui_saveimage_imgbb", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.52.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "Comfyui_saveimage_imgbb", + "publisher": { + "createdAt": "2024-09-19T15:00:49.27075Z", + "description": "", + "id": "revirevy2", + "logo": "", + "members": [], + "name": "revirevy", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/revirevy/Comfyui_saveimage_imgbb", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-01T07:33:00.434684Z", + "description": "Simple checkpoint loader for TaiyiXL", + "downloads": 870, + "github_stars": 10, + "icon": "", + "id": "comfyui-taiyi", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-01T07:33:02.197549Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "0391241d-0cea-4094-b302-9f2bd6dcd0d9", + "node_id": "comfyui-taiyi", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Taiyi", + "publisher": { + "createdAt": "2024-05-24T23:32:29.280501Z", + "description": "", + "id": "layer-norm", + "logo": "", + "members": [], + "name": "Faxuan Cai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Layer-norm/ComfyUI-Taiyi", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-11T15:10:14.802713Z", + "description": "Send generated image to PushOver API webhook choose for only notification or add the image result as well. It can connect to anything if you just want a notification somewhere in your workflow", + "downloads": 354, + "github_stars": 1, + "icon": "https://github.com/MijnSpam/UploadToPushOver/blob/main/images/icon.png?raw=true", + "id": "UploadToPushOver", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-31T09:32:58.101547Z", + "dependencies": [ + "numpy", + "requests", + "Pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "20056879-e1c9-43e8-991e-268c3539482a", + "node_id": "UploadToPushOver", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Upload to PushOver", + "publisher": { + "createdAt": "2025-05-11T14:10:55.763353Z", + "description": "", + "id": "kbrambo", + "logo": "", + "members": [], + "name": "KB comfy", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MijnSpam/UploadToPushOver", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-17T18:42:12.921191Z", + "description": "Bridge between ComfyUI and blender ComfyUI-BlenderAI-node addon.", + "downloads": 4933, + "github_stars": 48, + "icon": "", + "id": "comfy-cup", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-19T02:31:25.692985Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "dff6868b-2d30-40c9-8955-0349344db3c0", + "node_id": "comfy-cup", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "LICENSE", + "name": "ComfyUI-CUP", + "publisher": { + "createdAt": "2024-05-17T16:26:45.370921Z", + "description": "", + "id": "aigodlike", + "logo": "", + "members": [], + "name": "AIGODLIKE", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIGODLIKE/ComfyUI-CUP", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-06T14:13:21.458249Z", + "description": "This is a plugin for ComfyUI that adds new Util Nodes and Nodes for easier image creation and sharing.", + "downloads": 1613, + "github_stars": 1, + "icon": "./assets/img/Logo.png", + "id": "comfyui-x-rework", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-12T18:08:19.584877Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ee215f8d-e3e9-4806-b9d7-a29985cfd240", + "node_id": "comfyui-x-rework", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.4.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-X-Rework", + "publisher": { + "createdAt": "2024-11-05T14:46:21.005049Z", + "description": "", + "id": "blonicx", + "logo": "", + "members": [], + "name": "Blonicx", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Blonicx/ComfyUI-X-Rework", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-05T16:00:26.166944Z", + "description": "A custom node that makes prompt editing easier by allowing phrase switching with just mouse operations.", + "downloads": 440, + "github_stars": 5, + "icon": "", + "id": "ComfyUI-PromptPalette", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-27T13:40:12.205179Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "09d24249-56e1-4e25-a533-29b8dab194b8", + "node_id": "ComfyUI-PromptPalette", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-PromptPalette", + "publisher": { + "createdAt": "2025-05-05T15:15:30.672985Z", + "description": "", + "id": "kambara", + "logo": "", + "members": [], + "name": "kambara", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kambara/ComfyUI-PromptPalette", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-08T10:49:19.519026Z", + "description": "A ComfyUI extension that improves panning and zooming on trackpads and with the mouse wheel", + "downloads": 1186, + "github_stars": 2, + "icon": "", + "id": "comfyui-trackandwheel", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-08T10:49:23.009458Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "84b8fef4-767e-496d-8268-638f9e1da2ed", + "node_id": "comfyui-trackandwheel", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-TrackAndWheel", + "publisher": { + "createdAt": "2025-01-07T13:13:33.736384Z", + "description": "", + "id": "gremlation", + "logo": "", + "members": [], + "name": "Gremlation", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gremlation/ComfyUI-TrackAndWheel", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-25T04:10:33.502997Z", + "description": "The OTX classes pass multiple inputs of varying types, convert them as needed, and return the results, with some performing custom calculations", + "downloads": 1250, + "github_stars": 1, + "icon": "", + "id": "comfyui_otonx_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-25T04:10:33.779617Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "962862e7-370a-4ab5-bd6b-f4155cac39e4", + "node_id": "comfyui_otonx_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "comfyui_otonx_nodes", + "publisher": { + "createdAt": "2024-05-25T03:41:55.247364Z", + "description": "", + "id": "budihoo", + "logo": "", + "members": [], + "name": "Budi Hartono", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/budihartono/comfyui_otonx_nodes", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T21:59:08.443353Z", + "description": "A few ComfyUI QoL Nodes: Aspect Ratio, Prompt Multiple Styles Selector, Text Concatenate", + "downloads": 2597, + "github_stars": 1, + "icon": "", + "id": "comfyui-nikosis-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-08T01:45:17.992647Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "03b8356b-985b-4eb8-8813-acc74ac30d20", + "node_id": "comfyui-nikosis-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Nikosis-Nodes", + "publisher": { + "createdAt": "2025-03-11T12:18:31.790165Z", + "description": "", + "id": "nikosis", + "logo": "", + "members": [], + "name": "Nikosis", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Nikosis/ComfyUI-Nikosis-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-09T12:20:27.630379Z", + "description": "A few tools for ComfyUI, perhaps it's exactly what you need.", + "downloads": 590, + "github_stars": 2, + "icon": "", + "id": "missed-tool", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-10T09:15:27.319379Z", + "dependencies": [ + "torch", + "numpy", + "Pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "468a9c0e-d8ae-4756-82c5-8245ed57e1d7", + "node_id": "missed-tool", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-missed-tool", + "publisher": { + "createdAt": "2025-03-15T07:57:53.419176Z", + "description": "", + "id": "ifmylove2011", + "logo": "", + "members": [], + "name": "XTER", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ifmylove2011/comfyui-missed-tool", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-30T19:18:04.222465Z", + "description": "A per channel implementation of the scaled CFG from this paper: https://arxiv.org/abs/2503.18886", + "downloads": 1004, + "github_stars": 1, + "icon": "", + "id": "comfyui_cfgstar", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-10T17:53:29.223435Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "8d501307-cf15-4c13-8d45-2d83e39991df", + "node_id": "comfyui_cfgstar", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"text\": \"GNU General Public License v3.0\"}", + "name": "ComfyUI_CFGStar", + "publisher": { + "createdAt": "2024-06-23T11:33:12.747281Z", + "description": "", + "id": "bvhari", + "logo": "", + "members": [], + "name": "BVH", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bvhari/ComfyUI_CFGStar", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-22T21:43:45.520695Z", + "description": "Mistral AI API's chat completion endpoint in ComfyUI", + "downloads": 1241, + "github_stars": 1, + "icon": "", + "id": "comfyui-mistralai-api", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-07T17:34:27.950882Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "608c7d0d-e643-4ffc-a92e-fde617e61471", + "node_id": "comfyui-mistralai-api", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-MistralAI-API", + "publisher": { + "createdAt": "2024-12-22T02:07:29.326588Z", + "description": "", + "id": "randomnoner11", + "logo": "", + "members": [], + "name": "randomnoner11", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/randomnoner11/ComfyUI-MistralAI-API", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-14T18:05:41.257447Z", + "description": "Transform your images with cinematic lighting effects in a single click! ReLight is a powerful ComfyUI node that adds professional-grade lighting capabilities including multiple light sources, rim lighting, and 3D lighting simulation.", + "downloads": 1454, + "github_stars": 75, + "icon": "", + "id": "ReLight", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-18T15:10:27.596277Z", + "dependencies": [ + "torch", + "numpy", + "Pillow", + "scipy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "bbebcbb1-4c3e-48c6-a696-3de9ca198b15", + "node_id": "ReLight", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ReLight", + "publisher": { + "createdAt": "2024-07-26T01:45:42.941977Z", + "description": "", + "id": "enragedantelope", + "logo": "", + "members": [], + "name": "EnragedAntelope", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/EnragedAntelope/comfyui-relight", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-07T15:01:25.336891Z", + "description": "Send generated images or videos to any HTTP webhook with optional parameters such as prompt-id and metadata payload.", + "downloads": 558, + "github_stars": 1, + "icon": "https://jerrychukwudi.co.uk/favicon.ico", + "id": "uploadtowebhookhttp", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-07T15:01:25.7285Z", + "dependencies": [ + "numpy", + "requests", + "Pillow", + "moviepy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "2fe94892-8998-444a-bc00-db2489cd74d5", + "node_id": "uploadtowebhookhttp", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_UploadToWebhookHTTP", + "publisher": { + "createdAt": "2025-04-07T14:09:43.897689Z", + "description": "", + "id": "jerrywap", + "logo": "", + "members": [], + "name": "Jerry Chukwudi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jerrywap/ComfyUI_UploadToWebhookHTTP", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-28T05:34:25.771207Z", + "description": "This extension offers a custom node to save image to S3-compatible oss.", + "downloads": 1333, + "github_stars": 1, + "icon": "", + "id": "comfyui-saveimages3", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-28T05:34:29.549659Z", + "dependencies": [ + "minio" + ], + "deprecated": false, + "downloadUrl": "", + "id": "33e309a6-e96d-4d07-b124-e6a3f21317b2", + "node_id": "comfyui-saveimages3", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-SaveImageS3", + "publisher": { + "createdAt": "2024-12-28T05:24:47.129701Z", + "description": "", + "id": "zouyu", + "logo": "", + "members": [], + "name": "ZouYu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mrchipset/ComfyUI-SaveImageS3", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-28T14:13:49.597634Z", + "description": "Use power of three.js in 3d view on comfyui.", + "downloads": 1617, + "github_stars": 19, + "icon": "logo.png", + "id": "comfyui_three_js", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-09T22:37:43.697243Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "daf8bc25-7be3-4cf4-8c8a-b11a1633bb91", + "node_id": "comfyui_three_js", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.2.7" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfyui_three_js", + "publisher": { + "createdAt": "2024-11-28T13:16:43.100971Z", + "description": "", + "id": "lth", + "logo": "", + "members": [], + "name": "lth", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lo-th/Comfyui_three_js", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-18T17:22:32.761264Z", + "description": "This project adapts the dashscope([a/aliyun-bailian](https://bailian.console.aliyun.com)) api into ComfyUI.", + "downloads": 1562, + "github_stars": 2, + "icon": "", + "id": "comfyui-dashscope", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-18T17:22:34.221378Z", + "dependencies": [ + "dashscope" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b3e9ef8e-d60e-4672-a673-f13018c306c1", + "node_id": "comfyui-dashscope", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Dashscope", + "publisher": { + "createdAt": "2024-07-27T13:38:09.01838Z", + "description": "", + "id": "faych", + "logo": "", + "members": [], + "name": "Faych Chan", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/neverbiasu/ComfyUI-Dashscope", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-27T02:17:04.379389Z", + "description": "Python interpreter to embed scripts into workflows and debug custom nodes.", + "downloads": 2538, + "github_stars": 60, + "icon": "https://img.icons8.com/?size=100&id=121465&format=png&color=000000", + "id": "python-interpreter-node", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-05T19:55:12.262119Z", + "dependencies": [ + "Pillow>=10.3.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "2b976337-7f28-4dd4-ada8-31d041b89cf3", + "node_id": "python-interpreter-node", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.1.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "python-interpreter-node", + "publisher": { + "createdAt": "2024-05-26T02:18:06.707962Z", + "description": "", + "id": "christian-byrne", + "logo": "", + "members": [], + "name": "christian-byrne", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/christian-byrne/python-interpreter-node", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-07T17:54:24.356857Z", + "description": "A ComfyUI node that runs a jq query against input JSON and outputs the result", + "downloads": 1158, + "github_stars": 1, + "icon": "", + "id": "comfyui-jq", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-07T17:54:27.873246Z", + "dependencies": [ + "jq" + ], + "deprecated": false, + "downloadUrl": "", + "id": "0e22e48a-8ed8-43f4-b9ad-82be44acbab1", + "node_id": "comfyui-jq", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-jq", + "publisher": { + "createdAt": "2025-01-07T13:13:33.736384Z", + "description": "", + "id": "gremlation", + "logo": "", + "members": [], + "name": "Gremlation", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gremlation/ComfyUI-jq", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-26T07:41:36.9494Z", + "description": "A ComfyUI integration for [a/ChatTTS](https://github.com/2noise/ChatTTS), enabling high-quality, controllable text-to-speech generation directly in your ComfyUI workflows.", + "downloads": 774, + "github_stars": 3, + "icon": "", + "id": "chattts", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-03T15:21:20.378805Z", + "dependencies": [ + "numpy<2.0.0", + "numba", + "torch>=2.1.0", + "torchaudio", + "tqdm", + "vector_quantize_pytorch", + "transformers>=4.41.1", + "vocos", + "IPython", + "pybase16384", + "pynini==2.1.5; sys_platform == 'linux'", + "WeTextProcessing; sys_platform == 'linux'", + "nemo_text_processing; sys_platform == 'linux'", + "av", + "pydub" + ], + "deprecated": false, + "downloadUrl": "", + "id": "09889114-3e6c-492c-ba9e-958802f60158", + "node_id": "chattts", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ChatTTS", + "publisher": { + "createdAt": "2024-07-27T13:38:09.01838Z", + "description": "", + "id": "faych", + "logo": "", + "members": [], + "name": "Faych Chan", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/neverbiasu/ComfyUI-ChatTTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-07T16:24:13.500125Z", + "description": "A ComfyUI node that displays the type and contents of whatever is connected to the input", + "downloads": 1376, + "github_stars": 1, + "icon": "", + "id": "comfyui-viewdata", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-07T16:45:19.537422Z", + "dependencies": [ + "torch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "cf60afca-201d-4ea7-9013-f8ac1a4dbb50", + "node_id": "comfyui-viewdata", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ViewData", + "publisher": { + "createdAt": "2025-01-07T13:13:33.736384Z", + "description": "", + "id": "gremlation", + "logo": "", + "members": [], + "name": "Gremlation", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gremlation/ComfyUI-ViewData", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-07T20:35:20.613556Z", + "description": "Perpendicular CFG for reducing oversaturation issues with high guidance scale values.", + "downloads": 1346, + "github_stars": 1, + "icon": "", + "id": "comfyui_perpcfg", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-07T20:35:24.479123Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3728bb23-611b-4a5d-9f64-603c88660c10", + "node_id": "comfyui_perpcfg", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"GNU General Public License v3.0\"}", + "name": "ComfyUI_PerpCFG", + "publisher": { + "createdAt": "2024-06-23T11:33:12.747281Z", + "description": "", + "id": "bvhari", + "logo": "", + "members": [], + "name": "BVH", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bvhari/ComfyUI_PerpCFG", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-29T18:29:06.999861Z", + "description": "Tools for processing equirectangular images, supporting conversion from equirectangular format to cubemap.", + "downloads": 573, + "github_stars": 1, + "icon": "", + "id": "equirect", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-29T18:29:07.397832Z", + "dependencies": [ + "torch>=1.7.0", + "numpy>=1.19.0", + "pillow>=8.0.0", + "py360convert>=0.1.0", + "opencv-python>=4.5.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a559aa42-085a-42b9-9ab1-6abc83e4de79", + "node_id": "equirect", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Equirect", + "publisher": { + "createdAt": "2025-03-29T17:27:22.79521Z", + "description": "", + "id": "kukuo6", + "logo": "", + "members": [], + "name": "ComfyUI-Equirect", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kukuo6666/ComfyUI-Equirect", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-21T02:41:36.227878Z", + "description": "A comprehensive node package that seamlessly integrates all BiRefNet series models into ComfyUI", + "downloads": 2560, + "github_stars": 19, + "icon": "", + "id": "birefnet_universal", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-21T02:41:39.746901Z", + "dependencies": [ + "transformers<=4.48.0", + "torch>=2.5.0", + "torchvision>=0.20.0", + "numpy<2", + "opencv-python", + "timm", + "scipy", + "scikit-image", + "kornia", + "einops", + "tqdm", + "prettytable", + "huggingface-hub>0.25", + "accelerate" + ], + "deprecated": false, + "downloadUrl": "", + "id": "65608dec-8c19-485c-bc8c-4f580e3051e5", + "node_id": "birefnet_universal", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_BiRefNet_Universal", + "publisher": { + "createdAt": "2025-02-20T09:54:17.256748Z", + "description": "", + "id": "moon7star9", + "logo": "", + "members": [], + "name": "moon7star9", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/moon7star9/ComfyUI_BiRefNet_Universal", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-30T02:06:38.876717Z", + "description": "This node pack allows loading of SD checkpoints that uses diffusers format in comfyUI", + "downloads": 6131, + "github_stars": 17, + "icon": "", + "id": "comfyui-diffusersloader", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-30T02:06:42.638332Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "44ec89ab-3974-40c5-9c1d-407d043dd277", + "node_id": "comfyui-diffusersloader", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-DiffusersLoader", + "publisher": { + "createdAt": "2024-06-21T00:34:33.798995Z", + "description": "", + "id": "mhms", + "logo": "", + "members": [], + "name": "Scorpinaus", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Scorpinaus/ComfyUI-DiffusersLoader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T15:14:37.300049Z", + "description": "Nodes:YOLO Classifier Model Loader, YOLO Classify.", + "downloads": 1571, + "github_stars": 1, + "icon": "", + "id": "comfyui_yolo_classifiers", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-20T15:14:37.569883Z", + "dependencies": [ + "ultralytics==8.2.32" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c5f1888c-e87e-4969-b27e-6db93b174966", + "node_id": "comfyui_yolo_classifiers", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_YOLO_Classifiers", + "publisher": { + "createdAt": "2024-06-20T15:02:51.217008Z", + "description": "", + "id": "supermasterblasterlaser", + "logo": "", + "members": [], + "name": "Daniq", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SuperMasterBlasterLaser/ComfyUI_YOLO_Classifiers", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-29T17:35:29.467731Z", + "description": "This custom node allows you to generate images directly from text prompts using Hugging Face's text-to-image models within ComfyUI. It provides a simple interface to leverage powerful AI models like FLUX.1-dev without leaving your ComfyUI workflow.", + "downloads": 816, + "github_stars": 2, + "icon": "https://example.com/icon.png", + "id": "HF-Flux-ComfyUI", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-29T17:35:29.839916Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3cc62e7a-ed59-4e9a-b1ca-55e162ab35b3", + "node_id": "HF-Flux-ComfyUI", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "HF-Flux-ComfyUI", + "publisher": { + "createdAt": "2025-03-29T17:03:57.375346Z", + "description": "", + "id": "semper-sursum", + "logo": "", + "members": [], + "name": "Semper Sursum", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Semper-Sursum/HF-Flux-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-10T02:53:18.416109Z", + "description": "TCD sampler plugin for ComfyUI", + "downloads": 4908, + "github_stars": 133, + "icon": "", + "id": "comfyui-tcd", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-10T02:53:21.903687Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ff73f6c3-0377-4994-9383-8bd4360ccd2f", + "node_id": "comfyui-tcd", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.0" + }, + "license": "GPL-3.0", + "name": "ComfyUI-TCD", + "publisher": { + "createdAt": "2024-06-18T08:05:40.311241Z", + "description": "", + "id": "jetthu", + "logo": "", + "members": [], + "name": "JettHu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/JettHu/ComfyUI-TCD", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-05T13:46:44.768031Z", + "description": "A simple counter, when pressing 'Queue Prompt' resets the count.", + "downloads": 1716, + "github_stars": 1, + "icon": "", + "id": "comfyui-simplecounter", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-05T13:46:48.279894Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "80fa4342-de35-4cfe-8a0b-e7424bd6cb36", + "node_id": "comfyui-simplecounter", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-SimpleCounter", + "publisher": { + "createdAt": "2024-07-05T12:41:28.312248Z", + "description": "", + "id": "aonekoss", + "logo": "", + "members": [], + "name": "AonekoSS", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AonekoSS/ComfyUI-SimpleCounter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-06T04:14:37.828297Z", + "description": "ComfyUI nodes for image processing.", + "downloads": 883, + "github_stars": 1, + "icon": "", + "id": "image-toolkit", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-06T04:14:38.248623Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "113b4576-432d-47e7-8a48-d1db7e63ea43", + "node_id": "image-toolkit", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Image-Toolkit", + "publisher": { + "createdAt": "2025-03-06T03:48:52.167868Z", + "description": "", + "id": "keit0728", + "logo": "", + "members": [], + "name": "keit", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/keit0728/ComfyUI-Image-Toolkit", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-26T13:37:47.292044Z", + "description": "ComfyUI IF Trellis creates a 3d mesh from a single view or multi angle pictures", + "downloads": 9495, + "github_stars": 430, + "icon": "https://impactframes.ai/System/Icons/48x48/if.png", + "id": "comfyui-if_trellis", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-09T09:31:34.397004Z", + "dependencies": [ + "pillow", + "imageio", + "imageio-ffmpeg", + "tqdm", + "easydict", + "opencv-python-headless", + "scipy", + "ninja", + "plyfile", + "rembg", + "onnxruntime-gpu", + "trimesh", + "xatlas", + "pyvista", + "pymeshfix", + "igraph", + "sageattention", + "git+https://github.com/EasternJournalist/utils3d.git@9a4eb15e4021b67b12c460c7057d642626897ec8", + "xformers", + "spconv-cu124", + "diffrp-nvdiffrast", + "triton; sys_platform == \"linux\"", + "https://github.com/woct0rdho/triton-windows/releases/download/v3.1.0-windows.post8/triton-3.1.0-cp312-cp312-win_amd64.whl; sys_platform == \"win64\" and (python_version >= \"3.12\" and python_version < \"3.13\")", + "https://github.com/woct0rdho/triton-windows/releases/download/v3.1.0-windows.post8/triton-3.1.0-cp311-cp311-win_amd64.whl; sys_platform == \"win64\" and (python_version >= \"3.11\" and python_version < \"3.12\")", + "https://github.com/woct0rdho/triton-windows/releases/download/v3.1.0-windows.post8/triton-3.1.0-cp310-cp310-win_amd64.whl; sys_platform == \"win64\" and (python_version >= \"3.10\" and python_version < \"3.11\")", + "https://github.com/woct0rdho/triton-windows/releases/download/v3.1.0-windows.post8/triton-3.1.0-cp38-cp38-win_amd64.whl; sys_platform == \"win64\" and (python_version >= \"3.8\" and python_version < \"3.9\")", + "https://nvidia-kaolin.s3.us-east-2.amazonaws.com/torch-2.5.1_cu124/kaolin-0.17.0-cp312-cp312-linux_x86_64.whl; sys_platform == \"linux\" and (python_version >= \"3.12\" and python_version < \"3.13\")", + "https://nvidia-kaolin.s3.us-east-2.amazonaws.com/torch-2.5.1_cu124/kaolin-0.17.0-cp311-cp311-linux_x86_64.whl; sys_platform == \"linux\" and (python_version >= \"3.11\" and python_version < \"3.12\")", + "https://nvidia-kaolin.s3.us-east-2.amazonaws.com/torch-2.5.1_cu124/kaolin-0.17.0-cp310-cp310-linux_x86_64.whl; sys_platform == \"linux\" and (python_version >= \"3.10\" and python_version < \"3.11\")", + "https://nvidia-kaolin.s3.us-east-2.amazonaws.com/torch-2.5.1_cu124/kaolin-0.17.0-cp39-cp39-linux_x86_64.whl; sys_platform == \"linux\" and (python_version >= \"3.9\" and python_version < \"3.10\")", + "https://nvidia-kaolin.s3.us-east-2.amazonaws.com/torch-2.5.1_cu124/kaolin-0.17.0-cp312-cp312-win_amd64.whl; sys_platform == \"win64\" and (python_version >= \"3.12\" and python_version < \"3.13\")", + "https://nvidia-kaolin.s3.us-east-2.amazonaws.com/torch-2.5.1_cu124/kaolin-0.17.0-cp311-cp311-win_amd64.whl; sys_platform == \"win64\" and (python_version >= \"3.11\" and python_version < \"3.12\")", + "https://nvidia-kaolin.s3.us-east-2.amazonaws.com/torch-2.5.1_cu124/kaolin-0.17.0-cp312-cp310-win_amd64.whl; sys_platform == \"win64\" and (python_version >= \"3.10\" and python_version < \"3.11\")", + "https://nvidia-kaolin.s3.us-east-2.amazonaws.com/torch-2.5.1_cu124/kaolin-0.17.0-cp39-cp39-win_amd64.whl; sys_platform == \"win64\" and (python_version >= \"3.9\" and python_version < \"3.10\")", + "git+https://github.com/autonomousvision/mip-splatting.git@main#subdirectory=submodules/diff-gaussian-rasterization" + ], + "deprecated": false, + "downloadUrl": "", + "id": "753d5e0b-72b1-4639-885a-21c84202e70b", + "node_id": "comfyui-if_trellis", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.2.5" + }, + "license": "{\"file\": \"MIT License\"}", + "name": "IF_Trellis", + "publisher": { + "createdAt": "2024-05-22T21:13:45.198878Z", + "description": "", + "id": "impactframes", + "logo": "", + "members": [], + "name": "impactframes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/if-ai/ComfyUI-IF_Trellis", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-10T15:44:36.871876Z", + "description": "This is a pack with some handy nodes for ComfyUI.", + "downloads": 1229, + "github_stars": 1, + "icon": "", + "id": "handy-nodes-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-14T14:08:45.067381Z", + "dependencies": [ + "numpy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6e1d87d6-f7e6-43ca-8472-558c23b1bf7e", + "node_id": "handy-nodes-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Handy-Nodes-ComfyUI", + "publisher": { + "createdAt": "2024-09-10T15:38:18.349809Z", + "description": "", + "id": "anhkhoatranle30", + "logo": "", + "members": [], + "name": "Khoa Trn", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/anhkhoatranle30/Handy-Nodes-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-23T15:34:18.828893Z", + "description": "This extension offers automatic drums extraction from audio files, as well as a few helper nodes to support my audio synchronization AnimateDiff workflows.", + "downloads": 1651, + "github_stars": 1, + "icon": "", + "id": "comfyui_isaacnodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-22T17:23:39.667857Z", + "dependencies": [ + "openunmix[stempeg]" + ], + "deprecated": false, + "downloadUrl": "", + "id": "9ee0eae2-30af-48dc-98a6-e8e2699edf68", + "node_id": "comfyui_isaacnodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"text\": \" GNU AFFERO GENERAL PUBLIC LICENSE\\n Version 3, 19 November 2007\\n\\n Copyright (C) 2007 Free Software Foundation, Inc. \\n Everyone is permitted to copy and distribute verbatim copies\\n of this license document, but changing it is not allowed.\\n\\n Full license text available here: https://github.com/iemesowum/ComfyUI_IsaacNodes/blob/2efa9295ece85a3a225a8746b51de9dd1848c44f/COPYING.\\n\"}", + "name": "ComfyUI_IsaacNodes", + "publisher": { + "createdAt": "2024-07-13T13:42:38.536397Z", + "description": "", + "id": "iemesowum", + "logo": "", + "members": [], + "name": "Isaac Emesowum", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/iemesowum/ComfyUI_IsaacNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-07T16:41:42.668741Z", + "description": "A ComfyUI node pack containing nodes for basic programming logic.", + "downloads": 981, + "github_stars": 11, + "icon": "", + "id": "flownodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-07T16:41:44.121669Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "972a6192-53ab-43ea-9dfb-8ceeb28de73d", + "node_id": "flownodes", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "FlowNodes", + "publisher": { + "createdAt": "2025-01-07T15:38:30.271927Z", + "description": "", + "id": "mylo", + "logo": "", + "members": [], + "name": "Mylo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gitmylo/FlowNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-15T02:47:43.822309Z", + "description": "Support input of Chinese prompts.", + "downloads": 2371, + "github_stars": 9, + "icon": "", + "id": "chinese_clip_encode", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-15T02:47:45.521256Z", + "dependencies": [ + "translate" + ], + "deprecated": false, + "downloadUrl": "", + "id": "380abdcf-3f8f-4e07-ba14-2c19e03ab237", + "node_id": "chinese_clip_encode", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "chinese_clip_encode", + "publisher": { + "createdAt": "2024-08-15T02:43:48.500007Z", + "description": "", + "id": "chinese-clip-encode", + "logo": "", + "members": [], + "name": "chinese_clip_encode", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yuan199696/chinese_clip_encode", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-23T17:59:38.677319Z", + "description": "Add Switch on nodes, Make nodes amount small! It helps conveniently to use less nodes for doing the same things. ", + "downloads": 1321, + "github_stars": 2, + "icon": "", + "id": "tdxh_node_comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-23T17:59:38.962101Z", + "dependencies": [ + "sentencepiece" + ], + "deprecated": false, + "downloadUrl": "", + "id": "02fb94c4-49a0-4a8d-9a79-134eddd67db5", + "node_id": "tdxh_node_comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "tdxh_node_comfyui", + "publisher": { + "createdAt": "2024-05-23T15:23:16.488163Z", + "description": "", + "id": "youyegit", + "logo": "", + "members": [], + "name": "youyegit", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/youyegit/tdxh_node_comfyui", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-17T09:12:02.161962Z", + "description": "A basic auth middleware for ComfyUI", + "downloads": 691, + "github_stars": 1, + "icon": "", + "id": "comfyui-basic-auth", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-17T09:38:26.742864Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3244b260-fde7-431c-a87a-6f51669c8d60", + "node_id": "comfyui-basic-auth", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Basic-Auth", + "publisher": { + "createdAt": "2024-06-20T11:47:18.175863Z", + "description": "", + "id": "fofr", + "logo": "", + "members": [], + "name": "fofr", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fofr/comfyui-basic-auth", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-22T17:10:05.568402Z", + "description": "ComfyUI Spectral is a ComfyUI custom nodes library based on the spectral, mainly used for visual processing of spectral files", + "downloads": 931, + "github_stars": 1, + "icon": "", + "id": "spectral", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-22T17:10:06.553075Z", + "dependencies": [ + "numpy", + "pillow", + "spectral", + "torch", + "torchvision", + "matplotlib", + "tqdm" + ], + "deprecated": false, + "downloadUrl": "", + "id": "fd5f8a63-ff52-4903-b4fa-686b08b053d1", + "node_id": "spectral", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Spectral", + "publisher": { + "createdAt": "2025-02-22T16:43:44.202718Z", + "description": "", + "id": "ghost94", + "logo": "", + "members": [], + "name": "ghost94", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chenlongming/ComfyUI_Spectral", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-10T04:53:30.195496Z", + "description": "Add a mobile-friendly web interface to ComfyUI.", + "downloads": 1548, + "github_stars": 4, + "icon": "", + "id": "comfyui-mobileclient", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-10T04:53:30.559004Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "492e260e-c9cf-4b70-944a-d85bbd5eef95", + "node_id": "comfyui-mobileclient", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-MobileClient", + "publisher": { + "createdAt": "2025-01-16T06:30:45.953796Z", + "description": "", + "id": "vkff5833", + "logo": "", + "members": [], + "name": "SenY", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/vkff5833/ComfyUI-MobileClient", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-23T01:41:54.41803Z", + "description": "Nodes:FBStringJoin, FBStringSplit, FBMultilineStringList, FBMultilineString, FBCustomFunction", + "downloads": 1938, + "github_stars": 2, + "icon": "", + "id": "comfyui-fb-utils", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-14T08:09:44.231166Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "7a0686d7-1e8c-4581-847d-08e49e0f0163", + "node_id": "comfyui-fb-utils", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.2" + }, + "license": "{}", + "name": "comfyui-fb-utils", + "publisher": { + "createdAt": "2024-05-23T01:23:49.021023Z", + "description": "", + "id": "fredbill", + "logo": "", + "members": [], + "name": "FredBill", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/FredBill1/comfyui-fb-utils", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-09T08:49:25.254084Z", + "description": "Add a button that clears the console", + "downloads": 1224, + "github_stars": 1, + "icon": "", + "id": "comfyui-clear-screen", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-09T09:15:01.87368Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "8ba0030b-f40f-42de-a823-353b7e30f5a9", + "node_id": "comfyui-clear-screen", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "Clear Screen", + "publisher": { + "createdAt": "2024-07-09T07:30:07.769811Z", + "description": "", + "id": "haoming02", + "logo": "", + "members": [], + "name": "Haoming02", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Haoming02/comfyui-clear-screen", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-24T09:19:50.338523Z", + "description": "you can using sotry-diffusion in comfyui", + "downloads": 5280, + "github_stars": 451, + "icon": "", + "id": "comfyui_storydiffusion", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-03T06:47:21.197155Z", + "dependencies": [ + "ip_adapter @ git+https://github.com/tencent-ailab/IP-Adapter.git@main", + "spaces", + "peft" + ], + "deprecated": false, + "downloadUrl": "", + "id": "185cd2f4-a64a-4e77-a39e-05a88b149832", + "node_id": "comfyui_storydiffusion", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "LICENSE", + "name": "ComfyUI_StoryDiffusion", + "publisher": { + "createdAt": "2024-06-24T08:32:00.788126Z", + "description": "", + "id": "smthemx", + "logo": "", + "members": [], + "name": "smthemx", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_StoryDiffusion", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-10T02:58:02.275129Z", + "description": "T-GATE plugin for ComfyUI", + "downloads": 3700, + "github_stars": 94, + "icon": "", + "id": "comfyui_tgate", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-10T02:58:05.999647Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "65bd32de-8b8a-4f91-8cfc-92428fdb01fe", + "node_id": "comfyui_tgate", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.0" + }, + "license": "LICENSE", + "name": "ComfyUI_TGate", + "publisher": { + "createdAt": "2024-06-18T08:05:40.311241Z", + "description": "", + "id": "jetthu", + "logo": "", + "members": [], + "name": "JettHu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/JettHu/ComfyUI_TGate", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-29T02:36:39.4636Z", + "description": "This is a node that simply integrates LoadImage, Vae Encode, Upscale, Resolution factor correction, and Color Adjustment.", + "downloads": 2903, + "github_stars": 1, + "icon": "https://totori-general-purpose-public.s3.ap-northeast-1.amazonaws.com/00063-222406234-400px.png", + "id": "comfyui-loadimage-advanced", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-03T03:53:53.189882Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "d78b6bab-cb98-467b-9735-bfa44090d3d8", + "node_id": "comfyui-loadimage-advanced", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.1" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-LoadImage-Advanced", + "publisher": { + "createdAt": "2024-08-29T02:11:14.719103Z", + "description": "", + "id": "souki202", + "logo": "", + "members": [], + "name": "Totori", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/souki202/ComfyUI-LoadImage-Advanced", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-17T08:37:58.425423Z", + "description": "This project provides custom safety checkers for image classification using Falcons AI and CompVis models. The safety checkers are designed to detect and filter out NSFW content from images.", + "downloads": 1639, + "github_stars": 1, + "icon": "", + "id": "comfyui-safety-checker", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-17T08:38:01.952268Z", + "dependencies": [ + "transformers" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c8000f54-8ae2-4100-b728-3b858abf8ce0", + "node_id": "comfyui-safety-checker", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Safety Checker", + "publisher": { + "createdAt": "2025-01-17T08:20:58.788547Z", + "description": "", + "id": "nino", + "logo": "", + "members": [], + "name": "Nino", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shabri-arrahim/ComfyUI-Safety-Checker", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-04T04:19:08.891846Z", + "description": "Add more endpoints to make easy for utilizing ComfyUI API", + "downloads": 3973, + "github_stars": 10, + "icon": "", + "id": "comfyui_extra_api", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-06T02:35:56.120904Z", + "dependencies": [ + "diskcache", + "tqdm" + ], + "deprecated": false, + "downloadUrl": "", + "id": "23c294b1-02cf-421b-9cfd-c6b16e45b31d", + "node_id": "comfyui_extra_api", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.7" + }, + "license": "{}", + "name": "ComfyUI Extra API", + "publisher": { + "createdAt": "2024-07-04T03:49:44.924961Z", + "description": "", + "id": "injet", + "logo": "", + "members": [], + "name": "Injet Zhou", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/injet-zhou/comfyui_extra_api", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-26T11:12:34.30673Z", + "description": "A custom node for SoX's mixdown function. Make sure that the sox command is installed and the path added before using this node.", + "downloads": 1178, + "github_stars": 1, + "icon": "", + "id": "comfyui-sox-mixdown", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-26T14:29:28.911324Z", + "dependencies": [ + "sox>=1.5.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "834fa4c1-f1f2-48b8-a857-0047b3d5f093", + "node_id": "comfyui-sox-mixdown", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-SoX-Mixdown", + "publisher": { + "createdAt": "2025-01-22T03:43:55.302946Z", + "description": "", + "id": "johndoesmithee", + "logo": "", + "members": [], + "name": "John Doe Smithee", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/JohnDoeSmithee/ComfyUI-SoX-Mixdown", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-10T20:20:58.844613Z", + "description": "Qwen2.5-VL in ComfyUI", + "downloads": 601, + "github_stars": 6, + "icon": "https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen2.5-VL/qwen2.5vl_logo.png", + "id": "qwen2_5-vl", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-05T12:11:02.615343Z", + "dependencies": [ + "qwen-vl-utils", + "qwen-vl-utils[decord]", + "pathlib", + "transformers>=4.49.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a8794a09-5fe5-4a7f-9c89-5fde6047a00c", + "node_id": "qwen2_5-vl", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Qwen2_5-VL", + "publisher": { + "createdAt": "2024-07-27T15:18:06.489076Z", + "description": "", + "id": "makki-shizu", + "logo": "", + "members": [], + "name": "Makki_Shizu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MakkiShizu/ComfyUI-Qwen2_5-VL", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-20T15:57:18.087574Z", + "description": "\ud83e\udd6d Mango Random Nodes - A collection of random file nodes for ComfyUI", + "downloads": 1292, + "github_stars": 1, + "icon": "\ud83e\udd6d", + "id": "comfyui-mango-random", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-21T11:31:34.875935Z", + "dependencies": [ + "opencv-python", + "imageio-ffmpeg" + ], + "deprecated": false, + "downloadUrl": "", + "id": "2aca528a-cc65-4b91-9a94-f531b99ea4d0", + "node_id": "comfyui-mango-random", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Mango-Random", + "publisher": { + "createdAt": "2025-01-20T03:03:58.472673Z", + "description": "", + "id": "mango125", + "logo": "", + "members": [], + "name": "Mango", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mango-rgb/ComfyUI-Mango-Random-node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-08T22:53:47.172388Z", + "description": "Nodes: LoadImageFromBase64. Loads an image and its transparency mask from a base64-encoded data URI for easy API connection.", + "downloads": 3680, + "github_stars": 16, + "icon": "", + "id": "comfyui-base64-to-image", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-08T22:53:50.920183Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "61674f62-2fb8-41c9-a211-6ca99e673659", + "node_id": "comfyui-base64-to-image", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "comfyui-base64-to-image", + "publisher": { + "createdAt": "2024-07-08T22:50:15.507605Z", + "description": "", + "id": "glowcone", + "logo": "", + "members": [], + "name": "glowcone", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/glowcone/comfyui-base64-to-image", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-14T10:55:50.519293Z", + "description": "A custom node that saves images while displaying the seed value used in generation", + "downloads": 1919, + "github_stars": 1, + "icon": "", + "id": "show_seed", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-14T10:55:54.043273Z", + "dependencies": [ + "pillow", + "numpy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f6fe2f72-4b5c-4b4f-ac60-8b47783bd644", + "node_id": "show_seed", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_show_seed", + "publisher": { + "createdAt": "2025-01-14T10:38:09.40949Z", + "description": "", + "id": "dreamhartley", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dreamhartley/ComfyUI_show_seed", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-14T15:23:37.505315Z", + "description": "Generate images from text prompts using Pollinations' AI models for free.", + "downloads": 2078, + "github_stars": 3, + "icon": "https://raw.githubusercontent.com/ciga2011/ComfyUI-Pollinations/main/icon256.png", + "id": "pollinations", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-14T15:23:38.984461Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3030713c-5758-44e4-898f-f623cb9a1e5a", + "node_id": "pollinations", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Pollinations", + "publisher": { + "createdAt": "2024-12-28T15:00:27.413223Z", + "description": "", + "id": "ciga2011", + "logo": "", + "members": [], + "name": "ciga2011", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ciga2011/ComfyUI-Pollinations", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-06T04:08:11.163911Z", + "description": "Custom nodes for loading and previewing media from URLs in ComfyUI.", + "downloads": 405, + "github_stars": 1, + "icon": "", + "id": "MediaUtilities-v2", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-06T04:08:11.549549Z", + "dependencies": [ + "requests>=2.28.2", + "numpy>=1.24.0", + "pillow>=9.4.0", + "torch>=2.0.0", + "torchaudio>=2.0.0", + "opencv-python>=4.7.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c7d0fb9e-38e7-42d3-ba39-0f9d46a05927", + "node_id": "MediaUtilities-v2", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-MediaUtilities-v2", + "publisher": { + "createdAt": "2025-05-05T08:23:06.120487Z", + "description": "", + "id": "whitemoney293", + "logo": "", + "members": [], + "name": "Thanarit Kanjanametawat", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ThanaritKanjanametawatAU/ComfyUI-MediaUtilities-v2", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-31T13:01:36.055411Z", + "description": "This repository contains custom nodes for ComfyUI created and used by Mario Klingemann (@Quasimondo on Twitter and Instagram)", + "downloads": 2373, + "github_stars": 14, + "icon": "https://quasimondo.com/wordpress/wp-content/uploads/2016/02/cropped-quasimondo_logo-150x150.png", + "id": "comfyui-quasimondonodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-31T13:01:39.796055Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "2bb5d8d8-105f-45ed-98f3-15cecf37cfde", + "node_id": "comfyui-quasimondonodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-QuasimondoNodes", + "publisher": { + "createdAt": "2024-07-31T12:13:12.707346Z", + "description": "", + "id": "quasimondo", + "logo": "", + "members": [], + "name": "Quasimondo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Quasimondo/ComfyUI-QuasimondoNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-22T19:24:55.382619Z", + "description": "ComfyUI JSON-based prompt management tool.", + "downloads": 1327, + "github_stars": 2, + "icon": "", + "id": "comfyui_prompt_list_json", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-22T20:46:10.619425Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ab959f0d-2191-449e-abd2-925f7bc26a5d", + "node_id": "comfyui_prompt_list_json", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Prompt_List_JSON", + "publisher": { + "createdAt": "2024-12-22T18:36:21.715201Z", + "description": "", + "id": "tkrlab", + "logo": "", + "members": [], + "name": "TKRLAB", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TKRLAB/ComfyUI_Prompt_List_JSON", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-26T05:38:29.401794Z", + "description": "A ComfyUI extention for BAGEL(Unified Model for Multimodal Understanding and Generation)", + "downloads": 2923, + "github_stars": 164, + "icon": "", + "id": "comfyui-bagel", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-19T18:13:10.88851Z", + "dependencies": [ + "decord==0.6.0", + "einops==0.8.1", + "huggingface_hub==0.29.1", + "matplotlib==3.7.0", + "opencv-python==4.7.0.72", + "pyarrow==11.0.0", + "PyYAML==6.0.2", + "Requests==2.32.3", + "safetensors==0.4.5", + "scipy==1.10.1", + "sentencepiece==0.1.99", + "transformers==4.49.0", + "flash_attn==2.5.8", + "accelerate>=0.34.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "212f1fc7-f4c1-4d2d-ae16-a874e4b26b5f", + "node_id": "comfyui-bagel", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-BAGEL", + "publisher": { + "createdAt": "2024-07-27T13:38:09.01838Z", + "description": "", + "id": "faych", + "logo": "", + "members": [], + "name": "Faych Chan", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/neverbiasu/ComfyUI-BAGEL", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T15:02:17.516071Z", + "description": "Simple nodes to help clean up your workflow, mostly focussed on text operations.", + "downloads": 1356, + "github_stars": 1, + "icon": "", + "id": "comfyui-simply-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-05T01:45:05.343449Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "dd62ace8-3ce1-473a-94cd-f6700329d299", + "node_id": "comfyui-simply-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{}", + "name": "ComfyUI Simply Nodes", + "publisher": { + "createdAt": "2024-06-20T14:54:44.232273Z", + "description": "", + "id": "wicloz", + "logo": "", + "members": [], + "name": "Wicloz", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Wicloz/ComfyUI-Simply-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-01T23:16:16.324599Z", + "description": "ComfyUI-ASV-Nodes make prompting easier.", + "downloads": 1332, + "github_stars": 1, + "icon": "", + "id": "comfyui-asv-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-01T23:16:18.061741Z", + "dependencies": [ + "transformers==4.43.2" + ], + "deprecated": false, + "downloadUrl": "", + "id": "eb9cb6db-6d7e-4ff3-b9cd-5c5591ad08d8", + "node_id": "comfyui-asv-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ASV-Nodes", + "publisher": { + "createdAt": "2024-10-20T22:28:39.509912Z", + "description": "", + "id": "zubenelakrab", + "logo": "", + "members": [], + "name": "Zubenelakrab", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zubenelakrab/ComfyUI-ASV-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-20T20:06:01.801164Z", + "description": "Basic Color Nodes for ComfyUI", + "downloads": 1324, + "github_stars": 1, + "icon": "", + "id": "comfyui-colornodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-20T20:11:55.886925Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "8573c77f-b575-49bb-a11c-dfb48e1a96bd", + "node_id": "comfyui-colornodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.2" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-ColorNodes", + "publisher": { + "createdAt": "2024-08-17T17:57:39.099309Z", + "description": "", + "id": "akierson", + "logo": "", + "members": [], + "name": "akierson", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/akierson/comfyui-colornodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-13T06:34:11.409513Z", + "description": "Nodes to place dominant colors of an image on a color wheel", + "downloads": 1180, + "github_stars": 1, + "icon": "", + "id": "comfyui-colorwheel", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-13T06:34:15.295741Z", + "dependencies": [ + "torch", + "numpy", + "scikit-learn", + "pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "dcb867c5-3cf5-45a7-b2f5-cab722803ba0", + "node_id": "comfyui-colorwheel", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ColorWheel", + "publisher": { + "createdAt": "2024-08-06T19:57:24.499274Z", + "description": "", + "id": "rhizonymph", + "logo": "", + "members": [], + "name": "RhizoNymph", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/RhizoNymph/ComfyUI-ColorWheel", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-09T20:14:07.65811Z", + "description": "Add some extra endpoints to ComfyUI to manage / monitor remotely.", + "downloads": 2828, + "github_stars": 4, + "icon": "", + "id": "comfyui_api_tools", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-28T11:37:37.73172Z", + "dependencies": [ + "pynvml" + ], + "deprecated": false, + "downloadUrl": "", + "id": "de16efaa-d47e-406d-a19f-0a5cb419efe5", + "node_id": "comfyui_api_tools", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{}", + "name": "ComfyUI Api Tools", + "publisher": { + "createdAt": "2025-04-07T09:29:15.533297Z", + "description": "", + "id": "brantje", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/brantje/ComfyUI-api-tools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-30T05:58:14.053659Z", + "description": "Conveniently control parts of text prompts with custom UI. Pack includes loaders from txt and csv files, dynamic text concatenation tool, dynamic switch and more", + "downloads": 3177, + "github_stars": 19, + "icon": "https://avatars.githubusercontent.com/u/179777855", + "id": "comfyui-ez-af-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-22T20:45:14.725301Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "dfa09dc1-dcfa-46d0-8381-ea857443d7ad", + "node_id": "comfyui-ez-af-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "2.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-EZ-AF-Nodes", + "publisher": { + "createdAt": "2024-09-30T05:12:30.31536Z", + "description": "", + "id": "ez-af", + "logo": "", + "members": [], + "name": "ez-af", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ez-af/ComfyUI-EZ-AF-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-10T19:08:15.35091Z", + "description": "Divide and Conquer Node Suite: It calculates the optimal upscale resolution and seamlessly divides the image into tiles, ready for individual processing using your preferred workflow. After processing, the tiles are seamlessly merged into a larger image, offering sharper and more detailed visuals.", + "downloads": 5743, + "github_stars": 72, + "icon": "https://raw.githubusercontent.com/Steudio/ComfyUI_Steudio/main/Images/Steudio_Logo_Circle.png", + "id": "comfyui_steudio", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-22T23:05:40.260032Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "22b091d9-cb9f-44e5-9ffb-9cd1d9ef57c8", + "node_id": "comfyui_steudio", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.5" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI_Steudio", + "publisher": { + "createdAt": "2025-01-10T03:13:08.548882Z", + "description": "", + "id": "steudio", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Steudio/ComfyUI_Steudio", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-26T01:12:50.904595Z", + "description": "ComfyUI diffusers wrapper nodes for WanVideo [ALPHA ACCESS FOR REGISTRY]", + "downloads": 2474, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-WanVideoWrapper_ALPHA", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-26T01:12:51.464104Z", + "dependencies": [ + "accelerate >= 1.2.1", + "diffusers >= 0.31.0", + "ftfy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a756ea48-d6d0-45f1-a880-627654244f6b", + "node_id": "ComfyUI-WanVideoWrapper_ALPHA", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-WanVideoWrapper_ALPHA", + "publisher": { + "createdAt": "2025-02-07T19:07:08.91332Z", + "description": "", + "id": "mattabyte", + "logo": "", + "members": [], + "name": "MattaByte", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Mattabyte/ComfyUI-WanVideoWrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-03T01:53:04.620247Z", + "description": "A custom node designed for ComfyUI, allowing users to format the current date and time based on a specified format. \u4e00\u4e2a\u4e3a ComfyUI \u8bbe\u8ba1\u7684\u81ea\u5b9a\u4e49\u8282\u70b9\uff0c\u5141\u8bb8\u7528\u6237\u6839\u636e\u6307\u5b9a\u7684\u683c\u5f0f\u83b7\u53d6\u5f53\u524d\u65e5\u671f\u548c\u65f6\u95f4\u3002", + "downloads": 1325, + "github_stars": 1, + "icon": "", + "id": "comfyui-qb-date-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-14T11:37:31.633867Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a19b5f7b-bff2-4e68-98da-88c44ceec36c", + "node_id": "comfyui-qb-date-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfyui-Qb-Date-Nodes", + "publisher": { + "createdAt": "2024-10-13T12:03:30.576054Z", + "description": "", + "id": "qbug", + "logo": "", + "members": [], + "name": "Q-Bug", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Q-Bug4/Comfyui-Qb-DateNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-19T09:13:57.426256Z", + "description": "This is a trainer for AnimateDiff MotionLoRAs, based on the implementation of MotionDirector by ExponentialML.", + "downloads": 4413, + "github_stars": 176, + "icon": "", + "id": "comfyui-admotiondirector", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-19T09:13:57.683982Z", + "dependencies": [ + "diffusers>=0.26.2", + "huggingface_hub>=0.20.3", + "transformers>=4.37.2", + "loralib", + "einops", + "omegaconf", + "lion-pytorch", + "peft", + "imageio>=2.33.1", + "imageio-ffmpeg>=0.4.7" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e1fef5e7-a090-4720-9623-96e47c0baa4c", + "node_id": "comfyui-admotiondirector", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "Apache-2.0", + "name": "ComfyUI-ADMotionDirector", + "publisher": { + "createdAt": "2024-06-09T11:11:54.62154Z", + "description": "", + "id": "kijai", + "logo": "", + "members": [], + "name": "Kijai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-ADMotionDirector", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-29T21:13:58.033115Z", + "description": "A set of custom nodes that I've either written myself or adapted from other authors", + "downloads": 4355, + "github_stars": 10, + "icon": "https://raw.githubusercontent.com/dicksondickson/ComfyUI-Dickson-Nodes/main/images/icon-400.png", + "id": "comfyui-dickson-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-18T04:31:00.826273Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1fd6d673-66c7-4449-a12a-66557d47da1d", + "node_id": "comfyui-dickson-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.9" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI-Dickson-Nodes", + "publisher": { + "createdAt": "2024-06-19T20:30:20.856428Z", + "description": "", + "id": "dicksondickson", + "logo": "", + "members": [], + "name": "dicksondickson", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dicksondickson/ComfyUI-Dickson-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-29T00:25:05.770515Z", + "description": "ComfyUI custom node that activates integration with a Sentry instance for loading. Has no actual nodes.", + "downloads": 1184, + "github_stars": 1, + "icon": "", + "id": "comfy-sentry", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-31T21:38:04.964011Z", + "dependencies": [ + "sentry-sdk" + ], + "deprecated": false, + "downloadUrl": "", + "id": "31d78b0c-dd38-401d-b5b4-5641931c564d", + "node_id": "comfy-sentry", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfy-Sentry", + "publisher": { + "createdAt": "2024-05-23T19:40:39.167072Z", + "description": "", + "id": "teward", + "logo": "", + "members": [], + "name": "teward", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/teward/Comfy-Sentry", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-08T12:08:52.480341Z", + "description": "[a/ImageMagick](https://imagemagick.org/index.php) nodes for ComfyUI. Adds nodes to call ImageMagick subprocesses from ComfyUI.\nRequirements: [a/ImagMagick7](https://imagemagick.org/script/download.php), 'magick' command in your CLI environment.", + "downloads": 1263, + "github_stars": 1, + "icon": "https://raw.githubusercontent.com/my-opencode/ComfyUI_IndustrialMagick/main/logo-small.png", + "id": "comfyui_industrialmagick", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-31T14:04:48.032355Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "68364c0f-9509-486c-b6d8-d7edba38df40", + "node_id": "comfyui_industrialmagick", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_IndustrialMagick", + "publisher": { + "createdAt": "2024-07-08T09:44:53.071042Z", + "description": "", + "id": "industrialvectors", + "logo": "", + "members": [], + "name": "Industrial Vectors", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/my-opencode/ComfyUI_IndustrialMagick", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T20:52:43.627238Z", + "description": "prediction boost custom node for ComfyUI", + "downloads": 1308, + "github_stars": 1, + "icon": "", + "id": "comfyui-prediction-boost", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-20T20:52:43.925718Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "8f00a817-3ee0-40b8-a56d-b7337824626c", + "node_id": "comfyui-prediction-boost", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-Prediction-Boost", + "publisher": { + "createdAt": "2024-06-20T20:30:36.020673Z", + "description": "", + "id": "tmagara", + "logo": "", + "members": [], + "name": "Takafumi Magara", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tmagara/ComfyUI-Prediction-Boost", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-01T07:59:29.808488Z", + "description": "Sampling node required to use the WDV test model, 100% of code taken from https://gist.github.com/neggles/ecb6327251a9e274428d07636c727eb9.", + "downloads": 1232, + "github_stars": 1, + "icon": "", + "id": "comfyui-wdv-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-01T07:59:31.515972Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "f4f29e8d-1673-40ca-a89c-2ab7631c9aec", + "node_id": "comfyui-wdv-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-WDV-Nodes", + "publisher": { + "createdAt": "2024-07-19T17:38:46.26651Z", + "description": "", + "id": "betadoggo", + "logo": "", + "members": [], + "name": "BetaDoggo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BetaDoggo/ComfyUI-WDV-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-10T09:17:51.617276Z", + "description": "ComfyUI Lumi Batcher is a batch processing extension plugin designed for ComfyUI, aiming to improve workflow debugging efficiency. Traditional debugging methods require adjusting parameters one by one, while this tool significantly enhances work efficiency through batch processing capabilities.", + "downloads": 1870, + "github_stars": 321, + "icon": "", + "id": "comfyui-lumi-batcher", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-16T03:46:44.733204Z", + "dependencies": [ + "aiohttp>=3.11.8", + "Pillow>=9.0.0", + "openpyxl>=3.0.0", + "pandas==2.2.0", + "aiofiles==23.2.1", + "filetype==1.2.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a7209f5c-5c6e-4c14-8cce-8a8a1462df7a", + "node_id": "comfyui-lumi-batcher", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-lumi-batcher", + "publisher": { + "createdAt": "2025-06-07T06:20:11.965192Z", + "description": "", + "id": "fighting-tx", + "logo": "", + "members": [], + "name": "Tian Xiang", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bytedance/comfyui-lumi-batcher", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-22T21:11:25.353584Z", + "description": "Provides the ability to set the temperature for both UNET and CLIP. For ComfyUI.", + "downloads": 5455, + "github_stars": 43, + "icon": "", + "id": "stable-diffusion-temperature-settings", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-22T21:11:25.618019Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "61c20a68-dcaf-4c76-b3d1-b183116b0d3e", + "node_id": "stable-diffusion-temperature-settings", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "Stable-Diffusion-temperature-settings", + "publisher": { + "createdAt": "2024-06-22T09:09:31.04495Z", + "description": "", + "id": "extraltodeus", + "logo": "", + "members": [], + "name": "Extraltodeus", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Extraltodeus/Stable-Diffusion-temperature-settings", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-26T10:08:58.160151Z", + "description": "Nodes: VAE Processor, VAE Loader, Background Remover", + "downloads": 2370, + "github_stars": 1, + "icon": "", + "id": "comfyui-custom-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-26T10:09:01.860984Z", + "dependencies": [ + "numpy", + "torch", + "PIL", + "rembg" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a8fa14c8-adf0-4968-9195-41bd74e3f890", + "node_id": "comfyui-custom-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "comfyui-custom-nodes", + "publisher": { + "createdAt": "2024-08-26T09:59:50.89365Z", + "description": "", + "id": "rcsaquino", + "logo": "", + "members": [], + "name": "RC Aquino", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/rcsaquino/comfyui-custom-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-20T04:52:28.286555Z", + "description": "This is a simple ComfyUI node that will take in a string of 'color' (i.e. 'blue') and output a hex color format.", + "downloads": 1173, + "github_stars": 1, + "icon": "", + "id": "comfyui_stringtohex", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-20T04:52:32.078911Z", + "dependencies": [ + "colorcontroller" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7d4b2402-774d-4c76-84a2-f27cc9808980", + "node_id": "comfyui_stringtohex", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_StringToHex", + "publisher": { + "createdAt": "2024-08-20T04:43:53.430302Z", + "description": "", + "id": "kasukanra", + "logo": "", + "members": [], + "name": "kasukanra", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kasukanra/ComfyUI_StringToHex", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-18T09:22:58.20593Z", + "description": "A furry-friendly ComfyUI extension allowing the interrogation of e621 tags from images.", + "downloads": 1289, + "github_stars": 3, + "icon": "", + "id": "comfyui-fd-tagger", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-21T09:28:35.611673Z", + "dependencies": [ + "torch", + "torchvision", + "pillow", + "requests", + "comfyui", + "aiohttp", + "numpy", + "msgspec", + "colorama" + ], + "deprecated": false, + "downloadUrl": "", + "id": "079ff4a9-058c-4b10-94b3-4e4c05607579", + "node_id": "comfyui-fd-tagger", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "LICENSE", + "name": "ComfyUI-FD-Tagger", + "publisher": { + "createdAt": "2024-07-18T09:04:53.424992Z", + "description": "", + "id": "deitydurg", + "logo": "", + "members": [], + "name": "Deity L. Dragon", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/loopyd/ComfyUI-FD-Tagger", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-17T12:51:21.243329Z", + "description": "Custom ComfyUI Nodes for verifing needed files/models are present per workflow, can download if missing.", + "downloads": 552, + "github_stars": 0, + "icon": "", + "id": "comfyui-downloader", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-22T20:44:58.017332Z", + "dependencies": [ + "tqdm", + "requests" + ], + "deprecated": false, + "downloadUrl": "", + "id": "ead6acdc-e4dd-421e-a408-c577f2b7708c", + "node_id": "comfyui-downloader", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-downloader", + "publisher": { + "createdAt": "2024-06-25T20:33:26.18372Z", + "description": "", + "id": "stavsap", + "logo": "", + "members": [], + "name": "Stav Sapir", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/stavsap/comfyui-downloader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-15T22:43:03.939033Z", + "description": "Simple nodes for ComfyUI - Token Counter - Optimal Empty Latent", + "downloads": 884, + "github_stars": 1, + "icon": "", + "id": "ComfyUI_Fens_Simple_Nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-20T22:03:56.523605Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "65741365-7707-40d5-8ded-3378f2dae21d", + "node_id": "ComfyUI_Fens_Simple_Nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "Fens-Simple-Nodes", + "publisher": { + "createdAt": "2025-03-15T19:57:19.846067Z", + "description": "", + "id": "taithrah", + "logo": "", + "members": [], + "name": "Taithrah", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Taithrah/ComfyUI_Fens_Simple_Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-17T10:18:42.014871Z", + "description": "A set of utility nodes for ComfyUI focused on scripting. Includes an enhanced UUID generator node.", + "downloads": 367, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-Scripting-Tools", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-17T12:19:31.854829Z", + "dependencies": [ + "# No external dependencies required" + ], + "deprecated": false, + "downloadUrl": "", + "id": "949c4f81-ad5b-4cc1-a51e-661c366f87f9", + "node_id": "ComfyUI-Scripting-Tools", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Scripting-Tools", + "publisher": { + "createdAt": "2025-05-16T12:34:39.140272Z", + "description": "", + "id": "cluny85", + "logo": "", + "members": [], + "name": "cluny85", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cluny85/ComfyUI-Scripting-Tools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-07T05:38:36.265352Z", + "description": "This is a ComfyUI extension that provides additional API endpoints functionality, primarily designed to support Comfy Portal - a modern iOS client application for ComfyUI.", + "downloads": 737, + "github_stars": 0, + "icon": "", + "id": "portal-endpoint", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-17T05:43:44.772545Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1366af80-957e-4894-87f5-1e70de74cf6d", + "node_id": "portal-endpoint", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfy-portal-endpoint", + "publisher": { + "createdAt": "2025-03-07T05:30:15.354365Z", + "description": "", + "id": "shunl", + "logo": "", + "members": [], + "name": "ShunL12324", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ShunL12324/comfy-portal-endpoint", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-08T17:26:48.834264Z", + "description": "A node to display a toast notification. Use it to send a toast when your prompt is complete. Also pairs well with ComfyUI-Liebs-Picker or cg-image-fitler to be notified when the picker is waiting.\n\nWindows only at the moment - looking for help to support toast backends for MacOS and Linux.", + "downloads": 358, + "github_stars": 0, + "icon": "https://raw.githubusercontent.com/marklieberman/ComfyUI-Liebs-Toast/refs/heads/main/comfy-icon.png", + "id": "liebs-toast", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-08T17:26:49.574031Z", + "dependencies": [ + "windows-toasts; os_name == 'nt'" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f1de8803-eb97-4e08-822c-1da1d3d99dd5", + "node_id": "liebs-toast", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Liebs-Toast", + "publisher": { + "createdAt": "2025-04-27T18:55:33.437033Z", + "description": "", + "id": "markliebs", + "logo": "", + "members": [], + "name": "markliebs", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/marklieberman/ComfyUI-Liebs-Toast", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-27T11:48:56.293439Z", + "description": "A set of custom nodes enabling Text-to-Video support for FramePack-F1", + "downloads": 1166, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-FramePack-F1-T2V", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-27T11:48:56.673316Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "dd7d302e-da82-42ed-b004-acca9cb5c723", + "node_id": "ComfyUI-FramePack-F1-T2V", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-FramePack-F1-T2V", + "publisher": { + "createdAt": "2025-02-08T20:45:59.424144Z", + "description": "", + "id": "dorpxam", + "logo": "", + "members": [], + "name": "dorpxam", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dorpxam/ComfyUI-FramePack-F1-T2V", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-27T00:45:36.466597Z", + "description": "ComfyUI String Similarity Node - Advanced text comparison with multiple algorithms", + "downloads": 257, + "github_stars": 0, + "icon": "", + "id": "string_similarity", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-27T00:59:46.115672Z", + "dependencies": [ + "Levenshtein", + "scikit-learn", + "numpy", + "sentence-transformers" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5b428d03-ddf1-4830-b6af-8c3d6296b491", + "node_id": "string_similarity", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-String-Similarity", + "publisher": { + "createdAt": "2025-05-27T00:09:36.657516Z", + "description": "", + "id": "gabe-init", + "logo": "", + "members": [], + "name": "Gabe", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gabe-init/ComfyUI-String-Similarity", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-23T11:53:04.879659Z", + "description": "An implementation of [spawner1145/TeaCache4Lumina2](https://github.com/spawner1145/TeaCache/blob/main/TeaCache4Lumina2/teacache_lumina2.py) for ComfyUI", + "downloads": 678, + "github_stars": 4, + "icon": "", + "id": "ComfyUI-Lumina2-TeaCache", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-04T14:28:39.360666Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "057f724b-b50d-45ad-a47e-850cb927365c", + "node_id": "ComfyUI-Lumina2-TeaCache", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Lumina2-TeaCache", + "publisher": { + "createdAt": "2025-05-23T11:50:21.2481Z", + "description": "", + "id": "fexli", + "logo": "", + "members": [], + "name": "fexli", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fexli/ComfyUI-Lumina2-TeaCache", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-14T22:48:31.931282Z", + "description": "ComfyUI Wrapper for HiDream with nf4 support for lower vram", + "downloads": 7799, + "github_stars": 482, + "icon": "hhttps://avatars.githubusercontent.com/u/197819028?v=4", + "id": "hidream_sampler", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-14T22:48:32.454386Z", + "dependencies": [ + "transformers>=4.36.0", + "diffusers>=0.26.0", + "torch>=2.0.0", + "numpy>=1.24.0", + "Pillow>=10.0.0", + "bitsandbytes>=0.41.0", + "optimum>=1.12.0", + "accelerate>=0.25.0", + "gptqmodel>=2.2.0", + "device-smi", + "tokenicer", + "threadpoolctl", + "logbar", + "datasets" + ], + "deprecated": false, + "downloadUrl": "", + "id": "745da390-0e70-48ec-b68e-172fc5bdcde4", + "node_id": "hidream_sampler", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_HiDream-Sampler", + "publisher": { + "createdAt": "2025-02-04T21:36:23.988945Z", + "description": "", + "id": "lum3on", + "logo": "", + "members": [], + "name": "Lum3on", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lum3on/comfyui_HiDream-Sampler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-08T23:00:35.220812Z", + "description": "ComfyUI extension for video-based prompting and processing with support for various models and video processing capabilities", + "downloads": 1732, + "github_stars": 48, + "icon": "https://impactframes.ai/System/Icons/48x48/if.png", + "id": "comfyui-if_videoprompts", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-14T13:25:54.966858Z", + "dependencies": [ + "torch>=2.0.0", + "transformers", + "accelerate", + "huggingface_hub>=0.26.0", + "pillow>=9.5.0", + "numpy>=1.24.0", + "opencv-python>=4.8.0", + "decord>=0.6.0", + "ffmpeg-python", + "imageio_ffmpeg>=0.6.0", + "moviepy>=2.1.2", + "tokenizers>=0.15.0", + "safetensors>=0.3.1", + "autoawq==0.2.8", + "tqdm>=4.65.0", + "psutil>=5.9.5", + "packaging>=23.1", + "triton; sys_platform == \"linux\"", + "https://github.com/woct0rdho/triton-windows/releases/download/v3.1.0-windows.post8/triton-3.1.0-cp312-cp312-win_amd64.whl; sys_platform == \"win64\" and (python_version >= \"3.12\" and python_version < \"3.13\")", + "https://github.com/woct0rdho/triton-windows/releases/download/v3.1.0-windows.post8/triton-3.1.0-cp311-cp311-win_amd64.whl; sys_platform == \"win64\" and (python_version >= \"3.11\" and python_version < \"3.12\")", + "https://github.com/woct0rdho/triton-windows/releases/download/v3.1.0-windows.post8/triton-3.1.0-cp310-cp310-win_amd64.whl; sys_platform == \"win64\" and (python_version >= \"3.10\" and python_version < \"3.11\")", + "https://github.com/woct0rdho/triton-windows/releases/download/v3.1.0-windows.post8/triton-3.1.0-cp38-cp38-win_amd64.whl; sys_platform == \"win64\" and (python_version >= \"3.8\" and python_version < \"3.9\")" + ], + "deprecated": false, + "downloadUrl": "", + "id": "79d3738b-f8b2-444d-8a8a-93fea67845d2", + "node_id": "comfyui-if_videoprompts", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.7" + }, + "license": "{\"file\": \"MIT License\"}", + "name": "IF_VideoPrompts", + "publisher": { + "createdAt": "2024-05-22T21:13:45.198878Z", + "description": "", + "id": "impactframes", + "logo": "", + "members": [], + "name": "impactframes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/if-ai/ComfyUI-IF_VideoPrompts", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-25T07:27:07.743884Z", + "description": "Break the execution, save the incompleted image then continue later.", + "downloads": 260, + "github_stars": 1, + "icon": "", + "id": "comfyui-break-workflow", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-25T07:27:08.134296Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "24679bd7-083b-4582-8abd-72fd44d44f23", + "node_id": "comfyui-break-workflow", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-break-workflow", + "publisher": { + "createdAt": "2024-07-03T02:48:16.838562Z", + "description": "", + "id": "shinich39", + "logo": "", + "members": [], + "name": "shinich39", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shinich39/comfyui-break-workflow", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-27T00:32:01.319843Z", + "description": "ComfyUI ElevenLabs TTS Node - Text-to-speech integration with advanced voice controls", + "downloads": 357, + "github_stars": 2, + "icon": "", + "id": "11labs", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-27T00:32:01.748476Z", + "dependencies": [ + "requests>=2.25.0", + "torch>=2.0.0", + "torchaudio>=2.0.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f78ec07d-d43d-428d-8d53-33403dea07d9", + "node_id": "11labs", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-11labs", + "publisher": { + "createdAt": "2025-05-27T00:09:36.657516Z", + "description": "", + "id": "gabe-init", + "logo": "", + "members": [], + "name": "Gabe", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gabe-init/ComfyUI-11labs", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-17T09:09:04.415246Z", + "description": "Add vertical and horizontal video grid support", + "downloads": 475, + "github_stars": 0, + "icon": "", + "id": "comfyui_videogrid", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-17T10:10:38.647414Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b1629f35-049e-48da-9606-81a96f65ca25", + "node_id": "comfyui_videogrid", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.3" + }, + "license": "{\"text\": \"GNU General Public License v3\"}", + "name": "ComfyUI-VideoGrid", + "publisher": { + "createdAt": "2025-04-17T08:52:02.103396Z", + "description": "", + "id": "stevenwg", + "logo": "", + "members": [], + "name": "Luffy", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/stevenwg/ComfyUI-VideoGrid", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-20T10:30:05.653782Z", + "description": "Custom node for ComfyUI to show values of primitives (str, float, int, or bool).", + "downloads": 678, + "github_stars": 0, + "icon": "", + "id": "comfyui-display-value", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-25T23:03:00.291221Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "41bd8e63-ab6e-44e2-a17d-3150a50787e6", + "node_id": "comfyui-display-value", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Display-Value", + "publisher": { + "createdAt": "2024-09-19T17:24:53.212385Z", + "description": "", + "id": "edelvarden", + "logo": "", + "members": [], + "name": "edelvarden", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/edelvarden/ComfyUI-Display-Value", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-16T16:47:45.292938Z", + "description": "\ud83c\udfa7Ultra High-Quality Voice Cloning, Chinese and English.", + "downloads": 463, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-AV-MegaTTS3", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-17T10:24:13.849472Z", + "dependencies": [ + "setproctitle", + "attrdict", + "librosa", + "pydub", + "pyloudnorm", + "x-transformers", + "torchdiffeq", + "openai-whisper>=20240930", + "torch>=2.0.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1220c7b7-54eb-485c-a335-4938cb45993c", + "node_id": "ComfyUI-AV-MegaTTS3", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-AV-MegaTTS3", + "publisher": { + "createdAt": "2025-04-16T14:14:31.729599Z", + "description": "", + "id": "av", + "logo": "", + "members": [], + "name": "Aven", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/avenstack/ComfyUI-AV-MegaTTS3", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-16T05:30:10.791404Z", + "description": "Another dynamic prompt node, designed to be easy to use and support wildcards", + "downloads": 356, + "github_stars": 0, + "icon": "", + "id": "gprompts", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-16T05:30:11.169901Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "294882d5-1e37-4375-8876-0d7dfd59627d", + "node_id": "gprompts", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_gprompts", + "publisher": { + "createdAt": "2024-10-11T15:09:30.081892Z", + "description": "", + "id": "gadzoinksofficial", + "logo": "", + "members": [], + "name": "gadzoinksofficial", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/GadzoinksOfficial/comfyui_gprompts", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-10T01:57:56.845442Z", + "description": "An extension to modify the browser tab title when running ComfyUI workflows.", + "downloads": 298, + "github_stars": 0, + "icon": "https://raw.githubusercontent.com/marklieberman/ComfyUI-Liebs-Title/refs/heads/main/comfy-icon.png", + "id": "liebs-title", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-12T23:32:54.528422Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "e51e715f-693c-4914-b18a-4174f6e6fe8b", + "node_id": "liebs-title", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Liebs-Title", + "publisher": { + "createdAt": "2025-04-27T18:55:33.437033Z", + "description": "", + "id": "markliebs", + "logo": "", + "members": [], + "name": "markliebs", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/marklieberman/ComfyUI-Liebs-Title", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "https://thumbs.dreamstime.com/b/digital-circuit-board-pattern-technology-background-abstract-futuristic-illustration-high-computer-hi-tech-concept-162111510.jpg", + "category": "", + "created_at": "2024-05-27T02:11:05.574876Z", + "description": "Extract the most common colors from an image, up to any number. Convert colors to plain English names using various color naming systems.", + "downloads": 1901, + "github_stars": 13, + "icon": "https://img.icons8.com/?size=100&id=daqKfa4vY4JR&format=png&color=000000", + "id": "img2colors-comfyui-node", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-05T18:49:24.343889Z", + "dependencies": [ + "colornamer==0.2.3", + "scikit_learn>=1.4.0", + "webcolors==1.13" + ], + "deprecated": false, + "downloadUrl": "", + "id": "4642926e-a01b-4bad-826b-3511444b46bc", + "node_id": "img2colors-comfyui-node", + "status": "NodeVersionStatusActive", + "supported_accelerators": [ + "CUDA" + ], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "Windows" + ], + "version": "1.0.3" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "Img2color - Extract Colors from Image", + "publisher": { + "createdAt": "2024-05-26T02:18:06.707962Z", + "description": "", + "id": "christian-byrne", + "logo": "", + "members": [], + "name": "christian-byrne", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/christian-byrne/img2colors-comfyui-node", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-11T21:18:00.387395Z", + "description": "Prevent sleep while running ComfyUI.", + "downloads": 319, + "github_stars": 1, + "icon": "", + "id": "comfyui-prevent-sleep", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-11T21:18:00.776453Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "365fc831-da03-46a8-9787-d8ecd24ff766", + "node_id": "comfyui-prevent-sleep", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-prevent-sleep", + "publisher": { + "createdAt": "2024-07-03T02:48:16.838562Z", + "description": "", + "id": "shinich39", + "logo": "", + "members": [], + "name": "shinich39", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shinich39/comfyui-prevent-sleep", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-28T03:02:56.681436Z", + "description": "ComfyUI-YogurtNodes is a collection of custom nodes for ComfyUI, providing a series of practical image processing and workflow enhancement functionalities.", + "downloads": 621, + "github_stars": 0, + "icon": "", + "id": "yogurtnodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-21T10:08:40.9956Z", + "dependencies": [ + "numpy", + "pillow", + "google-genai", + "openai", + "requests", + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "da52221a-4c36-4608-9c4e-5243fe626a65", + "node_id": "yogurtnodes", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.8.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-YogurtNodes", + "publisher": { + "createdAt": "2025-04-28T03:01:00.934698Z", + "description": "", + "id": "yogurt7771", + "logo": "", + "members": [], + "name": "Yogurt", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yogurt7771/ComfyUI-YogurtNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-11T21:31:17.836268Z", + "description": "Fix node to top.", + "downloads": 299, + "github_stars": 0, + "icon": "", + "id": "comfyui-no-one-above-me", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-11T21:31:18.206955Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "d5030cdd-cb0a-470c-a40e-0c3543a66481", + "node_id": "comfyui-no-one-above-me", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-no-one-above-me", + "publisher": { + "createdAt": "2024-07-03T02:48:16.838562Z", + "description": "", + "id": "shinich39", + "logo": "", + "members": [], + "name": "shinich39", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shinich39/comfyui-no-one-above-me", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-11T21:14:56.070389Z", + "description": "Load new workflow after mask editing.", + "downloads": 318, + "github_stars": 0, + "icon": "", + "id": "comfyui-innnnnpaint", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-11T21:14:56.443977Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "dd0b027a-2270-40aa-9c32-5b2647019fbe", + "node_id": "comfyui-innnnnpaint", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-innnnnpaint", + "publisher": { + "createdAt": "2024-07-03T02:48:16.838562Z", + "description": "", + "id": "shinich39", + "logo": "", + "members": [], + "name": "shinich39", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shinich39/comfyui-innnnnpaint", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-08T22:46:49.904817Z", + "description": "A node for ComfyUI that provides a convenient way of resizing or cropping an image for diffusion tasks.", + "downloads": 411, + "github_stars": 0, + "icon": "https://example.com/icon.png", + "id": "comfyui-imageautosize", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-08T22:46:50.882678Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4326e2a9-64fe-4f55-a1ab-653067aaad36", + "node_id": "comfyui-imageautosize", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.1" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-ImageAutosize", + "publisher": { + "createdAt": "2024-11-22T01:36:07.508549Z", + "description": "", + "id": "sparknight", + "logo": "", + "members": [], + "name": "Sparknight", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SparknightLLC/ComfyUI-ImageAutosize", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-07T10:08:12.910073Z", + "description": "NODES: Audio Recorder, Line Counter, Increment INT, Image Processor, Load 3D Mesh From Outputs", + "downloads": 2628, + "github_stars": 0, + "icon": "", + "id": "ncnodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-20T01:05:02.814344Z", + "dependencies": [ + "ffmpeg-python", + "transparent_background" + ], + "deprecated": false, + "downloadUrl": "", + "id": "76432217-fb0a-44b6-a949-093d3b60207b", + "node_id": "ncnodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-NCNodes", + "publisher": { + "createdAt": "2025-04-07T09:45:37.62641Z", + "description": "", + "id": "ncreature", + "logo": "", + "members": [], + "name": "NightCreature", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Siempreflaco/ComfyUI-NCNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-09T13:47:53.751325Z", + "description": "A custom node for ComfyUI that allows you to send images directly to [a/Eagle](https://jp.eagle.cool/).", + "downloads": 338, + "github_stars": 0, + "icon": "", + "id": "eagle-feeder", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-11T15:56:47.404946Z", + "dependencies": [ + "loguru==0.7.3", + "Pillow==11.2.1", + "Requests==2.32.3", + "torch==2.6.0", + "torchvision==0.21.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "ccb20573-1918-461e-bdf1-5e318b05abfc", + "node_id": "eagle-feeder", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-eagle-feeder", + "publisher": { + "createdAt": "2025-05-09T13:24:18.099788Z", + "description": "", + "id": "tighug", + "logo": "", + "members": [], + "name": "tighug", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tighug/comfyui-eagle-feeder", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-09T14:34:51.173159Z", + "description": "Custom ComfyUI nodes for face detection, annotation, and creative compositing using OpenCV and PIL. Ideal for advanced image processing workflows.", + "downloads": 403, + "github_stars": 0, + "icon": "icon.svg", + "id": "comfyui-facecalloutnode", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-09T14:34:51.564176Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "47699c46-9251-4da1-8a33-926d753fe3d1", + "node_id": "comfyui-facecalloutnode", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-FaceCalloutNode", + "publisher": { + "createdAt": "2025-01-16T15:55:57.198675Z", + "description": "", + "id": "theshubzworld", + "logo": "", + "members": [], + "name": "Shubz World", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/theshubzworld/ComfyUI-FaceCalloutNode", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-11T21:12:45.430027Z", + "description": "Load workflow from civitai image.", + "downloads": 701, + "github_stars": 0, + "icon": "", + "id": "comfyui-civitai-workflow", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-11T16:48:11.195241Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "23b333fe-6468-4f11-9576-b42e3adb8ed5", + "node_id": "comfyui-civitai-workflow", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-civitai-workflow", + "publisher": { + "createdAt": "2024-07-03T02:48:16.838562Z", + "description": "", + "id": "shinich39", + "logo": "", + "members": [], + "name": "shinich39", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shinich39/comfyui-civitai-workflow", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-20T00:00:55.798567Z", + "description": "A collection of personal ComfyUI nodes designed to enhance and automate workflows.", + "downloads": 428, + "github_stars": 0, + "icon": "https://raw.githubusercontent.com/AstroCorp/ComfyUI-AstroCorp-Nodes/refs/heads/master/icon.png", + "id": "comfyui-astrocorp-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-07T22:36:20.286076Z", + "dependencies": [ + "huggingface-hub", + "transformers" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e7362c2e-f0d2-4cb4-be18-2d7c401acb43", + "node_id": "comfyui-astrocorp-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-AstroCorp-Nodes", + "publisher": { + "createdAt": "2025-04-19T17:58:02.317208Z", + "description": "", + "id": "astrocorp", + "logo": "", + "members": [], + "name": "AstroCorp", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AstroCorp/ComfyUI-AstroCorp-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-03T00:47:46.290056Z", + "description": "multiline text node that strips c-style comments (i.e.'//' and '/* ... */') before passing output string downstream ", + "downloads": 1442, + "github_stars": 2, + "icon": "", + "id": "text-node-with-comments", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-03T00:54:52.242988Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "80e786fa-64dc-4d1c-a978-26aef728c1f9", + "node_id": "text-node-with-comments", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "Text Node With Comments (@cdxoo)", + "publisher": { + "createdAt": "2024-07-27T11:52:32.86809Z", + "description": "", + "id": "cdxoo", + "logo": "", + "members": [], + "name": "cdxoo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cdxOo/comfyui-text-node-with-comments", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-09T14:23:10.646616Z", + "description": "A custom node for ComfyUI that classifies images into NSFW (Not Safe For Work) categories.", + "downloads": 333, + "github_stars": 1, + "icon": "", + "id": "rating-checker", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-09T14:23:11.046274Z", + "dependencies": [ + "loguru==0.7.3", + "nudenet==3.4.2", + "numpy==2.2.5", + "onnxruntime==1.21.1", + "onnxruntime_gpu==1.21.1", + "Pillow==11.2.1", + "Requests==2.32.3", + "timm==1.0.15", + "torch==2.6.0", + "torchvision==0.21.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d5e5e567-9bfa-416b-856d-cd6c4125e5a9", + "node_id": "rating-checker", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-rating-checker", + "publisher": { + "createdAt": "2025-05-09T13:24:18.099788Z", + "description": "", + "id": "tighug", + "logo": "", + "members": [], + "name": "tighug", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tighug/comfyui-rating-checker", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-24T01:32:58.462747Z", + "description": "A ComfyUI custom node plugin for assembling prompts. It allows you to generate positive and negative prompts by selecting different options.", + "downloads": 713, + "github_stars": 0, + "icon": "", + "id": "promptcomposer", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-24T03:14:15.863404Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3469641d-2356-4e1d-bc91-0d0dab5826a8", + "node_id": "promptcomposer", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI-PromptComposer", + "publisher": { + "createdAt": "2025-04-24T01:06:57.660547Z", + "description": "", + "id": "excelwong", + "logo": "", + "members": [], + "name": "Excel Wong", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/excelwong/ComfyUI-PromptComposer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-22T00:32:09.334842Z", + "description": "A node for ComfyUI that picks from `input_a` and `input_b` based on the given `chance`.", + "downloads": 407, + "github_stars": 0, + "icon": "https://example.com/icon.png", + "id": "comfyui-weightedrandomchoice", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-22T00:32:10.770192Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "24b642b3-7dcf-4feb-83ca-4178bcfa5026", + "node_id": "comfyui-weightedrandomchoice", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.2" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-WeightedRandomChoice", + "publisher": { + "createdAt": "2024-11-22T01:36:07.508549Z", + "description": "", + "id": "sparknight", + "logo": "", + "members": [], + "name": "Sparknight", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SparknightLLC/ComfyUI-WeightedRandomChoice", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-08T14:10:38.347358Z", + "description": "Helps deciding different settings depending on the input string", + "downloads": 379, + "github_stars": 1, + "icon": "", + "id": "comfyui-customselector", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-09T06:19:28.377995Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "fa84256e-6bd8-41db-8e43-b0056d7a8936", + "node_id": "comfyui-customselector", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-customselector", + "publisher": { + "createdAt": "2025-05-07T13:06:56.573644Z", + "description": "", + "id": "pixible", + "logo": "", + "members": [], + "name": "pixible", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gasparuff/CustomSelector", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-22T13:26:25.527105Z", + "description": "ComfyUI nodes to simplify my tiled render", + "downloads": 441, + "github_stars": 0, + "icon": "", + "id": "vk-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-22T13:26:25.952541Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1441c9b4-b6ef-44ab-b62f-a3fcd4488706", + "node_id": "vk-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "vk-nodes", + "publisher": { + "createdAt": "2025-04-22T13:22:34.949711Z", + "description": "", + "id": "vk", + "logo": "", + "members": [], + "name": "VK", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/VK/vk-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-30T23:37:35.671212Z", + "description": "This custom node uses OpenAI Image API to generate image (if no input image is provided) or edit image (if input image is provided) with the latest gpt-image-1 model. To use it, you will need to provide your OpenAI API key. This makes the node to be friendly for situations where ComfyUi serves as API server, because you don't have to login like the official OpenAI GPT Image 1 node does.", + "downloads": 834, + "github_stars": 0, + "icon": "", + "id": "comfy_openai_image_api", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-01T02:22:19.141049Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "876d4f86-e7aa-46d9-b96c-c7ee2e6dec02", + "node_id": "comfy_openai_image_api", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.4" + }, + "license": "{\"text\": \"MIT license\"}", + "name": "OpenAI Image API", + "publisher": { + "createdAt": "2025-04-30T23:10:27.263241Z", + "description": "", + "id": "unicough", + "logo": "", + "members": [], + "name": "X Huang", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/unicough/comfy_openai_image_api.git", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-08T02:25:54.521503Z", + "description": "Upload image from comfyui to WordPress add your site setting in file wordpress_config.json", + "downloads": 309, + "github_stars": 0, + "icon": "", + "id": "wordpress", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-08T02:25:54.925476Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3133f65b-9c63-471a-9e34-a429a67846b7", + "node_id": "wordpress", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_wordpress", + "publisher": { + "createdAt": "2025-05-08T02:21:42.798194Z", + "description": "", + "id": "kingblack7313", + "logo": "", + "members": [], + "name": "Seyyed Mohsen Sadat Rasool", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mohsensd1373/comfyui_wordpress", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-23T20:46:38.375068Z", + "description": "A collection of custom nodes for ComfyUI featuring lightweight AI vision and tagger models (SmolVLM & SmolVLM2, JoyTagger, MiaoshouAI), few simple text processing tools, and wildcard prompt utilities.", + "downloads": 1346, + "github_stars": 1, + "icon": "", + "id": "comfyui_dados_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-09T10:35:47.799101Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "80d7b88f-e576-4a83-ba9c-6dfebb146621", + "node_id": "comfyui_dados_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.8.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Dados Nodes", + "publisher": { + "createdAt": "2024-08-23T20:20:48.091387Z", + "description": "", + "id": "dadoirie", + "logo": "", + "members": [], + "name": "Dado", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dadoirie/ComfyUI_Dados_Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-08T00:47:20.644216Z", + "description": "", + "downloads": 738, + "github_stars": 0, + "icon": "", + "id": "ComfyUI_Mel_Nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-26T22:49:12.787773Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "af20763e-986a-4051-92e1-be2c220f724b", + "node_id": "ComfyUI_Mel_Nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Mel_Nodes", + "publisher": { + "createdAt": "2025-04-06T11:54:48.952259Z", + "description": "", + "id": "nakoko", + "logo": "", + "members": [], + "name": "nakoko", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nako-nakoko/ComfyUI_Mel_Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-06T01:29:30.202586Z", + "description": "A custom ComfyUI extension to compare two video/image sequences via wipe preview.", + "downloads": 560, + "github_stars": 2, + "icon": "icon.png", + "id": "Compare_videos", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-06T01:29:30.574907Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3afbe65a-3cc9-4678-8dcd-85d18fd86ca0", + "node_id": "Compare_videos", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Compare Videos", + "publisher": { + "createdAt": "2025-05-06T00:03:26.77105Z", + "description": "", + "id": "matoo", + "logo": "", + "members": [], + "name": "Surinder singh", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/surinder83singh/ComfyUI-compare-videos", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-23T00:29:53.984163Z", + "description": "Nodes: Interval Sampler, Random Find and Replace, Empty Latent Image from Aspect-Ratio, CLIPTextEncodeSDXL-Multi-IO, CLIPTextEncodeSDXL-Pipe", + "downloads": 2950, + "github_stars": 1, + "icon": "", + "id": "braintacles-comfyui-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-23T06:06:34.85479Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "0e025301-0fe0-41d3-89b1-23dbc854b8b6", + "node_id": "braintacles-comfyui-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "LICENSE", + "name": "braintacles-comfyui-nodes", + "publisher": { + "createdAt": "2024-05-23T00:24:25.554274Z", + "description": "", + "id": "braintacles", + "logo": "", + "members": [], + "name": "Braintacles", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/braintacles/braintacles-comfyui-nodes", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-16T10:38:08.095329Z", + "description": "Provides a custom node to load config for sampler nodes from a yaml file.", + "downloads": 1863, + "github_stars": 1, + "icon": "", + "id": "comfyui-checkpoint-config-loader", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-16T10:38:11.643974Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "dba2a11c-48e9-4904-ae93-c0bf22e0883c", + "node_id": "comfyui-checkpoint-config-loader", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "GPL-3.0", + "name": "ComfyUI-checkpoint-config-loader", + "publisher": { + "createdAt": "2024-07-16T10:32:29.959135Z", + "description": "", + "id": "cyberschorsch", + "logo": "", + "members": [], + "name": "Cyberschorsch", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Cyberschorsch/ComfyUI-checkpoint-config-loader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-26T08:26:29.77624Z", + "description": "A ComfyUI node that will block images that flag custom set key words", + "downloads": 373, + "github_stars": 0, + "icon": "", + "id": "keywordimageblocker", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-07T17:26:07.427184Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ca97f959-1e92-4284-b9de-0eccf3df566e", + "node_id": "keywordimageblocker", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Key Word Image Blocker", + "publisher": { + "createdAt": "2025-04-26T07:15:37.919735Z", + "description": "", + "id": "lofi", + "logo": "", + "members": [], + "name": "Late Night AI", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/JustLateNightAI/KeywordImageBlocker", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-23T17:49:55.149703Z", + "description": "A collection of common tools for comfyui", + "downloads": 1360, + "github_stars": 1, + "icon": "", + "id": "comfyui-common-util", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-23T17:49:59.002861Z", + "dependencies": [ + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c5a7d596-3d65-4023-9fa6-60b5c4c9338f", + "node_id": "comfyui-common-util", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "comfyui-common-util", + "publisher": { + "createdAt": "2024-05-24T07:30:11.627807Z", + "description": "", + "id": "longgui0318", + "logo": "", + "members": [], + "name": "\u72d7\u7684\u8d1d", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/longgui0318/comfyui-common-util", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-15T02:10:36.557701Z", + "description": "Save Image/Latent to Shared Memory", + "downloads": 640, + "github_stars": 0, + "icon": "", + "id": "savemem", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-15T02:10:36.978114Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ca12279d-e018-4a26-96b1-65b1b5259c2e", + "node_id": "savemem", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-savemem", + "publisher": { + "createdAt": "2025-04-15T01:44:35.477678Z", + "description": "", + "id": "hnmr293", + "logo": "", + "members": [], + "name": "hnmr", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hnmr293/comfyui-savemem", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-18T16:44:52.432394Z", + "description": "Syntax highlighting and other quality of life improvements for ComfyUI.", + "downloads": 733, + "github_stars": 1, + "icon": "", + "id": "syntax-highlighting", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-30T11:57:15.517154Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "7a2b25aa-ac60-4a04-af36-c4aa1c9207a0", + "node_id": "syntax-highlighting", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Syntax-Highlighting", + "publisher": { + "createdAt": "2024-06-19T13:56:59.640253Z", + "description": "", + "id": "sn0w", + "logo": "", + "members": [], + "name": "Sn0w", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sn0w12/ComfyUI-Syntax-Highlighting", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-12T12:22:30.526968Z", + "description": "String Chain: Reconnect your prompts", + "downloads": 533, + "github_stars": 0, + "icon": "", + "id": "string-chain", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-12T12:22:30.920854Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c62c99e1-4f04-41e9-8a78-ca5967a60405", + "node_id": "string-chain", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-String-Chain", + "publisher": { + "createdAt": "2025-04-12T12:04:13.931004Z", + "description": "", + "id": "uihp", + "logo": "", + "members": [], + "name": "UI#\u03a0", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/uihp/ComfyUI-String-Chain", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-07T06:41:46.870192Z", + "description": "Precision dimension control nodes for aspect ratio adjustments and resizing workflows", + "downloads": 839, + "github_stars": 1, + "icon": "", + "id": "image-resizing", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-25T14:44:03.374918Z", + "dependencies": [ + "torch>=2.0.0", + "Pillow>=10.0.0", + "numpy>=1.24.0", + "opencv-python>=4.8.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "9a738994-93a0-4739-972e-f75c34019806", + "node_id": "image-resizing", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Image-Resizing", + "publisher": { + "createdAt": "2025-04-07T06:15:14.211114Z", + "description": "", + "id": "zar4x", + "logo": "", + "members": [], + "name": "Zar4X", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Zar4X/ComfyUI-Image-Resizing", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-16T09:09:54.471403Z", + "description": "This node is a node made by GMapeSplat/ComfyUI_ezXY that i copied while his node doesn't work", + "downloads": 1108, + "github_stars": 1, + "icon": "", + "id": "ComfyUI-SelectStringFromListWithIndex", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-16T09:09:54.859456Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "d2d0ca85-84ce-4db0-bf79-85e880047e2d", + "node_id": "ComfyUI-SelectStringFromListWithIndex", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-SelectStringFromListWithIndex", + "publisher": { + "createdAt": "2025-02-16T08:56:46.303982Z", + "description": "", + "id": "wirytiox", + "logo": "", + "members": [], + "name": "ComfyUI-SelectStringFromListWithIndex", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wirytiox/ComfyUI-SelectStringFromListWithIndex", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-15T05:13:11.150582Z", + "description": "Custom nodes use topazvideoai in comfyui.", + "downloads": 6262, + "github_stars": 220, + "icon": "", + "id": "topazvideoai", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-16T12:29:42.930556Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "2c6f018f-1f6e-4cff-a22d-fc59ca519856", + "node_id": "topazvideoai", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-TopazVideoAI", + "publisher": { + "createdAt": "2025-01-14T08:02:55.855601Z", + "description": "", + "id": "sh570655308", + "logo": "", + "members": [], + "name": "Raven", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sh570655308/ComfyUI-TopazVideoAI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-21T02:41:02.233Z", + "description": "NODES: Comfly_Mj, Comfly_mjstyle, Comfly_upload, Comfly_Mju, Comfly_Mjv, Comfly_kling_videoPreview", + "downloads": 1887, + "github_stars": 283, + "icon": "", + "id": "Comfyui_Comfly", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-21T02:41:03.96458Z", + "dependencies": [ + "aiohttp", + "aiohttp-cors", + "GitPython", + "numpy", + "Pillow", + "requests", + "matrix-client", + "transformers", + "huggingface-hub", + "psutil" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b2602c36-3238-44b3-a940-d1c4e6a5882f", + "node_id": "Comfyui_Comfly", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfyui_Comfly", + "publisher": { + "createdAt": "2025-02-20T05:01:35.233923Z", + "description": "", + "id": "comfly", + "logo": "", + "members": [], + "name": "comfly", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ainewsto/Comfyui_Comfly", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-25T17:11:22.692992Z", + "description": "Just a Sampler and another settings pipe for comfyui", + "downloads": 632, + "github_stars": 0, + "icon": "", + "id": "Comfyui-EasySettingPipes", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-31T03:51:30.668466Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "23e60d59-3e25-40d8-a755-5df91f617b5e", + "node_id": "Comfyui-EasySettingPipes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.4" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "EasySettingPipes", + "publisher": { + "createdAt": "2025-03-25T15:00:33.849023Z", + "description": "", + "id": "hayde0096", + "logo": "", + "members": [], + "name": "Hayde0096", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hayde0096/Comfyui-EasySettingpipes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-30T13:46:22.43603Z", + "description": "Custom nodes for convenient filtering image or string lists in ComfyUI workflow.", + "downloads": 1485, + "github_stars": 0, + "icon": "", + "id": "comfyui-list-filter", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-30T13:46:26.236002Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "24ca7c81-797c-47b6-89c0-a2ebb98f5631", + "node_id": "comfyui-list-filter", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-list-filter", + "publisher": { + "createdAt": "2024-09-30T13:18:28.700466Z", + "description": "", + "id": "kesin11", + "logo": "", + "members": [], + "name": "Kesin11", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Kesin11/ComfyUI-list-filter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-26T23:09:28.760959Z", + "description": "NODES:Save Image and ntfy", + "downloads": 1151, + "github_stars": 0, + "icon": "", + "id": "comfyui-ntfy", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-26T23:09:32.511677Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c3fcba13-3265-47b2-be61-06f73e132756", + "node_id": "comfyui-ntfy", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ntfy", + "publisher": { + "createdAt": "2024-08-26T18:26:45.478261Z", + "description": "", + "id": "boredofnames", + "logo": "", + "members": [], + "name": "Anthony K.", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/boredofnames/ComfyUI-ntfy", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-01T01:07:50.732617Z", + "description": "Just a simple substring node that takes text and length as input, and outputs the first length characters.", + "downloads": 1308, + "github_stars": 0, + "icon": "", + "id": "comfyui_substring", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-24T17:12:38.990052Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4c2c3213-362b-48c8-a89d-e7af781e4c78", + "node_id": "comfyui_substring", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI_Substring", + "publisher": { + "createdAt": "2024-07-01T00:53:17.277147Z", + "description": "", + "id": "godspede", + "logo": "", + "members": [], + "name": "godspede", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/godspede/ComfyUI_Substring", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-17T07:17:14.368548Z", + "description": "A collection of useful nodes for ComfyUI", + "downloads": 940, + "github_stars": 1, + "icon": "https://raw.githubusercontent.com/mohseni-mr/ComfyUI-Mohseni-Kit/main/assets/mohseni_logo.svg", + "id": "ComfyUI-Mohseni-Kit", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-17T07:17:14.757575Z", + "dependencies": [ + "PyQt6", + "ftfy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "989c8aff-f437-4a4d-bcfe-f782c3cb5e58", + "node_id": "ComfyUI-Mohseni-Kit", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Mohseni-Kit", + "publisher": { + "createdAt": "2025-02-17T07:04:14.993194Z", + "description": "", + "id": "mohseni-mr", + "logo": "", + "members": [], + "name": "Mohammadreza Mohseni", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mohseni-mr/ComfyUI-Mohseni-Kit", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-16T23:12:23.180559Z", + "description": "A ComfyUI node that provides advanced image adjustment filters and controls for image manipulation", + "downloads": 1178, + "github_stars": 0, + "icon": "", + "id": "comfyui-kmcdev-image-filter-adjustments", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-19T06:54:13.908105Z", + "dependencies": [ + "numpy", + "Pillow", + "torch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a8b3a480-89ca-4a01-8281-2a4bfdf931c1", + "node_id": "comfyui-kmcdev-image-filter-adjustments", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "KMCDev Nodes", + "publisher": { + "createdAt": "2025-02-16T20:05:08.081009Z", + "description": "", + "id": "kevinmcmahondev", + "logo": "", + "members": [], + "name": "Kevin McMahon", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kevinmcmahondev/comfyui-kmcdev-image-filter-adjustments", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-24T10:59:42.47976Z", + "description": "OpenCV nodes for ComfyUI", + "downloads": 1872, + "github_stars": 0, + "icon": "", + "id": "ComfyUI_OpenCV", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-24T10:59:42.858536Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "2cb57254-0424-4ba3-8bc4-07db18d92ac2", + "node_id": "ComfyUI_OpenCV", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.1" + }, + "license": "{\"text\": \"Apache Software License 2.0\"}", + "name": "ComfyUI_OpenCV", + "publisher": { + "createdAt": "2025-03-22T16:17:02.031687Z", + "description": "", + "id": "piggydance", + "logo": "", + "members": [], + "name": "PiggyDance", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/PiggyDance/ComfyUI_OpenCV", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-13T00:57:13.77188Z", + "description": "A custom nodes package for ComfyUI that enhances workflow flexibility by providing specialized nodes for saving and loading intermediate data (encoded prompts and sampled latents) in multiple formats. This package leverages helper classes for file I/O, supports gzip compression for efficient storage, and integrates progress feedback via a progress bar to improve user experience during long operations.", + "downloads": 1524, + "github_stars": 1, + "icon": "https://comfyui-io-helpers.s3.us-east-1.amazonaws.com/comfyui-io-helpers-scaled-banner.png", + "id": "io-helpers", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-13T14:29:47.769739Z", + "dependencies": [ + "torch>=1.7", + "numpy>=1.19", + "safetensors>=0.1.0", + "dill>=0.3.3", + "requests", + "aiohttp", + "Pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e81dd9b1-b6a5-411d-924b-7579b349e07e", + "node_id": "io-helpers", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.9" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-IO-Helpers", + "publisher": { + "createdAt": "2025-02-13T00:07:04.117022Z", + "description": "", + "id": "austinbrown34", + "logo": "", + "members": [], + "name": "Austin Brown", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/austinbrown34/ComfyUI-IO-Helpers", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-12T09:19:47.2244Z", + "description": "A custom node for ComfyUI that integrates LM Studio's vision models to generate text descriptions of images. It provides a flexible and customizable way to add image-to-text capabilities to your ComfyUI workflows, working with LM Studio's local API.", + "downloads": 5257, + "github_stars": 18, + "icon": "https://uuhwiahvfvrzsenphewc.supabase.co/storage/v1/object/public/phormulate-media-bucket/lmstudio-comfyui.png", + "id": "comfyui-lmstudio-image-to-text-node", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-11T07:28:18.106296Z", + "dependencies": [ + "lmstudio>=1.2.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d7479cda-334d-482b-8887-570c9000782d", + "node_id": "comfyui-lmstudio-image-to-text-node", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.16" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-lmstudio-image-to-text-node", + "publisher": { + "createdAt": "2024-07-12T09:03:35.54916Z", + "description": "", + "id": "expo", + "logo": "", + "members": [], + "name": "Expo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mattjohnpowell/comfyui-lmstudio-image-to-text-node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-07T19:12:19.58445Z", + "description": "This package provides custom nodes to ComfyUI to POST data to a secure API.", + "downloads": 1130, + "github_stars": 0, + "icon": "", + "id": "secureapicall", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-07T23:56:16.675646Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "9b8257c6-cdf1-41fc-ad53-32072efb07d2", + "node_id": "secureapicall", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-SecureApiCall", + "publisher": { + "createdAt": "2025-02-07T19:07:08.91332Z", + "description": "", + "id": "mattabyte", + "logo": "", + "members": [], + "name": "MattaByte", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Mattabyte/ComfyUI-SecureApiCall", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-10T01:10:09.915447Z", + "description": "A collection of custom nodes for using the Stability AI API in ComfyUI.", + "downloads": 1128, + "github_stars": 0, + "icon": "", + "id": "comfyui-stability-ai-api", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-17T15:09:40.342611Z", + "dependencies": [ + "requests==2.32.3", + "configparser==7.1.0", + "numpy==1.24.3", + "torch==2.1.1+cu121" + ], + "deprecated": false, + "downloadUrl": "", + "id": "3ef8b8d6-ee59-4942-b2d1-95b640f8fda6", + "node_id": "comfyui-stability-ai-api", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Stability-AI-API", + "publisher": { + "createdAt": "2024-08-24T05:44:13.928977Z", + "description": "", + "id": "yas-ponotech", + "logo": "", + "members": [], + "name": "Yas | PONOTECH", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yhayano-ponotech/comfyui-stability-ai-api", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-28T07:53:05.379402Z", + "description": "ComfyUI-SendToDiscord is a custom node for ComfyUI that simplifies sending preview images to Discord via webhooks. It supports both single-image uploads and batch mode, making it an efficient tool for sharing your generated images directly with your Discord server.", + "downloads": 1184, + "github_stars": 0, + "icon": "https://raw.githubusercontent.com/gmorks/ComfyUI-SendToDiscord/refs/heads/main/media/icon.svg", + "id": "comfyui-sendtodiscord", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-14T03:00:47.033381Z", + "dependencies": [ + "Pillow>=9.5.0", + "requests>=2.28.2", + "numpy>=1.23.5" + ], + "deprecated": false, + "downloadUrl": "", + "id": "0c706794-8527-462d-9032-42b341e3acf8", + "node_id": "comfyui-sendtodiscord", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-SendToDiscord", + "publisher": { + "createdAt": "2025-01-28T06:31:16.789565Z", + "description": "", + "id": "gmorks", + "logo": "", + "members": [], + "name": "Gmorks", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gmorks/ComfyUI-SendToDiscord", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-10T07:21:51.790744Z", + "description": "This repository packages the latest BiRefNet model as a ComfyUI node for use, supporting chunked loading on both CPU and GPU, as well as model caching features.", + "downloads": 1928, + "github_stars": 10, + "icon": "", + "id": "comfyui-birefnet-super", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-02T02:39:31.506132Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "371e4286-5d01-4bdb-b1f9-0ae2a27547e6", + "node_id": "comfyui-birefnet-super", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.7" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-BiRefNet-Super", + "publisher": { + "createdAt": "2024-10-10T11:01:11.077098Z", + "description": "", + "id": "duhaifeng", + "logo": "", + "members": [], + "name": "duhaifeng", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/rubi-du/ComfyUI-BiRefNet-Super", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-04T17:29:41.064441Z", + "description": "Custom javascript extensions for better UX for ComfyUI. Double click on image to open. It's convenient for checking images.", + "downloads": 3161, + "github_stars": 6, + "icon": "https://upload.wikimedia.org/wikipedia/commons/8/87/Magnifying_glass_icon_mgx2.svg", + "id": "ComfyUI-ImageGallery-ED", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-27T12:15:52.797428Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "bbe8b096-6ff0-492e-87aa-d9cbedbe37bf", + "node_id": "ComfyUI-ImageGallery-ED", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.8.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ImageGallery-ED", + "publisher": { + "createdAt": "2025-02-04T11:11:03.879214Z", + "description": "", + "id": "nyaamz", + "logo": "", + "members": [], + "name": "NyaamZ", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/NyaamZ/ComfyUI-ImageGallery-ED", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-01T23:57:33.759761Z", + "description": "These are designed to be custom nodes i found usefulness to that hopefully others can share.", + "downloads": 1118, + "github_stars": 0, + "icon": "", + "id": "guy-nodes-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-01T23:57:37.527813Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "03be6613-527f-4797-bc29-7f309d479513", + "node_id": "guy-nodes-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "guy-nodes-comfyui", + "publisher": { + "createdAt": "2024-10-01T23:23:14.047008Z", + "description": "", + "id": "guyaton", + "logo": "", + "members": [], + "name": "guyaton", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/guyaton/guy-nodes-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-28T10:50:31.781726Z", + "description": "ComfyUI implementation of Regional Adaptive Sampling, (original implementation at https://github.com/microsoft/RAS).", + "downloads": 1212, + "github_stars": 20, + "icon": "", + "id": "comfyui-regional-adaptive-sampling", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-28T10:50:32.167587Z", + "dependencies": [ + "torch", + "einops", + "diffusers" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d03913ea-6c04-490c-8daa-b550b1a89359", + "node_id": "comfyui-regional-adaptive-sampling", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-RegionalAdaptiveSampling", + "publisher": { + "createdAt": "2024-12-21T22:30:49.020253Z", + "description": "", + "id": "slickytail", + "logo": "", + "members": [], + "name": "Raphael Walker", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Slickytail/ComfyUI-RegionalAdaptiveSampling", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-04T13:44:20.784785Z", + "description": "The 'ComfyUI-Bongsang' is very useful tools for a diffusion model developer.", + "downloads": 1126, + "github_stars": 0, + "icon": "https://raw.githubusercontent.com/bongsang/ComfyUI-Bongsang/main/docs/app_icon.png", + "id": "bongsang", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-05T05:42:55.143502Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "fe3d3921-7bbb-4512-abe7-92ebdfb5eae0", + "node_id": "bongsang", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Bongsang", + "publisher": { + "createdAt": "2025-01-04T06:47:27.063644Z", + "description": "", + "id": "bongsang", + "logo": "", + "members": [], + "name": "bongsang", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bongsang/ComfyUI-Bongsang", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-04T14:58:55.54819Z", + "description": "Provides nodes to support generation of all possible combinations of a set of prompts via boolean logic", + "downloads": 1217, + "github_stars": 0, + "icon": "", + "id": "comfyui-jmnodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-04T14:58:59.048053Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "833aaf50-d864-4a30-8446-5c1f3e612ec1", + "node_id": "comfyui-jmnodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyUI-JMNodes", + "publisher": { + "createdAt": "2025-01-01T14:49:07.011511Z", + "description": "", + "id": "jmnodes", + "logo": "", + "members": [], + "name": "jmnodes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/JustinMatters/comfyUI-JMNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-25T16:46:20.288628Z", + "description": "NODES:Frame Segmenter, Get Frame at Index, Repeat Sampler Config, Patch Repeat Sampler Config (Model), Patch Repeat Sampler Config (Latent), KSampler (Simple Input)", + "downloads": 1675, + "github_stars": 0, + "icon": "", + "id": "comfyui-aharanodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-25T16:46:23.82154Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "9cd98ae5-e123-4d24-8d23-35afd0fab0bc", + "node_id": "comfyui-aharanodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-AharaNodes", + "publisher": { + "createdAt": "2024-12-25T16:37:05.803966Z", + "description": "", + "id": "chris-arsenault", + "logo": "", + "members": [], + "name": "Tsonu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chris-arsenault/ComfyUI-AharaNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-10T22:41:52.538071Z", + "description": "PyTorch extension for ComfyUI featuring extensive PyTorch wrapper nodes for seamless tensor operations and PyTorch model training.", + "downloads": 1070, + "github_stars": 6, + "icon": "", + "id": "pt-wrapper", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-11T04:46:18.898419Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "81c458a8-665b-4eaa-bcdf-39858b17f258", + "node_id": "pt-wrapper", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "4.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Pt-Wrapper", + "publisher": { + "createdAt": "2025-02-13T18:14:58.535746Z", + "description": "", + "id": "how-to-sd", + "logo": "", + "members": [], + "name": "HowToSD", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/HowToSD/ComfyUI-Pt-Wrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-30T22:21:26.018252Z", + "description": "A node that can use NovelAPI in Comfyui, now support some Director tools as processors. Support vibe,img2img,text2img", + "downloads": 1281, + "github_stars": 0, + "icon": "", + "id": "comfyui_nai_api", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-02T21:31:39.59214Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "13456976-2e08-4124-8790-0910d7020699", + "node_id": "comfyui_nai_api", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_nai_api", + "publisher": { + "createdAt": "2024-09-30T22:14:11.93394Z", + "description": "", + "id": "creeper", + "logo": "", + "members": [], + "name": "Alex Zhang", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Creeper-MZ/comfyui_nai_api", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-13T15:33:31.098515Z", + "description": "Legacy prompt control nodes. These exist only to allow old workflows to run", + "downloads": 1245, + "github_stars": 1, + "icon": "", + "id": "comfyui-prompt-control-legacy", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-13T15:33:34.896339Z", + "dependencies": [ + "lark >= 1.1.9" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d609ecc0-acfa-4cbe-bfd5-1e4e316c6ada", + "node_id": "comfyui-prompt-control-legacy", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Prompt Control (UNMAINTAINED LEGACY VERSION)", + "publisher": { + "createdAt": "2024-05-23T17:42:14.692322Z", + "description": "", + "id": "asagi4", + "logo": "", + "members": [], + "name": "asagi4", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/asagi4/comfyui-prompt-control-legacy", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-05T13:47:14.607261Z", + "description": "tag completer with csv file", + "downloads": 1693, + "github_stars": 14, + "icon": "", + "id": "comfy-ex-tagcomplete", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-24T07:58:59.074777Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "92a77eb8-251d-404f-854b-5e74ac9fdaca", + "node_id": "comfy-ex-tagcomplete", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfy-ex-tagcomplete", + "publisher": { + "createdAt": "2025-03-05T13:10:33.660333Z", + "description": "", + "id": "jupo-ai", + "logo": "", + "members": [], + "name": "jupo-ai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jupo-ai/comfy-ex-tagcomplete", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-13T15:58:22.997092Z", + "description": "Implementation of architectural related graph algorithm in ComfyUI.", + "downloads": 4745, + "github_stars": 2, + "icon": "https://github.com/vincentfs/ComfyUI-ArchiGraph/blob/main/ArchiGraphLogo.png", + "id": "archigraph", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-13T15:58:38.689099Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "51bd09b4-9e82-4be6-8fbe-a1ec0ce92ae6", + "node_id": "archigraph", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ArchiGraph", + "publisher": { + "createdAt": "2025-01-12T14:57:47.64815Z", + "description": "", + "id": "vincentfs", + "logo": "", + "members": [], + "name": "Vincent Feng Shen", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/vincentfs/ComfyUI-ArchiGraph", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-29T11:44:55.693537Z", + "description": "This is the node that performs the magnification calculation.", + "downloads": 1112, + "github_stars": 0, + "icon": "", + "id": "comfyui_mittimi_recalculate_size", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-07T07:44:02.769016Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1193323a-b0f0-4d94-bf8c-b435316b206d", + "node_id": "comfyui_mittimi_recalculate_size", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_mittimiRecalculateSize", + "publisher": { + "createdAt": "2024-08-25T10:31:13.036141Z", + "description": "", + "id": "mittimi", + "logo": "", + "members": [], + "name": "mittimi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mittimi/ComfyUI_mittimiRecalculateSize", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-31T02:13:22.865721Z", + "description": "Perform Bringing-Old-Photos-Back-to-Life", + "downloads": 2488, + "github_stars": 48, + "icon": "", + "id": "comfyui-old-photo-restoration", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-30T04:14:00.308125Z", + "dependencies": [ + "PyYAML", + "dill", + "dlib-bin", + "dominate", + "easydict", + "einops", + "matplotlib", + "opencv-python", + "scikit-image", + "scipy", + "tensorboardX" + ], + "deprecated": false, + "downloadUrl": "", + "id": "3583eb2b-56c5-4c79-ba35-4e72626ebdc3", + "node_id": "comfyui-old-photo-restoration", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.2" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "Old Photo Restoration", + "publisher": { + "createdAt": "2024-07-09T07:30:07.769811Z", + "description": "", + "id": "haoming02", + "logo": "", + "members": [], + "name": "Haoming02", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Haoming02/comfyui-old-photo-restoration", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-12T19:28:00.208814Z", + "description": "A comprehensive collection of ComfyUI nodes designed to reduce reliance on multiple third-party node packages.", + "downloads": 2751, + "github_stars": 0, + "icon": "https://raw.githubusercontent.com/linksluckytime/comfyui_snacknodes/main/web/icon.png", + "id": "comfyui_snacknodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-18T08:35:33.132505Z", + "dependencies": [ + "torch", + "numpy", + "pillow", + "opencv-python-headless" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f0308381-e6de-4f18-abaa-176c2a16c471", + "node_id": "comfyui_snacknodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"GNU General Public License v3\"}", + "name": "comfyui_snacknodes", + "publisher": { + "createdAt": "2025-04-12T18:10:48.343292Z", + "description": "", + "id": "linksluckytime", + "logo": "", + "members": [], + "name": "linksluckytime", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/linksluckytime/comfyui_snacknodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-21T09:07:25.767169Z", + "description": "The ListHelper collection is a comprehensive set of custom nodes for ComfyUI that provides powerful list manipulation capabilities. This collection includes audio processing, text splitting, and number generation tools for enhanced workflow automation.", + "downloads": 286, + "github_stars": 2, + "icon": "", + "id": "Listhelper", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-07T00:14:15.270273Z", + "dependencies": [ + "regex" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6d7338e1-2973-4059-8a22-7ebcfca3a151", + "node_id": "Listhelper", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ListHelper", + "publisher": { + "createdAt": "2025-06-15T13:14:15.653234Z", + "description": "", + "id": "dseditor", + "logo": "", + "members": [], + "name": "dseditor", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dseditor/ComfyUI-ListHelper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-01T08:29:32.842068Z", + "description": "Prompt Generator for Video, Audio, Image, and Text. A node for ComfyUI. Including Deepseek, Alibaba Cloud Qwen, Google Gemini, and locally selected models, etc.", + "downloads": 2767, + "github_stars": 31, + "icon": "", + "id": "prompt-all-in-one-mw", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-11T17:30:18.705016Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "dacea243-8634-463c-8d22-98ceb2eac291", + "node_id": "prompt-all-in-one-mw", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "2.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Prompt-All-In-One", + "publisher": { + "createdAt": "2025-01-06T14:10:29.10336Z", + "description": "", + "id": "mw", + "logo": "", + "members": [], + "name": "MW", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/billwuhao/ComfyUI_Prompt-All-In-One", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T15:45:14.803123Z", + "description": "Nodes:CLIPTextEncodeWithWildcards. This wildcard node is a wildcard node that operates based on the seed.", + "downloads": 2982, + "github_stars": 10, + "icon": "", + "id": "comfyui-wildcards", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-20T16:53:13.10316Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5471c9bd-c349-464d-bc24-9dad6654bb72", + "node_id": "comfyui-wildcards", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "LICENSE", + "name": "ComfyUI-Wildcards", + "publisher": { + "createdAt": "2024-06-20T14:42:43.137697Z", + "description": "", + "id": "lordgasmic", + "logo": "", + "members": [], + "name": "lordgasmic", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lordgasmic/comfyui_wildcards", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-25T07:33:37.069072Z", + "description": "Some mathematical calculation nodes\uff0cfreedom And omnipotent, string calculation nodes, can customize the number of parameters and calculation formulas\uff08expression\uff09. The calculation content can also be displayed in places such as the label title of Comfy Node\uff0cString to Image Title Label", + "downloads": 6469, + "github_stars": 6, + "icon": "", + "id": "comfyui-clh-tool", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-25T07:33:38.530085Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "0daf1d79-3ec4-4a68-ad5d-1039583a5a37", + "node_id": "comfyui-clh-tool", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUi-clh-Tool", + "publisher": { + "createdAt": "2024-12-25T07:04:41.034299Z", + "description": "", + "id": "clhui", + "logo": "", + "members": [], + "name": "\u6797\u8f89", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/clhui/ComfyUi-clh-Tool", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-08T14:26:09.576973Z", + "description": "ComfyUI nodes wrapping the [a/deepface](https://github.com/serengil/deepface) library.", + "downloads": 1988, + "github_stars": 29, + "icon": "", + "id": "comfyui-deepface", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-08T14:26:13.314909Z", + "dependencies": [ + "deepface" + ], + "deprecated": false, + "downloadUrl": "", + "id": "0275f73e-0072-4c84-ac8c-74655c2aa1fa", + "node_id": "comfyui-deepface", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Deepface", + "publisher": { + "createdAt": "2024-07-08T14:18:19.239507Z", + "description": "", + "id": "jordoh", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jordoh/ComfyUI-Deepface", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-31T04:16:51.437798Z", + "description": "", + "downloads": 1092, + "github_stars": 1, + "icon": "", + "id": "comfyui-load-image-from-url-xy", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-31T09:08:22.872672Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "27fc945e-4ac5-46cf-8055-9ad7520ff301", + "node_id": "comfyui-load-image-from-url-xy", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "LICENSE", + "name": "ComfyUI-load-image-from-url-xy", + "publisher": { + "createdAt": "2024-07-30T11:21:33.76968Z", + "description": "", + "id": "rocing", + "logo": "", + "members": [], + "name": "rocing", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/rocing/ComfyUI-load-image-from-url-xy", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-31T14:41:46.341491Z", + "description": "MTCLIPEncode: An extension for ComfyUI's CLIPTextEncode node, offering multilingual translation (using MarianMT) and prompt enhancement (using Ollama). Seamlessly translate your native language prompts into English and further optimize them for generating your desired images with Stable Diffusion. Supports Krita AI Diffusion.", + "downloads": 2630, + "github_stars": 7, + "icon": "", + "id": "comfyui_mtclipencode", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-31T14:41:50.092341Z", + "dependencies": [ + "transformers", + "requests", + "ollama" + ], + "deprecated": false, + "downloadUrl": "", + "id": "07a11022-0c4e-4605-ac44-1e61ba83efcb", + "node_id": "comfyui_mtclipencode", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.2.0" + }, + "license": "{}", + "name": "ComfyUI_MTCLIPEncode", + "publisher": { + "createdAt": "2024-08-29T12:25:05.194101Z", + "description": "", + "id": "marksusu", + "logo": "", + "members": [], + "name": "ComfyUI_MTCLIPEncode", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Marksusu/ComfyUI_MTCLIPEncode", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-09T09:49:29.265955Z", + "description": "ComfyUI Custom Nodes for 'TangoFlux: Super Fast and Faithful Text to Audio Generation with Flow Matching'. This generates high-quality 44.1kHz audio up to 30 seconds using just a text prompt.", + "downloads": 3574, + "github_stars": 94, + "icon": "", + "id": "comfyui-tangoflux", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-26T15:53:06.819074Z", + "dependencies": [ + "torchaudio", + "diffusers", + "accelerate", + "tqdm" + ], + "deprecated": false, + "downloadUrl": "", + "id": "abd097b6-311e-41ac-8ed4-fd5a57261c06", + "node_id": "comfyui-tangoflux", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-TangoFlux", + "publisher": { + "createdAt": "2024-12-21T02:59:26.094039Z", + "description": "", + "id": "lucipherdev", + "logo": "", + "members": [], + "name": "Sumeth Sathnindu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LucipherDev/ComfyUI-TangoFlux", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-21T03:52:12.824753Z", + "description": "Utility nodes for interacting with images and image sizes", + "downloads": 844, + "github_stars": 0, + "icon": "", + "id": "felsir-image-tools", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-21T16:40:13.674222Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c914eeb7-4cc7-42a0-9d28-f61bf3e2b13a", + "node_id": "felsir-image-tools", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "felsir-image-tools", + "publisher": { + "createdAt": "2024-08-21T03:16:44.72073Z", + "description": "", + "id": "karurochari", + "logo": "", + "members": [], + "name": "karurochari", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/KaruroChori/Comfy_Felsirnodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-27T09:18:36.150286Z", + "description": "Nodes to generate noise from video for https://github.com/Eyeline-Research/Go-with-the-Flow", + "downloads": 6533, + "github_stars": 157, + "icon": "", + "id": "comfyui-videonoisewarp", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-08T13:34:47.185384Z", + "dependencies": [ + "einops" + ], + "deprecated": false, + "downloadUrl": "", + "id": "53ec7077-25f5-483e-8743-d4dbc8015424", + "node_id": "comfyui-videonoisewarp", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ComfyUI-VideoNoiseWarp", + "publisher": { + "createdAt": "2024-06-09T11:11:54.62154Z", + "description": "", + "id": "kijai", + "logo": "", + "members": [], + "name": "Kijai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-VideoNoiseWarp", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-22T22:03:15.130023Z", + "description": "This repository hosts a Text-to-Speech (TTS) application that leverages Whisper Speech for voice synthesis, allowing users to train a voice model on-the-fly. It is built on ComfyUI and supports rapid training and inference processes.", + "downloads": 2860, + "github_stars": 44, + "icon": "https://impactframes.ai/System/Icons/48x48/if.png", + "id": "comfyui-if_ai_wishperspeechnode", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-09T09:15:40.65211Z", + "dependencies": [ + "requests", + "scipy", + "nltk", + "WhisperSpeech", + "librosa", + "huggingface_hub" + ], + "deprecated": false, + "downloadUrl": "", + "id": "54f3205c-03dd-4c5f-bd9d-49b19c9350c0", + "node_id": "comfyui-if_ai_wishperspeechnode", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"MIT License\"}", + "name": "IF_WishperSpeechNode", + "publisher": { + "createdAt": "2024-05-22T21:13:45.198878Z", + "description": "", + "id": "impactframes", + "logo": "", + "members": [], + "name": "impactframes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/if-ai/ComfyUI-IF_AI_WishperSpeechNode", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-02T20:08:44.174562Z", + "description": "Audio Reactive nodes for AI animations \ud83d\udd0a Analyze audio, extract drums, bass, vocals. Compatible with IPAdapter, ControlNets, AnimateDiff... Generate reactive masks and weights. Create audio-driven visuals. Produce weight graphs and audio masks. Ideal for music videos and reactive animations. Features audio scheduling and waveform analysis", + "downloads": 9203, + "github_stars": 453, + "icon": "", + "id": "comfyui_yvann-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-02T12:11:41.105875Z", + "dependencies": [ + "openunmix", + "numpy", + "torch", + "matplotlib", + "pillow", + "scipy.signal" + ], + "deprecated": false, + "downloadUrl": "", + "id": "680e75fb-b39d-4613-9878-88ef1eb2463c", + "node_id": "comfyui_yvann-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Yvann-Nodes", + "publisher": { + "createdAt": "2024-09-02T19:46:29.063249Z", + "description": "", + "id": "yvann", + "logo": "", + "members": [], + "name": "Yvann", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yvann-ba/ComfyUI_Yvann-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-21T10:14:14.00064Z", + "description": "The LLM_Node enhances ComfyUI by integrating advanced language model capabilities, enabling a wide range of NLP tasks such as text generation, content summarization, question answering, and more. This flexibility is powered by various transformer model architectures from the transformers library, allowing for the deployment of models like T5, GPT-2, and others based on your project's needs.", + "downloads": 3298, + "github_stars": 65, + "icon": "", + "id": "comfyui_llm_node", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-21T10:14:14.281999Z", + "dependencies": [ + "transformers>=4.0.0", + "llama-cpp-python", + "torch>=1.7.1", + "accelerate" + ], + "deprecated": false, + "downloadUrl": "", + "id": "380367c2-5ac0-49fc-b8a1-93062391ad7d", + "node_id": "comfyui_llm_node", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_LLM_Node", + "publisher": { + "createdAt": "2024-06-21T07:46:02.481672Z", + "description": "", + "id": "nazgut", + "logo": "", + "members": [], + "name": "Big Idea Technology", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Big-Idea-Technology/ComfyUI_LLM_Node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-30T03:14:26.096287Z", + "description": "Dressup your models!\nThis is my quick implementation of the SAL-VTON node for ComfyUI.\nBased on the paper [a/Keyu Y. Tingwei G. et al. (2023). Linking Garment with Person via Semantically Associated Landmakrs for Virtual Try-On](https://openaccess.thecvf.com/content/CVPR2023/papers/Yan_Linking_Garment_With_Person_via_Semantically_Associated_Landmarks_for_Virtual_CVPR_2023_paper.pdf)", + "downloads": 2680, + "github_stars": 86, + "icon": "", + "id": "comfyui-sal-vton", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-26T09:52:30.30958Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5e1551d6-7a43-4a97-989b-0366c7f7592d", + "node_id": "comfyui-sal-vton", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfyui-SAL-VTON", + "publisher": { + "createdAt": "2024-06-30T01:53:57.175725Z", + "description": "", + "id": "ratulrafsan", + "logo": "", + "members": [], + "name": "Rafsan", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ratulrafsan/Comfyui-SAL-VTON", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-04T20:43:13.874133Z", + "description": "Implementation of DepthFlow nodes for ComfyUI, adds a 2.5D parallax effect to images and videos. Compatible with Ryan's Flex system.", + "downloads": 25021, + "github_stars": 300, + "icon": "https://i.imgur.com/aiqQI7U.png", + "id": "comfyui-depthflow-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-09T22:44:57.382798Z", + "dependencies": [ + "depthflow==0.9.1", + "pydantic", + "numpy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f25fa065-93f9-4db8-b5dd-2e4213d7d6d0", + "node_id": "comfyui-depthflow-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Depthflow-Nodes", + "publisher": { + "createdAt": "2024-07-31T23:17:26.625774Z", + "description": "", + "id": "akatz", + "logo": "", + "members": [], + "name": "Akatz", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/akatz-ai/ComfyUI-Depthflow-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-16T21:46:00.74422Z", + "description": "If you want to draw two different characters together without blending their features, so you could try to check out this custom node.", + "downloads": 7510, + "github_stars": 62, + "icon": "", + "id": "comfyui-comfycouple", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-26T21:20:20.268022Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "0db925b8-5982-4543-88ef-ab8793f9efb9", + "node_id": "comfyui-comfycouple", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.4" + }, + "license": "GPL-3.0", + "name": "ComfyUI-ComfyCouple", + "publisher": { + "createdAt": "2024-07-03T22:12:38.638683Z", + "description": "", + "id": "rei---", + "logo": "", + "members": [], + "name": "Rei D.", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Danand/ComfyUI-ComfyCouple", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-14T23:27:27.837118Z", + "description": "Nodes:Cascade Resolutions", + "downloads": 6934, + "github_stars": 6, + "icon": "", + "id": "comfyui-cascaderesolutions", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-15T01:09:58.154649Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4f26ec7d-370a-480c-bc34-d27aec611306", + "node_id": "comfyui-cascaderesolutions", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "LICENSE", + "name": "ComfyUI-CascadeResolutions", + "publisher": { + "createdAt": "2024-06-23T07:15:12.623492Z", + "description": "", + "id": "abdallaalsw80", + "logo": "", + "members": [], + "name": "AbdallahAlswaiti", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/al-swaiti/ComfyUI-CascadeResolutions", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-20T20:12:34.146286Z", + "description": "Misc Text Nodes for Comfy UI", + "downloads": 1635, + "github_stars": 0, + "icon": "", + "id": "comfyui-textnodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-20T20:12:37.736472Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "6df61d5a-18ac-430a-9e5f-72e07ef99128", + "node_id": "comfyui-textnodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.2" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-TextNodes", + "publisher": { + "createdAt": "2024-08-17T17:57:39.099309Z", + "description": "", + "id": "akierson", + "logo": "", + "members": [], + "name": "akierson", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/akierson/ComfyUI-textnodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-21T07:29:34.964663Z", + "description": "This custom node helps to transform latent in different ways.", + "downloads": 2350, + "github_stars": 21, + "icon": "", + "id": "comfyui-advanced-latent-control", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-21T07:29:35.25708Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "70661c87-cc12-4bc8-88e5-75ce52c77b41", + "node_id": "comfyui-advanced-latent-control", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-Advanced-Latent-Control", + "publisher": { + "createdAt": "2024-06-20T17:48:39.251849Z", + "description": "", + "id": "kuschanow", + "logo": "", + "members": [], + "name": "kuschanow", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/RomanKuschanow/ComfyUI-Advanced-Latent-Control", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-22T22:05:49.06767Z", + "description": "ComfyUI Easy Padding is a simple custom ComfyUI node that helps you to add padding to images on ComfyUI.", + "downloads": 2449, + "github_stars": 17, + "icon": "", + "id": "comfyui-easy-padding", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-22T22:05:49.370317Z", + "dependencies": [ + "numpy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "fa1242d8-a104-4253-9081-e02f378f1da6", + "node_id": "comfyui-easy-padding", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI Easy Padding", + "publisher": { + "createdAt": "2024-05-22T21:04:14.34667Z", + "description": "", + "id": "erkana", + "logo": "", + "members": [], + "name": "Technonator", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ealkanat/comfyui-easy-padding", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-19T11:54:54.738917Z", + "description": "Nodes related to [Whisper](https://github.com/openai/whisper).", + "downloads": 2631, + "github_stars": 6, + "icon": "", + "id": "comfyui-whisper-translator", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-04T03:37:30.789312Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3684a348-40d7-4f67-8281-d79ce6b08dd5", + "node_id": "comfyui-whisper-translator", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Whisper-Translator", + "publisher": { + "createdAt": "2024-11-19T11:30:00.081231Z", + "description": "", + "id": "comfyui-whisper-translator", + "logo": "", + "members": [], + "name": "ComfyUI-Whisper-Translator", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/civen-cn/ComfyUI-Whisper-Translator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-08T12:56:20.045078Z", + "description": "A tool for decomposing video storyboards, which can obtain storyboards and keyframes", + "downloads": 422, + "github_stars": 2, + "icon": "", + "id": "comfyui_extractstoryboards", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-08T12:56:20.842461Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "79960cbb-370a-4867-ae48-54dbcea240fb", + "node_id": "comfyui_extractstoryboards", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.0.1" + }, + "license": "{\"text\": \"MIT license\"}", + "name": "ExtractStoryboards", + "publisher": { + "createdAt": "2025-06-08T09:56:10.056635Z", + "description": "", + "id": "xuhuan2048", + "logo": "", + "members": [], + "name": "xuhuan2048", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gitadmini/comfyui_extractstoryboards", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-20T21:31:40.87595Z", + "description": "A Text To Speech node using Step-Audio-TTS in ComfyUI. Can speak, rap, sing, or clone voice.", + "downloads": 5480, + "github_stars": 132, + "icon": "", + "id": "stepaudiotts_mw", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-23T09:45:45.449497Z", + "dependencies": [ + "transformers>=4.48.3", + "openai-whisper>=20231117", + "sox>=1.5.0", + "hyperpyyaml", + "conformer>=0.3.2", + "funasr>=1.1.3" + ], + "deprecated": false, + "downloadUrl": "", + "id": "2ed198bd-8713-4746-bda0-67559468ad97", + "node_id": "stepaudiotts_mw", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_StepAudioTTS", + "publisher": { + "createdAt": "2025-01-06T14:10:29.10336Z", + "description": "", + "id": "mw", + "logo": "", + "members": [], + "name": "MW", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/billwuhao/ComfyUI_StepAudioTTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-25T14:03:17.928052Z", + "description": "A utility node for generating empty latent tensors in Stable Diffusion v3.5-compatible resolutions. This node allows for custom batch sizes, width/height overrides, and inverting aspect ratios, ensuring flexibility and compatibility in ComfyUI workflows.", + "downloads": 2437, + "github_stars": 0, + "icon": "", + "id": "comfyui-sd3.5-latent-size-picker", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-25T14:03:19.62653Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4a262455-dd83-4985-84a3-f222ab4b3513", + "node_id": "comfyui-sd3.5-latent-size-picker", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-SD3.5-Latent-Size-Picker", + "publisher": { + "createdAt": "2024-12-19T12:06:04.564116Z", + "description": "", + "id": "shubzworld", + "logo": "", + "members": [], + "name": "Shubz World", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/theshubzworld/ComfyUI-SD3.5-Latent-Size-Picker", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-04T19:19:41.504063Z", + "description": "This extension adds nodes that allow you to easily serve your workflow (for example using a discord bot) ", + "downloads": 2560, + "github_stars": 67, + "icon": "", + "id": "comfyui-serving-toolkit", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-18T08:31:41.227078Z", + "dependencies": [ + "discord.py", + "websocket-client", + "rel", + "pyTelegramBotAPI", + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e618785c-901d-45df-a99f-570584e370f8", + "node_id": "comfyui-serving-toolkit", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI-Serving-Toolkit", + "publisher": { + "createdAt": "2024-06-04T19:12:24.353997Z", + "description": "", + "id": "iammatan", + "logo": "", + "members": [], + "name": "Matan", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/matan1905/ComfyUI-Serving-Toolkit", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-21T14:51:31.1746Z", + "description": "ComfyUI nodes from [Timesaver](https://github.com/AlexYez/comfyui-timesaver).", + "downloads": 1665, + "github_stars": 0, + "icon": "", + "id": "comfyui-timesaver", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-30T14:58:20.930377Z", + "dependencies": [ + "accelerate>=0.21.0", + "bitsandbytes>=0.40.0", + "easydict>=1.10.0", + "einops>=0.4.0", + "huggingface_hub>=0.20.0", + "imageio>=2.20.0", + "imageio-ffmpeg>=0.4.0", + "matplotlib>=3.4.0", + "numpy>=1.21.0", + "opencv-python>=4.5.0", + "optimum>=1.9.0", + "pillow>=9.0.0", + "py360convert>=0.1.0", + "requests>=2.28.0", + "srt>=3.5.0", + "torch>=2.0.0", + "torchaudio>=2.0.0", + "transformers>=4.51.0", + "tqdm>=4.65.0", + "urllib3>=1.26.0", + "kornia" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d3c875ba-6393-4a32-a068-513c699f94dc", + "node_id": "comfyui-timesaver", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "4.4.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI Timesaver Nodes", + "publisher": { + "createdAt": "2025-02-21T11:37:16.106793Z", + "description": "", + "id": "timesaver", + "logo": "", + "members": [], + "name": "Timesaver", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AlexYez/comfyui-timesaver", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-19T18:50:02.055115Z", + "description": "ComfyUI_Jags_VectorMagic A collection of nodes to explore Vector and image manipulation", + "downloads": 6194, + "github_stars": 80, + "icon": "", + "id": "comfyui_jags_vectormagic", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-02T08:46:58.663662Z", + "dependencies": [ + "librosa", + "numpy", + "Pillow", + "scipy", + "color-matcher", + "matplotlib", + "clip-interrogator", + "simpleeval", + "ultralytics", + "ultralyticsplus", + "CLIPSeg", + "OpenCV" + ], + "deprecated": false, + "downloadUrl": "", + "id": "bb9209a0-b129-4739-9adc-9591b6111024", + "node_id": "comfyui_jags_vectormagic", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Jags_VectorMagic", + "publisher": { + "createdAt": "2024-05-19T17:24:59.149675Z", + "description": "", + "id": "jags111", + "logo": "", + "members": [], + "name": "jags111", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jags111/ComfyUI_Jags_VectorMagic", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-29T20:16:52.137358Z", + "description": "Wrapper for 'resemble-ai/chatterbox'", + "downloads": 376, + "github_stars": 1, + "icon": "", + "id": "comfyui-chatterbox", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-29T20:16:53.70968Z", + "dependencies": [ + "librosa", + "omegaconf", + "conformer", + "diffusers" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b540599b-34b3-4aee-ace6-913740c03fd9", + "node_id": "comfyui-chatterbox", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-chatterbox", + "publisher": { + "createdAt": "2025-05-29T19:50:33.054631Z", + "description": "", + "id": "sm079", + "logo": "", + "members": [], + "name": "sm079", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sm079/comfyui-chatterbox", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-06T17:22:55.428741Z", + "description": "LoRA\u2010Safe TorchCompile node for ComfyUI", + "downloads": 754, + "github_stars": 7, + "icon": "", + "id": "TorchCompileModel_LoRASafe", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-06T18:40:32.409543Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "982e8e99-1126-4fb6-ae50-992fde950d2d", + "node_id": "TorchCompileModel_LoRASafe", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "LoRA\u2010Safe TorchCompile", + "publisher": { + "createdAt": "2025-06-06T15:07:44.929232Z", + "description": "", + "id": "xmarre", + "logo": "", + "members": [], + "name": "xmarre", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/xmarre/TorchCompileModel_LoRASafe", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-26T21:32:49.591667Z", + "description": "This is a ComfyUI integration of the [a/Dia TTS model](https://github.com/nari-labs/dia/). Many thanks to nari-labs for their fantastic work.", + "downloads": 2908, + "github_stars": 13, + "icon": "", + "id": "customdia", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-26T21:32:50.058204Z", + "dependencies": [ + "descript-audio-codec", + "soundfile" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f1118da4-46c8-482d-a876-64a606a2cdb2", + "node_id": "customdia", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyUI-customDia", + "publisher": { + "createdAt": "2025-04-26T20:42:28.028925Z", + "description": "", + "id": "nobrainx2", + "logo": "", + "members": [], + "name": "nobrainX2", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nobrainX2/comfyUI-customDia", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-14T10:54:29.793995Z", + "description": "Image to 3D using Hunyuan-3D-2", + "downloads": 3277, + "github_stars": 53, + "icon": "", + "id": "comfyui-hunyuan-3d-2", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-16T11:23:42.016461Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "65926695-13af-4fe2-9b6d-e07a54744c73", + "node_id": "comfyui-hunyuan-3d-2", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.9.7" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI Hunyuan-3D-2", + "publisher": { + "createdAt": "2024-08-24T05:59:03.289234Z", + "description": "", + "id": "niknah", + "logo": "", + "members": [], + "name": "niknah", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/niknah/ComfyUI-Hunyuan-3D-2", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-23T18:27:07.979782Z", + "description": "Use llama.cpp to help generate some nodes for prompt word related work", + "downloads": 2386, + "github_stars": 115, + "icon": "", + "id": "comfyui-prompt-mz", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-21T17:25:15.597729Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5a1bca42-cca6-44b7-af1c-d5805f5c4e4e", + "node_id": "comfyui-prompt-mz", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "LICENSE", + "name": "ComfyUI-Prompt-MZ", + "publisher": { + "createdAt": "2024-05-23T18:12:56.765818Z", + "description": "", + "id": "wailovet", + "logo": "", + "members": [], + "name": "MinusZoneAI", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MinusZoneAI/ComfyUI-Prompt-MZ", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T15:28:50.39467Z", + "description": "Bilateral Reference Network achieves SOTA result in multi Salient Object Segmentation dataset, this repo pack BiRefNet as ComfyUI nodes, and make this SOTA model easier use for everyone.", + "downloads": 2869, + "github_stars": 288, + "icon": "", + "id": "comfyui-birefnet", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-20T15:28:50.671197Z", + "dependencies": [ + "kornia", + "loguru", + "opencv-python", + "timm", + "prettytable", + "scipy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "4b419006-d905-4a82-aea0-a485c91c9c9e", + "node_id": "comfyui-birefnet", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-BiRefNet", + "publisher": { + "createdAt": "2024-06-20T14:50:44.914163Z", + "description": "", + "id": "viper", + "logo": "", + "members": [], + "name": "Zephrus shawn", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/viperyl/ComfyUI-BiRefNet", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-07T06:51:19.518613Z", + "description": "A set of custom ComfyUI nodes for generating random integers within a range, adjusted to the nearest multiple of a user-defined divisor. Needlessly includes both an efficient and simple list implementation. Updates with each generation.", + "downloads": 1801, + "github_stars": 0, + "icon": "", + "id": "random-int-divisor-node", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-07T06:51:23.019488Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "dd840080-1163-4632-96d7-6f5cfb249bc7", + "node_id": "random-int-divisor-node", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Random-Int-Divisor-Node", + "publisher": { + "createdAt": "2025-01-05T20:08:38.454694Z", + "description": "", + "id": "jaminanim", + "logo": "", + "members": [], + "name": "Jaminanim", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Jaminanim/ComfyUI-Random-Int-Divisor-Node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-18T09:39:48.776011Z", + "description": "This repository packages the latest BiRefNet model as a ComfyUI node for use, supporting chunked loading on both CPU and GPU, as well as model caching features.", + "downloads": 1357, + "github_stars": 10, + "icon": "", + "id": "comfyui-birefnet-lite", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-19T09:26:33.234556Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "bb69b7dd-977a-4cde-808f-ba86d5c73b53", + "node_id": "comfyui-birefnet-lite", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-BiRefNet-lite", + "publisher": { + "createdAt": "2024-10-10T11:01:11.077098Z", + "description": "", + "id": "duhaifeng", + "logo": "", + "members": [], + "name": "duhaifeng", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/rubi-du/ComfyUI-BiRefNet-lite", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-23T04:57:20.065066Z", + "description": "Add nodes that generates danbooru tags by [a/Dart(Danbooru Tags Transformer)](https://huggingface.co/p1atdev/dart-v1-sft).", + "downloads": 3311, + "github_stars": 28, + "icon": "", + "id": "comfyui-dart", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-23T04:57:20.381363Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "efc23bbf-3953-4516-9997-6d8357c11e20", + "node_id": "comfyui-dart", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-Dart", + "publisher": { + "createdAt": "2024-06-23T04:27:13.079228Z", + "description": "", + "id": "nkchocoai", + "logo": "", + "members": [], + "name": "nk choco", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nkchocoai/ComfyUI-Dart", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-14T16:56:04.825698Z", + "description": "", + "downloads": 8571, + "github_stars": 28, + "icon": "", + "id": "batchimg-rembg-comfyui-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-14T16:56:05.128785Z", + "dependencies": [ + "rembg", + "tqdm" + ], + "deprecated": false, + "downloadUrl": "", + "id": "fce67c7f-66cc-4898-8c62-d3f5ee292f24", + "node_id": "batchimg-rembg-comfyui-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "batchImg-rembg-ComfyUI-nodes", + "publisher": { + "createdAt": "2024-06-14T16:38:02.003619Z", + "description": "", + "id": "mamaaaamooooo", + "logo": "", + "members": [], + "name": "Mamaaaamooooo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Mamaaaamooooo/batchImg-rembg-ComfyUI-nodes", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-28T22:05:12.030282Z", + "description": "A hacky implementation of Simswap based on [a/Comfyui ReActor Node 0.5.1](https://github.com/Gourieff/comfyui-reactor-node) and [a/Simswap](https://github.com/neuralchen/SimSwap).", + "downloads": 7882, + "github_stars": 14, + "icon": "", + "id": "comfyui-simswap", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-28T22:05:12.321757Z", + "dependencies": [ + "insightface==0.7.3", + "onnx>=1.14.0", + "opencv-python>=4.7.0.72", + "numpy", + "segment_anything" + ], + "deprecated": false, + "downloadUrl": "", + "id": "42a40903-c9d9-4235-b55b-8a03217fa72b", + "node_id": "comfyui-simswap", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-simswap", + "publisher": { + "createdAt": "2024-05-28T21:54:33.032393Z", + "description": "", + "id": "ttr", + "logo": "", + "members": [], + "name": "TTR", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TaiTair/comfyui-simswap", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-28T03:57:04.989929Z", + "description": "This node wraps the flux fill model as ComfyUI nodes. Use NF4 flux fill model, support for inpainting and outpainting image. Compared to the flux fill dev model, these nodes can use the flux fill model to perform inpainting and outpainting work under lower VRM conditions", + "downloads": 7725, + "github_stars": 37, + "icon": "", + "id": "comfyui-flux-inpainting", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-06T01:52:08.970844Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "8729571f-4ce8-4fa7-ad0a-24d7621bd2f5", + "node_id": "comfyui-flux-inpainting", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Flux-Inpainting", + "publisher": { + "createdAt": "2024-10-10T11:01:11.077098Z", + "description": "", + "id": "duhaifeng", + "logo": "", + "members": [], + "name": "duhaifeng", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/rubi-du/ComfyUI-Flux-Inpainting.git", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-24T16:48:30.239325Z", + "description": "A ComfyUI plugin for quick image sequence processing. This plugin allows users to manipulate frame sequences with various operations including frame insertion, deletion, and duplication.", + "downloads": 1319, + "github_stars": 0, + "icon": "", + "id": "comfyui-quickimagesequenceprocess", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-05T09:50:33.394358Z", + "dependencies": [ + "numpy", + "torch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "da58b50e-1e67-4a5d-9e09-2d514d37b2d6", + "node_id": "comfyui-quickimagesequenceprocess", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-QuickImageSequenceProcess", + "publisher": { + "createdAt": "2024-12-24T16:26:44.738991Z", + "description": "", + "id": "kazeyori", + "logo": "", + "members": [], + "name": "kazeyori", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kazeyori/ComfyUI-QuickImageSequenceProcess", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-24T16:12:10.645374Z", + "description": "ComfyUI Mini Toolkit \u2013 Helps reduce node redundancy.", + "downloads": 501, + "github_stars": 8, + "icon": "", + "id": "ComfyUI-Minitools", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-24T16:12:11.039519Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4cd4732d-2f0c-4acc-94c2-4e7ad7066cab", + "node_id": "ComfyUI-Minitools", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Minitools", + "publisher": { + "createdAt": "2025-05-24T15:19:20.529181Z", + "description": "", + "id": "gary", + "logo": "", + "members": [], + "name": "lepiai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lepiai/ComfyUI-Minitools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-24T17:04:06.273716Z", + "description": "A custom node for ComfyUI, which can select one or some of images from a batch.", + "downloads": 30619, + "github_stars": 96, + "icon": "", + "id": "comfyui-image-selector", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-24T17:04:06.555382Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c856694d-740a-4f90-8a7f-df97fe608408", + "node_id": "comfyui-image-selector", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Image-Selector", + "publisher": { + "createdAt": "2024-05-24T16:56:11.842852Z", + "description": "", + "id": "slapaper", + "logo": "", + "members": [], + "name": "SLAPaper", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SLAPaper/ComfyUI-Image-Selector", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-02T14:28:28.871493Z", + "description": "Nodes: Lens Flare Effect, MultiText, TextBox, TitlePlus, SeamlessTexture, AspectRatioPlus, DisplayEverything, ComparerPlus, AnySwitch, Node Design Tools...", + "downloads": 5141, + "github_stars": 71, + "icon": "", + "id": "skbundle", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-02T14:51:23.538492Z", + "dependencies": [ + "torch>=2.0.0", + "numpy>=1.24.0", + "Pillow>=10.0.0", + "scipy>=1.10.0", + "scikit-image>=0.21.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "0bca8844-2d9f-4320-840e-69cfee1bc83e", + "node_id": "skbundle", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_SKBundle", + "publisher": { + "createdAt": "2025-01-02T14:07:42.215853Z", + "description": "", + "id": "skb", + "logo": "", + "members": [], + "name": "SKB", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SKBv0/ComfyUI_SKBundle", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-25T02:15:44.099362Z", + "description": "", + "downloads": 3774, + "github_stars": 33, + "icon": "", + "id": "comfyui_facesimilarity", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-25T02:15:44.391511Z", + "dependencies": [ + "torch", + "numpy", + "opencv-contrib-python", + "face-recognition" + ], + "deprecated": false, + "downloadUrl": "", + "id": "8865cf27-731d-4e35-9128-f8c6c2c0d642", + "node_id": "comfyui_facesimilarity", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_FaceSimilarity", + "publisher": { + "createdAt": "2024-05-23T03:18:42.518862Z", + "description": "", + "id": "chflame163", + "logo": "", + "members": [], + "name": "chflame163", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chflame163/ComfyUI_FaceSimilarity", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-25T04:13:36.724293Z", + "description": "This is a custom node for ComfyUI that analyzes audio files using Librosa, extracting tempo, beat times, energy levels, and timestamps. The analysis results can be displayed in a text box within ComfyUI.", + "downloads": 1484, + "github_stars": 3, + "icon": "", + "id": "audiodriven-latent-space-tools-for-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-25T04:13:37.104107Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4ba3aaa1-9128-4a5a-b5fe-b2e64829eb38", + "node_id": "audiodriven-latent-space-tools-for-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "AudioDriven-Latent-Space-Tools-for-ComfyUI", + "publisher": { + "createdAt": "2025-01-25T03:44:44.566242Z", + "description": "", + "id": "kayarte", + "logo": "", + "members": [], + "name": "Kayarte", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Kayarte/AudioDriven-Latent-Space-Tools-for-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-03T02:11:06.053869Z", + "description": "Achieve seamless inpainting results without needing a specialized inpainting model.", + "downloads": 3514, + "github_stars": 385, + "icon": "", + "id": "LanPaint", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-21T06:18:15.330775Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "dc3f90da-7290-4b0f-af8d-e904f92cfd21", + "node_id": "LanPaint", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.0" + }, + "license": "{\"text\": \"GNU General Public License v3\"}", + "name": "LanPaint", + "publisher": { + "createdAt": "2025-03-02T15:56:07.094648Z", + "description": "", + "id": "scraed", + "logo": "", + "members": [], + "name": "scraed", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/scraed/LanPaint", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-08T05:34:33.110988Z", + "description": "the LyingSigmaSampler is a very useful node, as many users find it difficult to understand complex parameters. For these users, they might only need a simple, lightweight, and easy-to-use node. However, I have observed that LyingSigmaSampler does not control the noise mask smoothly enough, or in other words, it cannot control it more precisely. LyingSigmaSampler has a great advantage, of course, other nodes are also great. They can be applied to most models, including SD3.5, and they work well, which is a challenge for users because they have to deal with different noise masks. Therefore, I have added smoothing processing to LyingSigmaSampler in the hope of helping more people.", + "downloads": 1093, + "github_stars": 166, + "icon": "", + "id": "comfuinoda-Navyblue", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-08T05:34:33.488157Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "823ef989-d14b-4698-a626-975d27c2a8a1", + "node_id": "comfuinoda-Navyblue", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfuinoda-Navyblue", + "publisher": { + "createdAt": "2025-03-17T02:08:23.13082Z", + "description": "", + "id": "tatookan", + "logo": "", + "members": [], + "name": "tatookan", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tatookan/comfuinoda-Navyblue", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-26T05:00:47.281608Z", + "description": "Get general description or specify questions to ask about images (medium, art style, background, etc.). Supports Chinese \ud83c\udde8\ud83c\uddf3 questions via MiniCPM model.", + "downloads": 5918, + "github_stars": 91, + "icon": "https://img.icons8.com/?size=100&id=49374&format=png&color=000000", + "id": "img2txt-comfyui-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-09T11:19:33.883395Z", + "dependencies": [ + "transformers<=4.41.2", + "bitsandbytes>=0.43.0", + "timm>=1.0.7", + "sentencepiece", + "accelerate>=0.3.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "64089e46-bdb9-4aee-b9d5-38f79232ee66", + "node_id": "img2txt-comfyui-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.1" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "img2txt-comfyui-nodes", + "publisher": { + "createdAt": "2024-05-26T02:18:06.707962Z", + "description": "", + "id": "christian-byrne", + "logo": "", + "members": [], + "name": "christian-byrne", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/christian-byrne/img2txt-comfyui-nodes", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-25T02:04:05.736778Z", + "description": "Lots of nodes with useful purposes, Oobabooga interface with and w/o api key, lora analyzer, multiple math functions nodes, custom image saver, passthrus, multiple string manipulators, host pinger, and the Lora MetaData dumper via lora path (Great for that what settings and model did they use to make this lora question.", + "downloads": 1848, + "github_stars": 1, + "icon": "", + "id": "ComfyUI_EmAySee_CustomNodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-11T17:46:32.39404Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "76fd2eca-911f-4228-a29e-06b338353e76", + "node_id": "ComfyUI_EmAySee_CustomNodes", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "3.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_EmAySee_CustomNodes", + "publisher": { + "createdAt": "2025-04-25T01:50:17.544922Z", + "description": "", + "id": "emaysee", + "logo": "", + "members": [], + "name": "Em Ay See", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/EmAySee/ComfyUI_EmAySee_CustomNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-18T01:33:33.550284Z", + "description": "Custom nodes for performing basic math operations", + "downloads": 876, + "github_stars": 0, + "icon": "https://i.imgur.com/aiqQI7U.png", + "id": "comfyui-basic-math", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-05T18:52:16.354667Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b861feee-ec02-4012-a9e6-8828a834aee8", + "node_id": "comfyui-basic-math", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.0.6" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-Basic-Math", + "publisher": { + "createdAt": "2024-07-31T23:17:26.625774Z", + "description": "", + "id": "akatz", + "logo": "", + "members": [], + "name": "Akatz", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/akatz-ai/ComfyUI-Basic-Math", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-07T09:53:32.656781Z", + "description": "This is a node that outputs tracking results of a grid or specified points using CoTracker. It can be directly connected to the WanVideo ATI Tracks Node.", + "downloads": 597, + "github_stars": 14, + "icon": "", + "id": "cotracker_node", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-24T11:30:32.223801Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3545b735-38bc-450d-915c-f52aa81f327f", + "node_id": "cotracker_node", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_cotracker_node", + "publisher": { + "createdAt": "2025-06-07T09:43:25.91286Z", + "description": "", + "id": "s9roll74", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/s9roll7/comfyui_cotracker_node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-10T06:22:04.782308Z", + "description": "Data manipulation and retrieval nodes. Custom CLIP Text Encode with additional input and output convenience ports. Sum Wrap, a simple integer roll-over iterator. Custom LoRA Loader to extract and view meta-data and trigger phrases. Green Box is a node that can be chained to inject prompt fragments, iterating through a list. Python is a node that allows complete control, manipulation and creation of data, write your Python code inside this node. Multiple input/output ports referenced by name.", + "downloads": 2463, + "github_stars": 46, + "icon": "", + "id": "comfyui-shinsplat", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-12T11:02:50.588629Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "2186b915-ccb8-4287-9062-0ce50cec4748", + "node_id": "comfyui-shinsplat", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "LICENSE", + "name": "Shinsplat", + "publisher": { + "createdAt": "2024-06-10T05:18:03.09351Z", + "description": "", + "id": "shinsplat", + "logo": "", + "members": [], + "name": "Shinsplat", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Shinsplat/ComfyUI-Shinsplat", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-25T01:47:50.300661Z", + "description": "This is the rgb2x wrapper node for ComfyUI. The required models are automatically downloaded on the first run.\noriginal project : [a/https://github.com/zheng95z/rgbx](original project : https://github.com/zheng95z/rgbx)", + "downloads": 2707, + "github_stars": 91, + "icon": "", + "id": "comfyui_rgbx_wrapper", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-25T02:02:38.779173Z", + "dependencies": [ + "torch", + "diffusers", + "imageio", + "numpy", + "opencv-python", + "transformers", + "huggingface-hub" + ], + "deprecated": false, + "downloadUrl": "", + "id": "17fa03f9-68e4-402a-840d-30265b0fca66", + "node_id": "comfyui_rgbx_wrapper", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_rgbx_Wrapper", + "publisher": { + "createdAt": "2024-05-21T08:57:29.149821Z", + "description": "", + "id": "toyxyz", + "logo": "", + "members": [], + "name": "ComfyUI_toyxyz_test_nodes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/toyxyz/ComfyUI_rgbx_Wrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-19T13:24:18.941555Z", + "description": "This extension adds helper nodes for looping over prompts and other data types.", + "downloads": 419, + "github_stars": 0, + "icon": "", + "id": "comfy-loop-utilities", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-19T13:58:51.145073Z", + "dependencies": [ + "" + ], + "deprecated": false, + "downloadUrl": "", + "id": "002fe597-56df-4b07-b30c-57898530ff38", + "node_id": "comfy-loop-utilities", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfy-loop-utilities", + "publisher": { + "createdAt": "2025-04-19T13:08:54.403108Z", + "description": "", + "id": "shirofir", + "logo": "", + "members": [], + "name": "ShirO_o", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/O-oshir/comfy-loop-utilities", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-01T07:58:43.163953Z", + "description": "Nodes:NNLatentUpscale, A custom ComfyUI node designed for rapid latent upscaling using a compact neural network, eliminating the need for VAE-based decoding and encoding.", + "downloads": 6009, + "github_stars": 0, + "icon": "", + "id": "comfyui_nnlatentupscale", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-01T07:58:46.965657Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "58ab725d-f400-4014-877d-399315ee0242", + "node_id": "comfyui_nnlatentupscale", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUi_NNLatentUpscale", + "publisher": { + "createdAt": "2024-06-20T07:16:36.973168Z", + "description": "", + "id": "goktug", + "logo": "", + "members": [], + "name": "Goktug", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Goktug/ComfyUi_NNLatentUpscale", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-06T01:30:58.438466Z", + "description": "Nodes: DepthAnything v2, LineArt, PyraCanny, Sketch", + "downloads": 4862, + "github_stars": 2, + "icon": "", + "id": "comfyui-nikosis-preprocessors", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-06T01:30:58.836721Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "d0d15e3b-5d4c-45a1-a2e6-e64b792ee13e", + "node_id": "comfyui-nikosis-preprocessors", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Nikosis-Preprocessors", + "publisher": { + "createdAt": "2025-03-11T12:18:31.790165Z", + "description": "", + "id": "nikosis", + "logo": "", + "members": [], + "name": "Nikosis", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Nikosis/ComfyUI-Nikosis-Preprocessors", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-30T04:59:09.060442Z", + "description": "Hair transfer", + "downloads": 2860, + "github_stars": 68, + "icon": "", + "id": "comfyui_stablehair_ll", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-01T11:58:18.675727Z", + "dependencies": [ + "numpy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "507ce15f-e0ef-43b2-957d-d5657a844af6", + "node_id": "comfyui_stablehair_ll", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_StableHair_ll", + "publisher": { + "createdAt": "2024-08-02T08:30:49.205493Z", + "description": "", + "id": "lldacing", + "logo": "", + "members": [], + "name": "lldacing", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lldacing/ComfyUI_StableHair_ll", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-21T22:36:41.746463Z", + "description": "ComfyUI implementation of the [a/InstantX IP-Adapter for SD3.5 Large](https://huggingface.co/InstantX/SD3.5-Large-IP-Adapter).", + "downloads": 7517, + "github_stars": 62, + "icon": "", + "id": "comfyui-instantx-ipadapter-sd3", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-21T22:36:45.505114Z", + "dependencies": [ + "torch", + "einops", + "diffusers" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6f653f22-a492-464c-8108-d701e85f620a", + "node_id": "comfyui-instantx-ipadapter-sd3", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-InstantX-IPAdapter-SD3", + "publisher": { + "createdAt": "2024-12-21T22:30:49.020253Z", + "description": "", + "id": "slickytail", + "logo": "", + "members": [], + "name": "Raphael Walker", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Slickytail/ComfyUI-InstantX-IPAdapter-SD3", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-05T22:09:37.554792Z", + "description": "Nodes: Easy Resolution Picker, GPU Blur Image, Solid Color Image, Lerp Float", + "downloads": 3329, + "github_stars": 2, + "icon": "", + "id": "comfyui-ux-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-23T13:15:57.440195Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b1df58d9-9dc0-4852-b5e2-a933e7b89734", + "node_id": "comfyui-ux-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-UX-Nodes", + "publisher": { + "createdAt": "2024-08-05T21:56:13.458858Z", + "description": "", + "id": "anibaaal", + "logo": "", + "members": [], + "name": "Anibaaal", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Anibaaal/ComfyUI-UX-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-24T12:59:00.467361Z", + "description": "Fixed version of the original MagicQuill node. Required nodes: ComfyUI-Brushnet and ComfyUI Controlnet AUX", + "downloads": 3229, + "github_stars": 3, + "icon": "", + "id": "comfyui_magicquill_fixed", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-20T19:32:16.542696Z", + "dependencies": [ + "opencv-python", + "diffusers", + "torchsde", + "protobuf", + "transformers", + "tokenizers", + "sentencepiece", + "shortuuid", + "accelerate", + "peft", + "bitsandbytes", + "pydantic", + "markdown2", + "scikit-learn", + "requests", + "httpx", + "uvicorn", + "fastapi", + "einops", + "einops-exts", + "timm", + "webcolors", + "torch", + "importlib_metadata", + "huggingface_hub", + "scipy", + "opencv-python", + "filelock", + "numpy", + "Pillow", + "einops", + "torchvision", + "pyyaml", + "scikit-image", + "python-dateutil", + "mediapipe", + "svglib", + "fvcore", + "yapf", + "omegaconf", + "ftfy", + "addict", + "yacs", + "trimesh[easy]", + "albumentations", + "scikit-learn", + "matplotlib" + ], + "deprecated": false, + "downloadUrl": "", + "id": "3f5ae4df-0b13-437e-a821-53d39ad507e0", + "node_id": "comfyui_magicquill_fixed", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{}", + "name": "ComfyUI MagicQuill (fixed)", + "publisher": { + "createdAt": "2025-04-07T09:29:15.533297Z", + "description": "", + "id": "brantje", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/brantje/ComfyUI_MagicQuill", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-24T07:10:44.198073Z", + "description": "Translate and extend danbooru tags using Danbot models.", + "downloads": 814, + "github_stars": 20, + "icon": "https://raw.githubusercontent.com/p1atdev/danbot-comfy-node/refs/heads/main/assets/icon.png", + "id": "danbot-comfy-node", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-24T15:02:36.628525Z", + "dependencies": [ + "protobuf>=6.30.1", + "sentencepiece>=0.2.0", + "transformers>=4.49.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6e615035-d58f-4dbf-81ab-b42754bc0277", + "node_id": "danbot-comfy-node", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "danbot-comfy-node", + "publisher": { + "createdAt": "2024-10-29T14:27:04.475712Z", + "description": "", + "id": "p1atdev", + "logo": "", + "members": [], + "name": "Plat", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/p1atdev/danbot-comfy-node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-23T13:42:53.515169Z", + "description": "Update Kontext Support, Autogenerate, tooltips, and more.", + "downloads": 5167, + "github_stars": 54, + "icon": "https://github.com/StableDiffusionVN/SDVN_Comfy_node/blob/main/preview/sdvn-logo.png", + "id": "sdvn_comfy_node", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-21T05:58:26.289145Z", + "dependencies": [ + "#If MacOs - Please install aria2 manually via brew", + "aria2;sys_platform != 'darwin'", + "openai", + "gallery-dl", + "google-generativeai", + "googletrans-py" + ], + "deprecated": false, + "downloadUrl": "", + "id": "4debc8e6-eade-43e4-ae44-8a5161bcc3f9", + "node_id": "sdvn_comfy_node", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.11.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "SDVN_Comfy_node", + "publisher": { + "createdAt": "2024-12-23T13:36:25.4605Z", + "description": "", + "id": "sdvn-comfy-node", + "logo": "", + "members": [], + "name": "sdvn-comfy-node", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/StableDiffusionVN/SDVN_Comfy_node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-25T21:59:50.217498Z", + "description": "ComfyUI custom node for flexible and efficient image color correction and post-processing.", + "downloads": 1073, + "github_stars": 78, + "icon": "", + "id": "ComfyUI-EasyColorCorrector", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-30T16:50:47.20767Z", + "dependencies": [ + "torch>=1.12.0", + "numpy>=1.21.0", + "opencv-python>=4.8.0", + "scikit-learn>=1.3.0", + "scikit-image>=0.21.0", + "colour-science>=0.4.3", + "scipy>=1.11.0", + "rawpy>=0.18.0", + "imageio>=2.28.0", + "OpenEXR>=1.3.9", + "Pillow>=9.0.0", + "torchvision>=0.13.0", + "huggingface_hub>=0.15.0", + "timm>=0.9.2" + ], + "deprecated": false, + "downloadUrl": "", + "id": "30f3c379-8f7d-4f81-b40f-8bba4029fabc", + "node_id": "ComfyUI-EasyColorCorrector", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.5" + }, + "license": "{\"text\": \"MIT\"}", + "name": "Easy Color Corrector", + "publisher": { + "createdAt": "2024-11-29T05:47:52.886199Z", + "description": "", + "id": "itsjustregi", + "logo": "", + "members": [], + "name": "itsjustregi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/regiellis/ComfyUI-EasyColorCorrector", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-04T06:50:25.337916Z", + "description": "AspectSize and 100 more nodes", + "downloads": 17302, + "github_stars": 53, + "icon": "", + "id": "djz-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-06T20:05:09.444989Z", + "dependencies": [ + "rtree", + "trimesh", + "wordcloud", + "matplotlib", + "opencv-python", + "pydub>=0.25.1", + "ffmpeg-python>=0.2.0", + "opensimplex", + "moderngl" + ], + "deprecated": false, + "downloadUrl": "", + "id": "0864ce63-6c81-4ec3-9dfe-3aface072b88", + "node_id": "djz-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.2.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "DJZ-Nodes", + "publisher": { + "createdAt": "2024-08-27T08:12:40.017079Z", + "description": "", + "id": "driftjohnson", + "logo": "", + "members": [], + "name": "Drift Johnson", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MushroomFleet/DJZ-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-25T17:47:23.499761Z", + "description": "A ComfyUI node containing multiple audio processing tools.", + "downloads": 4127, + "github_stars": 54, + "icon": "", + "id": "audiotools", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-07T05:09:04.779791Z", + "dependencies": [ + "sox", + "librosa" + ], + "deprecated": false, + "downloadUrl": "", + "id": "033c72b2-b788-4955-b70d-4fbc7daa1592", + "node_id": "audiotools", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "MW-ComfyUI_AudioTools", + "publisher": { + "createdAt": "2025-01-06T14:10:29.10336Z", + "description": "", + "id": "mw", + "logo": "", + "members": [], + "name": "MW", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/billwuhao/ComfyUI_AudioTools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-13T22:42:14.657193Z", + "description": "A suite of custom ComfyUI nodes built to evaluate and diagnose the technical qualities of images\u2014especially those generated by AI models. Rather than creating visuals, these tools measure them, offering precise insights into sharpness, noise, exposure, color balance, and more.", + "downloads": 1471, + "github_stars": 13, + "icon": "", + "id": "ComfyUI-Image-Analysis-Tools", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-20T10:16:09.109635Z", + "dependencies": [ + "opencv-python", + "numpy", + "torch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "346d5be6-39b5-4609-b2e8-be3014d111ce", + "node_id": "ComfyUI-Image-Analysis-Tools", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"text\": \"MIT\"}", + "name": "ComfyUI-Image-Analysis-Tools", + "publisher": { + "createdAt": "2025-05-13T21:39:43.419725Z", + "description": "", + "id": "verevolf", + "logo": "", + "members": [], + "name": "Verevolf", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ThatGlennD/ComfyUI-Image-Analysis-Tools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-05T03:22:45.880348Z", + "description": "Custom node to handle text. Save and load text files. Remove comments from text.", + "downloads": 2843, + "github_stars": 1, + "icon": "", + "id": "text-utility", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-22T14:06:30.416135Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "9f5e5a4a-5dfc-4fc2-8bb7-c85039a3addd", + "node_id": "text-utility", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.3.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Text-Utility", + "publisher": { + "createdAt": "2025-01-05T02:16:30.185531Z", + "description": "", + "id": "watarika", + "logo": "", + "members": [], + "name": "watarika", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/watarika/ComfyUI-Text-Utility", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-29T03:53:42.727442Z", + "description": "This extension is a node that directly expands the functionality of KSampler, adding the TCD sampling to KSampler.", + "downloads": 2420, + "github_stars": 5, + "icon": "", + "id": "comfyui-tcd-sampler", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-24T05:34:42.366156Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ee4de3d3-6b30-47f6-9c93-641b112a61c8", + "node_id": "comfyui-tcd-sampler", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"text\": \"GNU General Public License v3.0\"}", + "name": "ComfyUI-TCD-Sampler", + "publisher": { + "createdAt": "2024-06-29T02:56:17.137114Z", + "description": "", + "id": "licyk", + "logo": "", + "members": [], + "name": "licyk", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/licyk/ComfyUI-TCD-Sampler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-28T15:49:54.602202Z", + "description": "This package provides custom nodes to ComfyUI to POST data to a secure API.", + "downloads": 12828, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-GGUF_Forked", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-28T15:49:55.000949Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a6e046a5-4bee-44c7-a804-0ed38bfaaf81", + "node_id": "ComfyUI-GGUF_Forked", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-GGUF_Forked", + "publisher": { + "createdAt": "2025-02-07T19:07:08.91332Z", + "description": "", + "id": "mattabyte", + "logo": "", + "members": [], + "name": "MattaByte", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Mattabyte/ComfyUI-GGUF", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-21T02:24:42.887031Z", + "description": "A translation node for users in Chinese Mainland. (Because of the network firewall in Chinese Mainland, many translation APIs cannot be used normally.)", + "downloads": 1726, + "github_stars": 5, + "icon": "", + "id": "comfyui-cntranslator", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-21T02:24:46.773856Z", + "dependencies": [ + "requests" + ], + "deprecated": false, + "downloadUrl": "", + "id": "04c572d8-44e1-46b7-a71c-ad37409c971a", + "node_id": "comfyui-cntranslator", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-CNtranslator", + "publisher": { + "createdAt": "2024-12-21T02:13:17.965068Z", + "description": "", + "id": "sleeeepyzhou", + "logo": "", + "members": [], + "name": "SleeeepyZhou", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SleeeepyZhou/ComfyUI-CNtranslator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-16T17:40:11.349448Z", + "description": "a lightweight open-source node for ComfyUI, designed to simplify workflows while providing encryption protection for them.", + "downloads": 2232, + "github_stars": 90, + "icon": "https://www.riceround.online/CryptoCat.svg", + "id": "comfyui_cryptocat", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-19T04:14:55.062868Z", + "dependencies": [ + "aiohttp", + "pyzipper", + "websockets" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f3b0d3ed-f18f-4924-acf9-ac645fea5ae9", + "node_id": "comfyui_cryptocat", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "2.4.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_CryptoCat", + "publisher": { + "createdAt": "2024-10-23T14:48:45.245034Z", + "description": "", + "id": "riceround", + "logo": "", + "members": [], + "name": "RiceRound", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/RiceRound/ComfyUI_CryptoCat", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-17T18:56:50.778187Z", + "description": "TTS with Zyphra Zonos", + "downloads": 3534, + "github_stars": 72, + "icon": "", + "id": "ComfyUI-Zonos", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-22T22:07:02.868638Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "6789196a-ac48-49d8-b90e-9b2a56b8a40f", + "node_id": "ComfyUI-Zonos", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI-Zonos", + "publisher": { + "createdAt": "2025-02-17T18:22:22.987749Z", + "description": "", + "id": "buffmcbighuge", + "logo": "", + "members": [], + "name": "BuffMcBigHuge", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BuffMcBigHuge/ComfyUI-Zonos", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-31T13:17:43.29229Z", + "description": "An awesome light tool nodes for ComfyUI.", + "downloads": 3844, + "github_stars": 11, + "icon": "", + "id": "comfyui-light-tool", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-10T10:32:42.718245Z", + "dependencies": [ + "numpy", + "pillow", + "torch", + "opencv-python", + "httpx", + "opendatalab==0.0.9", + "oss2", + "pycryptodome" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7d448d8a-0b9c-41ab-8459-b177285223b5", + "node_id": "comfyui-light-tool", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.4.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfyui-Light-Tool", + "publisher": { + "createdAt": "2024-08-31T11:53:37.828839Z", + "description": "", + "id": "hmily", + "logo": "", + "members": [], + "name": "Hmily", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ihmily/ComfyUI-Light-Tool", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-28T03:17:17.305742Z", + "description": "Encrypt your comfyui workflow, and share it with key", + "downloads": 4554, + "github_stars": 34, + "icon": "", + "id": "comfyui-workflow-encrypt", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-28T03:17:18.7787Z", + "dependencies": [ + "cryptography" + ], + "deprecated": false, + "downloadUrl": "", + "id": "77c09673-0b12-459b-a057-87522ceef188", + "node_id": "comfyui-workflow-encrypt", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-Workflow-Encrypt", + "publisher": { + "createdAt": "2024-06-15T12:22:05.599707Z", + "description": "", + "id": "jtydhr88", + "logo": "", + "members": [], + "name": "Terry Jia", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jtydhr88/ComfyUI-Workflow-Encrypt", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-23T12:51:25.965292Z", + "description": "Nodes for ComfyUI that extend the core functionality without adding extra dependencies.", + "downloads": 2672, + "github_stars": 2, + "icon": "https://github.com/rookiepsi/comfyui-extended/raw/main/assets/icon.png", + "id": "comfyui-extended", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-08T13:22:09.585065Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "32b309f7-28f6-49ea-a62d-fe2c394c934f", + "node_id": "comfyui-extended", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Extended", + "publisher": { + "createdAt": "2025-03-16T11:31:05.525258Z", + "description": "", + "id": "rookiepsi", + "logo": "", + "members": [], + "name": "psi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/rookiepsi/comfyui-extended", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-17T01:41:03.368922Z", + "description": "Power Noise Suite contains nodes centered around latent noise input, and diffusion, as well as latent adjustments.", + "downloads": 5808, + "github_stars": 76, + "icon": "", + "id": "powernoisesuite", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-17T01:41:03.629048Z", + "dependencies": [ + "torch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b0060db1-a3a2-4c38-b1d2-1f4a9597d2c2", + "node_id": "powernoisesuite", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "PowerNoiseSuite", + "publisher": { + "createdAt": "2024-06-17T00:47:38.837695Z", + "description": "", + "id": "was", + "logo": "", + "members": [], + "name": "WAS", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/WASasquatch/PowerNoiseSuite", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-27T15:33:20.348927Z", + "description": "A collection of custom nodes for ComfyUI designed to replicate certain visual elements and effects reminiscent of Snap and early digital aesthetics.", + "downloads": 799, + "github_stars": 1, + "icon": "", + "id": "snap", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-27T15:33:20.824154Z", + "dependencies": [ + "torch==1.13.1", + "Pillow==9.4.0", + "numpy==1.24.2" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b7474de5-dc6d-4fe2-91ba-43de80ff536d", + "node_id": "snap", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-ComfySnap", + "publisher": { + "createdAt": "2025-04-21T13:15:10.950508Z", + "description": "", + "id": "signalchain", + "logo": "", + "members": [], + "name": "SignalChain", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SignalCha1n/comfyui-ComfySnap", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-01T00:24:15.781516Z", + "description": "[Deprecated in favor of the new saving system] With this quality of life extension, you can save your workflow with a specific name and include additional details such as the author, a description, and the version (in metadata/json). Important: When you share your workflow (via png/json), others will be able to see your information!", + "downloads": 9796, + "github_stars": 45, + "icon": "https://raw.githubusercontent.com/crystian/ComfyUI-Crystools/main/docs/screwdriver.png", + "id": "comfyui-crystools-save", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-01T20:17:57.233476Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b9611ccc-6919-4953-ac29-0d1eea5808e0", + "node_id": "comfyui-crystools-save", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.4.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Crystools-save", + "publisher": { + "createdAt": "2024-06-30T22:36:24.02671Z", + "description": "", + "id": "crystian", + "logo": "", + "members": [], + "name": "Crystian", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/crystian/ComfyUI-Crystools-save", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-23T20:16:33.915776Z", + "description": "This extension contains various nodes for CFG scheduling and more. NODES:ScheduledCFGGuider, PerpNegScheduledCFGGuider, CosineScheduler, GaussianScheduler, LogNormalScheduler, InvertSigmas, ConcatSigmas, OffsetSigmas, SplitSigmasByValue", + "downloads": 2005, + "github_stars": 3, + "icon": "", + "id": "comfyui-scheduledguider-ext", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-02T09:37:11.013185Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c7d915b5-e0bf-4fbc-9091-210026a903af", + "node_id": "comfyui-scheduledguider-ext", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ScheduledGuider-Ext", + "publisher": { + "createdAt": "2025-02-23T19:43:32.282271Z", + "description": "", + "id": "mfg637", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mfg637/ComfyUI-ScheduledGuider-Ext", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-11T17:12:58.829312Z", + "description": "Custom nodes with a touch of extra UX \u2728 Client-side LLM chat, mid-workflow image editing, history for primitives, JSON manipulation, analytics nodes, CivitAI metadata fetching and saving... and more!", + "downloads": 2794, + "github_stars": 14, + "icon": "https://github.com/lucafoscili/lucafoscili/blob/996cb0c00612e3278798c32eea80f1332277132e/lf-nodes/logo/LFN.png", + "id": "lf-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-09T18:09:00.348022Z", + "dependencies": [ + "numpy", + "openai", + "opencv-python", + "pandas", + "piexif", + "Pillow", + "requests", + "svgwrite", + "timm", + "torch", + "torchvision", + "tqdm", + "transformers" + ], + "deprecated": false, + "downloadUrl": "", + "id": "bf93c6b9-e0a9-445b-9215-9363595dc70d", + "node_id": "lf-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.11.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "LF Nodes", + "publisher": { + "createdAt": "2024-08-20T08:35:42.691421Z", + "description": "", + "id": "lucafoscili", + "logo": "", + "members": [], + "name": "lucafoscili", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lucafoscili/lf-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-21T00:03:36.862027Z", + "description": "Experimental sampler node. Sampling alternates between A and B inputs until only one remains, starting with A. B steps run over a 2x2 grid, where 3/4's of the grid are copies of the original input latent. When the optional mask is used, the region outside the defined roi is copied from the original latent at the end of every step. Disclaimer: its applications should be rather niche and there are likely better alternative approaches.", + "downloads": 2344, + "github_stars": 9, + "icon": "", + "id": "comfyui_ab_samplercustom", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-21T00:03:37.137766Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "51d6a925-58eb-44f6-8cc3-aefd888b3bb7", + "node_id": "comfyui_ab_samplercustom", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_ab_samplercustom", + "publisher": { + "createdAt": "2024-05-22T19:48:40.164036Z", + "description": "", + "id": "bmad4ever", + "logo": "", + "members": [], + "name": "bmad", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bmad4ever/comfyui_ab_samplercustom", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-27T07:10:47.768982Z", + "description": "This repository packages the latest BiRefNet model as a ComfyUI node for use, supporting chunked loading on both CPU and GPU, as well as model caching features.", + "downloads": 2434, + "github_stars": 8, + "icon": "", + "id": "comfyui-maskEditor-extension", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-27T13:35:06.6166Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "697606a1-39ce-48a5-a345-2af32fbe9cec", + "node_id": "comfyui-maskEditor-extension", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-MaskEditor-Extension", + "publisher": { + "createdAt": "2024-10-10T11:01:11.077098Z", + "description": "", + "id": "duhaifeng", + "logo": "", + "members": [], + "name": "duhaifeng", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/rubi-du/ComfyUI-MaskEditor-Extension", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-24T15:43:54.65261Z", + "description": "A ComfyUI custom node that provides fine-grained control over style transfer using Redux style models.", + "downloads": 6164, + "github_stars": 93, + "icon": "", + "id": "comfyui-redux-prompt", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-24T15:43:58.464314Z", + "dependencies": [ + "numpy", + "torch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "9f963697-42a6-4786-a713-aa996251603f", + "node_id": "comfyui-redux-prompt", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Redux-Prompt", + "publisher": { + "createdAt": "2024-09-29T10:55:36.930737Z", + "description": "", + "id": "cychenyue", + "logo": "", + "members": [], + "name": "cychenyue", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/CY-CHENYUE/ComfyUI-Redux-Prompt", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-21T09:59:43.531443Z", + "description": "Nodes related to video chat workflows", + "downloads": 768, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-VideoChatWrapper", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-21T10:57:05.515233Z", + "dependencies": [ + "qwen_vl_utils" + ], + "deprecated": false, + "downloadUrl": "", + "id": "329da8e5-2c19-404a-ac07-21ab4e863a41", + "node_id": "ComfyUI-VideoChatWrapper", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-VideoChatWrapper", + "publisher": { + "createdAt": "2024-11-25T08:58:15.514936Z", + "description": "", + "id": "jida-ai", + "logo": "", + "members": [], + "name": "JIDA AI", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lebrosoft/ComfyUI-VideoChatWrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-06T22:00:11.312553Z", + "description": "A node for saving cleaned text outputs, useful for LoRA training. Removes unwanted tokens like and saves to .txt.", + "downloads": 218, + "github_stars": 0, + "icon": "", + "id": "e-tier-textsaver", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-06T22:00:11.747348Z", + "dependencies": [ + "pyyaml" + ], + "deprecated": false, + "downloadUrl": "", + "id": "93db96c4-db96-46d9-bfe7-da22b0ca2000", + "node_id": "e-tier-textsaver", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-E-Tier-TextSaver", + "publisher": { + "createdAt": "2025-06-06T19:17:43.721238Z", + "description": "", + "id": "e-tier-newbie", + "logo": "", + "members": [], + "name": "E-Tier-Newbie", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/e-tier-newbie/ComfyUI-E-Tier-TextSaver", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-26T14:15:14.722168Z", + "description": "This custom node for ComfyUI will add a simple and elegant resource monitor.", + "downloads": 4327, + "github_stars": 13, + "icon": "\ud83d\udcc8", + "id": "comfyui-elegant-resource-monitor", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-23T21:48:53.69169Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "65400031-5d68-45cf-90a0-0224c0ab2144", + "node_id": "comfyui-elegant-resource-monitor", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.19" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Elegant-Resource-Monitor", + "publisher": { + "createdAt": "2024-08-16T00:53:52.116798Z", + "description": "", + "id": "chriscoletech", + "logo": "", + "members": [], + "name": "ChrisColeTech", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ChrisColeTech/ComfyUI-Elegant-Resource-Monitor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-30T02:27:32.372837Z", + "description": "Upsamples danbooru tags using Dart models.", + "downloads": 847, + "github_stars": 3, + "icon": "", + "id": "dart-comfy-node", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-30T02:27:36.11056Z", + "dependencies": [ + "optimum[onnxruntime]" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c378a69b-1279-45e2-bf1a-f795e18cba33", + "node_id": "dart-comfy-node", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "dart-comfy-node", + "publisher": { + "createdAt": "2024-10-29T14:27:04.475712Z", + "description": "", + "id": "p1atdev", + "logo": "", + "members": [], + "name": "Plat", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/p1atdev/dart-comfy-node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-30T12:15:18.71407Z", + "description": "ComfyS3 seamlessly integrates with [a/Amazon S3](https://aws.amazon.com/en/s3/) in ComfyUI. This open-source project provides custom nodes for effortless loading and saving of images, videos, and checkpoint models directly from S3 buckets within the ComfyUI graph interface.", + "downloads": 2426, + "github_stars": 48, + "icon": "", + "id": "comfys3", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-31T15:49:09.250691Z", + "dependencies": [ + "python-dotenv==1.0.1", + "boto3==1.34.32" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c59d0101-1112-4553-88f2-34b2d3041192", + "node_id": "comfys3", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyS3", + "publisher": { + "createdAt": "2024-05-30T12:12:03.916165Z", + "description": "", + "id": "temryl", + "logo": "", + "members": [], + "name": "TemryL", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TemryL/ComfyS3", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-11T00:39:47.771769Z", + "description": "Regional prompt with attention score manipulation", + "downloads": 5914, + "github_stars": 135, + "icon": "", + "id": "comfyui_densediffusion", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-25T16:34:58.708298Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "8b47b637-eb5c-490b-99b0-3d7bff0c177f", + "node_id": "comfyui_densediffusion", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_densediffusion", + "publisher": { + "createdAt": "2024-05-16T22:06:01.581472Z", + "description": "", + "id": "huchenlei", + "logo": "", + "members": [], + "name": "huchenlei", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/huchenlei/ComfyUI_densediffusion", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-30T10:19:54.868753Z", + "description": "Custom Nodes by the team at WeirdWonderfulAI.Art. Line Count, Join String, Dither Image, Image Batch Loader, Prompt Writer, LLM Prompt To Text File, Advanced Text File Reader,Game Boy Camera Style, Nested Loop, Search and Replace String", + "downloads": 6621, + "github_stars": 22, + "icon": "https://weirdwonderfulai.art/wp-content/uploads/2022/01/WWAA_logo_trans.png", + "id": "wwaa-customnodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-11T09:05:10.245395Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4acce513-b47c-4cbd-8205-49be13080bd1", + "node_id": "wwaa-customnodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.9.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "WWAA-CustomNodes", + "publisher": { + "createdAt": "2024-12-30T09:43:37.246533Z", + "description": "", + "id": "wwaa", + "logo": "", + "members": [], + "name": "WeirdWonderfulAI.Art", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hgabha/WWAA-CustomNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-13T10:43:01.938976Z", + "description": "This custom node offers the following functionalities: API support for setting up API requests, computer vision primarily for masking or collages, and general utility to streamline workflow setup or implement essential missing features.", + "downloads": 3204, + "github_stars": 64, + "icon": "", + "id": "comfyui_bmad_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-02T19:42:35.557391Z", + "dependencies": [ + "gray2color", + "opencv-python~=4.8.1.78", + "scikit-image~=0.20.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "8bf572ac-ffb2-4b5d-a000-c0e411452c8b", + "node_id": "comfyui_bmad_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.6.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_bmad_nodes", + "publisher": { + "createdAt": "2024-05-22T19:48:40.164036Z", + "description": "", + "id": "bmad4ever", + "logo": "", + "members": [], + "name": "bmad", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bmad4ever/comfyui_bmad_nodes", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-19T20:30:38.504779Z", + "description": "", + "downloads": 852, + "github_stars": 2, + "icon": "", + "id": "live-preview", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-19T20:30:38.963959Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "183d632f-05f3-4bd1-a530-248a7f5cca05", + "node_id": "live-preview", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfy-live-preview", + "publisher": { + "createdAt": "2025-02-18T23:12:40.962794Z", + "description": "", + "id": "thot-experiment", + "logo": "", + "members": [], + "name": "thot experiment", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/thot-experiment/comfy-live-preview", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-02T21:57:07.073552Z", + "description": "This custom node helps to auto download models from huggingface.", + "downloads": 1944, + "github_stars": 16, + "icon": "", + "id": "autodownloadmodels", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-02T21:57:07.457785Z", + "dependencies": [ + "huggingface_hub[hf_transfer]", + "hf_transfer", + "rapidfuzz" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a986c8bc-a9f5-418b-9ccc-58fe49e35d8e", + "node_id": "autodownloadmodels", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_AutoDownloadModels", + "publisher": { + "createdAt": "2025-04-02T21:43:29.666481Z", + "description": "", + "id": "aiexplorer25", + "logo": "", + "members": [], + "name": "AIExplorer25", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIExplorer25/ComfyUI_AutoDownloadModels", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-04T10:00:00.675268Z", + "description": "WeiLin-ComfyUI-Prompt-all-in-one Write prompt words like WebUI", + "downloads": 10939, + "github_stars": 225, + "icon": "", + "id": "weilin-comfyui-prompt-all-in-one", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-04T10:12:37.335444Z", + "dependencies": [], + "deprecated": true, + "downloadUrl": "", + "id": "5b266b12-5a4a-406a-bd9f-734f6ac8e1c4", + "node_id": "weilin-comfyui-prompt-all-in-one", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "3.6.9" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "WeiLin-ComfyUI-prompt-all-in-one", + "publisher": { + "createdAt": "2024-10-04T09:37:52.642094Z", + "description": "", + "id": "weilin", + "logo": "", + "members": [], + "name": "WeiLin", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/weilin9999/WeiLin-ComfyUI-prompt-all-in-one", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-26T22:28:24.974316Z", + "description": "Simple Node to make panoramic images", + "downloads": 1135, + "github_stars": 6, + "icon": "", + "id": "comfyui-panoramic-imgstitcher", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-09T23:34:17.58357Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4fec41a3-0ff8-4a03-863e-fb42f8d650ea", + "node_id": "comfyui-panoramic-imgstitcher", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Panoramic Image Stitcher", + "publisher": { + "createdAt": "2024-08-26T20:29:53.044291Z", + "description": "", + "id": "rodrigoskohl", + "logo": "", + "members": [], + "name": "Rodrigo S. Kohl", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/RodrigoSKohl/comfyui-panoramic-imgstitcher", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-14T03:32:05.005063Z", + "description": "This node pack provides the official ComfyUI workflow for ICEdit.", + "downloads": 4277, + "github_stars": 194, + "icon": "https://raw.githubusercontent.com/hayd-zju/ICEdit-ComfyUI-official/refs/heads/main/assets/logo.svg", + "id": "ICEdit", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-14T03:45:48.351174Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "26874e26-82e8-4891-8f9b-bcea957ad26c", + "node_id": "ICEdit", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ICEdit", + "publisher": { + "createdAt": "2025-05-14T02:49:15.677008Z", + "description": "", + "id": "hayd", + "logo": "", + "members": [], + "name": "Zihao Liu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hayd-zju/ICEdit-ComfyUI-official", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-15T17:47:39.342639Z", + "description": "A small set of nodes I created for myself. Features multiple simultaneous prompts in batches, an image saver with ability to have JSON saved to separate folder, image analysis nodes, switches for text and numbers, and more.", + "downloads": 2508, + "github_stars": 49, + "icon": "https://raw.githubusercontent.com/tusharbhutt/Endless-Nodes/main/img/icon.png", + "id": "endless-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-20T14:54:57.068022Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "328dd15f-aa9f-4628-8711-f0f46c4af418", + "node_id": "endless-nodes", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.3.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Endless \ud83c\udf0a\u2728 Nodes", + "publisher": { + "createdAt": "2025-06-15T05:39:08.424044Z", + "description": "", + "id": "tusharbhutt", + "logo": "", + "members": [], + "name": "Tushar Bhutt", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tusharbhutt/Endless-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-20T19:41:54.343552Z", + "description": "Implementation of InstantId faceswap and nodes for people generation for SDXL/Pony", + "downloads": 15397, + "github_stars": 240, + "icon": "", + "id": "comfyui-instantid-faceswap", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-03T19:03:22.881761Z", + "dependencies": [ + "insightface", + "onnxruntime-gpu" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1b017b4a-05b0-4560-b01e-56ded50a2bc4", + "node_id": "comfyui-instantid-faceswap", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.1" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "comfyui-instantId-faceswap", + "publisher": { + "createdAt": "2024-09-25T15:58:12.781163Z", + "description": "", + "id": "nosiu", + "logo": "", + "members": [], + "name": "nosiu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nosiu/comfyui-instantId-faceswap", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-06T23:16:50.573722Z", + "description": "a set of nodes to help u run ai code using MLTask", + "downloads": 1115, + "github_stars": 0, + "icon": "https://mltask.com/images/android-chrome-512x512.png", + "id": "mltask_comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-17T16:45:57.71671Z", + "dependencies": [ + "requests", + "aiohttp" + ], + "deprecated": false, + "downloadUrl": "", + "id": "15c20881-8129-4a90-acbe-cb7cf8d7649f", + "node_id": "mltask_comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "MLTask_ComfyUI", + "publisher": { + "createdAt": "2024-07-15T02:37:05.928008Z", + "description": "", + "id": "mltask", + "logo": "", + "members": [], + "name": "MLTask.com", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/misterjoessef/MLTask_ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-18T07:59:45.635576Z", + "description": "A custom node for ComfyUI to save image sequences as video files using FFmpeg. Supports various codecs, audio muxing, and in-node previews.", + "downloads": 1428, + "github_stars": 1, + "icon": "", + "id": "save-images-as-video", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-18T12:32:53.877937Z", + "dependencies": [ + "Pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e44e95f6-7c1f-4ac4-b025-438147fbe553", + "node_id": "save-images-as-video", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Save Images to Video (FFmpeg)", + "publisher": { + "createdAt": "2025-05-18T07:04:48.896974Z", + "description": "", + "id": "san4itos", + "logo": "", + "members": [], + "name": "San4itos", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/San4itos/ComfyUI-Save-Images-as-Video", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-19T02:29:09.906293Z", + "description": "Nodes:Render SD3 Attention, SD3 Attention To Image, SD3 Image Into Attention.", + "downloads": 1602, + "github_stars": 20, + "icon": "", + "id": "comfyui-sd3-powerlab", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-19T02:29:10.199135Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "f65f9b7f-d0e8-4391-bbf8-f5958a40c1f6", + "node_id": "comfyui-sd3-powerlab", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-SD3-Powerlab", + "publisher": { + "createdAt": "2024-06-19T02:23:41.960695Z", + "description": "", + "id": "g370", + "logo": "", + "members": [], + "name": "G-370", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/G-370/ComfyUI-SD3-Powerlab", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-05T06:09:28.901914Z", + "description": "Scheduler for ComfyUI and an attempt at optimized scheduler for the Chroma architecture.", + "downloads": 1697, + "github_stars": 8, + "icon": "", + "id": "ComfyUI_SigmoidOffsetScheduler", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-11T19:44:54.940777Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ff2b5a3a-778a-4f16-b014-1e93d7facca0", + "node_id": "ComfyUI_SigmoidOffsetScheduler", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Sigmoid Offset Scheduler", + "publisher": { + "createdAt": "2024-09-17T18:22:05.116266Z", + "description": "", + "id": "silveroxides", + "logo": "", + "members": [], + "name": "silveroxides", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/silveroxides/ComfyUI_SigmoidOffsetScheduler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-17T18:47:44.115896Z", + "description": "Improve the interactive experience of using ComfyUI, such as making the loading of ComfyUI models more intuitive and making it easier to create model thumbnails", + "downloads": 5759, + "github_stars": 345, + "icon": "", + "id": "aigodlike-comfyui-studio", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-19T02:34:27.107388Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "92c09657-bf88-4947-b2dd-17475cf7afe8", + "node_id": "aigodlike-comfyui-studio", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "LICENSE", + "name": "AIGODLIKE-ComfyUI-Studio", + "publisher": { + "createdAt": "2024-05-17T16:26:45.370921Z", + "description": "", + "id": "aigodlike", + "logo": "", + "members": [], + "name": "AIGODLIKE", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIGODLIKE/AIGODLIKE-ComfyUI-Studio", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-08T03:44:14.934339Z", + "description": "Faster workflows for ComfyUI users on Mac with Apple silicon", + "downloads": 3558, + "github_stars": 149, + "icon": "", + "id": "comfyui-mlx", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-22T06:41:46.904589Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "e5c7a9ce-a950-46ee-93d8-dd9bf75b4439", + "node_id": "comfyui-mlx", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-MLX", + "publisher": { + "createdAt": "2024-10-08T03:20:25.642524Z", + "description": "", + "id": "thoddnn", + "logo": "", + "members": [], + "name": "thoddnn", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/thoddnn/ComfyUI-MLX", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-27T05:57:30.705843Z", + "description": "something show& tensor show nodes. Image processing nodes: ps transfer, greyscale.... Use these nodes to make some Real Money!", + "downloads": 534, + "github_stars": 11, + "icon": "\ud83d\udc31", + "id": "comfyui-moneymaker", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-27T09:59:46.937342Z", + "dependencies": [ + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c32922a9-779f-4ee6-8a0c-68bf29b93e6c", + "node_id": "comfyui-moneymaker", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-MoneyMaker", + "publisher": { + "createdAt": "2025-01-23T03:20:24.38645Z", + "description": "", + "id": "cyber-blackcat", + "logo": "", + "members": [], + "name": "Cyber-BlackCat", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Cyber-BlackCat/ComfyUI-MoneyMaker", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-28T12:32:18.56384Z", + "description": "Run Replicate models in ComfyUI", + "downloads": 3480, + "github_stars": 187, + "icon": "", + "id": "comfyui-replicate", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-05T15:26:46.143742Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "cd2210e0-9ea2-4baa-a341-5ca98ba407cf", + "node_id": "comfyui-replicate", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Replicate", + "publisher": { + "createdAt": "2024-06-20T11:47:18.175863Z", + "description": "", + "id": "fofr", + "logo": "", + "members": [], + "name": "fofr", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/replicate/comfyui-replicate", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T18:15:42.709704Z", + "description": "A simple wildcard node for ComfyUI. Can also be used a style prompt node.", + "downloads": 2427, + "github_stars": 5, + "icon": "", + "id": "simplewildcardscomfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-28T09:59:19.521086Z", + "dependencies": [ + "pipe==2.2" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d7b6cd45-d79d-41ec-bed9-abadd84dbdab", + "node_id": "simplewildcardscomfyui", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "SimpleWildcardsComfyUI", + "publisher": { + "createdAt": "2024-06-19T08:24:19.567963Z", + "description": "", + "id": "vanillacode314", + "logo": "", + "members": [], + "name": "vanillacode", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/vanillacode314/SimpleWildcardsComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-26T14:53:34.381877Z", + "description": "A collection of nodes to facilitate the creation of explicit NSFW scenes in ComfyUI.", + "downloads": 6428, + "github_stars": 55, + "icon": "", + "id": "comfyui-scene-composer", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-21T13:08:10.290832Z", + "dependencies": [ + "dpath", + "numpy", + "toml" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6f9084dc-07a3-4bfa-b403-16d9529fdd00", + "node_id": "comfyui-scene-composer", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "\ud83c\udf9e\ufe0f Scene Composer", + "publisher": { + "createdAt": "2024-10-26T14:41:13.250121Z", + "description": "", + "id": "taches", + "logo": "", + "members": [], + "name": "Taches", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/taches-ai/comfyui-scene-composer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-01T23:05:35.202084Z", + "description": "Nodes:LCMScheduler, SamplerLCMAlternative, SamplerLCMCycle, SamplerLCMDualNoise, SamplerLCMDuoFusion. ComfyUI Custom Sampler nodes that add a new improved LCM sampler functions", + "downloads": 12741, + "github_stars": 135, + "icon": "", + "id": "comfyui-sampler-lcm-alternative", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-27T18:39:11.045997Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "47190cc2-22dd-4a82-b25e-2fee0b4856fd", + "node_id": "comfyui-sampler-lcm-alternative", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"text\": \"GNU General Public License v3.0\"}", + "name": "ComfyUI-sampler-lcm-alternative", + "publisher": { + "createdAt": "2024-07-01T22:42:30.441228Z", + "description": "", + "id": "elriel", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jojkaart/ComfyUI-sampler-lcm-alternative", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-04T22:04:17.957826Z", + "description": "Utility nodes for some randomness in your workflows, like random latent sizes. A few modifications to a few existing nodes, a node for model parameters, a few image manipulation nodes. Also includes two schedulers and four samplers that can be used with any KSampler node.", + "downloads": 4657, + "github_stars": 5, + "icon": "", + "id": "lopi999-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-21T19:22:46.154704Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "2098eff8-1369-42aa-9d5b-8ff4b93fc833", + "node_id": "lopi999-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "2.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-lopi999-nodes", + "publisher": { + "createdAt": "2025-04-04T20:30:24.079954Z", + "description": "", + "id": "lopi999", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LaVie024/comfyui-lopi999-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-24T12:15:12.599776Z", + "description": "Just some nodes that help me.", + "downloads": 3834, + "github_stars": 3, + "icon": "", + "id": "havocscall_custom_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-07T18:56:52.114872Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "fe8274c8-e2f5-4a44-8565-099b89a359df", + "node_id": "havocscall_custom_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "3.3.1" + }, + "license": "{\"text\": \"https://github.com/HavocsCall/ComfyUI_HavocsCall_Custom_Nodes/blob/master/LICENSE\"}", + "name": "HavocsCall_Custom_Nodes", + "publisher": { + "createdAt": "2025-04-18T12:14:25.819501Z", + "description": "", + "id": "havocscall", + "logo": "", + "members": [], + "name": "HavocsCall", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/HavocsCall/ComfyUI_HavocsCall_Custom_Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-10T02:33:57.91483Z", + "description": "Custom node for ComfyUI. It adds additional metadata for saved images, ensuring compatibility with the Civitai website.", + "downloads": 9813, + "github_stars": 50, + "icon": "", + "id": "comfyui_image_metadata_extension", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-20T08:17:43.684315Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a2c32d21-2cf2-4d18-b3b6-bd57a4d55f5d", + "node_id": "comfyui_image_metadata_extension", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.23" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_image_metadata_extension", + "publisher": { + "createdAt": "2024-09-19T17:24:53.212385Z", + "description": "", + "id": "edelvarden", + "logo": "", + "members": [], + "name": "edelvarden", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/edelvarden/comfyui_image_metadata_extension", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-04T22:58:11.412894Z", + "description": "A pair of nodes (Load Image and Save Image) to create a simple loop in your ComfyUI inpainting workflow, without the need of loading your last saved image, and a few others to cut and paste back the cutting into the source.", + "downloads": 2986, + "github_stars": 8, + "icon": "https://github.com/Hullabalo/ComfyUI-Loop/raw/main/ComfyUI-Loop.png", + "id": "comfyui-loop", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-01T10:05:03.005434Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "6969e401-fb05-4f89-8a8f-ca7b32148ecd", + "node_id": "comfyui-loop", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Loop", + "publisher": { + "createdAt": "2025-01-04T21:44:29.524047Z", + "description": "", + "id": "hullabaloo", + "logo": "", + "members": [], + "name": "Hullabaloo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Hullabalo/ComfyUI-Loop", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-25T07:39:47.844976Z", + "description": "getting/sending picture from/to Photoshop with a simple connection. Make Photoshop become the workspace of your ComfyUI.", + "downloads": 24128, + "github_stars": 1574, + "icon": "", + "id": "sd-ppp", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-15T04:33:33.643499Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "e87008e8-98d0-4780-b97c-11ea1859e631", + "node_id": "sd-ppp", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.9.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "sd-ppp", + "publisher": { + "createdAt": "2024-05-25T07:35:00.082076Z", + "description": "", + "id": "zombieyang", + "logo": "", + "members": [], + "name": "ZombieYang", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zombieyang/sd-ppp", + "status": "", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-28T23:52:47.01487Z", + "description": "This custom node for ComfyUI integrates the Flux-Prompt-Enhance model, allowing you to enhance your prompts directly within your ComfyUI workflows.", + "downloads": 10871, + "github_stars": 108, + "icon": "https://raw.githubusercontent.com/marduk191/comfyui-marnodes/main/icon/RA.png", + "id": "comfyui-fluxpromptenhancer", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-28T23:52:50.799527Z", + "dependencies": [ + "torch>=1.9.0", + "transformers>=4.18.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "9174505e-cf4f-4607-8179-2b7d35ce8296", + "node_id": "comfyui-fluxpromptenhancer", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Fluxpromptenhancer", + "publisher": { + "createdAt": "2024-06-17T16:19:43.686404Z", + "description": "", + "id": "marduk191", + "logo": "", + "members": [], + "name": "marduk191", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/marduk191/ComfyUI-Fluxpromptenhancer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-10T09:18:21.834556Z", + "description": "Offering a series of utility nodes designed to simplify workflows and enhance efficiency", + "downloads": 7438, + "github_stars": 51, + "icon": "https://github.com/MieMieeeee/ComfyUI-MieNodes/blob/2f617ba2539e8fd13a91fe790e6b5e9ae1718a58/images/channels4_profile.jpg?raw=true", + "id": "comfyui_mienodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-19T09:42:48.752593Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "0ac8ff83-5124-4e31-b67f-8105aa937f6e", + "node_id": "comfyui_mienodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.10" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_MieNodes", + "publisher": { + "createdAt": "2025-02-10T08:44:10.88859Z", + "description": "", + "id": "mie", + "logo": "", + "members": [], + "name": "Mie", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MieMieeeee/ComfyUI-MieNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-23T04:58:57.548246Z", + "description": "Nodes: Format String, Join String List, Load Preset, Load Preset (Advanced), Const String, Const String (multi line). Add useful nodes related to prompt.", + "downloads": 4462, + "github_stars": 19, + "icon": "", + "id": "comfyui-promptutilities", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-19T14:45:05.964267Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "669e1ad0-aea4-4daf-b39a-362475dc9d88", + "node_id": "comfyui-promptutilities", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-PromptUtilities", + "publisher": { + "createdAt": "2024-06-23T04:27:13.079228Z", + "description": "", + "id": "nkchocoai", + "logo": "", + "members": [], + "name": "nk choco", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nkchocoai/ComfyUI-PromptUtilities", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-04T11:46:49.787645Z", + "description": "comfy extension for lumina2 TeaCache", + "downloads": 546, + "github_stars": 10, + "icon": "", + "id": "cui-lumina2-teacache", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-07T12:06:26.987671Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "18c5458b-eaf9-4717-934a-5634485aed1e", + "node_id": "cui-lumina2-teacache", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "CUI-Lumina2-TeaCache", + "publisher": { + "createdAt": "2025-06-04T11:23:35.643962Z", + "description": "", + "id": "spawner", + "logo": "", + "members": [], + "name": "spawner", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/spawner1145/CUI-Lumina2-TeaCache", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-19T16:31:16.708635Z", + "description": "The ComfyUI Web Viewer by vrch.ai is a custom node collection offering a real-time AI-generated interactive art framework. This utility integrates realtime streaming into ComfyUI workflows, supporting keyboard control nodes, OSC control nodes, sound input nodes, and more. Accessible from any device with a web browser, it enables real time interaction with AI-generated content, making it ideal for interactive visual projects and enhancing ComfyUI workflows with efficient content management and display.", + "downloads": 14441, + "github_stars": 228, + "icon": "https://vrch.ai/images/vrch_Logo_vertical_black.png", + "id": "comfyui-web-viewer", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-20T23:02:45.104915Z", + "dependencies": [ + "aiohttp", + "ffmpeg-python", + "pydub", + "python-osc", + "scikit-learn", + "matplotlib" + ], + "deprecated": false, + "downloadUrl": "", + "id": "9d38746e-bf99-4139-9022-c632500ad93b", + "node_id": "comfyui-web-viewer", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.33" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Web Viewer", + "publisher": { + "createdAt": "2024-10-12T17:53:00.820678Z", + "description": "", + "id": "vrchdev", + "logo": "", + "members": [], + "name": "Vrch Studio (legacy)", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/VrchStudio/comfyui-web-viewer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-01T09:17:19.711031Z", + "description": "CURRENTLY IN ACTIVE DEVELOPMENT (BETA)! IF THINGS BREAK ITS BECAUSE I BROKE IT.... This my implemenation of a `pipe` in ComfyUI. Is it better or worse than others? No idea. (also has some utility nodes)", + "downloads": 44836, + "github_stars": 7, + "icon": "", + "id": "agilly1989_motorway", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-02T22:23:51.887703Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3b8f4c22-d913-40f4-a1c6-65489ec2a3fb", + "node_id": "agilly1989_motorway", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_agilly1989_motorway", + "publisher": { + "createdAt": "2025-02-01T09:05:18.165582Z", + "description": "", + "id": "agilly1989", + "logo": "", + "members": [], + "name": "agilly1989", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/agilly1989/ComfyUI_agilly1989_motorway", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-23T15:08:07.464667Z", + "description": "Assorted custom nodes with a focus on simplicity and usability including watermark node and others focused on customizing my comfy experience.", + "downloads": 1406, + "github_stars": 2, + "icon": "", + "id": "mgnodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-23T15:08:11.358279Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ffa1775a-9175-4176-8d28-247830e60979", + "node_id": "mgnodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-MGnodes", + "publisher": { + "createdAt": "2025-01-22T07:00:10.263618Z", + "description": "", + "id": "meanin2", + "logo": "", + "members": [], + "name": "meanin2", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/meanin2/comfyui-MGnodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-01T05:41:28.202926Z", + "description": "A very simple ComfyUI node to remove item with mask.", + "downloads": 2655, + "github_stars": 0, + "icon": "", + "id": "ComfyUI_Lama_Remover_Revived", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-01T05:41:28.570164Z", + "dependencies": [ + "Pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f5106821-ee14-4def-846f-9fe8c8437475", + "node_id": "ComfyUI_Lama_Remover_Revived", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Lama Remover Revived", + "publisher": { + "createdAt": "2024-09-17T18:22:05.116266Z", + "description": "", + "id": "silveroxides", + "logo": "", + "members": [], + "name": "silveroxides", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/silveroxides/comfyui-lama-remover", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-10T07:08:04.695434Z", + "description": "A collection of prompt managent nodes with advanced tag parsing. Prompt tag cloud, mutiselect, toggle list, randomizer, filter, autocompete.", + "downloads": 1357, + "github_stars": 31, + "icon": "", + "id": "comfyui-erenodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-29T08:26:16.627202Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5d433eea-15eb-4fe2-8c0a-5bcec13026aa", + "node_id": "comfyui-erenodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "2.1.2" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-EreNodes", + "publisher": { + "createdAt": "2025-06-10T06:42:19.735386Z", + "description": "", + "id": "erehr", + "logo": "", + "members": [], + "name": "Erehr", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Erehr/ComfyUI-EreNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-24T07:49:53.957806Z", + "description": "nodes for deepseek api", + "downloads": 1176, + "github_stars": 4, + "icon": "", + "id": "comfyui-deepseek", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-25T08:18:44.073127Z", + "dependencies": [ + "openai" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c3fffac6-8388-4219-8b05-4c45db563179", + "node_id": "comfyui-deepseek", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.9" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-deepseek", + "publisher": { + "createdAt": "2025-01-06T03:08:06.856727Z", + "description": "", + "id": "fffffair", + "logo": "", + "members": [], + "name": "Fair", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yanhuifair/comfyui-deepseek", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-14T23:00:00.231528Z", + "description": "Checkpoint and UNET/Diffusion Model loaders for BitsAndBytes NF4 quantized models", + "downloads": 14991, + "github_stars": 37, + "icon": "", + "id": "ComfyUI_bnb_nf4_fp4_Loaders", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-19T11:25:28.884582Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "e8428433-8fa6-4b0d-b925-6fcb21f94a89", + "node_id": "ComfyUI_bnb_nf4_fp4_Loaders", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.5" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "BitsAndBytes NF4 Loaders", + "publisher": { + "createdAt": "2024-09-17T18:22:05.116266Z", + "description": "", + "id": "silveroxides", + "logo": "", + "members": [], + "name": "silveroxides", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/silveroxides/ComfyUI_bitsandbytes_NF4", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-08T03:03:42.4922Z", + "description": "Flux.1 Kontext supporting text-to-image and multi-image-to-image generation. The 'pro' model costs only about RMB 0.14 (US$0.02) per image.", + "downloads": 2583, + "github_stars": 22, + "icon": "https://raw.githubusercontent.com/LKbaba/ComfyUI-TuZi-Flux-Kontext/main/images/text-to-image-demo.png", + "id": "ComfyUI-TuZi-Flux-Kontext", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-19T03:38:15.205099Z", + "dependencies": [ + "requests", + "python-dotenv", + "fal-client", + "httpx", + "httpcore" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e64ddb4b-a02f-4702-934c-1df6b456eeaf", + "node_id": "ComfyUI-TuZi-Flux-Kontext", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.7" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Flux.1 Kontext api in TuZi", + "publisher": { + "createdAt": "2025-06-08T02:40:01.59251Z", + "description": "", + "id": "nokugua", + "logo": "", + "members": [], + "name": "NoKuGua", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LKbaba/ComfyUI-TuZi-Flux-Kontext", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-17T20:38:14.177685Z", + "description": "A package designed to enable multi-regional prompting for architectural rendering, integrated with the Rhino Pseudorandom plugin.", + "downloads": 1335, + "github_stars": 1, + "icon": "https://raw.githubusercontent.com/Pseudotools/Pseudocomfy/29a21efdcf42d7918df8ce5b3dd6b9fe00da4dfa/pseudorandom_logo.png", + "id": "pseudocomfy", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-08T22:04:37.24511Z", + "dependencies": [ + "diffusers" + ], + "deprecated": false, + "downloadUrl": "", + "id": "13bc0319-7b86-4dc5-95e6-b07ddc60306f", + "node_id": "pseudocomfy", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "2.0.9" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Pseudocomfy", + "publisher": { + "createdAt": "2024-09-14T16:31:28.656994Z", + "description": "", + "id": "pseudotools", + "logo": "", + "members": [], + "name": "Pseudotools", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Pseudotools/Pseudocomfy", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-24T11:32:09.401508Z", + "description": "BMAB for ComfyUI. BMAB is an custom nodes of ComfyUI and has the function of post-processing the generated image according to settings. If necessary, you can find and redraw people, faces, and hands, or perform functions such as resize, resample, and add noise. You can composite two images or perform the Upscale function.", + "downloads": 8887, + "github_stars": 110, + "icon": "", + "id": "comfyui_bmab", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-30T13:09:58.213904Z", + "dependencies": [ + "lightning", + "segment_anything", + "omegaconf", + "ultralytics", + "scikit-image", + "huggingface_hub", + "transformers>=4.40.0", + "blendmodes", + "opencv-python", + "urllib3" + ], + "deprecated": false, + "downloadUrl": "", + "id": "ec278ae1-be95-4218-8ec5-24e4c96837a9", + "node_id": "comfyui_bmab", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "AGPL-3.0", + "name": "comfyui_bmab", + "publisher": { + "createdAt": "2024-05-24T11:22:35.825801Z", + "description": "", + "id": "portu-sim", + "logo": "", + "members": [], + "name": "portu-sim", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/portu-sim/comfyui_bmab", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-11T04:43:41.563109Z", + "description": "Implementation of Kolors on ComfyUI\nReference from [a/https://github.com/kijai/ComfyUI-KwaiKolorsWrapper](https://github.com/kijai/ComfyUI-KwaiKolorsWrapper)\nUsing ComfyUI Native Sampling", + "downloads": 13076, + "github_stars": 592, + "icon": "", + "id": "comfyui-kolors-mz", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-20T01:11:02.149203Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "abecea91-3c3e-4969-9b4d-3e2824ee7216", + "node_id": "comfyui-kolors-mz", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.0" + }, + "license": "{\"file\": \"GPL-3.0 license\"}", + "name": "ComfyUI-Kolors-MZ", + "publisher": { + "createdAt": "2024-05-23T18:12:56.765818Z", + "description": "", + "id": "wailovet", + "logo": "", + "members": [], + "name": "MinusZoneAI", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MinusZoneAI/ComfyUI-Kolors-MZ", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-24T21:15:34.296072Z", + "description": "Wildcard implementation that can be reproduced with workflows.", + "downloads": 3210, + "github_stars": 25, + "icon": "", + "id": "comfyui-stable-wildcards", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-12T18:58:07.228352Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "010b2771-36c5-42c7-89a0-147fefc65b27", + "node_id": "comfyui-stable-wildcards", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.2" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI-stable-wildcards", + "publisher": { + "createdAt": "2024-05-24T20:16:49.811821Z", + "description": "", + "id": "digitalio", + "logo": "", + "members": [], + "name": "DigitalIO", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DigitalIO/ComfyUI-stable-wildcards", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-30T04:05:17.263664Z", + "description": "Create immersive 3D stereoscopic images and videos! Transform your ComfyUI generations into stunning side-by-side 3D visuals for videos and image sequences. Powered by Depth-Anything-V2, no external depth maps needed. Perfect for VR, 3D displays, and cross-eyed viewing - no special glasses required!", + "downloads": 3561, + "github_stars": 27, + "icon": "sbs_icon.png", + "id": "comfyui_ssstereoscope_bysamseen", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-27T11:45:11.594675Z", + "dependencies": [ + "numpy", + "Pillow", + "torch", + "transformers>=4.51.0", + "opencv-python", + "tqdm" + ], + "deprecated": false, + "downloadUrl": "", + "id": "9c3b842d-672c-4fd7-b7f8-2d21571de603", + "node_id": "comfyui_ssstereoscope_bysamseen", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "SideBySide_Stereoscope", + "publisher": { + "createdAt": "2024-06-30T03:39:39.961106Z", + "description": "", + "id": "samseen", + "logo": "", + "members": [], + "name": "SamSeen", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MrSamSeen/ComfyUI_SSStereoscope", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-04T09:15:23.712022Z", + "description": "all top-level standalone functions of OpenCV Python cv2 auto-generated from the type definitions", + "downloads": 588, + "github_stars": 28, + "icon": "", + "id": "opencv-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-04T14:10:13.380956Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c321d0c0-9bb4-4a0e-87d0-f67b5dfe3dd2", + "node_id": "opencv-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "OpenCV", + "publisher": { + "createdAt": "2025-04-02T08:48:05.316601Z", + "description": "", + "id": "geroldmeisinger", + "logo": "", + "members": [], + "name": "Gerold Meisinger", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/geroldmeisinger/opencv-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-15T19:02:34.555199Z", + "description": "A custom node for ComfyUI to integrate Google Gemini API.", + "downloads": 10376, + "github_stars": 219, + "icon": "", + "id": "gemini-api", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-08T05:52:22.872583Z", + "dependencies": [ + "google-genai>=1.5.0", + "Pillow>=10.1.0", + "requests", + "numpy", + "torch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "2b2f7fb1-3b85-4cc3-8545-f954b777a0dd", + "node_id": "gemini-api", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.7" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Gemini-API", + "publisher": { + "createdAt": "2024-09-29T10:55:36.930737Z", + "description": "", + "id": "cychenyue", + "logo": "", + "members": [], + "name": "cychenyue", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/CY-CHENYUE/ComfyUI-Gemini-API", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-21T23:14:35.499591Z", + "description": "Diffusers wrapper for CogVideoX -models: https://github.com/THUDM/CogVideo", + "downloads": 66873, + "github_stars": 1514, + "icon": "", + "id": "comfyui-cogvideoxwrapper", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-14T12:40:17.490211Z", + "dependencies": [ + "huggingface_hub", + "diffusers>=0.31.0", + "accelerate>=0.33.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d9c17e44-aaa1-43ee-8ad1-6a7fe56cd6d3", + "node_id": "comfyui-cogvideoxwrapper", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.5.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-CogVideoXWrapper", + "publisher": { + "createdAt": "2024-06-09T11:11:54.62154Z", + "description": "", + "id": "kijai", + "logo": "", + "members": [], + "name": "Kijai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-CogVideoXWrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-07T10:31:24.590375Z", + "description": "", + "downloads": 753, + "github_stars": 0, + "icon": "", + "id": "fairlab", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-07T10:31:28.145393Z", + "dependencies": [ + "googletrans-py==4.0.0", + "datetime" + ], + "deprecated": true, + "downloadUrl": "", + "id": "5233a080-aad1-4f5c-ae04-ce8259b13710", + "node_id": "fairlab", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "", + "name": "", + "publisher": { + "createdAt": "2025-01-06T03:08:06.856727Z", + "description": "", + "id": "fffffair", + "logo": "", + "members": [], + "name": "Fair", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-28T05:37:52.11285Z", + "description": "This repository wraps the latest BiRefNet model as ComfyUI nodes. Compared to the previous model, the latest model offers higher and better matting accuracy.Support TensorRT.", + "downloads": 3333, + "github_stars": 0, + "icon": "", + "id": "comfyui-birefnet-trt", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-28T05:37:55.87461Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a455a93b-edd1-4b1c-b38c-f5efd64c6af5", + "node_id": "comfyui-birefnet-trt", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-BiRefNet-TRT", + "publisher": { + "createdAt": "2024-05-23T02:42:37.410277Z", + "description": "", + "id": "jesenzhang", + "logo": "", + "members": [], + "name": "jesen", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jesenzhang/ComfyUI-BiRefNet-TRT.git", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-29T06:29:49.414287Z", + "description": "Set of custom nodes to use with the ComfyUI Flux Continuum: Modular Interface. NODES: Text Versions, Image64 Display, Tabs, Step Slider, Denoise Slider, Guidance Slider, Batch Slider, Max Shift Slider, ControlNet Slider and more", + "downloads": 1307, + "github_stars": 206, + "icon": "", + "id": "comfyui-flux-continuum", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-29T06:29:50.454267Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "d1575201-7380-4916-b364-2861ef0ac78d", + "node_id": "comfyui-flux-continuum", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.7.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Flux-Continuum", + "publisher": { + "createdAt": "2024-11-21T06:05:18.377578Z", + "description": "", + "id": "robertvoy", + "logo": "", + "members": [], + "name": "WorldObserver", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/robertvoy/ComfyUI-Flux-Continuum", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-07T17:06:01.709293Z", + "description": "Rudimentary wrapper that runs [a/Kwai-Kolors](https://huggingface.co/Kwai-Kolors/Kolors) text2image pipeline using diffusers.", + "downloads": 9092, + "github_stars": 596, + "icon": "", + "id": "comfyui-kwaikolorswrapper", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-07T22:56:45.950474Z", + "dependencies": [ + "diffusers>=0.28.2", + "transformers>=4.26.1", + "sentencepiece", + "accelerate", + "cpm-kernels" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b3a3fa54-2924-4d5d-b5bb-1ad1cb73582c", + "node_id": "comfyui-kwaikolorswrapper", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "Apache-2.0", + "name": "ComfyUI-KwaiKolorsWrapper", + "publisher": { + "createdAt": "2024-06-09T11:11:54.62154Z", + "description": "", + "id": "kijai", + "logo": "", + "members": [], + "name": "Kijai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-KwaiKolorsWrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-29T04:53:37.192871Z", + "description": "A custom node collection for integrating various LLM (Large Language Model) providers with ComfyUI.", + "downloads": 1785, + "github_stars": 27, + "icon": "", + "id": "llm-toolkit", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-09T03:36:41.763537Z", + "dependencies": [ + "aiohttp>=3.8.0", + "pyyaml>=6.0", + "python-dotenv>=0.20.0", + "requests>=2.27.0", + "pillow>=9.0.0", + "numpy>=1.24.0", + "tqdm>=4.64.0", + "transformers>=4.51.0", + "torch>=2.0", + "openai", + "accelerate>=0.28.0", + "sentencepiece", + "safetensors", + "qwen-omni-utils" + ], + "deprecated": false, + "downloadUrl": "", + "id": "af7b5b48-a66c-43f7-8bc4-ffc8a9794fd7", + "node_id": "llm-toolkit", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-llm-toolkit", + "publisher": { + "createdAt": "2024-05-24T11:25:10.573427Z", + "description": "", + "id": "comfydeploy", + "logo": "", + "members": [], + "name": "ComfyDeploy", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/comfy-deploy/comfyui-llm-toolkit", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-23T08:10:10.090293Z", + "description": "A collection of nodes designed for efficiency and the reduction of screen-clutter. Includes a Global Seed controller with boolean toggles, SDXL All-in-One conditioner, a custom SDXL control module, Wildcard processor, Style Injector, and more. WARNING: Updating this node-pack wil overwrite any changes you've made to the included wildcards and styles. Please backup your folders before updating.", + "downloads": 4059, + "github_stars": 5, + "icon": "", + "id": "focus_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-02T01:02:51.733108Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3115c966-f59b-4c89-9e79-fb0264d6710f", + "node_id": "focus_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfyui_FOCUS_nodes", + "publisher": { + "createdAt": "2025-01-23T07:46:49.053765Z", + "description": "", + "id": "tribefull", + "logo": "", + "members": [], + "name": "FOCUS Nodes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DJ-Tribefull/Comfyui_FOCUS_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-22T03:29:21.916338Z", + "description": "Open source comfyui deployment platform, a vercel for generative workflow infra.", + "downloads": 9028, + "github_stars": 1368, + "icon": "", + "id": "comfyui-deploy", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-29T07:43:39.191483Z", + "dependencies": [ + "aiofiles", + "pydantic", + "opencv-python", + "imageio-ffmpeg", + "tabulate", + "brotli" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d028991e-2c6c-42d0-872f-8f00b89aa99c", + "node_id": "comfyui-deploy", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "2.2.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-deploy", + "publisher": { + "createdAt": "2024-05-24T11:25:10.573427Z", + "description": "", + "id": "comfydeploy", + "logo": "", + "members": [], + "name": "ComfyDeploy", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BennyKok/comfyui-deploy", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-09T19:04:17.638021Z", + "description": "Griptape LLM(Large Language Model) Nodes for ComfyUI.", + "downloads": 9707, + "github_stars": 198, + "icon": "https://cdn.prod.website-files.com/65d658559223871198e78bca/65e4fd64fb258c6d9bd8c276_griptape-Chunck_beige.svg", + "id": "comfyui-griptape", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-29T03:25:05.316622Z", + "dependencies": [ + "attrs>=24.3.0,<26.0.0", + "openai>=1.58.1,<2.0.0", + "griptape[all]>=1.4.0", + "python-dotenv", + "poetry==1.8.5", + "griptape-black-forest @ git+https://github.com/griptape-ai/griptape-black-forest.git", + "griptape_serper_driver_extension @ git+https://github.com/mertdeveci5/griptape-serper-driver-extension.git" + ], + "deprecated": false, + "downloadUrl": "", + "id": "8e2fe9fd-bc6c-46a0-8814-1f8633da2e34", + "node_id": "comfyui-griptape", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.2.16" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Griptape", + "publisher": { + "createdAt": "2024-08-29T17:19:22.635291Z", + "description": "", + "id": "shhlife", + "logo": "", + "members": [], + "name": "Jason Schleifer", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/griptape-ai/ComfyUI-Griptape", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-27T07:30:53.941925Z", + "description": "Official implementation in ComfyUI of CVPR 2025 paper 'HyperLoRA: Parameter-Efficient Adaptive Generation for Portrait Synthesis'", + "downloads": 7483, + "github_stars": 370, + "icon": "", + "id": "hyperlora", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-27T07:30:54.40188Z", + "dependencies": [ + "diffusers>=0.26.3", + "insightface>=0.7.3", + "onnxruntime>=1.17.1", + "opencv-python>=4.9.0.80", + "transformers>=4.38.1" + ], + "deprecated": false, + "downloadUrl": "", + "id": "02856267-a8e2-4725-b1ea-876954e29616", + "node_id": "hyperlora", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-HyperLoRA", + "publisher": { + "createdAt": "2025-04-26T07:53:12.052768Z", + "description": "", + "id": "lemonsky", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bytedance/ComfyUI-HyperLoRA", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-21T12:10:12.028843Z", + "description": "'\ud83d\udd22 Prompt Combinator' is a node that generates all possible combinations of prompts from several lists of strings.\n'\ud83d\udd22 Prompt Combinator Merger' is a node that enables merging the output of two different '\ud83d\udd22 Prompt Combinator' nodes.", + "downloads": 3568, + "github_stars": 39, + "icon": "", + "id": "comfyui-prompt-combinator", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-16T20:52:34.483891Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "577ecd48-5d8c-40bc-9a9f-47cef9f7fed4", + "node_id": "comfyui-prompt-combinator", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Prompt-Combinator", + "publisher": { + "createdAt": "2024-06-20T04:42:10.628776Z", + "description": "", + "id": "lquesada", + "logo": "", + "members": [], + "name": "Luis Quesada", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lquesada/ComfyUI-Prompt-Combinator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-24T18:24:53.847356Z", + "description": "An extension for ComfyUI that allows hot reloading. Once installed, you can preview changes in real-time while developing custom nodes or installing plugins without restarting ComfyUI.", + "downloads": 2770, + "github_stars": 205, + "icon": "", + "id": "comfyui_lg_hotreload", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-21T16:07:20.943578Z", + "dependencies": [ + "watchdog" + ], + "deprecated": false, + "downloadUrl": "", + "id": "dc4c7ad5-0475-4eba-be92-5349823f2c9b", + "node_id": "comfyui_lg_hotreload", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.7.1" + }, + "license": "{}", + "name": "ComfyUI-LG_HotReload", + "publisher": { + "createdAt": "2024-10-09T09:00:56.560993Z", + "description": "", + "id": "laogou666", + "logo": "", + "members": [], + "name": "LAOGOU-666", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LAOGOU-666/ComfyUI-LG_HotReload", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-10T09:53:24.425419Z", + "description": "NODES: ComfyUI-ImageFx, ComfyUI-Whisk, ComfyUI-Whisk-Prompts", + "downloads": 1986, + "github_stars": 82, + "icon": "", + "id": "labs-google", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-10T09:53:25.89862Z", + "dependencies": [ + "requests", + "pillow", + "chardet" + ], + "deprecated": false, + "downloadUrl": "", + "id": "218691da-7047-484c-8ce6-753235a59b65", + "node_id": "labs-google", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-labs-google", + "publisher": { + "createdAt": "2025-01-10T01:44:52.203746Z", + "description": "", + "id": "ainewsto", + "logo": "", + "members": [], + "name": "ainewsto", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ainewsto/comfyui-labs-google", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-16T06:21:35.145343Z", + "description": "ComfyUI node for background removal, implementing InSPyReNet", + "downloads": 3510, + "github_stars": 3, + "icon": "", + "id": "comfyui-ycyy-inspyrenet", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-16T06:21:38.92239Z", + "dependencies": [ + "transparent-background" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c2d41821-cae3-4a22-979e-0a9de4d40e90", + "node_id": "comfyui-ycyy-inspyrenet", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-YCYY-InSPyReNet", + "publisher": { + "createdAt": "2024-08-16T06:01:52.703572Z", + "description": "", + "id": "ycyy", + "logo": "", + "members": [], + "name": "yichenyanyu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ycyy/ComfyUI-YCYY-InSPyReNet", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-10T20:29:25.726389Z", + "description": "", + "downloads": 789, + "github_stars": 3, + "icon": "https://avatars.githubusercontent.com/u/142442886?v=4", + "id": "makkitools", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-03T02:39:10.425557Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "07e97ad0-2b46-4e22-8b41-d18a4f952688", + "node_id": "makkitools", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.8" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-MakkiTools", + "publisher": { + "createdAt": "2024-07-27T15:18:06.489076Z", + "description": "", + "id": "makki-shizu", + "logo": "", + "members": [], + "name": "Makki_Shizu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MakkiShizu/ComfyUI-MakkiTools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-23T23:18:36.266989Z", + "description": "This is an extension for ComfyUI that makes it possible to use some LLM models provided by Ollama, such as Gemma, Llava (multimodal), Llama2, Llama3 or Mistral. Speaking specifically of the LLaVa - Large Language and Vision Assistant model, although trained on a relatively small dataset, it demonstrates exceptional capabilities in understanding images and answering questions about them. This model presents similar behaviors to multimodal models such as GPT-4, even when presented with invisible images and instructions.", + "downloads": 8762, + "github_stars": 76, + "icon": "", + "id": "comfyui-ollama-describer", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-09T05:43:43.259278Z", + "dependencies": [ + "ollama" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b601037f-dd0e-42e9-99fa-7da23240910d", + "node_id": "comfyui-ollama-describer", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Ollama-Describer", + "publisher": { + "createdAt": "2024-08-23T23:13:55.561095Z", + "description": "", + "id": "alisson-anjos", + "logo": "", + "members": [], + "name": "AlissonAnjos", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alisson-anjos/ComfyUI-Ollama-Describer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-19T07:11:07.354627Z", + "description": "A ComfyUI implementation of Latent Bridge Matching (LBM) for efficient image relighting. This node utilizes the LBM algorithm to perform single-step image-to-image translation specifically for relighting tasks.", + "downloads": 2000, + "github_stars": 54, + "icon": "", + "id": "ComfyUI-LBM", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-22T07:24:11.357078Z", + "dependencies": [ + "diffusers>=0.19.0", + "accelerate>=0.20.0", + "torch>=2.0.0", + "torchvision>=0.15.0", + "tqdm>=4.65.0", + "Pillow>=9.0.0", + "transformers>=4.30.0", + "safetensors>=0.3.1", + "requests>=2.25.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "4fde7376-99e3-4428-a20e-87e42442ed41", + "node_id": "ComfyUI-LBM", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-LBM", + "publisher": { + "createdAt": "2024-07-01T23:11:45.570672Z", + "description": "", + "id": "ailab", + "logo": "", + "members": [], + "name": "AILab", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/1038lab/ComfyUI-LBM", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T16:24:44.989838Z", + "description": "Proper implementation of ImageMagick - the famous software suite for editing and manipulating digital images to ComfyUI using [wandpy](https://github.com/emcconville/wand)", + "downloads": 4150, + "github_stars": 113, + "icon": "", + "id": "comfyui-magickwand", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-01T01:01:22.702733Z", + "dependencies": [ + "Wand" + ], + "deprecated": false, + "downloadUrl": "", + "id": "9e51a265-9ecc-4ec0-9d32-9c7b194f8f42", + "node_id": "comfyui-magickwand", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-MagickWand", + "publisher": { + "createdAt": "2024-06-20T15:55:49.560354Z", + "description": "", + "id": "fannovel16", + "logo": "", + "members": [], + "name": "Fannovel16", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Fannovel16/ComfyUI-MagickWand", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-28T05:57:23.913911Z", + "description": "This extension provides a node that allows you to overlay text on an image or a batch of images with support for custom fonts and styles.", + "downloads": 7194, + "github_stars": 37, + "icon": "", + "id": "comfyui-textoverlay", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-07T04:47:03.729731Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "6ca299ee-d86d-4685-bb00-c9e86b7fba9c", + "node_id": "comfyui-textoverlay", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI-TextOverlay", + "publisher": { + "createdAt": "2024-06-28T05:46:47.468061Z", + "description": "", + "id": "munkyfoot", + "logo": "", + "members": [], + "name": "munkyfoot", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Munkyfoot/ComfyUI-TextOverlay", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-27T02:00:05.634573Z", + "description": "A plugin application that utilizes ComfyUI to generate 360-degree panoramic images. It primarily works by converting between flat images and equidistant cylindrical projections, stretching flat images into a curved format, and setting regional conditions, while harnessing the power of large models to produce 360-degree panoramic views.", + "downloads": 21825, + "github_stars": 14, + "icon": "", + "id": "ComfyUI-PanoCard", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-23T08:57:26.822405Z", + "dependencies": [ + "pyequilib", + "opencv-python-headless" + ], + "deprecated": false, + "downloadUrl": "", + "id": "79867156-1a31-4896-a9c3-0006bb67c714", + "node_id": "ComfyUI-PanoCard", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-PanoCard", + "publisher": { + "createdAt": "2024-09-30T12:50:59.577715Z", + "description": "", + "id": "gue", + "logo": "", + "members": [], + "name": "Gue", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Gue-e/ComfyUI-PanoCard", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-17T03:15:48.215729Z", + "description": "Calling gemini2.0 at comfyui . The project will continue to organize good APIs!", + "downloads": 3132, + "github_stars": 88, + "icon": "", + "id": "ssl_gemini_exp", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-19T15:49:22.480387Z", + "dependencies": [ + "google-genai", + "numpy", + "torch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "06976459-0189-4ce6-a2d4-cb030df3283b", + "node_id": "ssl_gemini_exp", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_ssl_gemini_EXP", + "publisher": { + "createdAt": "2025-03-17T02:08:23.13082Z", + "description": "", + "id": "tatookan", + "logo": "", + "members": [], + "name": "tatookan", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tatookan/comfyui_ssl_gemini_EXP", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-21T02:00:31.166531Z", + "description": "Nodes for loading and saving images with metadata in ComfyUI.", + "downloads": 2513, + "github_stars": 7, + "icon": "", + "id": "comfyui-image-metadata-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-01T18:13:16.690347Z", + "dependencies": [ + "Pillow>=9.0.0", + "numpy>=1.21.0", + "torch>=1.13.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "fe942896-ef05-4376-8ce1-dc55d5659598", + "node_id": "comfyui-image-metadata-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Image-Metadata-Nodes", + "publisher": { + "createdAt": "2024-12-21T01:36:24.590095Z", + "description": "", + "id": "lightx02", + "logo": "", + "members": [], + "name": "Light_x02", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Light-x02/ComfyUI-Image-Metadata-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-21T19:45:41.94908Z", + "description": "A simple sidebar for ComfyUI.", + "downloads": 7353, + "github_stars": 556, + "icon": "", + "id": "comfyui-n-sidebar", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-06T11:38:07.925675Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "f6527d05-628a-4335-9403-314e293a4063", + "node_id": "comfyui-n-sidebar", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.6.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-N-Sidebar", + "publisher": { + "createdAt": "2024-05-21T19:29:02.276617Z", + "description": "", + "id": "nuked", + "logo": "", + "members": [], + "name": "Nuked", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Nuked88/ComfyUI-N-Sidebar", + "status": "", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-24T20:06:53.093477Z", + "description": "Given min/max resolution constraints, this automatically suggests optimal dimensions while preserving aspect ratio. Ideal for Image to Image (I2I) and Image to Video (I2V) workflows!", + "downloads": 4378, + "github_stars": 5, + "icon": "", + "id": "constrainresolution", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-25T03:14:41.623974Z", + "dependencies": [ + "numpy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "409d25b1-46b7-49c7-9b55-672d2b84be43", + "node_id": "constrainresolution", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ConstrainResolution", + "publisher": { + "createdAt": "2024-07-26T01:45:42.941977Z", + "description": "", + "id": "enragedantelope", + "logo": "", + "members": [], + "name": "EnragedAntelope", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/EnragedAntelope/ComfyUI-ConstrainResolution", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-29T17:18:59.829557Z", + "description": "", + "downloads": 12238, + "github_stars": 5, + "icon": "", + "id": "all-in-one-style", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-30T20:33:23.314675Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "9544163b-92ad-4637-8fdb-20c706b9dd75", + "node_id": "all-in-one-style", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "All-IN-ONE-style", + "publisher": { + "createdAt": "2024-06-23T07:15:12.623492Z", + "description": "", + "id": "abdallaalsw80", + "logo": "", + "members": [], + "name": "AbdallahAlswaiti", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/al-swaiti/All-IN-ONE-style", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-11T15:36:56.736768Z", + "description": "Remove Watermarks", + "downloads": 1652, + "github_stars": 4, + "icon": "", + "id": "watermark-removal", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-13T05:36:19.379738Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "30079034-8c39-41d6-90e5-cffe846b46ed", + "node_id": "watermark-removal", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Watermark-Removal", + "publisher": { + "createdAt": "2025-01-11T15:36:40.339552Z", + "description": "", + "id": "l-comm", + "logo": "", + "members": [], + "name": "l-comm", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/l-comm/WatermarkRemoval", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-28T14:53:20.304357Z", + "description": "These are nodes to animate an image with a reference video using UniAnimate. [w/Name conflict with AIFSH/ComfyUI-UniAnimate. Cannot install simulatenously.]", + "downloads": 6774, + "github_stars": 176, + "icon": "", + "id": "comfyui-unianimate-w", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-11T10:33:06.328925Z", + "dependencies": [ + "numpy==1.26.0", + "opencv-python==4.9.0.80", + "pytorch_lightning==2.3.0", + "lightning_utilities==0.10.0", + "lightning_fabric==2.3.0", + "torchmetrics==1.3.0.post0", + "xformers==0.0.27", + "einops==0.7.0", + "onnxruntime==1.18.0", + "open-clip-torch==2.24.0", + "fairscale==0.4.13", + "easydict==1.11", + "imageio==2.33.1", + "matplotlib>=3.8.2", + "args" + ], + "deprecated": false, + "downloadUrl": "", + "id": "11364319-3e28-4f81-988b-3a4d908b768e", + "node_id": "comfyui-unianimate-w", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.4.11" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-UniAnimate-W", + "publisher": { + "createdAt": "2024-08-15T06:07:51.42124Z", + "description": "", + "id": "isi-dev", + "logo": "", + "members": [], + "name": "isi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Isi-dev/ComfyUI-UniAnimate-W", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-29T21:35:54.135743Z", + "description": "Fix for new API SaveSVG node. ComfyUI node to vectorize 2 color images like logo or text calling the pure Python 'potracer' library for potrace. ", + "downloads": 1756, + "github_stars": 12, + "icon": "https://raw.githubusercontent.com/ImagineerNL/ComfyUI-ToSVG-Potracer/refs/heads/main/img/potracer.jpg", + "id": "ComfyUI-ToSVG-Potracer", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-08T21:57:16.89965Z", + "dependencies": [ + "numpy", + "Pillow", + "potracer" + ], + "deprecated": false, + "downloadUrl": "", + "id": "718dbafa-d084-43d7-a630-5c7d5f5efe33", + "node_id": "ComfyUI-ToSVG-Potracer", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.3.1" + }, + "license": "{}", + "name": "ComfyUI-ToSVG-Potracer", + "publisher": { + "createdAt": "2025-03-29T12:48:13.233629Z", + "description": "", + "id": "imagineernl", + "logo": "", + "members": [], + "name": "ImagineerNL", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ImagineerNL/ComfyUI-ToSVG-Potracer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-14T09:31:04.516137Z", + "description": "NODES:Florence2 Coordinates (XY Split), Phi-3.5 Vision Instruct.", + "downloads": 2226, + "github_stars": 0, + "icon": "", + "id": "comfyui-florence2xy", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-14T09:31:04.925101Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "6d37cca7-daae-4d18-aa3e-84de10af9a1d", + "node_id": "comfyui-florence2xy", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-florence2xy", + "publisher": { + "createdAt": "2025-06-14T08:01:38.135832Z", + "description": "", + "id": "rinaralte", + "logo": "", + "members": [], + "name": "rinrina", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Rinsanga1/comfyui-florence2xy", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-25T00:08:59.896855Z", + "description": "A very simple ComfyUI node to remove item with mask.", + "downloads": 38199, + "github_stars": 132, + "icon": "", + "id": "comfyui-lama-remover", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-25T00:09:00.176026Z", + "dependencies": [ + "Pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b517d78d-4993-4150-8ac5-d30f3bf93a9a", + "node_id": "comfyui-lama-remover", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "comfyui-lama-remover", + "publisher": { + "createdAt": "2024-05-24T23:32:29.280501Z", + "description": "", + "id": "layer-norm", + "logo": "", + "members": [], + "name": "Faxuan Cai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Layer-norm/comfyui-lama-remover", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-07T12:39:29.58825Z", + "description": "ACE-Step: A Step Towards Music Generation Foundation Model", + "downloads": 6683, + "github_stars": 155, + "icon": "", + "id": "ace-step", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-28T08:39:33.325572Z", + "dependencies": [ + "diffusers", + "librosa", + "pypinyin", + "pytorch_lightning", + "soundfile", + "hangul-romanize", + "num2words", + "spacy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "edf9c74f-e051-41cf-b048-00579f9a2dec", + "node_id": "ace-step", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_ACE-Step", + "publisher": { + "createdAt": "2025-01-06T14:10:29.10336Z", + "description": "", + "id": "mw", + "logo": "", + "members": [], + "name": "MW", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/billwuhao/ComfyUI_ACE-Step", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-31T14:38:15.567646Z", + "description": "An improved wrapper for the FramePack project that allows the creation of videos of any length based on reference images and LoRAs with F1 and 1-frame inference.", + "downloads": 9086, + "github_stars": 23, + "icon": "", + "id": "ComfyUI-FramePackWrapper_PlusOne", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-10T05:38:12.3021Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "7bdf0a45-2ae6-408a-b3cf-4d2a13dc937e", + "node_id": "ComfyUI-FramePackWrapper_PlusOne", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-FramePackWrapper_PlusOne", + "publisher": { + "createdAt": "2025-05-31T13:11:56.79776Z", + "description": "", + "id": "xhiroga", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/xhiroga/ComfyUI-FramePackWrapper_PlusOne", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-08T12:51:05.336172Z", + "description": "The KimaraAIWatermarker custom node allows you to apply watermark text and logo overlays to images and videos. Optionally, the watermark can be moved by the move_watermark_step amount of pixels after each generated image.", + "downloads": 2312, + "github_stars": 17, + "icon": "", + "id": "comfyui-kimara-ai-advanced-watermarks", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-08T12:51:08.996624Z", + "dependencies": [ + "Pillow", + "numpy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "ae3db415-2fc7-4325-be9d-5152b73f859c", + "node_id": "comfyui-kimara-ai-advanced-watermarks", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Kimara-AI-Advanced-Watermarks", + "publisher": { + "createdAt": "2025-01-08T09:31:12.453149Z", + "description": "", + "id": "kimara-ai", + "logo": "", + "members": [], + "name": "kimara.ai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kimara-ai/ComfyUI-Kimara-AI-Advanced-Watermarks", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T12:36:06.763444Z", + "description": "Nodes:Simple Gooogle Translator Client, Simple Mustache Parameter Switcher, Simple Latent Resolution Solver.", + "downloads": 1591, + "github_stars": 2, + "icon": "", + "id": "comfyui_simpletools", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-20T12:36:07.039697Z", + "dependencies": [ + "googletrans==3.1.0a0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "98d64631-2d3c-4d0b-b0bf-e770253af91f", + "node_id": "comfyui_simpletools", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "comfyui_simpletools", + "publisher": { + "createdAt": "2024-06-20T12:20:27.089013Z", + "description": "", + "id": "cj", + "logo": "", + "members": [], + "name": "CJ", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/celsojr2013/comfyui_simpletools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-17T23:47:20.72678Z", + "description": "A simple mosaic blur node for ComfyUI that uses CV2 or Pillow", + "downloads": 1586, + "github_stars": 1, + "icon": "", + "id": "mosaic-blur", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-17T23:47:22.282595Z", + "dependencies": [ + "torch", + "Pillow", + "numpy", + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "50fcda08-9332-4276-ab11-26ade98645ce", + "node_id": "mosaic-blur", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "comfyui-mosaic-blur", + "publisher": { + "createdAt": "2025-01-17T01:05:21.331618Z", + "description": "", + "id": "fuselayer", + "logo": "", + "members": [], + "name": "fuselayer", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fuselayer/comfyui-mosaic-blur", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-19T10:09:44.581753Z", + "description": "ComfyUI GLM Nodes: Seamlessly integrate ZhipuAI GLM models into ComfyUI for enhanced text generation and image-to-prompt capabilities. Features include advanced text chat (video prompt expansion) and GLM-4V powered image description.", + "downloads": 1898, + "github_stars": 36, + "icon": "", + "id": "ComfyUI-GLM4", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-02T13:34:41.048741Z", + "dependencies": [ + "zhipuai" + ], + "deprecated": false, + "downloadUrl": "", + "id": "93388ca0-3132-4141-8579-49ba1e224a58", + "node_id": "ComfyUI-GLM4", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-GLM4", + "publisher": { + "createdAt": "2025-06-19T09:47:16.385146Z", + "description": "", + "id": "msola", + "logo": "", + "members": [], + "name": "LaosHe", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/msola-ht/ComfyUI-GLM4", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-14T16:13:02.472737Z", + "description": "Wrapped Joy Caption alpha 2 node for comfyui: Easy use, for GPU with less 19G, please use nf4 for better balanced speed and result. ", + "downloads": 12592, + "github_stars": 200, + "icon": "\ud83e\ude90", + "id": "comfyui_jc2", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-14T16:13:06.393052Z", + "dependencies": [ + "huggingface_hub>=0.23.4,<=0.25", + "accelerate", + "transformers>=4.43.2,<=4.45.1", + "sentencepiece", + "peft==0.12.0", + "bitsandbytes" + ], + "deprecated": false, + "downloadUrl": "", + "id": "fdac747b-3174-4260-977d-1d7aa1eaabde", + "node_id": "comfyui_jc2", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.8" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfyui_JC2", + "publisher": { + "createdAt": "2024-08-24T06:17:32.70579Z", + "description": "", + "id": "ttplanet", + "logo": "", + "members": [], + "name": "TTPlanet", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TTPlanetPig/Comfyui_JC2", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-30T12:22:17.023212Z", + "description": "ComfyUI adaptation of [a/IDM-VTON](https://github.com/yisol/IDM-VTON) for virtual try-on.", + "downloads": 7559, + "github_stars": 529, + "icon": "", + "id": "comfyui-idm-vton", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-31T15:48:20.51519Z", + "dependencies": [ + "torch", + "torchvision", + "torchaudio", + "accelerate==0.30.0", + "torchmetrics==1.4.0", + "tqdm==4.66.4", + "transformers==4.40.2", + "diffusers==0.27.2", + "einops==0.8.0", + "bitsandbytes==0.42", + "scipy==1.13.0", + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1d170f9a-95dc-4207-9f87-2d6e839e3697", + "node_id": "comfyui-idm-vton", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-IDM-VTON", + "publisher": { + "createdAt": "2024-05-30T12:12:03.916165Z", + "description": "", + "id": "temryl", + "logo": "", + "members": [], + "name": "TemryL", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TemryL/ComfyUI-IDM-VTON", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-23T05:13:51.674739Z", + "description": "A Fast, Accurate, and Detailed Line Detection Preprocessor.\nAnyline is a ControlNet line preprocessor that accurately extracts object edges, image details, and textual content from most images. Users can input any type of image to quickly obtain line drawings with clear edges, sufficient detail preservation, and high fidelity text, which are then used as input for conditional generation in Stable Diffusion.", + "downloads": 19093, + "github_stars": 470, + "icon": "", + "id": "comfyui-anyline", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-23T05:13:51.945139Z", + "dependencies": [ + "pathlib", + "huggingface_hub", + "scikit-image" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e3a73ae4-74b1-4904-8847-f3992d173df1", + "node_id": "comfyui-anyline", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Anyline", + "publisher": { + "createdAt": "2024-05-23T05:06:08.509516Z", + "description": "", + "id": "themisto-ai", + "logo": "", + "members": [], + "name": "TheMisto.ai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TheMistoAI/ComfyUI-Anyline", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-17T18:32:02.058262Z", + "description": "It provides language settings. (Contribution from users of various languages is needed due to the support for each language.)", + "downloads": 71055, + "github_stars": 2288, + "icon": "", + "id": "aigodlike-comfyui-translation", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-19T02:35:40.282456Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "9592c851-8ff2-42b8-ad27-764040779ff2", + "node_id": "aigodlike-comfyui-translation", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "LICENSE", + "name": "AIGODLIKE-ComfyUI-Translation", + "publisher": { + "createdAt": "2024-05-17T16:26:45.370921Z", + "description": "", + "id": "aigodlike", + "logo": "", + "members": [], + "name": "AIGODLIKE", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIGODLIKE/AIGODLIKE-COMFYUI-TRANSLATION", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T16:15:32.544237Z", + "description": "A minimalistic implementation of [a/Robust Video Matting (RVM)](https://github.com/PeterL1n/RobustVideoMatting/) in ComfyUI", + "downloads": 19842, + "github_stars": 210, + "icon": "", + "id": "comfyui-video-matting", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-20T16:15:32.806664Z", + "dependencies": [ + "einops", + "Pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5b1465a3-4fa4-4748-832a-ce2a8be0b223", + "node_id": "comfyui-video-matting", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-Video-Matting", + "publisher": { + "createdAt": "2024-06-20T15:55:49.560354Z", + "description": "", + "id": "fannovel16", + "logo": "", + "members": [], + "name": "Fannovel16", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Fannovel16/ComfyUI-Video-Matting", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-05T09:16:28.346052Z", + "description": "Initial", + "downloads": 1598, + "github_stars": 30, + "icon": "", + "id": "ComfyUI-IG2MV", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-05T09:16:28.734155Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1c477a91-18e3-453d-a191-83660cd09b37", + "node_id": "ComfyUI-IG2MV", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-IG2MV", + "publisher": { + "createdAt": "2025-04-05T03:17:17.637561Z", + "description": "", + "id": "hunzmusic", + "logo": "", + "members": [], + "name": "hunzmusic", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hunzmusic/ComfyUI-IG2MV", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-09T20:40:55.241203Z", + "description": "ComfyUI-TinyBreaker is a collection of custom nodes specifically designed to generate images using the TinyBreaker model. It's actively developed with ongoing improvements. Although still in progress, these nodes are functional and allow you to explore the potential of the model.", + "downloads": 2244, + "github_stars": 37, + "icon": "https://martin-rizzo.github.io/ComfyUI-TinyBreaker/img/thumbnail.jpg", + "id": "tinybreaker", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-04T00:02:21.211043Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "9f1913ad-8be3-4e82-9f45-d15889b91ef2", + "node_id": "tinybreaker", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.3.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-TinyBreaker", + "publisher": { + "createdAt": "2025-02-08T21:39:41.567132Z", + "description": "", + "id": "martin-rizzo", + "logo": "", + "members": [], + "name": "Photographer", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/martin-rizzo/ComfyUI-TinyBreaker", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-25T13:10:50.928356Z", + "description": "OllamaKiller is a cross-platform utility node for ComfyUI that automatically manages Ollama processes (`ollama.exe` on Windows, `ollama` on macOS/Linux). It helps free up VRAM by terminating Ollama processes after model execution, improving workflow performance and memory management. Features include graceful process termination, detailed status reporting, and seamless text passthrough.", + "downloads": 3540, + "github_stars": 3, + "icon": "", + "id": "comfyui-ollama_killer", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-07T18:19:15.244948Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "af3aee2d-7397-469e-805b-8beb51bda332", + "node_id": "comfyui-ollama_killer", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ollama_killer", + "publisher": { + "createdAt": "2024-12-19T12:06:04.564116Z", + "description": "", + "id": "shubzworld", + "logo": "", + "members": [], + "name": "Shubz World", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/theshubzworld/ComfyUI-ollama_killer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-07T17:22:17.040019Z", + "description": "A ComfyUI node that runs a JMESPath query against input JSON and outputs the result", + "downloads": 1142, + "github_stars": 1, + "icon": "", + "id": "comfyui-jmespath", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-07T17:22:20.559488Z", + "dependencies": [ + "jmespath-community" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f0cf777d-9f7a-4d10-97d5-fd9015953a67", + "node_id": "comfyui-jmespath", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-JMESPath", + "publisher": { + "createdAt": "2025-01-07T13:13:33.736384Z", + "description": "", + "id": "gremlation", + "logo": "", + "members": [], + "name": "Gremlation", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gremlation/ComfyUI-JMESPath", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-30T17:39:41.73504Z", + "description": "This tool provides a viewer node that allows for checking multiple outputs in a grid, similar to the X/Y Plot extension.", + "downloads": 14521, + "github_stars": 183, + "icon": "", + "id": "images-grid-comfy-plugin", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-30T17:44:37.604739Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a6bb6fa1-ca7f-4d3b-94f2-d13faa4033c3", + "node_id": "images-grid-comfy-plugin", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.6.0" + }, + "license": "MIT", + "name": "images-grid-comfy-plugin", + "publisher": { + "createdAt": "2024-05-30T17:23:46.4357Z", + "description": "", + "id": "lev145", + "logo": "", + "members": [], + "name": "LEv145", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LEv145/images-grid-comfy-plugin", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-02T09:17:04.798734Z", + "description": "Provides some features and nodes related to API calls. \u5f00\u53d1\u72ec\u7acb\u5e94\u7528\u8c03\u7528ComfyUI\u670d\u52a1\u7684\u4e00\u4e9b\u8865\u5145\u8282\u70b9\u3002", + "downloads": 4371, + "github_stars": 80, + "icon": "", + "id": "comfyui-easyapi-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-01T13:12:09.856716Z", + "dependencies": [ + "segment_anything", + "simple_lama_inpainting", + "insightface", + "simplejson", + "pycocotools" + ], + "deprecated": false, + "downloadUrl": "", + "id": "18954d4e-f4de-4c8e-ad9b-9ff592bd6366", + "node_id": "comfyui-easyapi-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.7" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-easyapi-nodes", + "publisher": { + "createdAt": "2024-08-02T08:30:49.205493Z", + "description": "", + "id": "lldacing", + "logo": "", + "members": [], + "name": "lldacing", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lldacing/comfyui-easyapi-nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-01T08:41:19.826806Z", + "description": "Input your desired output final resolution, it will automaticaly set the initial recommended SDXL ratio/size and its Upscale Factor to reach that output final resolution, also there's an option for 2x/4x reverse Upscale Factor. These all to avoid using bad/arbitary initial ratio/resolution.", + "downloads": 13117, + "github_stars": 89, + "icon": "", + "id": "sdxl-recommended-res-calc", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-01T08:41:20.215598Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "f4295719-02a9-4ade-8988-860610279432", + "node_id": "sdxl-recommended-res-calc", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "sdxl-recommended-res-calc", + "publisher": { + "createdAt": "2024-07-07T09:15:45.945803Z", + "description": "", + "id": "marhensa", + "logo": "", + "members": [], + "name": "Marhensa Aditya Hadi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/marhensa/sdxl-recommended-res-calc", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-24T20:25:19.334461Z", + "description": "A simple but powerful node for ComfyUI that displays text input in a readable format. Perfect for viewing outputs from text generation nodes, prompt builders, interrogators, and more.", + "downloads": 7508, + "github_stars": 12, + "icon": "", + "id": "comfyui-show-text", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-27T03:11:02.908734Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "9173a69c-dfbb-423a-8157-a6d4c5176c8b", + "node_id": "comfyui-show-text", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Show-Text", + "publisher": { + "createdAt": "2024-08-16T22:04:57.714002Z", + "description": "", + "id": "fairy-root", + "logo": "", + "members": [], + "name": "Fairy Root", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fairy-root/ComfyUI-Show-Text.git", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-22T21:16:04.0498Z", + "description": "A few nodes to mix sigmas and a custom scheduler that uses phi, then one using eval() to be able to schedule with custom formulas.", + "downloads": 14229, + "github_stars": 84, + "icon": "", + "id": "sigmas_tools_and_the_golden_scheduler", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-22T21:16:04.308796Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a73d0d80-475a-4927-b2ec-3b97288f26d6", + "node_id": "sigmas_tools_and_the_golden_scheduler", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "sigmas_tools_and_the_golden_scheduler", + "publisher": { + "createdAt": "2024-06-22T09:09:31.04495Z", + "description": "", + "id": "extraltodeus", + "logo": "", + "members": [], + "name": "Extraltodeus", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Extraltodeus/sigmas_tools_and_the_golden_scheduler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-24T06:29:11.488885Z", + "description": "this node contains a lot of small little helpers like switches, passers and selectors that i use a lot to build my workflows.", + "downloads": 7994, + "github_stars": 0, + "icon": "", + "id": "comfyui-rvtools", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-23T02:22:57.813181Z", + "dependencies": [ + "torch", + "numpy", + "Pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "84ccdc09-0793-48f5-a033-8216eddf8913", + "node_id": "comfyui-rvtools", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-RvTools", + "publisher": { + "createdAt": "2024-09-24T06:17:09.97668Z", + "description": "", + "id": "rvage0815", + "logo": "", + "members": [], + "name": "Rvage", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Rvage0815/ComfyUI-RvTools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-16T22:39:07.214639Z", + "description": "Transparent Image Layer Diffusion using Latent Transparency", + "downloads": 29018, + "github_stars": 1699, + "icon": "", + "id": "comfyui-layerdiffuse", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-05T19:53:26.383437Z", + "dependencies": [ + "diffusers>=0.25.0", + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "42362793-3f4c-4283-a0f2-553d458ded4f", + "node_id": "comfyui-layerdiffuse", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-layerdiffuse", + "publisher": { + "createdAt": "2024-05-16T22:06:01.581472Z", + "description": "", + "id": "huchenlei", + "logo": "", + "members": [], + "name": "huchenlei", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/huchenlei/ComfyUI-layerdiffuse", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-17T02:30:40.510976Z", + "description": "Your Intelligent Assistant for Comfy-UI.", + "downloads": 13506, + "github_stars": 2059, + "icon": "", + "id": "ComfyUI-Copilot", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-21T08:57:16.99407Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "63d5698f-c0bb-4ee2-871d-45d1ca4b1dd1", + "node_id": "ComfyUI-Copilot", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.3.9" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Copilot", + "publisher": { + "createdAt": "2025-02-14T12:16:58.783381Z", + "description": "", + "id": "yx9966", + "logo": "", + "members": [], + "name": "AIBusiness", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIDC-AI/ComfyUI-Copilot", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-09T07:27:43.16426Z", + "description": "ComfyUI node collection: icon layout & processing, YOLO intelligent cropping, image filters & enhancement, text processing tools, metadata management, mask handling and image classification in one comprehensive toolbox.", + "downloads": 7225, + "github_stars": 34, + "icon": "\ud83c\udf52", + "id": "comfyui_kimnodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-28T09:15:23.498781Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "887dd6b2-9efd-4516-8917-bce982cda90d", + "node_id": "comfyui_kimnodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_KimNodes", + "publisher": { + "createdAt": "2024-12-09T05:36:24.188827Z", + "description": "", + "id": "kim", + "logo": "", + "members": [], + "name": "ComfyUI_KimNodes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wjl0313/ComfyUI_KimNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-05T10:46:57.22327Z", + "description": "This node provides a simple way to view the output of many nodes, without leaving ComfyUI.", + "downloads": 1770, + "github_stars": 8, + "icon": "", + "id": "debugnode-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-22T04:21:33.913525Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4492a37a-1f10-4cd0-a00e-0083f14f27e2", + "node_id": "debugnode-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "DebugNode-ComfyUI", + "publisher": { + "createdAt": "2024-08-05T10:22:52.025923Z", + "description": "", + "id": "filtered", + "logo": "", + "members": [], + "name": "filtered", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/webfiltered/DebugNode-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-01T10:42:57.679695Z", + "description": "\u4e00\u4e2a\u652f\u6301\u5728ComfyUI\u4e2d\u4f7f\u7528\u963f\u91cc\u767e\u70bc\u6a21\u578b\u5e93\uff08\u5305\u62ecQwen\u3001Omni\u3001Audio\u3001VL\u3001ImageEdit\u3001TTS\u3001Flux\u7b49\uff09\u8fdb\u884c\u5404\u79cd\u63d0\u793a\u8bcd\u53cd\u63a8\u6216\u63d0\u793a\u8bcd\u521b\u610f\u3001\u7ffb\u8bd1\u3001\u6da6\u8272\u53ca\u989d\u5916\u4e00\u4e9b\u5c0f\u5de5\u5177\u7684\u63d2\u4ef6", + "downloads": 3991, + "github_stars": 3, + "icon": "", + "id": "comfyui-my-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-27T06:35:52.167841Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "8ef7bb0d-ccef-4c75-ac9b-266bee9f6a98", + "node_id": "comfyui-my-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.3.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-My-Nodes", + "publisher": { + "createdAt": "2025-03-02T01:21:57.529682Z", + "description": "", + "id": "tagbliton", + "logo": "", + "members": [], + "name": "Tagbliton", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Tagbliton/ComfyUI-My-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-09T18:59:50.852685Z", + "description": "It Load Images with subfolders form arbitrary folders previous on node outputs lists- convinient selection via file browser", + "downloads": 3138, + "github_stars": 9, + "icon": "https://impactframes.ai/System/Icons/48x48/if.png", + "id": "comfyui_if_ai_loadimages", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-14T13:24:56.72526Z", + "dependencies": [ + "pillow", + "numpy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "448b63c9-3c9a-4818-aaf6-0dc3280cc336", + "node_id": "comfyui_if_ai_loadimages", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.7" + }, + "license": "{\"file\": \"MIT License\"}", + "name": "IF_LoadImages", + "publisher": { + "createdAt": "2024-05-22T21:13:45.198878Z", + "description": "", + "id": "impactframes", + "logo": "", + "members": [], + "name": "impactframes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/if-ai/ComfyUI_IF_AI_LoadImages", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-05T00:14:13.766703Z", + "description": "Run Local and API LLMs, Features Gemini2 image generation, DEEPSEEK R1, QwenVL2.5, QWQ32B, Ollama, LlamaCPP LMstudio, Koboldcpp, TextGen, Transformers or via APIs Anthropic, Groq, OpenAI, Google Gemini, Mistral, xAI and create your own charcters assistants (SystemPrompts) with custom presets and muchmore", + "downloads": 12804, + "github_stars": 129, + "icon": "https://impactframes.ai/System/Icons/48x48/if.png", + "id": "comfyui-if_llm", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-17T19:58:25.243598Z", + "dependencies": [ + "torch>=2.0.0", + "pillow>=10.0.0", + "numpy>=1.24.0", + "huggingface_hub>=0.26.0", + "anthropic", + "groq", + "mistralai", + "google-genai", + "triton; sys_platform == \"linux\"", + "https://github.com/woct0rdho/triton-windows/releases/download/v3.1.0-windows.post8/triton-3.1.0-cp312-cp312-win_amd64.whl; sys_platform == \"win64\" and (python_version >= \"3.12\" and python_version < \"3.13\")", + "https://github.com/woct0rdho/triton-windows/releases/download/v3.1.0-windows.post8/triton-3.1.0-cp311-cp311-win_amd64.whl; sys_platform == \"win64\" and (python_version >= \"3.11\" and python_version < \"3.12\")", + "https://github.com/woct0rdho/triton-windows/releases/download/v3.1.0-windows.post8/triton-3.1.0-cp310-cp310-win_amd64.whl; sys_platform == \"win64\" and (python_version >= \"3.10\" and python_version < \"3.11\")", + "https://github.com/woct0rdho/triton-windows/releases/download/v3.1.0-windows.post8/triton-3.1.0-cp38-cp38-win_amd64.whl; sys_platform == \"win64\" and (python_version >= \"3.8\" and python_version < \"3.9\")", + "transformers", + "accelerate", + "sentence-transformers", + "tokenizers>=0.15.0", + "safetensors>=0.3.1", + "qwen-vl-utils[decord]>=0.0.8", + "opencv-python>=4.8.0", + "decord>=0.6.0", + "ffmpeg-python>=0.2.0", + "imageio_ffmpeg>=0.6.0", + "moviepy>=2.1.2", + "scenedetect>=0.6.2", + "yt-dlp>=2023.3.4", + "tqdm>=4.66.1", + "requests>=2.31.0", + "python-slugify>=8.0.1", + "psutil>=5.9.0", + "packaging>=23.1", + "aiohttp>=3.8.5", + "python-dotenv", + "tiktoken", + "pydantic", + "rich", + "IPython", + "nltk", + "matplotlib", + "plotly", + "kaleido", + "networkx", + "fastparquet", + "timm" + ], + "deprecated": false, + "downloadUrl": "", + "id": "54974d9b-d2b8-4f90-aef0-de6cd6de25b9", + "node_id": "comfyui-if_llm", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.2.4" + }, + "license": "{\"file\": \"MIT License\"}", + "name": "IF_LLM", + "publisher": { + "createdAt": "2024-05-22T21:13:45.198878Z", + "description": "", + "id": "impactframes", + "logo": "", + "members": [], + "name": "impactframes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/if-ai/ComfyUI-IF_LLM", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-26T09:32:42.329207Z", + "description": "Start and end frames video generation node that supports native ComfyUI.", + "downloads": 25971, + "github_stars": 77, + "icon": "", + "id": "ComfyUI-WanStartEndFramesNative", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-28T04:59:48.944209Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "f027f9c0-41a7-4499-b67c-b1da7eae677f", + "node_id": "ComfyUI-WanStartEndFramesNative", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-WanStartEndFramesNative", + "publisher": { + "createdAt": "2025-03-26T08:53:42.646711Z", + "description": "", + "id": "flow2", + "logo": "", + "members": [], + "name": "Flow2", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Flow-two/ComfyUI-WanStartEndFramesNative", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-20T17:33:58.297657Z", + "description": "This extension helps generate images through NAI.", + "downloads": 2506, + "github_stars": 69, + "icon": "", + "id": "comfyui_naidgenerator", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-30T14:04:12.485278Z", + "dependencies": [ + "python-dotenv", + "argon2-cffi" + ], + "deprecated": false, + "downloadUrl": "", + "id": "32d275d1-4cd5-43e0-8acf-b61333570934", + "node_id": "comfyui_naidgenerator", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.9" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_NAIDGenerator", + "publisher": { + "createdAt": "2024-07-20T17:37:42.941006Z", + "description": "", + "id": "bedovyy", + "logo": "", + "members": [], + "name": "Bedovyy", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bedovyy/ComfyUI_NAIDGenerator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-03T14:15:59.113174Z", + "description": "This extension contains a set of custom nodes for ComfyUI that allow you to use Core ML models in your ComfyUI workflows.", + "downloads": 4487, + "github_stars": 162, + "icon": "", + "id": "comfyui-coremlsuite", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-03T14:16:00.773109Z", + "dependencies": [ + "git+https://github.com/apple/ml-stable-diffusion.git", + "coremltools>=7.1", + "overrides", + "diffusers>=0.22", + "peft>=0.6.2", + "omegaconf>=2.3" + ], + "deprecated": false, + "downloadUrl": "", + "id": "939e7c15-5e55-4286-b1a1-4db7e1b2e473", + "node_id": "comfyui-coremlsuite", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-CoreMLSuite", + "publisher": { + "createdAt": "2024-07-03T13:59:19.259423Z", + "description": "", + "id": "aszc-dev", + "logo": "", + "members": [], + "name": "aszc", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/aszc-dev/ComfyUI-CoreMLSuite", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-23T11:21:55.372785Z", + "description": "", + "downloads": 2525, + "github_stars": 11, + "icon": "", + "id": "comfyui-static-primitives", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-07T11:21:31.478708Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "cde2b042-e0ed-475d-a854-b204709ca527", + "node_id": "comfyui-static-primitives", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-Static-Primitives", + "publisher": { + "createdAt": "2024-05-23T09:00:04.333845Z", + "description": "", + "id": "the80svectorz", + "logo": "", + "members": [], + "name": "80sVectorz", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/80sVectorz/ComfyUI-Static-Primitives", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-19T12:56:44.997527Z", + "description": "This is a simple Wan block swap node for ComfyUI native nodes, works by swapping upto 40 blocks to the CPU to reduce VRAM.", + "downloads": 30031, + "github_stars": 45, + "icon": "", + "id": "wanblockswap", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-19T12:56:45.394943Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "e2fcd3e7-f35a-41df-b8f8-0b7088491767", + "node_id": "wanblockswap", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-wanBlockswap", + "publisher": { + "createdAt": "2025-03-19T12:37:08.90126Z", + "description": "", + "id": "orssorbit", + "logo": "", + "members": [], + "name": "orssorbit", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/orssorbit/ComfyUI-wanBlockswap", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-24T22:04:51.934669Z", + "description": "Militant Hitchhiker's Switchblade Pack is a collection of custom nodes for ComfyUI that provide various multi-function capabilities.", + "downloads": 1631, + "github_stars": 3, + "icon": "", + "id": "militanthitchhiker-switchbladepack", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-06T07:46:32.342636Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "2b52002e-98d1-4f24-ad4e-29924fb51177", + "node_id": "militanthitchhiker-switchbladepack", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "MilitantHitchhiker-SwitchbladePack", + "publisher": { + "createdAt": "2024-06-24T21:50:59.236085Z", + "description": "", + "id": "militanthitchhiker", + "logo": "", + "members": [], + "name": "Militant Hitchhiker", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MilitantHitchhiker/MilitantHitchhiker-SwitchbladePack", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-22T00:36:56.902971Z", + "description": "The latent gets passed straight through unaltered, if it's empty (i.e from a 'Empty Latent Image' node) FLOAT outputs the first value, otherwise it outputs the second value", + "downloads": 17500, + "github_stars": 4, + "icon": "", + "id": "comfyui-denoisechooser", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-22T00:37:00.689459Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "15515a9e-30bc-4ab3-ba23-362d5ebb45cb", + "node_id": "comfyui-denoisechooser", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-DenoiseChooser", + "publisher": { + "createdAt": "2024-07-18T01:01:36.491911Z", + "description": "", + "id": "koushakur", + "logo": "", + "members": [], + "name": "Koushakur", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Koushakur/ComfyUI-DenoiseChooser", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T21:21:47.990252Z", + "description": "Adds an Image Loader node that also shows images in subfolders of the default input directory", + "downloads": 1085, + "github_stars": 23, + "icon": "", + "id": "comfyui-imagesubfolders", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-20T21:21:48.282237Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5cc44540-0637-4759-a9fc-2a0e4a8daf22", + "node_id": "comfyui-imagesubfolders", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "comfyui-imagesubfolders", + "publisher": { + "createdAt": "2024-05-23T04:35:53.048173Z", + "description": "", + "id": "catscandrive", + "logo": "", + "members": [], + "name": "catscandrive", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/catscandrive/comfyui-imagesubfolders", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-25T21:21:22.183302Z", + "description": "A collection of custom nodes to help with saving images, providing generation parameters, static literal nodes, and other useful nodes.", + "downloads": 1455, + "github_stars": 1, + "icon": "", + "id": "tw-cui-util", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-27T03:16:26.7468Z", + "dependencies": [ + "torch~=2.1.2+cu121", + "piexif~=1.1.3", + "numpy~=1.26.2", + "Pillow~=9.5.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5ddd3107-d857-4d51-b60d-d50f8e53f4a6", + "node_id": "tw-cui-util", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.3.0" + }, + "license": "GPL-3.0", + "name": "TW-CUI: Utility Nodes", + "publisher": { + "createdAt": "2024-05-24T22:55:57.369204Z", + "description": "", + "id": "twcui", + "logo": "", + "members": [], + "name": "tw-cui", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TW-CUI/TW-CUI-Util", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-14T14:21:18.056673Z", + "description": "ComfyUI Preset Manager, supporting various preset templates and workflow management", + "downloads": 53082, + "github_stars": 78, + "icon": "", + "id": "ComfyUI-Apt_Preset", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-18T13:14:20.306246Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "7cb38862-0e1f-4388-8535-09ba73aab43e", + "node_id": "ComfyUI-Apt_Preset", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "6.1.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-Apt_Preset", + "publisher": { + "createdAt": "2025-03-14T01:16:18.129711Z", + "description": "", + "id": "cardenluo", + "logo": "", + "members": [], + "name": "ComfyUI-Apt_Preset", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cardenluo/ComfyUI-Apt_Preset.git", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-13T12:14:42.120629Z", + "description": "A custom node for ComfyUI to parse and extract data from JSON strings.", + "downloads": 1866, + "github_stars": 5, + "icon": "", + "id": "comfyui-simple-json-node", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-25T16:02:15.068826Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "28be5f60-82ac-4015-b5d9-6abe6aaa423d", + "node_id": "comfyui-simple-json-node", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfyui-Simple-Json-Node", + "publisher": { + "createdAt": "2024-10-13T12:03:30.576054Z", + "description": "", + "id": "qbug", + "logo": "", + "members": [], + "name": "Q-Bug", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Q-Bug4/Comfyui-Simple-Json-Node", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-03T10:16:36.513119Z", + "description": "Text to speech with F5-TTS", + "downloads": 21332, + "github_stars": 210, + "icon": "", + "id": "comfyui-f5-tts", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-13T12:24:07.157482Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "72ef1f05-dc62-4665-85d7-7ac1faf7156b", + "node_id": "comfyui-f5-tts", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.23" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI F5-TTS", + "publisher": { + "createdAt": "2024-08-24T05:59:03.289234Z", + "description": "", + "id": "niknah", + "logo": "", + "members": [], + "name": "niknah", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/niknah/ComfyUI-F5-TTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-25T14:07:32.669101Z", + "description": "ComfyUI Nodes that generate prompts and many more", + "downloads": 5128, + "github_stars": 37, + "icon": "", + "id": "comfyui_isulion", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-03T12:21:37.31134Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3f1214f7-3d3e-456f-a837-b62419fe202f", + "node_id": "comfyui_isulion", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "5.1.5" + }, + "license": "{\"text\": \"file: LICENSE\"}", + "name": "ComfyUI_Isulion", + "publisher": { + "createdAt": "2024-12-25T13:57:15.758914Z", + "description": "", + "id": "isulion", + "logo": "", + "members": [], + "name": "Isulion", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Isulion/ComfyUI_Isulion", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-28T07:53:57.484539Z", + "description": "This is a set of custom nodes for ComfyUI. The nodes utilize the [a/face parsing model](https://huggingface.co/jonathandinu/face-parsing) to parse face and provide detailed segmantation. To improve face segmantation accuracy, [a/yolov8 face model](https://huggingface.co/Bingsu/adetailer/) is used to first extract face from an image. There are also auxiliary nodes for image and mask processing. A guided filter is also provided for skin smoothing.", + "downloads": 24938, + "github_stars": 170, + "icon": "", + "id": "comfyui_face_parsing", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-04T15:58:27.82363Z", + "dependencies": [ + "opencv-contrib-python", + "torchvision", + "ultralytics", + "matplotlib" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5d2da78f-0008-473f-a859-af140af96a32", + "node_id": "comfyui_face_parsing", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_face_parsing", + "publisher": { + "createdAt": "2024-06-28T07:11:15.696648Z", + "description": "", + "id": "ryuukeisyou", + "logo": "", + "members": [], + "name": "Ryuukeisyou", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Ryuukeisyou/comfyui_face_parsing", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-22T13:57:29.208255Z", + "description": "A set of nodes to prepare the noise predictions before the CFG function", + "downloads": 4764, + "github_stars": 49, + "icon": "", + "id": "pre_cfg_comfy_nodes_for_comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-22T13:57:32.755706Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c537f70c-c9ed-4cf1-963f-37e7d32f3154", + "node_id": "pre_cfg_comfy_nodes_for_comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "pre_cfg_comfy_nodes_for_ComfyUI", + "publisher": { + "createdAt": "2024-06-22T09:09:31.04495Z", + "description": "", + "id": "extraltodeus", + "logo": "", + "members": [], + "name": "Extraltodeus", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Extraltodeus/pre_cfg_comfy_nodes_for_ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-23T05:04:16.857573Z", + "description": "Node for generating seamless textures, based on similar setting from A1111.", + "downloads": 15709, + "github_stars": 216, + "icon": "", + "id": "comfyui-seamless-tiling", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-23T05:04:17.152782Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "49fa7210-9d98-49cb-a072-2af5bfaf206e", + "node_id": "comfyui-seamless-tiling", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-seamless-tiling", + "publisher": { + "createdAt": "2024-05-23T04:55:27.562917Z", + "description": "", + "id": "spinagon", + "logo": "", + "members": [], + "name": "spinagon", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/spinagon/ComfyUI-seamless-tiling", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-11T12:37:23.422269Z", + "description": "Wrapper nodes for https://github.com/Tencent/Hunyuan3D-2, additional installation steps needed, please check the github repository", + "downloads": 3758, + "github_stars": 798, + "icon": "", + "id": "comfyui-hunyuan3dwrapper", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-11T12:37:24.038877Z", + "dependencies": [ + "trimesh", + "diffusers>=0.31.0", + "accelerate", + "huggingface_hub", + "einops", + "opencv-python", + "transformers", + "xatlas", + "pymeshlab", + "pygltflib", + "scikit-learn", + "scikit-image", + "pybind11" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f835a80b-b5ab-4d37-8ed4-502d125fe67d", + "node_id": "comfyui-hunyuan3dwrapper", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-ComfyUI-Hunyuan3DWrapper", + "publisher": { + "createdAt": "2024-06-09T11:11:54.62154Z", + "description": "", + "id": "kijai", + "logo": "", + "members": [], + "name": "Kijai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-Hunyuan3DWrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-09T06:56:09.632591Z", + "description": "Quick and easy UI to use styles, characters, etc. or build entire random prompts via image collections.", + "downloads": 3423, + "github_stars": 57, + "icon": "", + "id": "comfyui_prompt_gallery", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-09T06:56:13.382432Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "beb97aa1-6fbb-46b9-bfa8-5b09cda9e5dd", + "node_id": "comfyui_prompt_gallery", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Prompt_Gallery", + "publisher": { + "createdAt": "2024-09-09T06:42:20.954873Z", + "description": "", + "id": "kinglord", + "logo": "", + "members": [], + "name": "KingLord", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Kinglord/ComfyUI_Prompt_Gallery", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-27T21:50:30.511691Z", + "description": "Nodes:TextualInversionTrainingSDXL, TextualInversionTraining", + "downloads": 1771, + "github_stars": 9, + "icon": "", + "id": "comfyui-titrain", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-27T21:50:30.781549Z", + "dependencies": [ + "accelerate>=0.16.0", + "torchvision", + "transformers>=4.25.1", + "ftfy", + "tensorboard", + "Jinja2", + "pexpect" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5d29ed86-30b6-42d9-9602-25881e2e5e2e", + "node_id": "comfyui-titrain", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-TITrain", + "publisher": { + "createdAt": "2024-05-27T21:35:10.87886Z", + "description": "", + "id": "mbrostami", + "logo": "", + "members": [], + "name": "Mo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mbrostami/ComfyUI-TITrain", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-19T09:10:27.750675Z", + "description": "This is a wrapper node for Marigold depth estimation: [https://github.com/prs-eth/Marigold](https://github.com/kijai/ComfyUI-Marigold). Currently using the same diffusers pipeline as in the original implementation, so in addition to the custom node, you need the model in diffusers format.\nNOTE: See details in repo to install.", + "downloads": 17763, + "github_stars": 541, + "icon": "", + "id": "comfyui-marigold", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-16T10:22:40.93567Z", + "dependencies": [ + "accelerate>=0.22.0", + "diffusers>=0.33.0", + "matplotlib", + "scipy", + "torch>=2.0.1", + "transformers>=4.32.1", + "huggingface-hub" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b0916156-5190-44a1-ad1c-d14cf6758daa", + "node_id": "comfyui-marigold", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Marigold", + "publisher": { + "createdAt": "2024-06-09T11:11:54.62154Z", + "description": "", + "id": "kijai", + "logo": "", + "members": [], + "name": "Kijai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-Marigold", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-26T14:21:17.174028Z", + "description": "Custom set of nodes used by glif.app. With glif you can build mini apps that are powered by custom comfy workflows.", + "downloads": 27564, + "github_stars": 56, + "icon": "\ud83c\uddec", + "id": "comfyui-glifnodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-26T14:21:17.519451Z", + "dependencies": [ + "diffusers==0.24.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "112681c3-f2cd-4a0b-9e80-cbf186da72ae", + "node_id": "comfyui-glifnodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-GlifNodes", + "publisher": { + "createdAt": "2024-06-26T14:12:46.723421Z", + "description": "", + "id": "dham", + "logo": "", + "members": [], + "name": "DHam", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/glifxyz/ComfyUI-GlifNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-06T22:39:42.197816Z", + "description": "Nodes for contrast/color editing as well as 16bit/HDR/tonemapping support.", + "downloads": 6057, + "github_stars": 97, + "icon": "", + "id": "comfyui_colormod", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-06T22:39:45.945706Z", + "dependencies": [ + "pypng", + "opencv-contrib-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "09ba5fa6-5214-4743-9f23-c578f184bade", + "node_id": "comfyui_colormod", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI ColorMod", + "publisher": { + "createdAt": "2024-05-22T23:30:59.125056Z", + "description": "", + "id": "city96", + "logo": "", + "members": [], + "name": "City96", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/city96/ComfyUI_ColorMod", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-19T03:20:22.918262Z", + "description": "A super simple node that outputs common video resolutions as 2 integers for Hunyuan and others!", + "downloads": 5498, + "github_stars": 1, + "icon": "", + "id": "videoresolutions", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-19T14:06:13.52752Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "0d712f10-0858-4d07-94a7-c41bfcccc1c7", + "node_id": "videoresolutions", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-VideoResolutions", + "publisher": { + "createdAt": "2025-01-19T00:06:48.01391Z", + "description": "", + "id": "hellercommaa", + "logo": "", + "members": [], + "name": "HellerCommaA", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/HellerCommaA/ComfyUI-VideoResolutions", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-04T03:46:41.401948Z", + "description": "Prompt Stash is a simple plugin for ComfyUI that lets you save your prompts and organize them into multiple lists. It also features a pass-through functionality, so you can hook it up to an LLM node (or any text outputting node) and capture its outputs directly.", + "downloads": 11103, + "github_stars": 17, + "icon": "", + "id": "confyui-node-prompt-stash-saver", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-16T02:13:54.699006Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1062e131-36c9-4c47-8015-2af8af36d4be", + "node_id": "confyui-node-prompt-stash-saver", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Prompt Stash", + "publisher": { + "createdAt": "2024-11-04T03:32:26.387794Z", + "description": "", + "id": "phazei", + "logo": "", + "members": [], + "name": "phazei", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/phazei/ComfyUI-Prompt-Stash", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-27T21:15:08.557502Z", + "description": "Advanced tiling of various shapes for ComfyUI", + "downloads": 1576, + "github_stars": 13, + "icon": "", + "id": "comfyui-advanced-tiling", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-27T21:15:12.334975Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a7c64f29-446d-465f-babc-efa4f612dcbc", + "node_id": "comfyui-advanced-tiling", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"GNU General Public License v3.0\"}", + "name": "ComfyUI-AdvancedTiling", + "publisher": { + "createdAt": "2024-07-23T19:17:36.227864Z", + "description": "", + "id": "josefkuchar", + "logo": "", + "members": [], + "name": "Josef Kucha\u0159", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/JosefKuchar/ComfyUI-AdvancedTiling", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-15T09:03:10.748475Z", + "description": "Janky implementation of HiDiffusion for ComfyUI. Enables generating at resolutions higher than what the model was trained for. Only supports SD 1.x (maybe 2.x) and SDXL.", + "downloads": 3364, + "github_stars": 122, + "icon": "", + "id": "comfyui_jankhidiffusion", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-14T10:36:40.928886Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "f8ddf085-2151-4a71-9f0c-5c7acfd10a5f", + "node_id": "comfyui_jankhidiffusion", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.8.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_jankhidiffusion", + "publisher": { + "createdAt": "2024-08-05T12:18:41.452971Z", + "description": "", + "id": "blepping", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/blepping/comfyui_jankhidiffusion", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-05T09:33:41.714149Z", + "description": "For unloading a model or all models, using the memory management that is already present in ComfyUI. Copied from [a/https://github.com/willblaschko/ComfyUI-Unload-Models](https://github.com/willblaschko/ComfyUI-Unload-Models) but without the unnecessary extra stuff.", + "downloads": 34788, + "github_stars": 51, + "icon": "", + "id": "comfyui-unload-model", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-13T04:22:46.729061Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b49689b5-0f2d-49f5-a64b-118fb1048865", + "node_id": "comfyui-unload-model", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Unload-Model", + "publisher": { + "createdAt": "2024-09-05T09:21:59.279717Z", + "description": "", + "id": "seanscripts", + "logo": "", + "members": [], + "name": "SeanScripts", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SeanScripts/ComfyUI-Unload-Model", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-13T20:26:13.83578Z", + "description": "NODES:Joy Caption Two, Joy Caption Two Advanced, Joy Caption Two Load, Joy Caption Extra Options", + "downloads": 54271, + "github_stars": 591, + "icon": "", + "id": "comfyui_slk_joy_caption_two", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-22T09:13:42.755918Z", + "dependencies": [ + "huggingface_hub==0.23.4", + "transformers>=4.44.0", + "numpy", + "sentencepiece", + "pillow>=10.1.0", + "bitsandbytes>=0.44.1", + "peft==0.12.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "07f13503-7c2a-4fa0-abde-e8838f29d18c", + "node_id": "comfyui_slk_joy_caption_two", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.8" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_SLK_joy_caption_two", + "publisher": { + "createdAt": "2024-10-13T20:00:30.462623Z", + "description": "", + "id": "sherlockbt", + "logo": "", + "members": [], + "name": "EvilBT", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/EvilBT/ComfyUI_SLK_joy_caption_two", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-13T21:11:01.381123Z", + "description": "This project provides a set of custom timer nodes for ComfyUI. These nodes allow you to measure and append runtime information to strings or other data during your workflow. The functionality is particularly useful for debugging, performance monitoring, or annotating results with timing information.", + "downloads": 2031, + "github_stars": 3, + "icon": "", + "id": "comfyui-timer-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-13T21:11:03.134131Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "139cbf55-fb13-4ad8-a6a5-649f49476dcc", + "node_id": "comfyui-timer-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.0" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI-Timer-Nodes", + "publisher": { + "createdAt": "2024-12-13T20:54:44.685052Z", + "description": "", + "id": "shannooty", + "logo": "", + "members": [], + "name": "Shannooty", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Shannooty/ComfyUI-Timer-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-15T04:07:04.48195Z", + "description": "Extension for Automatic1111 and ComfyUI to automatically create masks for Background/Hair/Body/Face/Clothes in Img2Img", + "downloads": 19863, + "github_stars": 362, + "icon": "", + "id": "a-person-mask-generator", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-07T19:02:45.271978Z", + "dependencies": [ + "mediapipe>=0.10.13" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d57da618-cefc-4115-90de-4d6a00cbd5b5", + "node_id": "a-person-mask-generator", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "a-person-mask-generator", + "publisher": { + "createdAt": "2024-06-15T03:58:13.943407Z", + "description": "", + "id": "djbielejeski", + "logo": "", + "members": [], + "name": "djbielejeski", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/djbielejeski/a-person-mask-generator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-17T06:06:16.738672Z", + "description": "This extension enables the use of the diffuser pipeline in ComfyUI. It also includes nodes related to Stream Diffusion.", + "downloads": 39910, + "github_stars": 171, + "icon": "", + "id": "comfyui-diffusers", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-20T12:40:11.146219Z", + "dependencies": [ + "diffusers[torch]>=0.29.0", + "accelerate", + "transformers", + "safetensors", + "omegaconf", + "pytorch_lightning", + "xformers", + "git+https://github.com/cumulo-autumn/StreamDiffusion.git@main#egg=streamdiffusion[tensorrt]" + ], + "deprecated": false, + "downloadUrl": "", + "id": "32a46948-8b56-4d2d-a580-0604e93d3460", + "node_id": "comfyui-diffusers", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Diffusers", + "publisher": { + "createdAt": "2024-12-17T05:43:31.902856Z", + "description": "", + "id": "limitex", + "logo": "", + "members": [], + "name": "Limitex", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Limitex/ComfyUI-Diffusers", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-22T21:13:22.998234Z", + "description": "Nodes:LoadLoraWithTags. Save/Load trigger words for loras from a json and auto fetch them on civitai if they are missing.", + "downloads": 11095, + "github_stars": 77, + "icon": "", + "id": "loadlorawithtags", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-22T21:13:23.260533Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c9a0db31-e296-41fb-b2fd-81c8950051ea", + "node_id": "loadlorawithtags", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "LoadLoraWithTags", + "publisher": { + "createdAt": "2024-06-22T09:09:31.04495Z", + "description": "", + "id": "extraltodeus", + "logo": "", + "members": [], + "name": "Extraltodeus", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Extraltodeus/LoadLoraWithTags", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-14T11:20:47.65495Z", + "description": "The CLIPSeg node generates a binary mask for a given input image and text prompt.", + "downloads": 7165, + "github_stars": 8, + "icon": "", + "id": "comfyui-clipseg", + "latest_version": { + "changelog": "", + "createdAt": "2024-11-18T15:22:52.59373Z", + "dependencies": [ + "matplotlib", + "matplotlib-inline", + "numpy", + "open-clip-torch", + "opencv-python", + "Pillow", + "pytorch-lightning", + "torch", + "torchaudio", + "torchdiffeq", + "torchmetrics", + "torchsde", + "torchvision", + "transformers==4.45.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1bd039b5-e8e6-418c-a664-ef5338921d2b", + "node_id": "comfyui-clipseg", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-CLIPSeg", + "publisher": { + "createdAt": "2024-07-15T12:00:41.934469Z", + "description": "", + "id": "alezonta", + "logo": "", + "members": [], + "name": "Alessandro Zonta", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alessandrozonta/ComfyUI-CLIPSeg", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-03T03:58:46.804012Z", + "description": "A novel weighting scheme for token vectors from CLIP. Allows a wider range of values for the weight. Inspired by Perp-Neg.", + "downloads": 1566, + "github_stars": 12, + "icon": "", + "id": "comfyui_perpweight", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-03T03:58:48.294452Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "100b9408-4378-4d23-9de0-f9f6cd9b814f", + "node_id": "comfyui_perpweight", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"GNU General Public License v3.0\"}", + "name": "ComfyUI_PerpWeight", + "publisher": { + "createdAt": "2024-06-23T11:33:12.747281Z", + "description": "", + "id": "bvhari", + "logo": "", + "members": [], + "name": "BVH", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bvhari/ComfyUI_PerpWeight", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-27T16:57:19.671887Z", + "description": "The ultimate solution for managing image metadata and multi-tool compatibility. ComfyUI node version of the SD Prompt Reader.", + "downloads": 36689, + "github_stars": 370, + "icon": "https://raw.githubusercontent.com/receyuki/comfyui-prompt-reader-node/main/images/icon-400.png", + "id": "comfyui-prompt-reader-node", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-06T11:41:09.207869Z", + "dependencies": [ + "piexif" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f439a269-6afd-45e6-9581-bb94b73cb22c", + "node_id": "comfyui-prompt-reader-node", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.3.4" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "comfyui-prompt-reader-node", + "publisher": { + "createdAt": "2024-05-27T16:28:38.392193Z", + "description": "", + "id": "receyuki", + "logo": "", + "members": [], + "name": "Rhys Yang", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/receyuki/comfyui-prompt-reader-node", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-20T01:16:05.140939Z", + "description": "The plug-in is designed to automatically save the association between the LoRA model and Trigger words to a Local JSON file so that when the LoRA model is loaded, the associated trigger words can be automatically loaded via the node 'LoRA Trigger Local' without manual input.", + "downloads": 3168, + "github_stars": 16, + "icon": "", + "id": "lora-assistant", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-27T09:48:09.494143Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b3a692bc-1f9c-4e40-806f-b8f2a77e0913", + "node_id": "lora-assistant", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-LoRA-Assistant", + "publisher": { + "createdAt": "2025-01-20T00:57:20.273812Z", + "description": "", + "id": "bellzs", + "logo": "", + "members": [], + "name": "AI\u5982\u68a6", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Bellzs/ComfyUI-LoRA-Assistant", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-21T07:25:28.252368Z", + "description": "NODES:Advanced Lying Sigma Sampler, Save Image To target Path", + "downloads": 14099, + "github_stars": 7, + "icon": "", + "id": "comfyui-kynode", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-21T07:25:32.023747Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "275d2a6e-d8b8-4f51-bd45-8a3d18c9bcf9", + "node_id": "comfyui-kynode", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-KYNode", + "publisher": { + "createdAt": "2024-12-21T07:16:56.17843Z", + "description": "", + "id": "yorkane", + "logo": "", + "members": [], + "name": "KeivnYuan", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yorkane/ComfyUI-KYNode", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-22T22:14:28.682992Z", + "description": "Joy Caption is a ComfyUI custom node powered by the LLaVA model for efficient, stylized image captioning. Caption Tools nodes handle batch image processing and automatic separation of caption text.", + "downloads": 3213, + "github_stars": 28, + "icon": "", + "id": "ComfyUI-JoyCaption", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-08T00:43:17.097579Z", + "dependencies": [ + "torch>=2.0.0", + "transformers>=4.36.0", + "huggingface_hub>=0.19.0", + "accelerate", + "bitsandbytes>=0.42.0", + "Pillow>=10.0.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "8289cb6a-6cd7-4e7a-8d2f-756e944f9ff3", + "node_id": "ComfyUI-JoyCaption", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-JoyCaption", + "publisher": { + "createdAt": "2024-07-01T23:11:45.570672Z", + "description": "", + "id": "ailab", + "logo": "", + "members": [], + "name": "AILab", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/1038lab/ComfyUI-JoyCaption", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-05T19:25:49.480862Z", + "description": "This is a custom node for ComfyUI that provides tools to clean, optimize, and format text prompts. Includes features like converting tags, aligning brackets, and applying weights to prompts.", + "downloads": 1078, + "github_stars": 3, + "icon": "", + "id": "prompt_formatter", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-16T16:33:33.018947Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "bc728c64-417e-4345-82fd-7b458a6bfe4a", + "node_id": "prompt_formatter", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Prompt Formatter", + "publisher": { + "createdAt": "2025-04-05T18:46:18.653645Z", + "description": "", + "id": "younyokel", + "logo": "", + "members": [], + "name": "Edwin J", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/younyokel/comfyui_prompt_formatter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-04T14:56:59.750871Z", + "description": "Civicomfy seamlessly integrates Civitai's vast model repository directly into ComfyUI, allowing you to search, download, and organize AI models without leaving your workflow.", + "downloads": 6052, + "github_stars": 39, + "icon": "", + "id": "civicomfy", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-10T15:39:05.196529Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "54872184-4fe9-492a-80b0-f9fba701e434", + "node_id": "civicomfy", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Civicomfy", + "publisher": { + "createdAt": "2025-04-04T13:08:37.509936Z", + "description": "", + "id": "moongoblin", + "logo": "", + "members": [], + "name": "MoonGoblin", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MoonGoblinDev/Civicomfy", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-09T11:19:27.207951Z", + "description": "Wrapper nodes to use Dynami/ToonCrafter image2video and frame interpolation models in ComfyUI", + "downloads": 11950, + "github_stars": 678, + "icon": "", + "id": "comfyui-dynamicrafterwrapper", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-02T11:49:26.93502Z", + "dependencies": [ + "einops>=0.3.0", + "numpy>=1.24.2", + "omegaconf>=2.1.1", + "pytorch_lightning>=2.2.1", + "tqdm>=4.65.0", + "transformers>=4.25.1", + "timm" + ], + "deprecated": false, + "downloadUrl": "", + "id": "3704a823-5cad-47bb-8502-b5f37aa26c24", + "node_id": "comfyui-dynamicrafterwrapper", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"text\": \"Apache-2.0\"}", + "name": "ComfyUI-DynamiCrafterWrapper", + "publisher": { + "createdAt": "2024-06-09T11:11:54.62154Z", + "description": "", + "id": "kijai", + "logo": "", + "members": [], + "name": "Kijai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-DynamiCrafterWrapper", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-01T08:49:52.270887Z", + "description": "This extension allows users to load styles from a CSV file, primarily for migration purposes from the automatic1111 Stable Diffusion web UI.", + "downloads": 36080, + "github_stars": 59, + "icon": "", + "id": "comfyui-styles_csv_loader", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-01T08:49:53.938447Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "0a602dbb-5396-499b-a55d-18a0462be2b3", + "node_id": "comfyui-styles_csv_loader", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "MIT", + "name": "ComfyUI-Styles_CSV_Loader", + "publisher": { + "createdAt": "2024-07-01T08:41:13.193355Z", + "description": "", + "id": "theupsider", + "logo": "", + "members": [], + "name": "theupsider", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/theUpsider/ComfyUI-Styles_CSV_Loader", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-15T15:41:11.709783Z", + "description": "This custom node allows you to generate pure python code from your ComfyUI workflow with the click of a button. Great for rapid experimentation or production deployment.", + "downloads": 14425, + "github_stars": 1903, + "icon": "", + "id": "comfyui-to-python-extension", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-15T15:41:15.456795Z", + "dependencies": [ + "black" + ], + "deprecated": false, + "downloadUrl": "", + "id": "ef8422e6-549e-4eb8-a033-2daf36710a71", + "node_id": "comfyui-to-python-extension", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.3.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI-to-Python-Extension", + "publisher": { + "createdAt": "2024-09-15T14:56:18.101908Z", + "description": "", + "id": "pydn", + "logo": "", + "members": [], + "name": "pydn", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pydn/ComfyUI-to-Python-Extension", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-24T12:10:41.260391Z", + "description": "Autocomplete and Related Tag display for ComfyUI", + "downloads": 2044, + "github_stars": 24, + "icon": "", + "id": "comfyui-autocomplete-plus", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-19T00:31:11.866716Z", + "dependencies": [ + "" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c5d29a8f-96c5-40bb-93f8-d707b04c3bc9", + "node_id": "comfyui-autocomplete-plus", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.3.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Autocomplete-Plus", + "publisher": { + "createdAt": "2025-05-24T11:42:46.903739Z", + "description": "", + "id": "newtextdoc1111", + "logo": "", + "members": [], + "name": "newtextdoc1111", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/newtextdoc1111/ComfyUI-Autocomplete-Plus", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-13T02:21:17.100052Z", + "description": "Video Generation Nodes for EasyAnimate, which suppors text-to-video, image-to-video, video-to-video and different controls.", + "downloads": 24402, + "github_stars": 2180, + "icon": "", + "id": "easyanimate", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-13T02:21:20.726248Z", + "dependencies": [ + "Pillow", + "einops", + "safetensors", + "timm", + "tomesd", + "torch>=2.1.2", + "torchdiffeq", + "torchsde", + "decord", + "datasets", + "numpy", + "scikit-image", + "opencv-python", + "omegaconf", + "SentencePiece", + "albumentations", + "imageio[ffmpeg]", + "imageio[pyav]", + "tensorboard", + "beautifulsoup4", + "ftfy", + "func_timeout", + "accelerate>=0.25.0", + "gradio>=3.41.2,<=3.48.0", + "diffusers>=0.30.1", + "transformers>=4.37.2" + ], + "deprecated": false, + "downloadUrl": "", + "id": "91c5c7e0-c336-4013-b1c4-52f91e4dbc2f", + "node_id": "easyanimate", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "EasyAnimate", + "publisher": { + "createdAt": "2025-01-13T02:07:45.112612Z", + "description": "", + "id": "bubbliiiing", + "logo": "", + "members": [], + "name": "bubbliiiing", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/aigc-apps/EasyAnimate", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-08T20:57:38.609852Z", + "description": "A set of custom nodes enabling LoRA support for LTX Video", + "downloads": 21721, + "github_stars": 17, + "icon": "", + "id": "comfyui-ltxvideolora", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-25T14:22:59.1699Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1d3ba894-edd3-4996-841d-cb0b91585d72", + "node_id": "comfyui-ltxvideolora", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-LTXVideoLoRA", + "publisher": { + "createdAt": "2025-02-08T20:45:59.424144Z", + "description": "", + "id": "dorpxam", + "logo": "", + "members": [], + "name": "dorpxam", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/dorpxam/ComfyUI-LTXVideoLoRA", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-23T10:55:28.413855Z", + "description": "170 ComfyUI nodes : Display, manipulate, and edit text, images, videos, loras, generate characters and more. Manage looping operations, generate randomized content, use logical conditions and work with external AI tools, like Ollama or Text To Speech, etc...", + "downloads": 88850, + "github_stars": 398, + "icon": "", + "id": "bjornulf_custom_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-11T12:33:05.863956Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5e063c29-f426-4082-952d-dc8a9a6dac3e", + "node_id": "bjornulf_custom_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.8" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Bjornulf_custom_nodes", + "publisher": { + "createdAt": "2024-08-14T07:36:06.677372Z", + "description": "", + "id": "bjornulf", + "logo": "", + "members": [], + "name": "bjornulf frode", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/justUmen/Bjornulf_custom_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-11T17:30:41.26695Z", + "description": "This extension uses DLib or InsightFace to calculate the vicinity between two faces and to perform other operation on faces.", + "downloads": 59298, + "github_stars": 460, + "icon": "", + "id": "comfyui_faceanalysis", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-11T17:30:42.974219Z", + "dependencies": [ + "dlib", + "onnxruntime", + "insightface", + "color_matcher" + ], + "deprecated": false, + "downloadUrl": "", + "id": "3331875d-0e80-4e67-a656-36c254efb713", + "node_id": "comfyui_faceanalysis", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_FaceAnalysis", + "publisher": { + "createdAt": "2024-06-05T06:22:33.072793Z", + "description": "", + "id": "matteo", + "logo": "", + "members": [], + "name": "Matteo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cubiq/ComfyUI_FaceAnalysis", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-27T11:34:24.251862Z", + "description": "Revolutionize your workflow with the ultimate LoRA companion for ComfyUI!", + "downloads": 44917, + "github_stars": 400, + "icon": "https://github.com/willmiao/ComfyUI-Lora-Manager/blob/main/static/images/android-chrome-512x512.png?raw=true", + "id": "comfyui-lora-manager", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-19T00:28:30.989644Z", + "dependencies": [ + "aiohttp", + "jinja2", + "safetensors", + "beautifulsoup4", + "piexif", + "Pillow", + "olefile", + "requests", + "toml", + "natsort", + "msgpack" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f26eb858-1b62-4985-8091-f0af2c2d179b", + "node_id": "comfyui-lora-manager", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.8.21" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Lora-Manager", + "publisher": { + "createdAt": "2025-01-27T08:40:54.803374Z", + "description": "", + "id": "willmiao", + "logo": "", + "members": [], + "name": "Will Miao", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/willmiao/ComfyUI-Lora-Manager", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-06T22:19:29.883373Z", + "description": "Custom node to convert the lantents between SDv1/SDXL/SD3/cascade/flux directly without the VAE decoding/encoding step.", + "downloads": 12003, + "github_stars": 296, + "icon": "", + "id": "sd-latent-interposer", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-06T22:19:45.778632Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "44bd3ce2-da2f-4396-b000-531b412a2d0a", + "node_id": "sd-latent-interposer", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "4.0.15" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "SD-Latent-Interposer", + "publisher": { + "createdAt": "2024-05-22T23:30:59.125056Z", + "description": "", + "id": "city96", + "logo": "", + "members": [], + "name": "City96", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/city96/SD-Latent-Interposer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-18T19:27:19.370747Z", + "description": "DPM++ 2M alt Sampler for ComfyUI (And WebUI) and Align Your Steps Scheduler", + "downloads": 4418, + "github_stars": 12, + "icon": "", + "id": "stablediffusion-dpmpp_2m_alt-sampler", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-18T19:27:19.663255Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "61ff7efc-601c-4890-b7d9-48662725f750", + "node_id": "stablediffusion-dpmpp_2m_alt-sampler", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "StableDiffusion-dpmpp_2m_alt-Sampler", + "publisher": { + "createdAt": "2024-05-24T16:56:11.842852Z", + "description": "", + "id": "slapaper", + "logo": "", + "members": [], + "name": "SLAPaper", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SLAPaper/StableDiffusion-dpmpp_2m_alt-Sampler", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-28T10:19:47.887421Z", + "description": "A custom node to blend two images together using a specified blending mode.", + "downloads": 2621, + "github_stars": 20, + "icon": "", + "id": "comfyui-image-blender", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-03T16:58:46.030656Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c4f4e827-e384-4bcc-a653-4e2985737053", + "node_id": "comfyui-image-blender", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "Image-blender", + "publisher": { + "createdAt": "2024-07-28T08:44:34.825451Z", + "description": "", + "id": "vault-developer", + "logo": "", + "members": [], + "name": "Vault Developer", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/vault-developer/comfyui-image-blender", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-12T03:24:51.24134Z", + "description": "\u8ba9\u4f60\u5728 ComfyUI \u4e2d\u5feb\u6377\u7684\u4f7f\u7528\u63d0\u793a\u8bcd\u5de5\u5177 Quickly use the prompt word tool in ComfyUI", + "downloads": 7216, + "github_stars": 187, + "icon": "https://raw.gitcode.com/qq_27627297/public_project/files/main/comfyui_logo.jpg", + "id": "weilin-comfyui-tools", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-08T04:23:36.68784Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "91576027-1141-4066-a9c4-72554fb101dc", + "node_id": "weilin-comfyui-tools", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.59" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "WeiLin-Comfyui-Tools", + "publisher": { + "createdAt": "2024-10-04T09:37:52.642094Z", + "description": "", + "id": "weilin", + "logo": "", + "members": [], + "name": "WeiLin", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/weilin9999/WeiLin-Comfyui-Tools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-21T15:10:01.763674Z", + "description": "Resolution calculators and image size detection for AI models (SD 1.5, SDXL, Flux.1 Dev, WAN2.1)", + "downloads": 2606, + "github_stars": 1, + "icon": "https://raw.githubusercontent.com/TheLustriVA/ComfyUI-Image-Size-Tools/main/assets/icon.svg", + "id": "image-size-tools", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-21T15:10:02.183912Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "de838c9b-2475-4fa4-85f3-094e1978b630", + "node_id": "image-size-tools", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": ">=0.1.0", + "supported_os": [ + "OS Independent" + ], + "version": "0.3.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "KGBicheno", + "publisher": { + "createdAt": "2025-06-21T03:43:32.684409Z", + "description": "", + "id": "kgbicheno", + "logo": "", + "members": [], + "name": "KGBicheno", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TheLustriVA/ComfyUI-Image-Size-Tools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": ">=0.1.0", + "supported_os": [ + "OS Independent" + ], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-07T15:31:24.500992Z", + "description": "Using rgthree's fast_group_muter and bookmark nodes, introduce the pyautogui library to simulate clicks and hotkeys, and run groups in sequence. screen manipulation is involved", + "downloads": 7532, + "github_stars": 3, + "icon": "", + "id": "comfyui_sillynodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-07T15:31:24.813174Z", + "dependencies": [ + "pyautogui", + "keyboard" + ], + "deprecated": false, + "downloadUrl": "", + "id": "94833684-dc24-4660-a8a7-e5e750e01f0c", + "node_id": "comfyui_sillynodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "LICENSE", + "name": "comfyUI_SillyNodes", + "publisher": { + "createdAt": "2024-06-06T15:32:29.449523Z", + "description": "", + "id": "blueraincoatli", + "logo": "", + "members": [], + "name": "blueraincoatli", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/blueraincoatli/comfyUI_SillyNodes", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-24T20:30:21.748014Z", + "description": "A node for ComfyUI that performs GPEN face restoration on the input image(s). Significantly faster than other implementations of GPEN.", + "downloads": 4270, + "github_stars": 68, + "icon": "https://example.com/icon.png", + "id": "comfyui-gpeno", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-15T20:29:24.750287Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "6e232af6-b119-4dbe-8401-e89b358d715a", + "node_id": "comfyui-gpeno", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.0" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "ComfyUI-GPENO", + "publisher": { + "createdAt": "2024-11-22T01:36:07.508549Z", + "description": "", + "id": "sparknight", + "logo": "", + "members": [], + "name": "Sparknight", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SparknightLLC/ComfyUI-GPENO", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-23T04:58:11.245069Z", + "description": "Add a node to save images with metadata (PNGInfo) extracted from the input values of each node.\nSince the values are extracted dynamically, values output by various extension nodes can be added to metadata.", + "downloads": 33837, + "github_stars": 88, + "icon": "", + "id": "comfyui-saveimagewithmetadata", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-23T04:58:11.56765Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1251dcfc-7e29-4f25-9785-1e54021e088d", + "node_id": "comfyui-saveimagewithmetadata", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-SaveImageWithMetaData", + "publisher": { + "createdAt": "2024-06-23T04:27:13.079228Z", + "description": "", + "id": "nkchocoai", + "logo": "", + "members": [], + "name": "nk choco", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/nkchocoai/ComfyUI-SaveImageWithMetaData", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-29T03:09:08.160849Z", + "description": "show lora info", + "downloads": 15356, + "github_stars": 6, + "icon": "", + "id": "comfyui-ycyy-lorainfo", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-29T03:09:09.849424Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "9ec8f332-1989-4e8f-a039-dcdf1b2c7fd4", + "node_id": "comfyui-ycyy-lorainfo", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-YCYY-LoraInfo", + "publisher": { + "createdAt": "2024-08-16T06:01:52.703572Z", + "description": "", + "id": "ycyy", + "logo": "", + "members": [], + "name": "yichenyanyu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ycyy/ComfyUI-YCYY-LoraInfo", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-04T18:03:25.439834Z", + "description": "Advanced image input and output: EXR, 32 bit support and more", + "downloads": 3206, + "github_stars": 50, + "icon": "", + "id": "cocotools_io", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-17T22:18:55.146866Z", + "dependencies": [ + "torch>=1.10.0", + "numpy>=1.21.0", + "colour-science>=0.4.2", + "Pillow>=9.0.0", + "opencv-python>=4.5.0", + "tifffile", + "OpenImageIO>=2.4.13.0", + "rich>=10.0.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "2c63229e-b2e7-4670-a3fb-d7ec17b65898", + "node_id": "cocotools_io", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.3.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "CoCoTools_IO", + "publisher": { + "createdAt": "2025-05-04T17:44:26.926499Z", + "description": "", + "id": "coco", + "logo": "", + "members": [], + "name": "CoCo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Conor-Collins/ComfyUI-CoCoTools_IO", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-23T18:05:18.371119Z", + "description": "Provides nodes for prompt editing and LoRA scheduling, advanced regional prompting (including attention masking) and more, all controlled through your text prompt", + "downloads": 12902, + "github_stars": 308, + "icon": "", + "id": "comfyui-prompt-control", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-21T10:19:37.346375Z", + "dependencies": [ + "lark >= 1.1.9" + ], + "deprecated": false, + "downloadUrl": "", + "id": "ef23977a-ff63-45a4-86ee-d9fcada919f0", + "node_id": "comfyui-prompt-control", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "2.0.0-rc.9" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Prompt Control", + "publisher": { + "createdAt": "2024-05-23T17:42:14.692322Z", + "description": "", + "id": "asagi4", + "logo": "", + "members": [], + "name": "asagi4", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/asagi4/comfyui-prompt-control", + "status": "", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-27T06:07:24.270572Z", + "description": "Using LLM and Joy tag pipeline to tag your image(s folder), it's suitable for train FLUX LoRA and also sdxl. Load images in order!", + "downloads": 1112, + "github_stars": 13, + "icon": "", + "id": "comfyui_auto_caption", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-27T06:07:24.730906Z", + "dependencies": [ + "huggingface_hub==0.24.3", + "accelerate", + "#torch", + "transformers>=4.43.3", + "sentencepiece", + "bitsandbytes>=0.43.3", + "bitsandbytes-windows>=0.37.5" + ], + "deprecated": false, + "downloadUrl": "", + "id": "71bbaa5f-d50e-47b5-9bff-c2942caecf95", + "node_id": "comfyui_auto_caption", + "status": "NodeVersionStatusBanned", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Auto_Caption", + "publisher": { + "createdAt": "2025-01-23T03:20:24.38645Z", + "description": "", + "id": "cyber-blackcat", + "logo": "", + "members": [], + "name": "Cyber-BlackCat", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Cyber-BlackCat/ComfyUI_Auto_Caption", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-11T12:22:06.203026Z", + "description": "A set of custom ComfyUI nodes for performing basic post-processing effects including Film Grain and Vignette. These effects can help to take the edge off AI imagery and make them feel more natural.", + "downloads": 33455, + "github_stars": 178, + "icon": "", + "id": "comfyui-propost", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-25T00:42:04.791932Z", + "dependencies": [ + "numpy", + "Pillow", + "opencv-python", + "colour-science" + ], + "deprecated": false, + "downloadUrl": "", + "id": "34fc55dd-6d47-4188-913f-2a88ec876935", + "node_id": "comfyui-propost", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.3" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "comfyui-propost", + "publisher": { + "createdAt": "2024-06-30T10:49:32.020857Z", + "description": "", + "id": "digital", + "logo": "", + "members": [], + "name": "Digital", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/digitaljohn/comfyui-propost", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-15T14:39:08.536476Z", + "description": "Perturbed-Attention Guidance (PAG), Smoothed Energy Guidance (SEG), Sliding Window Guidance (SWG), PLADIS, Normalized Attention Guidance (NAG), Token Perturbation Guidance (TPG) for ComfyUI and SD reForge.", + "downloads": 30720, + "github_stars": 265, + "icon": "", + "id": "sd-perturbed-attention", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-24T00:09:31.358731Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5a8e778e-de26-414c-82b5-3a6822e505f6", + "node_id": "sd-perturbed-attention", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.14" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "sd-perturbed-attention", + "publisher": { + "createdAt": "2024-06-15T14:09:36.287328Z", + "description": "", + "id": "pamparamm", + "logo": "", + "members": [], + "name": "Pamparamm", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pamparamm/sd-perturbed-attention", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-07T06:51:40.179474Z", + "description": "A collection of nodes for batch processing texts and images in ComfyUI", + "downloads": 1201, + "github_stars": 2, + "icon": "", + "id": "batch-process", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-03T10:56:38.907006Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "df8db265-8899-4078-9a36-a0eb1e19d0a4", + "node_id": "batch-process", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Batch-Process", + "publisher": { + "createdAt": "2025-04-07T06:15:14.211114Z", + "description": "", + "id": "zar4x", + "logo": "", + "members": [], + "name": "Zar4X", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Zar4X/ComfyUI-Batch-Process", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-21T13:14:20.011838Z", + "description": "LIST and BATCH utilities which support: create, convert, get or slice items", + "downloads": 7312, + "github_stars": 8, + "icon": "", + "id": "comfyui-list-utils", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-26T21:41:28.89881Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ff2b9510-048a-4944-b074-5925ca7d34f4", + "node_id": "comfyui-list-utils", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.5.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-List-Utils", + "publisher": { + "createdAt": "2024-09-21T12:47:45.727674Z", + "description": "", + "id": "godmt", + "logo": "", + "members": [], + "name": "godmt", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/godmt/ComfyUI-List-Utils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-09T00:40:15.022652Z", + "description": "Train Image Loras on both sd1.5 and SDXL. This repo git clones the pieces needed to train. It pops open a second terminal window do do the training. It will also display the inference samples in the node itself so you can track the results.", + "downloads": 5422, + "github_stars": 166, + "icon": "", + "id": "comfyui_fl-trainer", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-09T00:40:30.856479Z", + "dependencies": [ + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "52dbfd69-fb56-492d-81ed-178f7e5d8323", + "node_id": "comfyui_fl-trainer", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_FL-Trainer", + "publisher": { + "createdAt": "2024-05-22T07:00:05.963716Z", + "description": "", + "id": "machinedelusions", + "logo": "", + "members": [], + "name": "Machine Delusions", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/filliptm/ComfyUI_FL-Trainer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-24T10:28:36.532859Z", + "description": "", + "downloads": 1162, + "github_stars": 0, + "icon": "", + "id": "comfyui-rememberingutils", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-25T01:31:54.581267Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5da063d0-01e3-4536-8836-637d224ac028", + "node_id": "comfyui-rememberingutils", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyUI-RememberingUtils", + "publisher": { + "createdAt": "2024-12-24T10:18:17.053496Z", + "description": "", + "id": "bombless", + "logo": "", + "members": [], + "name": "bombless", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bombless/comfyUI-RememberingUtils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-01T05:36:08.746709Z", + "description": "This extension offers various nodes that are useful for Deforum-like animations in ComfyUI.", + "downloads": 84943, + "github_stars": 103, + "icon": "", + "id": "comfyui-dream-project", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-16T14:46:07.79209Z", + "dependencies": [ + "imageio", + "pilgram", + "scipy", + "numpy<2.0,>=1.18", + "torchvision", + "evalidate" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6e76d348-93da-4416-a88a-31b9602558a8", + "node_id": "comfyui-dream-project", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "5.1.2" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "comfyui-dream-project", + "publisher": { + "createdAt": "2024-07-01T05:05:05.064583Z", + "description": "", + "id": "altkeyproject", + "logo": "", + "members": [], + "name": "Alt Key Project", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alt-key-project/comfyui-dream-project", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-25T22:41:48.431858Z", + "description": "Implementation of DepthCrafter nodes for ComfyUI, create consistent depth maps for your videos.", + "downloads": 16388, + "github_stars": 225, + "icon": "https://i.imgur.com/aiqQI7U.png", + "id": "comfyui-depthcrafter-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-16T23:51:29.570007Z", + "dependencies": [ + "torch", + "diffusers>=0.29.1", + "accelerate>=0.17.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "64dc82e2-0ba7-462b-85d8-03c6a9560612", + "node_id": "comfyui-depthcrafter-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-DepthCrafter-Nodes", + "publisher": { + "createdAt": "2024-07-31T23:17:26.625774Z", + "description": "", + "id": "akatz", + "logo": "", + "members": [], + "name": "Akatz", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/akatz-ai/ComfyUI-DepthCrafter-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-07T20:27:57.468232Z", + "description": "Soze Nodes: Quality of Life, Batch Processing and Useful Abandoned Repo Nodes", + "downloads": 21694, + "github_stars": 5, + "icon": "", + "id": "comfyui_soze", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-14T17:27:22.181585Z", + "dependencies": [ + "requests", + "torch", + "Pillow", + "numpy", + "collections", + "matplotlib" + ], + "deprecated": false, + "downloadUrl": "", + "id": "af6d20a1-3e77-4ab1-b224-43372239572a", + "node_id": "comfyui_soze", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.5.5" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI_Soze", + "publisher": { + "createdAt": "2024-10-07T19:57:39.99618Z", + "description": "", + "id": "soze", + "logo": "", + "members": [], + "name": "Mike Soze", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SozeInc/ComfyUI_Soze", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-17T10:05:04.475827Z", + "description": "Custom nodes to aid in the exploration of Latent Space", + "downloads": 3503, + "github_stars": 2, + "icon": "", + "id": "comfyui-ig-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-10T10:24:14.289957Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "6930b283-0bd8-4ced-8f46-e30934c88255", + "node_id": "comfyui-ig-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI-IG-Nodes", + "publisher": { + "createdAt": "2024-09-17T09:53:04.490236Z", + "description": "", + "id": "iggy101", + "logo": "", + "members": [], + "name": "IG", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/IDGallagher/ComfyUI-IG-Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-30T11:44:43.089818Z", + "description": "IndexTTS Voice Cloning Nodes for ComfyUI. High-quality voice cloning, very fast, supports Chinese and English, and allows custom voice styles.", + "downloads": 3528, + "github_stars": 91, + "icon": "", + "id": "indextts-mw", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-02T13:54:43.719228Z", + "dependencies": [ + "# accelerate==0.25.0", + "# transformers==4.36.2", + "# tokenizers==0.15.0", + "# cn2an==0.5.22", + "# ffmpeg-python==0.2.0", + "# Cython==3.0.7", + "# g2p-en==2.1.0", + "# jieba==0.42.1", + "# keras==2.9.0", + "# numba==0.58.1", + "# numpy==1.26.2", + "# pandas==2.1.3", + "# matplotlib==3.8.2", + "# opencv-python==4.9.0.80", + "# vocos==0.1.0", + "# accelerate==0.25.0", + "# tensorboard==2.9.1", + "omegaconf", + "sentencepiece", + "librosa", + "tqdm", + "# deepspeeds # Use it to accelerate model inference" + ], + "deprecated": false, + "downloadUrl": "", + "id": "cdf8eb6b-279b-444a-85fc-1972a8c388d8", + "node_id": "indextts-mw", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_IndexTTS", + "publisher": { + "createdAt": "2025-01-06T14:10:29.10336Z", + "description": "", + "id": "mw", + "logo": "", + "members": [], + "name": "MW", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/billwuhao/ComfyUI_IndexTTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-25T18:42:45.608281Z", + "description": "ComfyUI nodes for running torch.compile.", + "downloads": 4781, + "github_stars": 5, + "icon": "", + "id": "comfyui-torch-compile", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-25T18:42:49.36298Z", + "dependencies": [ + "torch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1967de32-efd3-4d49-a717-6dc94c56920b", + "node_id": "comfyui-torch-compile", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Torch-Compile", + "publisher": { + "createdAt": "2024-11-15T00:44:34.283204Z", + "description": "", + "id": "yondonfu", + "logo": "", + "members": [], + "name": "Yondon Fu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yondonfu/ComfyUI-Torch-Compile", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-05T20:39:06.603563Z", + "description": "Using image caption models to extract prompts in ComfyUI", + "downloads": 1710, + "github_stars": 9, + "icon": "", + "id": "image-caption-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-19T15:14:07.704023Z", + "dependencies": [ + "transformers" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a793a2e8-ee1b-4d9f-a4cf-fe9171698ff8", + "node_id": "image-caption-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.11" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "image-caption-comfyui", + "publisher": { + "createdAt": "2024-06-30T16:09:17.24025Z", + "description": "", + "id": "alpertunga-bile", + "logo": "", + "members": [], + "name": "WoWoWoWololo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alpertunga-bile/image-caption-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-10T01:32:55.301251Z", + "description": "Fixed AttentionCouple, NegPip(negative weights in prompts) for SDXL, FLUX and HunyuanVideo, more CFG++ and SMEA DY samplers, etc.", + "downloads": 32394, + "github_stars": 201, + "icon": "", + "id": "comfyui-ppm", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-13T16:24:07.860598Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "53d30c2e-3e5e-482a-9596-8a65a80f4661", + "node_id": "comfyui-ppm", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.40" + }, + "license": "{\"text\": \"GNU Affero General Public License v3\"}", + "name": "ComfyUI-ppm", + "publisher": { + "createdAt": "2024-06-15T14:09:36.287328Z", + "description": "", + "id": "pamparamm", + "logo": "", + "members": [], + "name": "Pamparamm", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pamparamm/ComfyUI-ppm", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-25T07:13:00.47538Z", + "description": "A combined node for ComfyUI with six configurable tabs for managing multiple parameter configurations, including guidance, sampler, scheduler, steps, and denoise.", + "downloads": 3318, + "github_stars": 7, + "icon": "", + "id": "comfyui-fluxsettingsnode", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-25T07:13:03.979389Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "6e62597e-1c40-4ab3-bee2-075b7381dbbb", + "node_id": "comfyui-fluxsettingsnode", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-FluxSettingsNode", + "publisher": { + "createdAt": "2024-12-21T01:36:24.590095Z", + "description": "", + "id": "lightx02", + "logo": "", + "members": [], + "name": "Light_x02", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Light-x02/ComfyUI-FluxSettingsNode", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-03T03:51:20.588138Z", + "description": "This node is mainly based on the Yolov8 model for object detection, and it outputs related images, masks, and JSON information.", + "downloads": 3304, + "github_stars": 24, + "icon": "https://avatars.githubusercontent.com/u/89724016?s=400&u=cd218743591faf329d4b4f07a14de1130a9f56cc&v=4", + "id": "comfyui-yolov8-json", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-28T02:11:07.352996Z", + "dependencies": [ + "ultralytics", + "numpy", + "torch", + "PIL" + ], + "deprecated": false, + "downloadUrl": "", + "id": "9db340c5-9242-4cdd-85a0-e7e6a6a3e449", + "node_id": "comfyui-yolov8-json", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.3.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "Comfyui-Yolov8-JSON", + "publisher": { + "createdAt": "2024-07-03T03:43:42.738515Z", + "description": "", + "id": "prodogape", + "logo": "", + "members": [], + "name": "prodogape", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/prodogape/Comfyui-Yolov8-JSON", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-17T01:45:04.734594Z", + "description": "Nodes:Conditioning (Blend), Inpainting VAE Encode (WAS), VividSharpen. Experimental nodes, or other random extra helper nodes.", + "downloads": 8393, + "github_stars": 34, + "icon": "", + "id": "was_extras", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-18T17:19:04.602939Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "aa9bf49f-a41c-4697-98ea-a1feb9c1835c", + "node_id": "was_extras", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.2" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "WAS_Extras", + "publisher": { + "createdAt": "2024-06-17T00:47:38.837695Z", + "description": "", + "id": "was", + "logo": "", + "members": [], + "name": "WAS", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/WASasquatch/WAS_Extras", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-18T17:57:27.932537Z", + "description": "This custom node allow upscaling an image by a factor using a model.", + "downloads": 8517, + "github_stars": 9, + "icon": "", + "id": "comfyui-upscale-by-model", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-18T17:57:28.221314Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "7954f4f8-be36-460e-afa4-5f53a1f6f27e", + "node_id": "comfyui-upscale-by-model", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "", + "name": "comfyui-upscale-by-model", + "publisher": { + "createdAt": "2024-06-18T17:31:02.726809Z", + "description": "", + "id": "tuantran1632001", + "logo": "", + "members": [], + "name": "Bill Tr\u1ea7n", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/TheBill2001/comfyui-upscale-by-model", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-10T22:51:55.095412Z", + "description": "[a/BizyAir](https://github.com/siliconflow/BizyAir) Comfy Nodes that can run in any environment.", + "downloads": 87550, + "github_stars": 731, + "icon": "https://bizy-air.oss-cn-beijing.aliyuncs.com/examples_asset/siliconflow_logo.png", + "id": "bizyair", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-03T03:50:04.33556Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "413a31a5-b42f-4d48-9659-70727bfee4c9", + "node_id": "bizyair", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.8" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "\u2601\ufe0fBizyAir", + "publisher": { + "createdAt": "2024-07-10T22:08:22.833988Z", + "description": "", + "id": "siliconflow", + "logo": "", + "members": [], + "name": "BizyAir", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/siliconflow/BizyAir", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-26T23:37:22.711385Z", + "description": "A toolset for Hunyuan Video (mainly), with some additional nodes applicable to Framepack Video and WAN Video.", + "downloads": 9213, + "github_stars": 2, + "icon": "", + "id": "ComfyUI-WarpedToolset", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-16T14:04:41.071904Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "471cd48e-da2c-4ad1-941e-db1a431a9a10", + "node_id": "ComfyUI-WarpedToolset", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.7.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Warped Toolset", + "publisher": { + "createdAt": "2025-05-26T23:26:15.023118Z", + "description": "", + "id": "warpedanimation", + "logo": "", + "members": [], + "name": "Warped Animation", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/WarpedAnimation/ComfyUI-WarpedToolset", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-30T07:24:37.340478Z", + "description": "Manage models: browsing, download and delete.", + "downloads": 11197, + "github_stars": 135, + "icon": "", + "id": "comfyui-model-manager", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-29T09:32:51.591029Z", + "dependencies": [ + "markdownify" + ], + "deprecated": false, + "downloadUrl": "", + "id": "63ebb90f-14cc-43a2-b4b2-ce392032371e", + "node_id": "comfyui-model-manager", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.6.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Model-Manager", + "publisher": { + "createdAt": "2024-09-27T03:24:28.19546Z", + "description": "", + "id": "hayden", + "logo": "", + "members": [], + "name": "hayden", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hayden-fr/ComfyUI-Model-Manager", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-18T18:24:34.370422Z", + "description": "Convert 2D images and videos to 3D, SBS (side-by-side) format", + "downloads": 1108, + "github_stars": 5, + "icon": "", + "id": "comfyui-y7-sbs-2dto3d", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-25T10:14:05.114261Z", + "dependencies": [ + "torch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "9e0009c8-d181-4289-b97b-155a9144888d", + "node_id": "comfyui-y7-sbs-2dto3d", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Y7-SBS-2Dto3D", + "publisher": { + "createdAt": "2025-03-24T22:03:49.00079Z", + "description": "", + "id": "yushan777", + "logo": "", + "members": [], + "name": "yushan777", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yushan777/ComfyUI-Y7-SBS-2Dto3D", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-17T02:26:00.576422Z", + "description": "Collection of a few custom nodes made mainly for personal use (See GitHub README for more info). \nFeatures: live Token Counter on any node/widget; Switch + Passthrough nodes with fallback functionality; Some personally tailored FLOAT/INT nodes (and a bit more).", + "downloads": 6085, + "github_stars": 4, + "icon": "https://raw.githubusercontent.com/DraconicDragon/ComfyUI-RyuuNoodles/refs/heads/main/assets/RyuuNoodles_Icon_L.webp", + "id": "RyuuNoodles", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-14T21:41:56.595391Z", + "dependencies": [ + "transformers", + "aiohttp", + "color-matcher" + ], + "deprecated": false, + "downloadUrl": "", + "id": "3b812006-2543-403d-ba83-0e7dfbb48cf8", + "node_id": "RyuuNoodles", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "2.6.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-RyuuNoodles", + "publisher": { + "createdAt": "2025-01-06T15:37:31.751301Z", + "description": "", + "id": "drac", + "logo": "", + "members": [], + "name": "Drac", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/DraconicDragon/ComfyUI-RyuuNoodles", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-05T09:27:22.710046Z", + "description": "Comfyui custom node for [FunAudioLLM](https://funaudiollm.github.io/) include [CosyVoice](https://github.com/FunAudioLLM/CosyVoice) and [SenseVoice](https://github.com/FunAudioLLM/SenseVoice).", + "downloads": 2444, + "github_stars": 84, + "icon": "", + "id": "comfyui-funaudiollm", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-05T09:27:26.523671Z", + "dependencies": [ + "conformer", + "deepspeed; sys_platform == 'linux'", + "diffusers", + "grpcio", + "grpcio-tools", + "hydra-core", + "HyperPyYAML", + "inflect", + "librosa", + "lightning", + "matplotlib", + "modelscope", + "networkx", + "omegaconf", + "onnxruntime-gpu; sys_platform == 'linux'", + "onnxruntime; sys_platform == 'darwin' or sys_platform == 'win32'", + "openai-whisper", + "protobuf", + "pydantic", + "rich", + "soundfile", + "tensorboard", + "wget", + "gdown", + "pyarrow", + "jieba", + "pypinyin", + "pydub", + "audiosegment", + "srt", + "ffmpeg-python", + "WeTextProcessing", + "aliyun-python-sdk-core", + "funasr>=1.1.3", + "huggingface", + "huggingface_hub" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b8a39970-389f-400d-8fef-8009c284231d", + "node_id": "comfyui-funaudiollm", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-FunAudioLLM", + "publisher": { + "createdAt": "2024-10-05T09:11:28.085163Z", + "description": "", + "id": "spensercai", + "logo": "", + "members": [], + "name": "SpenserCai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/SpenserCai/ComfyUI-FunAudioLLM", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-03T07:51:33.328256Z", + "description": "This extension provides image generation features based on Fooocus.", + "downloads": 9466, + "github_stars": 100, + "icon": "", + "id": "fooocus_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-23T02:56:15.43098Z", + "dependencies": [ + "accelerate==0.32.1", + "pytorch_lightning==2.3.3", + "pygit2==1.15.1", + "opencv-contrib-python-headless==4.10.0.84", + "httpx==0.27.0", + "onnxruntime", + "timm==1.0.7" + ], + "deprecated": false, + "downloadUrl": "", + "id": "4586814e-9b83-4063-a658-eb1ec3132d62", + "node_id": "fooocus_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "Fooocus_Nodes", + "publisher": { + "createdAt": "2024-07-03T07:41:00.736476Z", + "description": "", + "id": "seed", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Seedsa/Fooocus_Nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-22T02:34:54.359746Z", + "description": "A set of block-based LLM agent node libraries designed for ComfyUI.This project aims to develop a complete set of nodes for LLM workflow construction based on comfyui. It allows users to quickly and conveniently build their own LLM workflows and easily integrate them into their existing SD workflows.", + "downloads": 30928, + "github_stars": 1792, + "icon": "", + "id": "comfyui_llm_party", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-01T08:32:42.77603Z", + "dependencies": [ + "beautifulsoup4", + "docx2txt", + "langchain", + "langchain-community", + "langchain-text-splitters", + "openai>=1.57.4", + "openpyxl", + "pandas", + "pytz", + "requests", + "xlrd", + "faiss-cpu", + "websocket-client", + "streamlit", + "virtualenv", + "tiktoken", + "transformers", + "transformers-stream-generator", + "optimum", + "pdfplumber", + "wikipedia", + "arxiv", + "bitsandbytes", + "accelerate", + "fastapi", + "py-cpuinfo", + "diskcache", + "requests-toolbelt", + "tabulate", + "charset-normalizer", + "tenacity", + "cpm-kernels", + "pydub", + "keyboard", + "sounddevice", + "neo4j", + "soundfile", + "langchain-openai", + "sentence-transformers", + "uvicorn", + "google-generativeai", + "llama-index", + "html2image", + "markdown", + "selenium", + "librosa", + "ffmpeg-python", + "moviepy", + "html5lib", + "easyocr", + "feedparser", + "psutil", + "verovio", + "mdtex2html", + "markdownify", + "srt", + "peft", + "scipy>=1.15.2", + "json-repair>=0.44.0", + "redis>=5.3.0", + "aisuite[all]>=0.1.11", + "fish-audio-sdk>=2025.4.2", + "httpx<=0.27.2", + "mcp>=1.6.0", + "qwen-vl-utils[decord]>=0.0.11", + "attrdict>=2.0.1", + "docstring-parser>=0.16", + "langchain-ollama>=0.3.2", + "timm>=1.0.15" + ], + "deprecated": false, + "downloadUrl": "", + "id": "aab9ce6e-721a-41c8-9aef-14820dd59622", + "node_id": "comfyui_llm_party", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.4.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui_LLM_party", + "publisher": { + "createdAt": "2024-08-22T01:07:33.770142Z", + "description": "", + "id": "heshengtao", + "logo": "", + "members": [], + "name": "heshengtao", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/heshengtao/comfyui_LLM_party", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-31T08:54:31.721624Z", + "description": "Nodes:LoadImageWithSwitch, ImageBatchOneOrMore, ModifyTextGender, GenderControlOutput, ImageCompositeMaskedWithSwitch, ImageCompositeMaskedOneByOne, ColorCorrectOfUtils, SplitMask, MaskFastGrow, CheckpointLoaderSimpleWithSwitch, ImageResizeTo8x, MatchImageRatioToPreset, MaskFromFaceModel, MaskCoverFourCorners, DetectorForNSFW, DeepfaceAnalyzeFaceAttributes, VolcanoOutpainting, VolcanoImageEdit, etc.", + "downloads": 34564, + "github_stars": 84, + "icon": "", + "id": "comfyui-utils-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-27T07:38:59.740858Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "77fd0adc-c7a3-4bd9-a1c4-444fdd7b9d9f", + "node_id": "comfyui-utils-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.3.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-utils-nodes", + "publisher": { + "createdAt": "2024-05-23T14:45:10.940067Z", + "description": "", + "id": "zhangp365", + "logo": "", + "members": [], + "name": "zhangp365", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zhangp365/ComfyUI-utils-nodes", + "status": "", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-18T21:38:09.124749Z", + "description": "ComfyUI node for background removal implementing [a/InSPyReNet](https://github.com/plemeri/InSPyReNet)", + "downloads": 78775, + "github_stars": 600, + "icon": "", + "id": "comfyui-inspyrenet-rembg", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-22T13:57:53.042173Z", + "dependencies": [ + "transparent-background" + ], + "deprecated": false, + "downloadUrl": "", + "id": "8df72613-6f44-4f49-b5b1-07527b657824", + "node_id": "comfyui-inspyrenet-rembg", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "LICENSE", + "name": "ComfyUI-Inspyrenet-Rembg", + "publisher": { + "createdAt": "2024-07-18T21:19:33.211704Z", + "description": "", + "id": "john-mnz", + "logo": "", + "members": [], + "name": "john-mnz", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/john-mnz/ComfyUI-Inspyrenet-Rembg", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-24T13:38:42.838948Z", + "description": "This is a toolset designed for ComfyUI by LAOGOU-666, providing a series of practical image processing and operation nodes, making our operation more intuitive and convenient", + "downloads": 7530, + "github_stars": 165, + "icon": "", + "id": "comfyui_lg_tools", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-16T12:52:28.95923Z", + "dependencies": [ + "opencv-contrib-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c1e938e0-1ea3-4013-8908-2b5444792ce0", + "node_id": "comfyui_lg_tools", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.1" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "Comfyui_LG_Tools", + "publisher": { + "createdAt": "2024-10-09T09:00:56.560993Z", + "description": "", + "id": "laogou666", + "logo": "", + "members": [], + "name": "LAOGOU-666", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LAOGOU-666/Comfyui_LG_Tools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-05T13:06:20.452612Z", + "description": "A general extension to utilize TIPO or DanTagGen to do 'text-presampling' based on KGen library: [a/https://github.com/KohakuBlueleaf/KGen](https://github.com/KohakuBlueleaf/KGen)", + "downloads": 11639, + "github_stars": 487, + "icon": "https://kblueleaf.net/_astro/tipo-icon.rYgN1nzC.jpg", + "id": "z-tipo-extension", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-05T13:06:22.49245Z", + "dependencies": [ + "tipo-kgen>=0.1.5", + "transformers" + ], + "deprecated": false, + "downloadUrl": "", + "id": "83d24697-217c-4545-a70e-634f37765e25", + "node_id": "z-tipo-extension", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "z-tipo-extension", + "publisher": { + "createdAt": "2024-12-21T03:05:34.782934Z", + "description": "", + "id": "kblueleaf", + "logo": "", + "members": [], + "name": "KohakuBlueLeaf", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/KohakuBlueleaf/z-tipo-extension", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-25T23:49:13.61669Z", + "description": "A powerful ComfyUI custom node that extends the standard text encoder with persistent prompt storage, advanced search capabilities, and an automatic image gallery system using SQLite.", + "downloads": 1605, + "github_stars": 25, + "icon": "https://avatars.githubusercontent.com/u/213204677?s=200", + "id": "promptmanager", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-19T23:57:17.107486Z", + "dependencies": [ + "# Core dependencies for PromptManager", + "# Note: Most dependencies are already included with ComfyUI", + "# Already included with Python standard library:", + "# - sqlite3", + "# - hashlib", + "# - json", + "# - datetime", + "# - os", + "# - typing", + "# - threading", + "# - uuid", + "# Required for gallery functionality:", + "watchdog>=2.1.0 # For file system monitoring", + "Pillow>=8.0.0 # For image metadata extraction (usually included with ComfyUI)", + "# Optional dependencies for enhanced search functionality:", + "# fuzzywuzzy[speedup]>=0.18.0 # For fuzzy string matching (optional)", + "# sqlalchemy>=1.4.0 # For advanced ORM features (optional)", + "# Development dependencies (optional):", + "# pytest>=6.0.0 # For running tests", + "# black>=22.0.0 # For code formatting", + "# flake8>=4.0.0 # For linting", + "# mypy>=0.910 # For type checking" + ], + "deprecated": false, + "downloadUrl": "", + "id": "8af4be91-c6fa-4fb6-aad2-d9f662ce4a92", + "node_id": "promptmanager", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "3.0.13" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_PromptManager", + "publisher": { + "createdAt": "2025-05-25T23:36:18.262938Z", + "description": "", + "id": "kiko9", + "logo": "", + "members": [], + "name": "kiko", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ComfyAssets/ComfyUI_PromptManager", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-23T08:46:06.370358Z", + "description": "A ComfyUI custom node for project management to centralize the management of all your workflows in one place. Seamlessly switch between workflows, create and update them within a single workspace, like Google Docs.", + "downloads": 33471, + "github_stars": 1325, + "icon": "", + "id": "comfyui-workspace-manager", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-23T08:46:06.665908Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "1c54b978-9749-4ee1-9d06-efb83c6a2adc", + "node_id": "comfyui-workspace-manager", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-workspace-manager", + "publisher": { + "createdAt": "2024-05-22T03:30:26.675002Z", + "description": "", + "id": "weixuan11", + "logo": "", + "members": [], + "name": "11cafe", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/11cafe/comfyui-workspace-manager", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-16T19:03:39.699945Z", + "description": "A ComfyUI node that waits for a GPU temp and/or a number of seconds.", + "downloads": 442, + "github_stars": 1, + "icon": "", + "id": "holdup", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-16T19:03:40.11306Z", + "dependencies": [ + "gputil" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7c030e3f-998f-42d3-be93-0439fe41088e", + "node_id": "holdup", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-holdup", + "publisher": { + "createdAt": "2025-05-16T18:15:09.500374Z", + "description": "", + "id": "usrname0", + "logo": "", + "members": [], + "name": "usrname0", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/usrname0/comfyui-holdup", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-20T09:54:26.666919Z", + "description": "A utility node for extracting and trimming filenames from file paths and uploaded pictures", + "downloads": 495, + "github_stars": 0, + "icon": "https://raw.githubusercontent.com/skycoder182/comfyui-filename-tools/main/icon.png", + "id": "comfyui-filename-tools", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-20T18:06:28.385127Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "7c561417-389e-4f62-8dbf-ca07b5fa1a4c", + "node_id": "comfyui-filename-tools", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Filename Tools", + "publisher": { + "createdAt": "2025-05-20T09:31:55.819934Z", + "description": "", + "id": "skycoder", + "logo": "", + "members": [], + "name": "Skycoder", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/skycoder182/comfyui-filename-tools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-25T07:12:49.214291Z", + "description": "NODES: Add Mask For IC Lora, Create Context Window, Concatenate Context Window, Auto Patch", + "downloads": 25839, + "github_stars": 230, + "icon": "", + "id": "comfyui-in-context-lora-utils", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-25T07:12:52.96509Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "581137f1-0bbc-401f-92c0-221c0e91df2f", + "node_id": "comfyui-in-context-lora-utils", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfyui-In-Context-Lora-Utils", + "publisher": { + "createdAt": "2024-12-25T07:03:37.474647Z", + "description": "", + "id": "lrzjason", + "logo": "", + "members": [], + "name": "lrzjason", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lrzjason/Comfyui-In-Context-Lora-Utils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T16:31:14.268136Z", + "description": "Implementation of 4DHuman, MDM, MotionDiffuse and ReMoDiffuse into ComfyUI.", + "downloads": 3104, + "github_stars": 201, + "icon": "", + "id": "comfyui-motiondiff", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-01T01:02:33.778615Z", + "dependencies": [ + "ftfy", + "regex", + "tqdm", + "scipy", + "matplotlib", + "git+https://github.com/openai/CLIP.git", + "addict", + "yapf", + "smplx", + "h5py", + "opencv-python", + "einops", + "pyrender", + "trimesh", + "shapely", + "mapbox_earcut", + "#mgpt", + "spacy", + "bert-score", + "omegaconf", + "huggingface_hub", + "pytorch_lightning", + "rich", + "#4dhuman", + "yacs", + "scikit-image", + "timm", + "webdataset", + "dill", + "pandas" + ], + "deprecated": false, + "downloadUrl": "", + "id": "68c9097a-9b46-4de9-a49b-da69ab9d61da", + "node_id": "comfyui-motiondiff", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-MotionDiff", + "publisher": { + "createdAt": "2024-06-20T15:55:49.560354Z", + "description": "", + "id": "fannovel16", + "logo": "", + "members": [], + "name": "Fannovel16", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Fannovel16/ComfyUI-MotionDiff", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-11T19:58:55.011617Z", + "description": "This is a custom node for ComfyUI that allows you to use the WaveSpeed AI API directly in ComfyUI. WaveSpeed AI is a high-performance AI image and video generation service platform offering industry-leading generation speeds. For more information, see [a/WaveSpeed AI Documentation](https://wavespeed.ai/docs).", + "downloads": 2722, + "github_stars": 17, + "icon": "", + "id": "wavespeed-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-15T10:04:47.675896Z", + "dependencies": [ + "requests", + "pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "123adf9b-8d2b-4e49-88c3-8124786ec33b", + "node_id": "wavespeed-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.3.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "wavespeed-comfyui", + "publisher": { + "createdAt": "2025-04-09T05:52:03.506805Z", + "description": "", + "id": "wavespeed-ai", + "logo": "", + "members": [], + "name": "WaveSpeedAI", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/WaveSpeedAI/wavespeed-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-24T06:40:19.136459Z", + "description": "This repository contains custom nodes for ComfyUI that integrate the fal.ai FLUX.1 [pro] and FLUX.1 [dev] with LoRA and ControlNet API, specifically for text-to-image generation. These nodes allow you to use the FLUX.1 model directly within your ComfyUI workflows.", + "downloads": 4585, + "github_stars": 56, + "icon": "", + "id": "comfyui-fal-api-flux", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-16T08:47:46.862441Z", + "dependencies": [ + "requests==2.32.3", + "configparser==7.1.0", + "fal-client==0.4.1", + "numpy==2.1.1", + "torch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "fd99931b-402d-4727-a943-d81e727ed3b4", + "node_id": "comfyui-fal-api-flux", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.5.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Fal-API-Flux", + "publisher": { + "createdAt": "2024-08-24T05:44:13.928977Z", + "description": "", + "id": "yas-ponotech", + "logo": "", + "members": [], + "name": "Yas | PONOTECH", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yhayano-ponotech/ComfyUI-Fal-API-Flux", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-17T12:00:38.538004Z", + "description": "Essential nodes. Fork from ComfyUI_essentials.\n\n# Change #\n1. Add alpha and background_alpha to \ud83d\udd27 Draw Text node, let you can set the alpha of the text and the background.", + "downloads": 14303, + "github_stars": 0, + "icon": "", + "id": "comfyui_essentials_mb", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-18T03:42:36.701233Z", + "dependencies": [ + "numba", + "colour-science", + "rembg", + "pixeloe" + ], + "deprecated": false, + "downloadUrl": "", + "id": "da50e9c9-a7e3-4364-93a1-6274463288f2", + "node_id": "comfyui_essentials_mb", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_essentials_mb", + "publisher": { + "createdAt": "2025-04-17T11:46:16.074547Z", + "description": "", + "id": "mboy", + "logo": "", + "members": [], + "name": "mboy", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MinorBoy/ComfyUI_essentials_mb", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-25T10:56:24.920216Z", + "description": "Simple string manipulation nodes for ComfyUI (strip/remove text strings, search and replace text strings, preview modified string outputs). Useful for modifying text prompts or results from LLM outputs. Nodes will be located under standard Add Node > utils menu. Node names: String Textbox, String Strip, String Replace, and String Preview.", + "downloads": 7368, + "github_stars": 16, + "icon": "", + "id": "comfyui_stringessentials", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-09T06:17:00.520758Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "9ff6976b-2763-46de-9fac-a42449c2337c", + "node_id": "comfyui_stringessentials", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_StringEssentials", + "publisher": { + "createdAt": "2025-01-25T09:43:16.151319Z", + "description": "", + "id": "bradsec", + "logo": "", + "members": [], + "name": "bradsec", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bradsec/ComfyUI_StringEssentials", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-10T23:51:52.189933Z", + "description": "These are just some nodes I wanted and couldn't find where anyone else had made them yet.", + "downloads": 7106, + "github_stars": 14, + "icon": "", + "id": "comfyui-quadmoons-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-24T01:29:10.609933Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "180cb16e-56bc-4848-8594-513daff883dc", + "node_id": "comfyui-quadmoons-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.3.2" + }, + "license": "{}", + "name": "ComfyUI-quadMoons-nodes", + "publisher": { + "createdAt": "2024-06-10T16:21:33.996006Z", + "description": "", + "id": "traugdor", + "logo": "", + "members": [], + "name": "quadmoon", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/traugdor/ComfyUI-quadMoons-nodes", + "status": "", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-16T01:42:17.945528Z", + "description": "This custom node package for ComfyUI is designed to streamline your workflow with powerful file-counting capabilities.", + "downloads": 2031, + "github_stars": 2, + "icon": "\ud83c\udfaf", + "id": "comfyui-line-counter", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-12T00:07:43.677642Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a1217e1c-bb89-4cee-aef3-1ded3f999cf1", + "node_id": "comfyui-line-counter", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.7" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Line-counter", + "publisher": { + "createdAt": "2024-08-16T00:53:52.116798Z", + "description": "", + "id": "chriscoletech", + "logo": "", + "members": [], + "name": "ChrisColeTech", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ChrisColeTech/ComfyUI-Line-counter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-21T10:25:35.820694Z", + "description": "ComfyUI-Book-Tools is a set o new nodes for ComfyUI that allows users to easily add text overlays to images within their ComfyUI projects. This Node leverages Python Imaging Library (PIL) and PyTorch to dynamically render text on images, supporting a wide range of customization options including font size, alignment, color, and padding. Loop with any parameters (*), prompt batch schedule with prompt selector, end queue for automatic ending current queue.", + "downloads": 3669, + "github_stars": 28, + "icon": "", + "id": "comfyui-book-tools", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-05T17:20:04.270968Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "5d2c75e0-a099-48f0-9281-4da57923d6e8", + "node_id": "comfyui-book-tools", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Book-Tools", + "publisher": { + "createdAt": "2024-06-21T07:46:02.481672Z", + "description": "", + "id": "nazgut", + "logo": "", + "members": [], + "name": "Big Idea Technology", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Big-Idea-Technology/ComfyUI-Book-Tools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-05T04:45:37.317554Z", + "description": "A silly POC Video Player for ComfyUI", + "downloads": 2045, + "github_stars": 17, + "icon": "", + "id": "comfyui-videoplayer", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-05T04:45:39.03314Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "0199e662-abaa-4c02-862a-16af716b4e16", + "node_id": "comfyui-videoplayer", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-VideoPlayer", + "publisher": { + "createdAt": "2024-07-19T17:38:46.26651Z", + "description": "", + "id": "betadoggo", + "logo": "", + "members": [], + "name": "BetaDoggo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BetaDoggo/ComfyUI-VideoPlayer", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-29T12:07:00.318526Z", + "description": "Use of the molmo model.Generate detailed image descriptions and analysis using Molmo models in ComfyUI.", + "downloads": 7660, + "github_stars": 131, + "icon": "", + "id": "comfyui-molmo", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-14T15:07:00.366262Z", + "dependencies": [ + "torch", + "transformers", + "Pillow", + "einops", + "torchvision", + "huggingface_hub", + "bitsandbytes", + "accelerate", + "numpy", + "tensorflow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "5e7e90f6-9f94-4912-b151-06b349438efb", + "node_id": "comfyui-molmo", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.10" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Molmo", + "publisher": { + "createdAt": "2024-09-29T10:55:36.930737Z", + "description": "", + "id": "cychenyue", + "logo": "", + "members": [], + "name": "cychenyue", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/CY-CHENYUE/ComfyUI-Molmo", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-07T16:50:02.023355Z", + "description": "Node for usage of Gemini API", + "downloads": 869, + "github_stars": 1, + "icon": "", + "id": "ComfyUI_Gemini_Expanded_API", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-16T01:32:07.498744Z", + "dependencies": [ + "google-genai", + "numpy", + "torch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1788a17b-d7c5-4a19-924b-fd85d104db00", + "node_id": "ComfyUI_Gemini_Expanded_API", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI Gemini Expanded API", + "publisher": { + "createdAt": "2024-09-17T18:22:05.116266Z", + "description": "", + "id": "silveroxides", + "logo": "", + "members": [], + "name": "silveroxides", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/silveroxides/ComfyUI_Gemini_Expanded_API", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-23T22:31:45.709329Z", + "description": "A collection of custom and specialized nodes for ComfyUI.", + "downloads": 3358, + "github_stars": 13, + "icon": "https://github.com/Creepybits/ComfyUI-Creepy_nodes/blob/a392f0cbc076a66b261b51e315fd5b5d356c2cf2/assets/cpbt.png", + "id": "comfyui_creepy_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-20T11:42:16.634448Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "8d2bef5c-ddcc-4e00-94c8-c198c92298a0", + "node_id": "comfyui_creepy_nodes", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "2.4.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Creepy_nodes", + "publisher": { + "createdAt": "2025-03-23T22:17:50.287153Z", + "description": "", + "id": "creepybits", + "logo": "", + "members": [], + "name": "creepybits", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Creepybits/ComfyUI-Creepy_nodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-21T09:03:19.614154Z", + "description": "This node was created to send a webcam to ComfyUI in real time. This node is recommended for use with LCM.", + "downloads": 6071, + "github_stars": 587, + "icon": "", + "id": "comfyui_toyxyz_test_nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-19T11:07:45.536939Z", + "dependencies": [ + "numpy", + "torch", + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "55c586ef-910b-416e-a222-14f67a4632f8", + "node_id": "comfyui_toyxyz_test_nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_toyxyz_test_nodes", + "publisher": { + "createdAt": "2024-05-21T08:57:29.149821Z", + "description": "", + "id": "toyxyz", + "logo": "", + "members": [], + "name": "ComfyUI_toyxyz_test_nodes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/toyxyz/ComfyUI_toyxyz_test_nodes", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-03T05:51:34.493066Z", + "description": "This node is primarily based on Easy-OCR to implement OCR text recognition functionality.", + "downloads": 2607, + "github_stars": 36, + "icon": "https://avatars.githubusercontent.com/u/89724016?s=400&u=cd218743591faf329d4b4f07a14de1130a9f56cc&v=4", + "id": "comfyui-easyocr", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-11T02:17:28.311353Z", + "dependencies": [ + "easyocr" + ], + "deprecated": false, + "downloadUrl": "", + "id": "1b6f4a65-c2ee-4925-b5e4-0b84c878f399", + "node_id": "comfyui-easyocr", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "LICENSE", + "name": "ComfyUI-EasyOCR", + "publisher": { + "createdAt": "2024-07-03T03:43:42.738515Z", + "description": "", + "id": "prodogape", + "logo": "", + "members": [], + "name": "prodogape", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/prodogape/ComfyUI-EasyOCR", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-21T18:40:13.612029Z", + "description": "Nodes: fully-customizable and versatile XY Plot grid, dynamic outputs from config files, Format String, various List utilities, ... visit the wiki for a complete list, tutorials and more.", + "downloads": 2451, + "github_stars": 5, + "icon": "https://i.postimg.cc/Cx5ZRzk5/Comfy-Lab-Icon-400.png", + "id": "comfylab-pack", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-06T15:11:28.031637Z", + "dependencies": [ + "jsonschema", + "json5", + "python-dotenv", + "pyyaml", + "pyaml" + ], + "deprecated": false, + "downloadUrl": "", + "id": "bcb28f60-32d1-4fb7-91e0-6ad268bb1686", + "node_id": "comfylab-pack", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.9" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyLab Pack", + "publisher": { + "createdAt": "2025-01-12T10:41:53.457072Z", + "description": "", + "id": "bugltd", + "logo": "", + "members": [], + "name": "Bug, Ltd.", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bugltd/ComfyLab-Pack", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-17T16:20:52.01827Z", + "description": "This custom node provides advanced settings for FreeU.", + "downloads": 9824, + "github_stars": 119, + "icon": "", + "id": "freeu_advanced", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-17T16:20:52.28126Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "077449d9-43d0-4cc9-8401-a7c1098867a0", + "node_id": "freeu_advanced", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "FreeU_Advanced", + "publisher": { + "createdAt": "2024-06-17T00:47:38.837695Z", + "description": "", + "id": "was", + "logo": "", + "members": [], + "name": "WAS", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/WASasquatch/FreeU_Advanced", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-13T20:31:40.232388Z", + "description": "Custom nodes for integrating Flux models with the BFL API.", + "downloads": 2880, + "github_stars": 46, + "icon": "", + "id": "comfyui-flux-bfl-api", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-08T00:56:14.763058Z", + "dependencies": [ + "torch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "bda7cf39-7ae5-46ec-936c-c8ea3d1cf8c0", + "node_id": "comfyui-flux-bfl-api", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.9" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-FLUX-BFL-API", + "publisher": { + "createdAt": "2024-10-13T20:15:33.396704Z", + "description": "", + "id": "gelas", + "logo": "", + "members": [], + "name": "gelas", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/gelasdev/ComfyUI-FLUX-BFL-API", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-20T07:50:31.02326Z", + "description": "Advanced Block LoRA merging node for ComfyUI (allows selective LoRA block merging)", + "downloads": 1064, + "github_stars": 3, + "icon": "", + "id": "comfyui-flux-block-lora-merger", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-01T15:27:11.882584Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "8a3c46be-dacd-4871-b5e2-bffce105eed4", + "node_id": "comfyui-flux-block-lora-merger", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "Flux Block LoRA Merger", + "publisher": { + "createdAt": "2024-07-05T00:13:02.855642Z", + "description": "", + "id": "tritant", + "logo": "", + "members": [], + "name": "jice", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tritant/ComfyUI_Flux_Block_Lora_Merger", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-20T15:35:27.075059Z", + "description": "The aim of these custom nodes is to get an easy access to the tags used to trigger a lora / lycoris. Extract the tags from civitai or from the safetensors metadatas when available.", + "downloads": 47679, + "github_stars": 209, + "icon": "", + "id": "comfyui-lora-auto-trigger-words", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-16T08:38:46.193414Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "f556c6b5-9f86-43f2-a3d0-86aa357d4ecb", + "node_id": "comfyui-lora-auto-trigger-words", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"text\": \"MIT\"}", + "name": "ComfyUI-Lora-Auto-Trigger-Words", + "publisher": { + "createdAt": "2024-06-20T15:20:04.968354Z", + "description": "", + "id": "dijkstra", + "logo": "", + "members": [], + "name": "Dijkstra", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/idrirap/ComfyUI-Lora-Auto-Trigger-Words", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-22T00:52:41.271495Z", + "description": "Official ComfyUI Support - InfiniteYou: Flexible Photo Recrafting While Preserving Your Identity", + "downloads": 8358, + "github_stars": 206, + "icon": "", + "id": "infiniteyou", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-23T23:22:14.684078Z", + "dependencies": [ + "facexlib>=0.3.0", + "onnxruntime>=1.19.2", + "insightface>=0.7.3", + "opencv-python>=4.11.0.86", + "huggingface_hub" + ], + "deprecated": false, + "downloadUrl": "", + "id": "3c69c9da-7b2e-4b57-b6fd-cf0802ef8c6c", + "node_id": "infiniteyou", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_InfiniteYou", + "publisher": { + "createdAt": "2025-04-21T23:49:51.851537Z", + "description": "", + "id": "yuminjia", + "logo": "", + "members": [], + "name": "Yumin Jia", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bytedance/ComfyUI_InfiniteYou", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-22T21:05:40.686966Z", + "description": "My own version 'from scratch' of a self-rescaling CFG. It isn't much but it's honest work.\nTLDR: set your CFG at 8 to try it. No burned images and artifacts anymore. CFG is also a bit more sensitive because it's a proportion around 8. Low scale like 4 also gives really nice results since your CFG is not the CFG anymore. Also in general even with relatively low settings it seems to improve the quality.", + "downloads": 50561, + "github_stars": 413, + "icon": "", + "id": "comfyui-automaticcfg", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-22T21:05:40.94316Z", + "dependencies": [ + "colorama" + ], + "deprecated": false, + "downloadUrl": "", + "id": "39601fd6-f1a9-4358-8312-4b2dbcd5d742", + "node_id": "comfyui-automaticcfg", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-AutomaticCFG", + "publisher": { + "createdAt": "2024-06-22T09:09:31.04495Z", + "description": "", + "id": "extraltodeus", + "logo": "", + "members": [], + "name": "Extraltodeus", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Extraltodeus/ComfyUI-AutomaticCFG", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-03T00:42:00.115905Z", + "description": "TensorRT Node for ComfyUI\nThis node enables the best performance on NVIDIA RTX\u2122 Graphics Cards (GPUs) for Stable Diffusion by leveraging NVIDIA TensorRT.", + "downloads": 22380, + "github_stars": 628, + "icon": "", + "id": "comfyui_tensorrt", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-10T00:24:18.542184Z", + "dependencies": [ + "tensorrt>=10.0.1", + "onnx" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f47a7367-375b-4065-a33e-e2a3e8091682", + "node_id": "comfyui_tensorrt", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.8" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI_TensorRT", + "publisher": { + "createdAt": "2024-06-03T00:00:58.539896Z", + "description": "", + "id": "comfy", + "logo": "", + "members": [], + "name": "comfy", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/comfyanonymous/ComfyUI_TensorRT", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-10T08:22:06.613161Z", + "description": "Custom nodes that work with other services (mainly Google)", + "downloads": 1214, + "github_stars": 0, + "icon": "", + "id": "comfyui-opttools", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-10T08:22:10.159977Z", + "dependencies": [ + "google-auth", + "google-auth-oauthlib", + "google-api-python-client", + "gspread", + "argostranslate" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f911e0e0-3ff1-4340-b2f2-de76cbe67a54", + "node_id": "comfyui-opttools", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-optTools", + "publisher": { + "createdAt": "2025-01-10T01:59:14.460986Z", + "description": "", + "id": "oputo", + "logo": "", + "members": [], + "name": "oputo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/oputo/ComfyUI-optTools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-10T20:34:32.54192Z", + "description": "ComfyUI diffusers wrapper nodes for [a/HunyuanVideo](https://github.com/Tencent/HunyuanVideo)", + "downloads": 150068, + "github_stars": 2504, + "icon": "", + "id": "comfyui-hunyuanvideowrapper", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-09T10:27:23.945686Z", + "dependencies": [ + "accelerate >= 1.2.1", + "diffusers >= 0.31.0", + "transformers >= 4.49.0", + "jax >= 0.4.28", + "timm >= 1.0.15" + ], + "deprecated": false, + "downloadUrl": "", + "id": "894ae701-03d4-408b-98f7-c29875593c6e", + "node_id": "comfyui-hunyuanvideowrapper", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.8" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-HunyuanVideoWrapper", + "publisher": { + "createdAt": "2024-06-09T11:11:54.62154Z", + "description": "", + "id": "kijai", + "logo": "", + "members": [], + "name": "Kijai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-HunyuanVideoWrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-28T17:51:19.072578Z", + "description": "One Button Prompt has a prompt generation node for beginners who have problems writing a good prompt, or advanced users who want to get inspired. It generates an entire prompt from scratch. It is random, but controlled. You simply load up the script and press generate, and let it surprise you.", + "downloads": 36659, + "github_stars": 1000, + "icon": "", + "id": "onebuttonprompt", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-28T17:51:19.352192Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "62841bc0-c91b-4915-afcf-bd406941e205", + "node_id": "onebuttonprompt", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "OneButtonPrompt", + "publisher": { + "createdAt": "2024-05-28T17:38:51.162837Z", + "description": "", + "id": "airjen", + "logo": "", + "members": [], + "name": "AIrjen", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/AIrjen/OneButtonPrompt", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-15T00:47:17.61066Z", + "description": "Whether you're a casual user or a power user, iTools provides the quality-of-life improvements you need to make your ComfyUI experience more efficient and enjoyable.", + "downloads": 28261, + "github_stars": 165, + "icon": "", + "id": "comfyui-itools", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-08T14:43:36.056602Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "d8343601-7ebc-44c1-9e0f-921de1a3f513", + "node_id": "comfyui-itools", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.6.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-iTools", + "publisher": { + "createdAt": "2024-08-15T00:03:19.939048Z", + "description": "", + "id": "makadi", + "logo": "", + "members": [], + "name": "Makadi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MohammadAboulEla/ComfyUI-iTools", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-28T23:33:27.188701Z", + "description": "ComfyUI implementation of AuraSR", + "downloads": 9986, + "github_stars": 190, + "icon": "", + "id": "aurasr-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-04T10:58:27.076755Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "f2d66275-975e-46ca-bd34-fcd004b019e1", + "node_id": "aurasr-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "3.0.1" + }, + "license": "{\"file\": \"LICENSE.md\"}", + "name": "AuraSR-ComfyUI", + "publisher": { + "createdAt": "2024-06-28T23:09:27.335175Z", + "description": "", + "id": "greenlandisalie", + "logo": "", + "members": [], + "name": "GreenLandisaLie", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/GreenLandisaLie/AuraSR-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-01T02:44:09.382217Z", + "description": "[a/DreamO](https://github.com/bytedance/DreamO) ComfyUI native implementation.", + "downloads": 2249, + "github_stars": 158, + "icon": "", + "id": "dreamo", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-01T02:44:09.781064Z", + "dependencies": [ + "diffusers", + "transformers", + "sentencepiece", + "einops", + "protobuf", + "git+https://github.com/ToTheBeginning/facexlib.git" + ], + "deprecated": false, + "downloadUrl": "", + "id": "fa626bcc-8b82-4635-ba38-cc4dc6f21ad2", + "node_id": "dreamo", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-DreamO", + "publisher": { + "createdAt": "2025-06-01T02:35:35.310831Z", + "description": "", + "id": "yanzewu", + "logo": "", + "members": [], + "name": "Yanze Wu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ToTheBeginning/ComfyUI-DreamO", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-06T09:24:32.809396Z", + "description": "Wrapper nodes to use SUPIR upscaling process in ComfyUI", + "downloads": 115405, + "github_stars": 2024, + "icon": "", + "id": "comfyui-supir", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-07T09:18:01.933056Z", + "dependencies": [ + "transformers>=4.28.1", + "fsspec>=2023.4.0", + "kornia>=0.6.9", + "open-clip-torch>=2.24.0", + "Pillow>=9.4.0", + "pytorch-lightning>=2.2.1", + "omegaconf", + "accelerate" + ], + "deprecated": false, + "downloadUrl": "", + "id": "45dde114-dcdc-40f3-9cd5-154f93a920e0", + "node_id": "comfyui-supir", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI-SUPIR", + "publisher": { + "createdAt": "2024-06-09T11:11:54.62154Z", + "description": "", + "id": "kijai", + "logo": "", + "members": [], + "name": "Kijai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-SUPIR", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-19T07:35:39.288469Z", + "description": "ComfyUI nodes that support video generation by start and end frames", + "downloads": 21225, + "github_stars": 362, + "icon": "", + "id": "ComfyUI-WanVideoStartEndFrames", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-22T09:25:47.667941Z", + "dependencies": [ + "accelerate >= 1.2.1", + "diffusers >= 0.32.0", + "ftfy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d519744f-4da3-429a-9645-6c2b5c1755da", + "node_id": "ComfyUI-WanVideoStartEndFrames", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-WanVideoStartEndFrames", + "publisher": { + "createdAt": "2025-03-19T07:19:37.647203Z", + "description": "", + "id": "raindrop-313", + "logo": "", + "members": [], + "name": "raindrop-313", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/raindrop313/ComfyUI-WanVideoStartEndFrames", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-17T07:37:03.125848Z", + "description": "ComfyUI-SparkTTS is a custom ComfyUI node implementation of SparkTTS, an advanced text-to-speech system that harnesses the power of large language models (LLMs) to generate highly accurate and natural-sounding speech.", + "downloads": 4687, + "github_stars": 106, + "icon": "", + "id": "Comfyui-Spark-TTS", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-15T19:28:59.734295Z", + "dependencies": [ + "einops>=0.8.1", + "einx>=0.3.0", + "omegaconf>=2.3.0", + "soundfile>=0.12.1", + "torch>=2.0.0", + "transformers>=4.30.0", + "huggingface_hub>=0.19.0", + "torchaudio>=0.13.0", + "librosa>=0.10.0", + "sounddevice>=0.4.6", + "scipy>=1.10.0", + "numpy>=1.24.0", + "soxr>=0.3.5" + ], + "deprecated": false, + "downloadUrl": "", + "id": "fbe5afdd-5a79-46f5-9a3b-9b2490ecb137", + "node_id": "Comfyui-Spark-TTS", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-SparkTTS", + "publisher": { + "createdAt": "2024-07-01T23:11:45.570672Z", + "description": "", + "id": "ailab", + "logo": "", + "members": [], + "name": "AILab", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/1038lab/ComfyUI-SparkTTS", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-11T06:28:53.732648Z", + "description": "Simple use of [a/Mflux](https://github.com/filipstrand/mflux) in ComfyUI, suitable for users who are not familiar with terminal usage.\nNOTE: A MLX port of FLUX based on the Huggingface Diffusers implementation.", + "downloads": 3309, + "github_stars": 100, + "icon": "", + "id": "mflux-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-05T08:42:37.872247Z", + "dependencies": [ + "mflux==0.4.1" + ], + "deprecated": false, + "downloadUrl": "", + "id": "f9967e52-061c-4a73-b4e4-b71259a22667", + "node_id": "mflux-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Mflux-ComfyUI", + "publisher": { + "createdAt": "2024-10-10T08:27:31.247461Z", + "description": "", + "id": "raysers", + "logo": "", + "members": [], + "name": "raysers", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/raysers/Mflux-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-04T11:40:38.53018Z", + "description": "This ComfyUI custom node, named ControlNet Auxiliar, is designed to provide auxiliary functionalities for image processing tasks. It is particularly useful for various image manipulation and enhancement operations. The node is integrated with functionalities for converting images between different formats and applying various image processing techniques.", + "downloads": 21630, + "github_stars": 15, + "icon": "", + "id": "comfyui-controlnetaux", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-04T12:06:28.382895Z", + "dependencies": [ + "timm", + "controlnet-aux==0.0.7", + "mediapipe" + ], + "deprecated": false, + "downloadUrl": "", + "id": "b46d6864-257d-4168-8f26-6bf150346320", + "node_id": "comfyui-controlnetaux", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "LICENSE", + "name": "ComfyUI-ControlnetAux", + "publisher": { + "createdAt": "2024-06-04T11:22:35.344933Z", + "description": "", + "id": "cvalentin", + "logo": "", + "members": [], + "name": "Cornea Valentin", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/madtunebk/ComfyUI-ControlnetAux", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-13T17:25:54.972118Z", + "description": "This node can easily switch between models and prompts by saving presets.", + "downloads": 1702, + "github_stars": 0, + "icon": "", + "id": "comfyui_mittimi_load_presetlite", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-30T05:47:27.164893Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ed87a397-2aef-4330-90b9-a5cf99bf5792", + "node_id": "comfyui_mittimi_load_presetlite", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.1" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyUI_mittimiLoadPresetLite", + "publisher": { + "createdAt": "2024-08-25T10:31:13.036141Z", + "description": "", + "id": "mittimi", + "logo": "", + "members": [], + "name": "mittimi", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mittimi/ComfyUI_mittimiLoadPresetLite", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-03T11:33:51.038831Z", + "description": "This project adapts the SAM2 to incorporate functionalities from [a/comfyui_segment_anything](https://github.com/storyicon/comfyui_segment_anything). Many thanks to continue-revolution for their foundational work.", + "downloads": 38867, + "github_stars": 194, + "icon": "", + "id": "comfyui-sam2", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-13T12:38:32.134853Z", + "dependencies": [ + "timm", + "addict", + "yapf", + "torch>=2.3.1", + "torchvision>=0.18.1", + "numpy>=1.24.4", + "tqdm>=4.66.1", + "hydra-core>=1.3.2", + "iopath>=0.1.10", + "pillow>=9.4.0", + "matplotlib>=3.9.1", + "opencv-python>=4.7.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "48032a86-cc9c-4315-9f61-a28723898066", + "node_id": "comfyui-sam2", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-SAM2", + "publisher": { + "createdAt": "2024-07-27T13:38:09.01838Z", + "description": "", + "id": "faych", + "logo": "", + "members": [], + "name": "Faych Chan", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/neverbiasu/ComfyUI-SAM2", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-08T12:25:32.617806Z", + "description": "Simple wan-video wrapper.", + "downloads": 11935, + "github_stars": 13, + "icon": "", + "id": "flow2-wan-video", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-28T15:17:56.234803Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "f9bf1455-9495-4f30-9f4c-2ce6abc54142", + "node_id": "flow2-wan-video", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "flow2-wan-video", + "publisher": { + "createdAt": "2025-03-26T08:53:42.646711Z", + "description": "", + "id": "flow2", + "logo": "", + "members": [], + "name": "Flow2", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Flow-two/flow2-wan-video", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-25T00:55:45.94229Z", + "description": " you can using stable_audio in comfyUI", + "downloads": 2233, + "github_stars": 30, + "icon": "", + "id": "comfyui_stableaudio_open", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-25T00:55:46.208327Z", + "dependencies": [ + "stable_audio_tools" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d3ad6308-fff6-4061-9c39-4acd73926a0b", + "node_id": "comfyui_stableaudio_open", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_StableAudio_Open", + "publisher": { + "createdAt": "2024-06-24T08:32:00.788126Z", + "description": "", + "id": "smthemx", + "logo": "", + "members": [], + "name": "smthemx", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/smthemex/ComfyUI_StableAudio_Open", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-12T15:18:16.982012Z", + "description": "Nodes:Live Prompt Interpolation, Prompt Stack Manager, Dynamic Animated Weights, Florence Prompt Travel Helper, Mask Sequence Helper, Prompt Travel Helper. This extension provides various frame and mask sequence manipulation tools for animation workflows.", + "downloads": 2844, + "github_stars": 23, + "icon": "\ud83d\udcab", + "id": "comfyui-framefx", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-12T15:18:20.729814Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "635bf0ab-36c7-4ebe-a3cc-f5f8fdc7016e", + "node_id": "comfyui-framefx", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-FrameFX", + "publisher": { + "createdAt": "2024-07-12T13:46:28.299055Z", + "description": "", + "id": "mgfxer", + "logo": "", + "members": [], + "name": "mgfxer", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mgfxer/ComfyUI-FrameFX", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-24T19:59:55.449232Z", + "description": "Freely adjust resolution and aspect ratio, maintain pixel count of StableDiffusion model, or hook it up to upscaling nodes to get that 5k 16:10 wallpaper in just few clicks.", + "downloads": 6404, + "github_stars": 14, + "icon": "", + "id": "comfyui-yaresolutionselector", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-24T19:59:55.73425Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "07740c8e-0b7c-4319-94d5-e92ee0e20960", + "node_id": "comfyui-yaresolutionselector", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.2.0" + }, + "license": "LICENSE", + "name": "yaResolution Selector", + "publisher": { + "createdAt": "2024-05-24T18:16:39.923677Z", + "description": "", + "id": "tropfchen", + "logo": "", + "members": [], + "name": "Tropfchen", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Tropfchen/ComfyUI-yaResolutionSelector", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-16T08:33:09.37996Z", + "description": "This extension contains a custom node for ComfyUI. The node, called 'Bounding Box Crop', is designed to compute the top-left coordinates of a cropped bounding box based on input coordinates and dimensions of the final cropped image. It does so computing the center of the cropping area and then computing where the top-left coordinates would be.", + "downloads": 6334, + "github_stars": 28, + "icon": "", + "id": "comfyui-openpose", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-16T08:33:11.11223Z", + "dependencies": [ + "torch", + "opencv-python", + "numpy", + "huggingface_hub", + "torchvision" + ], + "deprecated": false, + "downloadUrl": "", + "id": "641ce483-75fc-4cf9-a43a-ab4932e60351", + "node_id": "comfyui-openpose", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-OpenPose", + "publisher": { + "createdAt": "2024-07-15T12:00:41.934469Z", + "description": "", + "id": "alezonta", + "logo": "", + "members": [], + "name": "Alessandro Zonta", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alessandrozonta/ComfyUI-OpenPose", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-24T08:55:16.009942Z", + "description": "NODES: Auto-LLM-Text-Vision, Auto-LLM-Text, Auto-LLM-Vision", + "downloads": 1906, + "github_stars": 24, + "icon": "https://www.decade.tw/wp-content/uploads/2021/09/cropped-DECADE512-150x150.png", + "id": "comfyui-decadetw-auto-prompt-llm", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-28T19:26:12.204768Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "ac1cec52-279f-4b2e-bb7b-8a51382eebb2", + "node_id": "comfyui-decadetw-auto-prompt-llm", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.20240827.5" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI-decadetw-auto-prompt-llm", + "publisher": { + "createdAt": "2024-08-24T07:56:59.30717Z", + "description": "", + "id": "xxlinxx", + "logo": "", + "members": [], + "name": "xxlinxx", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/xlinx/ComfyUI-decadetw-auto-prompt-llm", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T08:36:55.885976Z", + "description": "Custom nodes for LTX-Video support in ComfyUI - registry fix - forked by Mattabyte", + "downloads": 15253, + "github_stars": 0, + "icon": "", + "id": "comfyui-ltxvideo-registry-mattabyte", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-12T08:36:56.302963Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4161ef62-2eac-42a0-a6ac-3b4e6bdd9c8a", + "node_id": "comfyui-ltxvideo-registry-mattabyte", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-LTXVideo-Registry_Mattabyte", + "publisher": { + "createdAt": "2025-02-07T19:07:08.91332Z", + "description": "", + "id": "mattabyte", + "logo": "", + "members": [], + "name": "MattaByte", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Mattabyte/ComfyUI-LTXVideo-Registry_Mattabyte", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-04T19:14:03.966977Z", + "description": "Animation via tick. Parameter manipulation with wave generator. Unary and Binary math support. Value convert int/float/bool, VectorN and Image, Mask types. Shape mask generator. Stack images, do channel ops, split, merge and randomize arrays and batches. Load images & video from anywhere. Dynamic bus routing. Save output anywhere! Flatten, crop, transform; check colorblindness or linear interpolate values.", + "downloads": 6774, + "github_stars": 363, + "icon": "https://raw.githubusercontent.com/Amorano/Jovimetrix-examples/refs/heads/master/res/logo-jvmx.png", + "id": "jovimetrix", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-13T18:17:01.85311Z", + "dependencies": [ + "aenum", + "git+https://github.com/cozy-comfyui/cozy_comfyui@main#egg=cozy_comfyui", + "matplotlib", + "numpy>=1.25.0", + "opencv-contrib-python", + "Pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "604bca09-8822-495d-bd02-b734a4628289", + "node_id": "jovimetrix", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "version": "2.1.18" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Jovimetrix", + "publisher": { + "createdAt": "2024-05-17T04:16:25.445017Z", + "description": "", + "id": "amorano", + "logo": "", + "members": [], + "name": "Joviex", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Amorano/Jovimetrix", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-03T15:06:35.313744Z", + "description": "Execution Time Analysis, Reroute Enhancement, Node collection for developers.", + "downloads": 9474, + "github_stars": 140, + "icon": "", + "id": "comfyui-dev-utils", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-15T02:07:19.12275Z", + "dependencies": [ + "aiohttp-sse" + ], + "deprecated": false, + "downloadUrl": "", + "id": "60f592c6-57a2-4f18-8292-80617cf3be2f", + "node_id": "comfyui-dev-utils", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.6.0" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI-Dev-Utils", + "publisher": { + "createdAt": "2024-06-03T14:12:45.117548Z", + "description": "", + "id": "ty0x2333", + "logo": "", + "members": [], + "name": "ty0x2333", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/ty0x2333/ComfyUI-Dev-Utils", + "status": "", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-06T09:09:50.019748Z", + "description": "Nodes for [a/LivePortrait](https://github.com/KwaiVGI/LivePortrait)", + "downloads": 59006, + "github_stars": 2017, + "icon": "", + "id": "comfyui-liveportraitkj", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-27T09:30:17.915122Z", + "dependencies": [ + "pyyaml", + "numpy", + "opencv-python", + "rich" + ], + "deprecated": false, + "downloadUrl": "", + "id": "aa0662bb-04e3-4b14-8f98-5188971974c8", + "node_id": "comfyui-liveportraitkj", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "ComfyUI-LivePortraitKJ", + "publisher": { + "createdAt": "2024-06-09T11:11:54.62154Z", + "description": "", + "id": "kijai", + "logo": "", + "members": [], + "name": "Kijai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-LivePortraitKJ", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-27T10:44:30.845108Z", + "description": "LowVRAM Animation : txt2video - img2video - video2video , Frame by Frame , compatible with LowVRAM GPUs - Included : Prompt Switch, Checkpoint Switch, Cache, Number Count by Frame, Ksampler txt2img & img2img ...", + "downloads": 7278, + "github_stars": 103, + "icon": "https://chaosaiart.de/nodes/main_img/chaosaiart_node.png", + "id": "chaosaiart-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-31T12:25:31.571448Z", + "dependencies": [ + "opencv-python", + "tqdm" + ], + "deprecated": false, + "downloadUrl": "", + "id": "217ec502-0004-46b0-af7f-01add4ad2829", + "node_id": "chaosaiart-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.4.1" + }, + "license": "{}", + "name": "Chaosaiart-Nodes", + "publisher": { + "createdAt": "2024-05-27T09:21:56.493764Z", + "description": "", + "id": "chaosaiart", + "logo": "", + "members": [], + "name": "Chaosaiart", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chaosaiart/Chaosaiart-Nodes", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-05T04:50:40.0355Z", + "description": "A set of custom nodes that pause a workflow while you select images, add masks, or edit text.", + "downloads": 25225, + "github_stars": 70, + "icon": "", + "id": "cg-image-filter", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-23T06:11:35.541482Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "bd017f9d-3d16-4a77-ad3b-e9ed32f697a7", + "node_id": "cg-image-filter", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.6.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "cg-image-filter", + "publisher": { + "createdAt": "2024-05-20T00:41:38.315381Z", + "description": "", + "id": "chrisgoringe", + "logo": "", + "members": [], + "name": "ChrisG", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/chrisgoringe/cg-image-filter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-19T23:11:59.142169Z", + "description": "Nodes for Google Gemini API, focusing on backward compatibility and stability within ComfyUI.", + "downloads": 6752, + "github_stars": 12, + "icon": "https://raw.githubusercontent.com/Visionatrix/VixFlowsDocs/main/screenshots/logo_org_800x800.png", + "id": "comfyui-gemini", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-26T14:45:36.77554Z", + "dependencies": [ + "google-generativeai>=0.8.5" + ], + "deprecated": false, + "downloadUrl": "", + "id": "4f256c9f-fca3-44a6-b351-93857402f8de", + "node_id": "comfyui-gemini", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.1.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Gemini", + "publisher": { + "createdAt": "2024-10-19T21:31:38.674014Z", + "description": "", + "id": "visionatrix", + "logo": "", + "members": [], + "name": "Visionatrix", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Visionatrix/ComfyUI-Gemini", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-24T16:10:05.502456Z", + "description": "InpaintEasy is a set of optimized local repainting (Inpaint) nodes that provide a simpler and more powerful local repainting workflow. It makes local repainting work easier and more efficient with intelligent cropping and merging functions.", + "downloads": 16397, + "github_stars": 74, + "icon": "", + "id": "comfyui-inpainteasy", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-24T16:10:07.215674Z", + "dependencies": [ + "numpy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "601bc916-4d77-4df5-80ec-49d0902a783c", + "node_id": "comfyui-inpainteasy", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-InpaintEasy", + "publisher": { + "createdAt": "2024-09-29T10:55:36.930737Z", + "description": "", + "id": "cychenyue", + "logo": "", + "members": [], + "name": "cychenyue", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/CY-CHENYUE/ComfyUI-InpaintEasy", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-07T06:11:07.108605Z", + "description": "gguf node for comfyui", + "downloads": 137892, + "github_stars": 80, + "icon": "https://raw.githubusercontent.com/calcuis/logo/master/logo.svg", + "id": "gguf", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-20T20:46:40.752317Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "6111b14e-3ccc-4b3e-94b0-903427a7e148", + "node_id": "gguf", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "2.2.9" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "gguf", + "publisher": { + "createdAt": "2025-01-07T05:33:50.316466Z", + "description": "", + "id": "gguf", + "logo": "", + "members": [], + "name": "gguf", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/calcuis/gguf", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-10T20:47:32.796667Z", + "description": "Nodes to generate audio for vide with: [a/https://github.com/hkchengrex/MMAudio](https://github.com/hkchengrex/MMAudio)", + "downloads": 24957, + "github_stars": 383, + "icon": "", + "id": "comfyui-mmaudio", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-12T17:40:01.689996Z", + "dependencies": [ + "accelerate>=0.33.0", + "numpy<=1.26.4", + "transformers>=4.44.0", + "diffusers>=0.25.0", + "ftfy>=6.1.1", + "opencv-python>=4.7.0.68", + "einops>=0.7.0", + "bitsandbytes>=0.43.3", + "prodigyopt>=1.0", + "lion-pytorch>=0.0.6", + "safetensors>=0.4.2", + "altair>=4.2.2", + "toml>=0.10.2", + "voluptuous>=0.13.1", + "huggingface-hub>=0.24.5", + "# for Image utils", + "imagesize>=1.4.1", + "rich>=13.7.0", + "came_pytorch", + "matplotlib", + "# for T5XXL tokenizer (SD3/FLUX)", + "sentencepiece>=0.2.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "ce3250fd-7079-4ae6-b64e-67fcb92a0dd6", + "node_id": "comfyui-mmaudio", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-MMAudio", + "publisher": { + "createdAt": "2024-06-09T11:11:54.62154Z", + "description": "", + "id": "kijai", + "logo": "", + "members": [], + "name": "Kijai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-MMAudio", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-04-20T07:25:37.212528Z", + "description": "Advanced LoRA merging node for ComfyUI (additive, average, sequential)", + "downloads": 1465, + "github_stars": 2, + "icon": "", + "id": "comfyui-flux-lora-merger", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-20T07:25:37.611913Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "fcfa988e-dadc-4793-874d-29d4529d1a6c", + "node_id": "comfyui-flux-lora-merger", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE.txt\"}", + "name": "Flux LoRA Merger", + "publisher": { + "createdAt": "2024-07-05T00:13:02.855642Z", + "description": "", + "id": "tritant", + "logo": "", + "members": [], + "name": "jice", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tritant/ComfyUI_Flux_Lora_Merger", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-23T06:37:55.722158Z", + "description": "A ComfyUI extension that provides nodes for memory cleanup, including VRAM and RAM cleanup functions to optimize ComfyUI performance during long running workflows.", + "downloads": 15300, + "github_stars": 143, + "icon": "", + "id": "comfyui_memory_cleanup", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-09T16:45:32.681393Z", + "dependencies": [ + "psutil" + ], + "deprecated": false, + "downloadUrl": "", + "id": "8eb36ca2-91f4-4b99-882c-c801d78017c6", + "node_id": "comfyui_memory_cleanup", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{}", + "name": "Comfyui-Memory_Cleanup", + "publisher": { + "createdAt": "2024-10-09T09:00:56.560993Z", + "description": "", + "id": "laogou666", + "logo": "", + "members": [], + "name": "LAOGOU-666", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/LAOGOU-666/Comfyui-Memory_Cleanup", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-18T22:52:02.880879Z", + "description": "Scheduled prompts, scheduled float/int values and wave function nodes for animations and utility. compatable with [a/framesync](https://www.framesync.xyz/) and [a/keyframe-string-generator](https://www.chigozie.co.uk/keyframe-string-generator/) for audio synced animations in Comfyui.", + "downloads": 59950, + "github_stars": 448, + "icon": "", + "id": "comfyui_fizznodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-28T02:42:30.076931Z", + "dependencies": [ + "pandas", + "numexpr" + ], + "deprecated": false, + "downloadUrl": "", + "id": "77c99af9-f349-4f1c-8063-bd27c10b4009", + "node_id": "comfyui_fizznodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENCE.txt\"}", + "name": "ComfyUI_FizzNodes", + "publisher": { + "createdAt": "2024-05-17T16:43:22.898144Z", + "description": "", + "id": "fizzledorf", + "logo": "", + "members": [], + "name": "FizzleDorf", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/FizzleDorf/ComfyUI_FizzNodes", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-17T01:27:18.841069Z", + "description": "Nodes: ModelMergeByPreset. Merge checkpoint models by preset", + "downloads": 3176, + "github_stars": 33, + "icon": "", + "id": "comfyui_preset_merger", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-17T01:27:19.116938Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "27f144db-c8f9-4cca-be5a-2b0ff675c241", + "node_id": "comfyui_preset_merger", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI_Preset_Merger", + "publisher": { + "createdAt": "2024-06-17T00:47:38.837695Z", + "description": "", + "id": "was", + "logo": "", + "members": [], + "name": "WAS", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/WASasquatch/ComfyUI_Preset_Merger", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-03T03:59:01.892411Z", + "description": "ComfyUI custom nodes to apply various image processing techniques.", + "downloads": 2924, + "github_stars": 23, + "icon": "", + "id": "comfyui_imageprocessing", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-03T03:59:03.346389Z", + "dependencies": [ + "torch", + "kornia" + ], + "deprecated": false, + "downloadUrl": "", + "id": "a485e2a2-be9c-4214-9df6-1b2581557993", + "node_id": "comfyui_imageprocessing", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"text\": \"GNU General Public License v3.0\"}", + "name": "ComfyUI_ImageProcessing", + "publisher": { + "createdAt": "2024-06-23T11:33:12.747281Z", + "description": "", + "id": "bvhari", + "logo": "", + "members": [], + "name": "BVH", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/bvhari/ComfyUI_ImageProcessing", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-05T20:08:53.704023Z", + "description": "Basic Python functions for manipulating data that every programmer is used to, lightweight with no additional dependencies.\n\nSupported data types:\n- ComfyUI native: BOOLEAN, FLOAT, INT, STRING, and data lists\n- Python types as custom data types: DICT, LIST, SET, DATETIME, TIMEDELTA\n\nFeature categories:\n- Boolean logic operations\n- Type casting/conversion between all supported data types\n- Comparison operations\n- Data container manipulation\n- Flow control (conditionals, branching, execution order)\n- Mathematical operations\n- Mathematical formula node in a safe implementation\n- String manipulation\n- File system path handling, including STRING, IMAGE and MASK load and save\n- SET operations\n- time and date handling", + "downloads": 6727, + "github_stars": 10, + "icon": "", + "id": "basic_data_handling", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-17T19:29:38.231072Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "2d68b5fb-47b6-446c-9da4-aac9459d781a", + "node_id": "basic_data_handling", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.5.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Basic data handling", + "publisher": { + "createdAt": "2025-05-04T14:33:59.49052Z", + "description": "", + "id": "stablellama", + "logo": "", + "members": [], + "name": "StableLlama", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/StableLlama/ComfyUI-basic_data_handling", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-22T19:11:19.170548Z", + "description": "A collection of nodes for working with audio data.", + "downloads": 1980, + "github_stars": 10, + "icon": "", + "id": "comfyui-audio-processing", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-22T19:11:23.409071Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "09b369ee-549c-4584-acb2-2da885372536", + "node_id": "comfyui-audio-processing", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-audio-processing", + "publisher": { + "createdAt": "2024-06-26T17:10:14.317571Z", + "description": "", + "id": "rhdunn", + "logo": "", + "members": [], + "name": "Reece Dunn", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/rhdunn/comfyui-audio-processing", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-24T10:18:59.01509Z", + "description": "Quick connections, Circuit board connections", + "downloads": 7348, + "github_stars": 307, + "icon": "", + "id": "quick-connections", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-15T11:50:48.676164Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "d118208e-613c-431f-af56-a6ccf0fa5252", + "node_id": "quick-connections", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.18" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "quick-connections", + "publisher": { + "createdAt": "2024-08-24T05:59:03.289234Z", + "description": "", + "id": "niknah", + "logo": "", + "members": [], + "name": "niknah", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/niknah/quick-connections", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-20T20:59:34.99985Z", + "description": "Photoshop-like layered canvas editor to your ComfyUI workflow. This node is perfect for complex compositing, inpainting, and outpainting, featuring multi-layer support, masking, blend modes, and precise transformations. Includes optional AI-powered background removal for streamlined image editing.", + "downloads": 853, + "github_stars": 87, + "icon": "", + "id": "layerforge", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-04T05:32:41.534918Z", + "dependencies": [ + "torch", + "torchvision", + "transformers", + "aiohttp", + "numpy", + "tqdm", + "Pillow" + ], + "deprecated": false, + "downloadUrl": "", + "id": "25fa0b2c-e0fc-4e0a-b515-40eb8becb707", + "node_id": "layerforge", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.3.7" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Comfyui-LayerForge", + "publisher": { + "createdAt": "2025-06-20T20:38:41.021408Z", + "description": "", + "id": "azornes", + "logo": "", + "members": [], + "name": "Azornes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Azornes/Comfyui-LayerForge", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-06T21:18:25.526784Z", + "description": "ComfyUI extension for Ollama, Gemini, OpenAI, Claude, and Qwen with video and audio support", + "downloads": 23056, + "github_stars": 108, + "icon": "https://raw.githubusercontent.com/al-swaiti/ComfyUI-OllamaGemini/refs/heads/main/ollamagemini.png", + "id": "comfyui-ollamagemini", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-14T09:08:47.629088Z", + "dependencies": [ + "google-generativeai", + "google-genai", + "requests>=2.31.0", + "openai>=1.3.0", + "anthropic>=0.8.0", + "dashscope>=1.13.6", + "vtracer>=0.6.0", + "numpy>=1.24.0", + "Pillow>=10.0.0", + "scipy>=1.10.0", + "opencv-python>=4.6.0", + "transformers>=4.30.0", + "torch", + "torchaudio" + ], + "deprecated": false, + "downloadUrl": "", + "id": "771f90c2-2ba8-4dae-b9a4-d36a58403e9a", + "node_id": "comfyui-ollamagemini", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.1.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-OllamaGemini", + "publisher": { + "createdAt": "2024-06-23T07:15:12.623492Z", + "description": "", + "id": "abdallaalsw80", + "logo": "", + "members": [], + "name": "AbdallahAlswaiti", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/al-swaiti/ComfyUI-OllamaGemini", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-23T04:07:54.026923Z", + "description": "This is a plugin for displaying documentation for each comfyui node. ", + "downloads": 3841, + "github_stars": 238, + "icon": "", + "id": "comfyui-nodes-docs", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-25T10:03:49.170582Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "73044240-e10f-4df6-955b-9cec5db6f522", + "node_id": "comfyui-nodes-docs", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "LICENSE", + "name": "comfyui-nodes-docs", + "publisher": { + "createdAt": "2024-05-23T03:39:31.137229Z", + "description": "", + "id": "cavinhuang", + "logo": "", + "members": [], + "name": "comfyui-nodes-docs", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/CavinHuang/comfyui-nodes-docs", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-26T16:13:24.703344Z", + "description": "Make ComfyUI generates 3D assets as good & convenient as it generates image/video!", + "downloads": 53000, + "github_stars": 3244, + "icon": "", + "id": "ComfyUI-3D-Pack", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-24T18:40:07.588389Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "41bc932e-ae1a-4fff-baea-698f7cb633e2", + "node_id": "ComfyUI-3D-Pack", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-3D-Pack", + "publisher": { + "createdAt": "2024-05-24T16:14:21.349203Z", + "description": "", + "id": "mr-for-example", + "logo": "", + "members": [], + "name": "Mr. For Example", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MrForExample/ComfyUI-3D-Pack", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-16T22:22:48.852315Z", + "description": "A flexible and customizable prompt generator for generating detailed and creative prompts for image generation models for ComfyUI", + "downloads": 16945, + "github_stars": 214, + "icon": "", + "id": "flux-prompt-generator", + "latest_version": { + "changelog": "", + "createdAt": "2025-04-22T02:21:11.235916Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c17ce616-2f07-4bce-a39c-3193488f8f4b", + "node_id": "flux-prompt-generator", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Flux-Prompt-Generator", + "publisher": { + "createdAt": "2024-08-16T22:04:57.714002Z", + "description": "", + "id": "fairy-root", + "logo": "", + "members": [], + "name": "Fairy Root", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fairy-root/Flux-Prompt-Generator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-16T17:48:16.241363Z", + "description": "Removes background using Transparent Background", + "downloads": 2405, + "github_stars": 2, + "icon": "", + "id": "transparent-background-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-17T15:59:56.796837Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "23da2657-5863-434d-939e-19a274844893", + "node_id": "transparent-background-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "LICENSE", + "name": "transparent-background-comfyui", + "publisher": { + "createdAt": "2024-07-16T17:02:39.182622Z", + "description": "", + "id": "ducmanh", + "logo": "", + "members": [], + "name": "Duc Manh", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/mikebilly/Transparent-background-comfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-25T03:58:27.583877Z", + "description": "Simple Notes", + "downloads": 117, + "github_stars": 1, + "icon": "", + "id": "comfyui-notes-manager", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-25T03:58:27.969567Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "4000abcb-025f-4725-a0f6-d4ca9ecb8c0b", + "node_id": "comfyui-notes-manager", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{}", + "name": "ComfyUI-Notes-manager", + "publisher": { + "createdAt": "2024-08-14T05:34:16.977397Z", + "description": "", + "id": "ogrelemonsoup", + "logo": "", + "members": [], + "name": "OgreLemonSoup", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/OgreLemonSoup/ComfyUI-Notes-manager", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-27T18:11:37.010788Z", + "description": "Custom ComfyUI Nodes for interacting with [a/Ollama](https://ollama.com/) using the [a/ollama python client](https://github.com/ollama/ollama-python).\nIntegrate the power of LLMs into CompfyUI workflows easily.", + "downloads": 94495, + "github_stars": 590, + "icon": "", + "id": "comfyui-ollama", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-14T20:19:39.592688Z", + "dependencies": [ + "ollama" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e1d04aa8-a0f7-4cb0-b46f-e0623994afe0", + "node_id": "comfyui-ollama", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "2.0.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-ollama", + "publisher": { + "createdAt": "2024-06-25T20:33:26.18372Z", + "description": "", + "id": "stavsap", + "logo": "", + "members": [], + "name": "Stav Sapir", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/stavsap/comfyui-ollama", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-29T01:03:29.725406Z", + "description": "Bringing Old Photos Back to Life in ComfyUI. Enhance old or low-quality images in ComfyUI. Optional features include automatic scratch removal and face enhancement. Requires installing a number of small checkpoints and VAEs. Based on microsoft/Bringing-Old-Photos-Back-to-Life.", + "downloads": 22447, + "github_stars": 470, + "icon": "", + "id": "bringing-old-photos-back-to-life", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-12T06:57:00.928541Z", + "dependencies": [ + "cmake", + "dlib==19.24.1", + "easydict", + "matplotlib", + "opencv-python", + "scikit-image", + "scipy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "81e9bccb-8e0c-4cc1-ab1b-cb797ad53269", + "node_id": "bringing-old-photos-back-to-life", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.0" + }, + "license": "LICENSE", + "name": "ComfyUI-Bringing-Old-Photos-Back-to-Life", + "publisher": { + "createdAt": "2024-07-28T19:15:38.925337Z", + "description": "", + "id": "cdb-boop", + "logo": "", + "members": [], + "name": "cdb-boop", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cdb-boop/ComfyUI-Bringing-Old-Photos-Back-to-Life", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-03-12T05:57:58.921629Z", + "description": "ComfyUI Nodes for Remote VAE Decoding.", + "downloads": 3686, + "github_stars": 2, + "icon": "https://raw.githubusercontent.com/Visionatrix/VixFlowsDocs/main/screenshots/logo_org_800x800.png", + "id": "comfyui-remotevae", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-12T05:57:59.334192Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "53d6fba6-c3be-4500-b199-8daf95c89c58", + "node_id": "comfyui-remotevae", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-RemoteVAE", + "publisher": { + "createdAt": "2024-10-19T21:31:38.674014Z", + "description": "", + "id": "visionatrix", + "logo": "", + "members": [], + "name": "Visionatrix", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Visionatrix/ComfyUI-RemoteVAE", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-05T07:53:21.981367Z", + "description": "Optimized wrapper nodes for MimicMotion: [a/https://github.com/tencent/MimicMotion](https://github.com/tencent/MimicMotion)", + "downloads": 23966, + "github_stars": 492, + "icon": "", + "id": "comfyui-mimicmotionwrapper", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-12T17:35:02.503327Z", + "dependencies": [ + "diffusers>=0.27.0", + "transformers>=4.32.1" + ], + "deprecated": false, + "downloadUrl": "", + "id": "7739debc-6451-4080-9548-cd3de48d90dd", + "node_id": "comfyui-mimicmotionwrapper", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"text\": \"Apache License 2.0\"}", + "name": "ComfyUI-MimicMotionWrapper", + "publisher": { + "createdAt": "2024-06-09T11:11:54.62154Z", + "description": "", + "id": "kijai", + "logo": "", + "members": [], + "name": "Kijai", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kijai/ComfyUI-MimicMotionWrapper", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-11-22T12:55:53.489279Z", + "description": "Image processing tool for ComfyUI.", + "downloads": 16465, + "github_stars": 8, + "icon": "", + "id": "comfyui-hakuimg", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-04T03:31:53.501651Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "e9e91687-2c2e-4b23-b711-fb64a1082950", + "node_id": "comfyui-hakuimg", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.6" + }, + "license": "{\"text\": \"Apache-2.0 license \"}", + "name": "ComfyUI-HakuImg", + "publisher": { + "createdAt": "2024-06-29T02:56:17.137114Z", + "description": "", + "id": "licyk", + "logo": "", + "members": [], + "name": "licyk", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/licyk/ComfyUI-HakuImg", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-25T10:29:53.319626Z", + "description": "Provides nodes and server API extensions geared towards using ComfyUI as a backend for external tools.", + "downloads": 64298, + "github_stars": 520, + "icon": "", + "id": "comfyui-tooling-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-15T10:33:13.446897Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "e790ea9c-2330-4096-8701-8345251c80d0", + "node_id": "comfyui-tooling-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "2.0.3" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-tooling-nodes", + "publisher": { + "createdAt": "2024-05-25T09:27:54.562508Z", + "description": "", + "id": "acly", + "logo": "", + "members": [], + "name": "Acly", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Acly/comfyui-tooling-nodes", + "status": "", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-22T11:08:29.252862Z", + "description": "Image resampling, color grading, and mask-crop inpainting.", + "downloads": 1958, + "github_stars": 4, + "icon": "", + "id": "comfyui-sips", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-23T01:18:16.013599Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "3465d49f-6e83-45ea-8a9b-870d390513b3", + "node_id": "comfyui-sips", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Some Image Processing Stuff for ComfyUI", + "publisher": { + "createdAt": "2024-08-22T06:32:37.547394Z", + "description": "", + "id": "wmpmiles", + "logo": "", + "members": [], + "name": "William Miles", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wmpmiles/comfyui-some-image-processing-stuff", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-05T00:33:48.69113Z", + "description": "Generate random prompts easily.", + "downloads": 6819, + "github_stars": 59, + "icon": "", + "id": "comfyui_creaprompt", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-18T20:48:05.982441Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "9afa37cd-30a1-41b3-86e8-5c6da9e3ae12", + "node_id": "comfyui_creaprompt", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.6.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_CreaPrompt", + "publisher": { + "createdAt": "2024-07-05T00:13:02.855642Z", + "description": "", + "id": "tritant", + "logo": "", + "members": [], + "name": "jice", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/tritant/ComfyUI_CreaPrompt", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-10T00:48:27.459508Z", + "description": "Nodes: BilboX's PromptGeek Photo Prompt. This provides a convenient way to compose photorealistic prompts into ComfyUI. Post-Processing: adds various post processing effects. Bonus: Option to show a distant server shutdown menu.", + "downloads": 14836, + "github_stars": 132, + "icon": "", + "id": "bilbox-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-13T01:46:45.778847Z", + "dependencies": [ + "colour-science>=0.4.3", + "numpy>=1.19.0", + "imageio>=2.31.0", + "opencv-python>=4.8.1.78" + ], + "deprecated": false, + "downloadUrl": "", + "id": "2ce665e2-5db1-46d2-bc87-8469635f5e45", + "node_id": "bilbox-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "bilbox-comfyui", + "publisher": { + "createdAt": "2024-09-10T00:33:36.732877Z", + "description": "", + "id": "bilbox", + "logo": "", + "members": [], + "name": "BilboX", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/syllebra/bilbox-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-01-11T10:13:57.350836Z", + "description": "The implementation for PuLID-Flux, support use with TeaCache and WaveSpeed, no model pollution.", + "downloads": 171260, + "github_stars": 381, + "icon": "", + "id": "comfyui_pulid_flux_ll", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-19T08:38:46.271459Z", + "dependencies": [ + "cython", + "facexlib", + "insightface", + "onnxruntime", + "onnxruntime-gpu; sys_platform != \"darwin\" and (platform_machine == \"x86_64\" or platform_machine == \"AMD64\")", + "ftfy", + "timm" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6fc3cf0b-fba3-44e1-b6c9-82274995548c", + "node_id": "comfyui_pulid_flux_ll", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_PuLID_Flux_ll", + "publisher": { + "createdAt": "2024-08-02T08:30:49.205493Z", + "description": "", + "id": "lldacing", + "logo": "", + "members": [], + "name": "lldacing", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/lldacing/ComfyUI_PuLID_Flux_ll", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-11T17:22:25.078389Z", + "description": "PuLID ComfyUI native implementation.", + "downloads": 76384, + "github_stars": 872, + "icon": "", + "id": "pulid_comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2024-09-15T15:55:02.522362Z", + "dependencies": [ + "facexlib", + "insightface", + "onnxruntime", + "onnxruntime-gpu", + "ftfy", + "timm" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e0915146-f6a4-42c7-8f95-e3a6004b8ce7", + "node_id": "pulid_comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "PuLID_ComfyUI", + "publisher": { + "createdAt": "2024-06-05T06:22:33.072793Z", + "description": "", + "id": "matteo", + "logo": "", + "members": [], + "name": "Matteo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/cubiq/PuLID_ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-19T07:24:25.091655Z", + "description": "Custom nodes for using [a/Tripo](https://www.tripo3d.ai/) in ComfyUI to create 3D from text and image prompts.", + "downloads": 13907, + "github_stars": 289, + "icon": "https://www.tripo3d.ai/v1/favicon.png", + "id": "comfyui-tripo", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-26T07:50:57.203177Z", + "dependencies": [ + "tripo3d>=0.3.1" + ], + "deprecated": false, + "downloadUrl": "", + "id": "174ba17b-0c60-4cf3-8707-c6d05b4393a5", + "node_id": "comfyui-tripo", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.2.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Tripo", + "publisher": { + "createdAt": "2024-07-19T07:17:20.620201Z", + "description": "", + "id": "seed93", + "logo": "", + "members": [], + "name": "seed93", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/VAST-AI-Research/ComfyUI-Tripo", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-03T13:39:54.194027Z", + "description": "face detection nodes for comfyui", + "downloads": 416, + "github_stars": 0, + "icon": "", + "id": "ComfyUI-Face-Detection", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-03T13:39:54.827857Z", + "dependencies": [ + "opencv-python", + "scikit-image" + ], + "deprecated": false, + "downloadUrl": "", + "id": "25949fb1-f313-491f-b52b-c02db9842b28", + "node_id": "ComfyUI-Face-Detection", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-Face-Detection", + "publisher": { + "createdAt": "2025-05-29T19:50:33.054631Z", + "description": "", + "id": "sm079", + "logo": "", + "members": [], + "name": "sm079", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/sm079/ComfyUI-Face-Detection", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-12T11:12:47.133892Z", + "description": "Custom ComfyUI nodes for generating empty latent image with preset and axis-based aspect ratios.", + "downloads": 361, + "github_stars": 1, + "icon": "https://i.imgur.com/iRAYcKW.png", + "id": "comfyui-aspect-ratio-presets", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-12T11:12:47.515403Z", + "dependencies": [ + "numpy" + ], + "deprecated": false, + "downloadUrl": "", + "id": "9e29b8b1-f35e-461a-81f3-98bb301dc065", + "node_id": "comfyui-aspect-ratio-presets", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.5" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "comfyui-aspect-ratio-presets", + "publisher": { + "createdAt": "2025-06-07T16:30:45.478889Z", + "description": "", + "id": "budihartono", + "logo": "", + "members": [], + "name": "Budi Hartono", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/budihartono/comfyui-aspect-ratio-presets", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-19T18:54:30.182214Z", + "description": "ComfyUI_Jags_Audiotools\ud83c\udf99\ufe0fA collection amazing audio tools for working with audio and sound files in comfyUI", + "downloads": 2713, + "github_stars": 79, + "icon": "", + "id": "comfyui_jags_audiotools", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-01T05:37:45.993559Z", + "dependencies": [ + "einops", + "pandas", + "prefigure", + "pytorch_lightning", + "scipy", + "torch", + "torchaudio", + "tqdm", + "wandb", + "matplotlib", + "torchvision", + "k-diffusion", + "PySoundFile", + "black", + "diffusers", + "v-diffusion-pytorch", + "pydub", + "pygame", + "tk", + "numpy", + "audio_diffusion_pytorch" + ], + "deprecated": false, + "downloadUrl": "", + "id": "00921554-f3ce-4ff2-94d5-075b3c2d692f", + "node_id": "comfyui_jags_audiotools", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_Jags_Audiotools", + "publisher": { + "createdAt": "2024-05-19T17:24:59.149675Z", + "description": "", + "id": "jags111", + "logo": "", + "members": [], + "name": "jags111", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jags111/ComfyUI_Jags_Audiotools", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-16T13:22:18.741269Z", + "description": "Shows Lora information from CivitAI and outputs trigger words and example prompt", + "downloads": 22724, + "github_stars": 104, + "icon": "", + "id": "lora-info", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-15T07:26:07.346972Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "a3c80061-07b3-4cf8-8288-dbee486ff0b6", + "node_id": "lora-info", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "lora-info", + "publisher": { + "createdAt": "2024-06-20T12:34:47.379878Z", + "description": "", + "id": "jitcoder", + "logo": "", + "members": [], + "name": "jitcoder", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jitcoder/lora-info", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-13T14:22:13.762972Z", + "description": "Nodes for modifying a prompt to create prompt variations.\nScramblePrompts [m9]: Reorder prompts, remove prompts, modify weights\nTweakWeights [m9]: Modify the weights of prompts matching keywords", + "downloads": 1493, + "github_stars": 1, + "icon": "", + "id": "m9-prompts-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-13T14:22:14.028686Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "addd5ce9-5278-4bb6-b34d-742b80d00b48", + "node_id": "m9-prompts-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "m9-prompts-comfyui", + "publisher": { + "createdAt": "2024-06-11T19:55:02.81951Z", + "description": "", + "id": "marcus-nyne", + "logo": "", + "members": [], + "name": "Marcus Nyne", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MarcusNyne/m9-prompts-comfyui", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-15T03:28:34.462382Z", + "description": "Describe a single image or all images in a directory using models such as Janus Pro, Florence2, or JoyCaption (testing), with a particular focus on building datasets for training LoRA.", + "downloads": 14164, + "github_stars": 61, + "icon": "https://github.com/MieMieeeee/ComfyUI-MieNodes/blob/2f617ba2539e8fd13a91fe790e6b5e9ae1718a58/images/channels4_profile.jpg?raw=true", + "id": "comfyui_caption_this", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-04T11:36:17.107661Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "22afa315-fb0b-42d9-9b61-ce8fb286f8b3", + "node_id": "comfyui_caption_this", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.7" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_CaptionThis", + "publisher": { + "createdAt": "2025-02-10T08:44:10.88859Z", + "description": "", + "id": "mie", + "logo": "", + "members": [], + "name": "Mie", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/MieMieeeee/ComfyUI-CaptionThis", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-14T09:31:37.997266Z", + "description": "Nodes:Create N-Token String", + "downloads": 1732, + "github_stars": 1, + "icon": "", + "id": "comfyui-textutils", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-14T09:31:38.262261Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "2fe00ff2-00c2-4e3d-8f49-a7abe7d54df7", + "node_id": "comfyui-textutils", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-TextUtils", + "publisher": { + "createdAt": "2024-06-14T09:22:15.461336Z", + "description": "", + "id": "wutipong", + "logo": "", + "members": [], + "name": "Wutipong W", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/wutipong/ComfyUI-TextUtils", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-08-24T10:05:28.049816Z", + "description": "A collection of ComfyUI custom nodes that allow to use most Diffusers pipelines and components in Comfy(such as Txt2Img, Img2Img, Inpainting, LoRAS, B-LoRAS, ControlNet...). You will find them under 'Diffusers-in-Comfy'!", + "downloads": 3921, + "github_stars": 6, + "icon": "", + "id": "diffusers-in-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-07T17:27:40.063411Z", + "dependencies": [ + "diffusers @ git+https://github.com/huggingface/diffusers@3bb1fd6fc05917ce2fc577fcda2163391c5bdcc0", + "opencv-python==4.10.0.84", + "peft==0.14.0", + "omegaconf==2.3.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d99210ef-a3e1-4faf-b55f-196988e1b702", + "node_id": "diffusers-in-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.4" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Diffusers-in-ComfyUI", + "publisher": { + "createdAt": "2024-08-24T10:01:23.019356Z", + "description": "", + "id": "drjusseaux", + "logo": "", + "members": [], + "name": "DrJusseaux", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/maepopi/Diffusers-in-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-03T06:01:09.64807Z", + "description": "ComfyUI custom nodes of clip-interrogator", + "downloads": 5891, + "github_stars": 59, + "icon": "https://avatars.githubusercontent.com/u/89724016?s=400&u=cd218743591faf329d4b4f07a14de1130a9f56cc&v=4", + "id": "comfyui-clip-interrogator", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-03T06:01:11.168383Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "93daf3c0-abc3-4163-b6ac-66f1d1e2dbf5", + "node_id": "comfyui-clip-interrogator", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-clip-interrogator", + "publisher": { + "createdAt": "2024-07-03T03:43:42.738515Z", + "description": "", + "id": "prodogape", + "logo": "", + "members": [], + "name": "prodogape", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/prodogape/ComfyUI-clip-interrogator", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-19T11:02:07.819149Z", + "description": "You'll get a new node called SD3/Flux Latent Select Resolution, you can pick the x and y sizes from a list.", + "downloads": 7251, + "github_stars": 13, + "icon": "", + "id": "comfyui-sd3latentselectres", + "latest_version": { + "changelog": "", + "createdAt": "2025-03-07T14:21:48.661739Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "c3e9690b-3921-4a62-af8d-cd72012f750e", + "node_id": "comfyui-sd3latentselectres", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "2.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "SD3 and Flux Latent Select Resolution", + "publisher": { + "createdAt": "2024-06-19T10:58:14.599156Z", + "description": "", + "id": "anymode", + "logo": "", + "members": [], + "name": "anyMODE", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/GavChap/ComfyUI-SD3LatentSelectRes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-21T19:53:02.236705Z", + "description": "A suite of custom nodes for ConfyUI that includes GPT text-prompt generation, LoadVideo,SaveVideo,LoadFramesFromFolder and FrameInterpolator", + "downloads": 15469, + "github_stars": 225, + "icon": "", + "id": "comfyui-n-nodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-15T21:07:58.851222Z", + "dependencies": [ + "py-cpuinfo", + "gitpython", + "moviepy", + "opencv-python", + "scikit-build", + "typing", + "diskcache" + ], + "deprecated": false, + "downloadUrl": "", + "id": "afbd7410-6248-4cd7-a431-e4ccede0b1c2", + "node_id": "comfyui-n-nodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-N-Nodes", + "publisher": { + "createdAt": "2024-05-21T19:29:02.276617Z", + "description": "", + "id": "nuked", + "logo": "", + "members": [], + "name": "Nuked", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/Nuked88/ComfyUI-N-Nodes", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-05-29T09:27:17.680177Z", + "description": "A facefusion custom node for ComfyUI. Swap or restore faces for image or video", + "downloads": 13413, + "github_stars": 52, + "icon": "", + "id": "comfyui-faceless-node", + "latest_version": { + "changelog": "", + "createdAt": "2024-05-29T09:27:17.964754Z", + "dependencies": [ + "filetype==1.2.0", + "opencv-python==4.9.0.80", + "ufile==3.2.9" + ], + "deprecated": false, + "downloadUrl": "", + "id": "0f480dd1-c938-4c9b-93c4-10e40caf1dae", + "node_id": "comfyui-faceless-node", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.1.0" + }, + "license": "LICENSE", + "name": "comfyui-faceless-node", + "publisher": { + "createdAt": "2024-05-29T09:20:26.861763Z", + "description": "", + "id": "jeffrey", + "logo": "", + "members": [], + "name": "Jeffrey Wu", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/jeffy5/comfyui-faceless-node", + "status": "", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-15T00:46:18.35962Z", + "description": "This is a bunch of nodes for ComfyUI to help with sound work.", + "downloads": 684, + "github_stars": 40, + "icon": "", + "id": "soundflow", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-15T00:46:19.213809Z", + "dependencies": [ + "numpy", + "torchaudio", + "soundfile" + ], + "deprecated": false, + "downloadUrl": "", + "id": "2c7ea17c-0af3-4082-be6c-6d40322c1403", + "node_id": "soundflow", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-SoundFlow", + "publisher": { + "createdAt": "2025-04-18T15:45:18.154914Z", + "description": "", + "id": "conex", + "logo": "", + "members": [], + "name": "Conex", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fredconex/ComfyUI-SoundFlow", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-01T00:14:40.457308Z", + "description": "Collection of nodes for generating XY Grids", + "downloads": 5078, + "github_stars": 48, + "icon": "", + "id": "qq-nodes-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-24T22:38:22.97717Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "395c6b0c-d577-4359-b146-7887e3b47c70", + "node_id": "qq-nodes-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "qq-nodes-comfyui", + "publisher": { + "createdAt": "2024-09-01T00:01:17.451892Z", + "description": "", + "id": "kenjiqq", + "logo": "", + "members": [], + "name": "KenjiQQ", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/kenjiqq/qq-nodes-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-24T08:44:01.501274Z", + "description": "A comprehensive toolkit based on ComfyUI, providing image, mask, audio, and tools nodes, fully modular and v3 compatible.", + "downloads": 1911, + "github_stars": 25, + "icon": "", + "id": "universaltoolkit", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-18T09:58:26.702982Z", + "dependencies": [ + "torch", + "numpy", + "Pillow", + "opencv-python" + ], + "deprecated": false, + "downloadUrl": "", + "id": "c27101e7-cbdb-46f8-b67b-7c521b1e1fa3", + "node_id": "universaltoolkit", + "status": "NodeVersionStatusActive", + "supported_accelerators": [ + "GPU :: NVIDIA CUDA" + ], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": ">=1.0.0", + "supported_os": [ + "OS Independent" + ], + "version": "1.2.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-UniversalToolkit", + "publisher": { + "createdAt": "2025-06-09T10:29:05.911191Z", + "description": "", + "id": "whmc76", + "logo": "", + "members": [], + "name": "Cyber Dick Lang", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/whmc76/ComfyUI-UniversalToolkit", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [ + "GPU :: NVIDIA CUDA" + ], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": ">=1.0.0", + "supported_os": [ + "OS Independent" + ], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-02-20T00:42:02.751582Z", + "description": "Nodes: Multi Int and Multi Text; allows for the creation of multiple int, floats and string storage and output from a single node.", + "downloads": 12612, + "github_stars": 0, + "icon": "", + "id": "The-AI-Doctors-Clinical-Tools", + "latest_version": { + "changelog": "", + "createdAt": "2025-02-22T17:01:55.758434Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b609adea-76ea-4de8-b581-c2aa83d1bf44", + "node_id": "The-AI-Doctors-Clinical-Tools", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.1" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_AIDocsClinicalTools", + "publisher": { + "createdAt": "2025-02-20T00:31:42.758484Z", + "description": "", + "id": "theaidoctor", + "logo": "", + "members": [], + "name": "The AI Doctor", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/BlueprintCoding/ComfyUI_AIDocsClinicalTools/", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-06-15T02:16:24.331527Z", + "description": "\u63d0\u793a\u8bcd\u5c0f\u52a9\u624b\uff08Prompt Assistant\uff09\uff0c\u662f\u4e00\u4e2a\u65e0\u9700\u6dfb\u52a0\u4efb\u4f55\u8282\u70b9\uff0c\u5373\u53ef\u5b9e\u73b0\u63d0\u793a\u8bcd\u7ffb\u8bd1\u3001\u6269\u5199\u3001\u56fe\u7247\u53cd\u63a8\u63d0\u793a\u8bcd\u3001\u9884\u8bbe\u6807\u7b7e\u63d2\u5165\u3001\u5386\u53f2\u8bb0\u5f55\u529f\u80fd\u7b49\u529f\u80fd\u7684\u81ea\u5b9a\u4e49\u6269\u5c55\u3002", + "downloads": 3305, + "github_stars": 401, + "icon": "", + "id": "prompt-assistant", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-03T03:33:04.268746Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "0c1dbd82-ffb3-4909-85ba-90c99c9d44c0", + "node_id": "prompt-assistant", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "version": "1.0.6" + }, + "license": "{\"text\": \"GNU General Public License v3\"}", + "name": "Prompt Assistant", + "publisher": { + "createdAt": "2025-04-21T13:27:49.641984Z", + "description": "", + "id": "yawiii", + "logo": "", + "members": [], + "name": "Yawiii", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/yawiii/comfyui_prompt_assistant", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [ + "OS Independent" + ], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-29T13:17:49.896Z", + "description": "nodes for nightly moondream2 VLM inference\nsupports only captioning and visual queries at the moment", + "downloads": 3417, + "github_stars": 1, + "icon": "", + "id": "comfyui-moondream2", + "latest_version": { + "changelog": "", + "createdAt": "2024-12-29T13:17:53.660952Z", + "dependencies": [ + "huggingface-hub", + "numpy", + "onnxruntime", + "onnxruntime-gpu", + "pillow", + "tokenizers" + ], + "deprecated": false, + "downloadUrl": "", + "id": "6a23d91a-f292-4879-9799-cd1b7500eb71", + "node_id": "comfyui-moondream2", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-moondream2", + "publisher": { + "createdAt": "2024-12-29T12:52:08.39256Z", + "description": "", + "id": "zhilemann", + "logo": "", + "members": [], + "name": "zhilemann", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/zhilemann/ComfyUI-moondream2", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-11T02:59:46.71093Z", + "description": "Sage Utils offers quality-of-life enhancements for ComfyUI through custom nodes that simplify metadata creation, model and lora management, and other frequent tasks. It supports A1111/Civitai metadata formats and includes various utility nodes to improve workflow convenience. It also has nodes for giving ollama (0.5.1+)models descriptions and images to generate a prompt.", + "downloads": 5513, + "github_stars": 6, + "icon": "", + "id": "comfyui_sageutils", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-19T02:06:43.876905Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "39450e8a-ea45-4ce2-a262-ff623bffbdae", + "node_id": "comfyui_sageutils", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "0.8.6" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "Sage Utils", + "publisher": { + "createdAt": "2024-12-11T02:47:28.02853Z", + "description": "", + "id": "arcum42", + "logo": "", + "members": [], + "name": "arcum42", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/arcum42/ComfyUI_SageUtils", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-02T13:54:48.581072Z", + "description": "This is a collection of custom nodes that make ComfyUI slightly more convenient.", + "downloads": 22083, + "github_stars": 36, + "icon": "", + "id": "d2-nodes-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-07-21T04:25:09.178071Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "0ac0cb35-56ae-49ff-93d8-3ea7b86c24ba", + "node_id": "d2-nodes-comfyui", + "status": "NodeVersionStatusFlagged", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "24.2.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "D2-nodes-ComfyUI", + "publisher": { + "createdAt": "2024-08-04T16:12:17.464004Z", + "description": "", + "id": "da2el", + "logo": "", + "members": [], + "name": "da2el", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/da2el-ai/D2-nodes-ComfyUI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-30T16:30:59.288736Z", + "description": "Custom AI prompt generator node for ComfyUI.", + "downloads": 3963, + "github_stars": 102, + "icon": "", + "id": "prompt-generator-comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-21T20:00:24.520664Z", + "dependencies": [ + "transformers", + "accelerate", + "triton; platform_system == \"Linux\"", + "optimum", + "optimum[onnxruntime-gpu]", + "transformers[sentencepiece]", + "peft", + "bitsandbytes; platform_system == \"Linux\"", + "optimum-quanto; platform_system != \"Linux\"" + ], + "deprecated": false, + "downloadUrl": "", + "id": "792c9baa-03b2-4970-914e-885f727459af", + "node_id": "prompt-generator-comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.14" + }, + "license": "{\"text\": \"MIT License\"}", + "name": "prompt-generator-comfyui", + "publisher": { + "createdAt": "2024-06-30T16:09:17.24025Z", + "description": "", + "id": "alpertunga-bile", + "logo": "", + "members": [], + "name": "WoWoWoWololo", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/alpertunga-bile/prompt-generator-comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-10-08T17:29:28.45492Z", + "description": "Nodes:RandomPrompt, RandomPromptMixed, ImageScaleTo, EmptyLatentImageScaleBy, LoraLoaderExtended, Save Image w/Metadata, CheckpointLoaderSimpleExtended", + "downloads": 10050, + "github_stars": 2, + "icon": "", + "id": "comfyui_prnodes", + "latest_version": { + "changelog": "", + "createdAt": "2024-10-08T17:29:32.305592Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "878b742a-a9b4-4d32-a0b8-bf98e5424e47", + "node_id": "comfyui_prnodes", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_PRNodes", + "publisher": { + "createdAt": "2024-10-08T17:17:43.163478Z", + "description": "", + "id": "pikenrover", + "logo": "", + "members": [], + "name": "PikenRover", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/pikenrover/ComfyUI_PRNodes", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-05T04:10:53.425556Z", + "description": "QR generation within ComfyUI. Contains nodes suitable for workflows from generating basic QR images to techniques with advanced QR masking.", + "downloads": 2776, + "github_stars": 78, + "icon": "", + "id": "comfyqr", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-26T16:12:53.478287Z", + "dependencies": [ + "qrcode >= 7.1" + ], + "deprecated": false, + "downloadUrl": "", + "id": "8aa72949-95d7-4371-a7f7-02f6f16573c3", + "node_id": "comfyqr", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "0.4.1" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "ComfyQR", + "publisher": { + "createdAt": "2024-07-05T02:54:54.568646Z", + "description": "", + "id": "coreyryanhanson", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/coreyryanhanson/ComfyQR", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-21T16:08:10.567839Z", + "description": "Port of [a/https://github.com/huchenlei/sd-webui-openpose-editor](https://github.com/huchenlei/sd-webui-openpose-editor) in ComfyUI", + "downloads": 13698, + "github_stars": 102, + "icon": "", + "id": "comfyui-openpose-editor", + "latest_version": { + "changelog": "", + "createdAt": "2024-06-26T21:15:55.956192Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b920d598-0434-4059-ac1a-700ab8979fa2", + "node_id": "comfyui-openpose-editor", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.2" + }, + "license": "LICENSE", + "name": "ComfyUI-openpose-editor", + "publisher": { + "createdAt": "2024-05-16T22:06:01.581472Z", + "description": "", + "id": "huchenlei", + "logo": "", + "members": [], + "name": "huchenlei", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/huchenlei/ComfyUI-openpose-editor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-05T16:57:26.080463Z", + "description": "The ComfyUI version of [a/LivePortrait](https://github.com/KwaiVGI/LivePortrait).", + "downloads": 13683, + "github_stars": 461, + "icon": "", + "id": "comfyui-liveportrait", + "latest_version": { + "changelog": "", + "createdAt": "2024-08-06T04:07:47.118033Z", + "dependencies": [ + "numpy>=1.26.4", + "opencv-python-headless", + "imageio>=2.34.2", + "lmdb>=1.4.1", + "timm>=1.0.7", + "rich>=13.7.1", + "ffmpeg>=1.4", + "onnxruntime-gpu>=1.18.0", + "onnx>=1.16.1", + "scikit-image>=0.24.0", + "albumentations>=1.4.10", + "matplotlib>=3.9.0", + "imageio-ffmpeg>=0.5.1" + ], + "deprecated": false, + "downloadUrl": "", + "id": "e483d975-7fa0-4a1f-9aa7-7fb7a40d3bba", + "node_id": "comfyui-liveportrait", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.4.0" + }, + "license": "{\"text\": \"LICENSE\"}", + "name": "comfyui-liveportrait", + "publisher": { + "createdAt": "2024-07-05T16:44:29.736984Z", + "description": "", + "id": "shadowcz", + "logo": "", + "members": [], + "name": "shadow", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/shadowcz007/comfyui-liveportrait", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-12-21T03:21:58.62244Z", + "description": "This extension integrates [a/MV-Adapter](https://github.com/huanngzh/MV-Adapter) into ComfyUI, allowing users to generate multi-view consistent images from text prompts or single images directly within the ComfyUI interface.", + "downloads": 67827, + "github_stars": 422, + "icon": "", + "id": "comfyui-mvadapter", + "latest_version": { + "changelog": "", + "createdAt": "2025-06-26T06:58:03.021407Z", + "dependencies": [ + "torch>=2.1.1", + "torchvision>=0.16.1", + "diffusers>=0.31.0", + "transformers>=4.46.3", + "peft", + "numpy>=1.26.2", + "huggingface_hub>=0.24.6", + "accelerate>=1.1.1", + "opencv-python", + "safetensors", + "pillow", + "omegaconf", + "trimesh", + "einops", + "timm", + "kornia", + "scikit-image" + ], + "deprecated": false, + "downloadUrl": "", + "id": "723f9a08-c74d-46b0-ad04-bee638be3de1", + "node_id": "comfyui-mvadapter", + "status": "NodeVersionStatusActive", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "version": "1.0.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-MVAdapter", + "publisher": { + "createdAt": "2024-12-21T02:56:48.907293Z", + "description": "", + "id": "huanngzh", + "logo": "", + "members": [], + "name": "Zehuan Huang", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/huanngzh/ComfyUI-MVAdapter", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": [], + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": [], + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-09-01T14:47:23.30227Z", + "description": "A comfyui node that provides translation and image reverse push functions(JoyTag & JoyCaption).", + "downloads": 8749, + "github_stars": 125, + "icon": "", + "id": "comfyui_nyjy", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-30T09:45:04.766874Z", + "dependencies": [ + "torch", + "torchvision>=0.15.2", + "einops>=0.7.0", + "safetensors>=0.4.1", + "pillow>=9.4.0", + "huggingface_hub>=0.23.5", + "accelerate", + "transformers>=4.43.3", + "sentencepiece", + "bitsandbytes>=0.43.3", + "pygtrans", + "fake_useragent", + "lxml", + "openai", + "gradio_client" + ], + "deprecated": false, + "downloadUrl": "", + "id": "59929553-63e3-46ae-a00c-41f1a21931d9", + "node_id": "comfyui_nyjy", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.10.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI_NYJY", + "publisher": { + "createdAt": "2024-09-01T14:24:52.524781Z", + "description": "", + "id": "aidenli", + "logo": "", + "members": [], + "name": "aidenli", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/aidenli/ComfyUI_NYJY", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2025-05-15T23:30:33.057087Z", + "description": "Nodes for running the JoyCaption image captioner VLM.", + "downloads": 3228, + "github_stars": 79, + "icon": "", + "id": "joycaption_comfyui", + "latest_version": { + "changelog": "", + "createdAt": "2025-05-15T23:30:33.444519Z", + "dependencies": [ + "transformers>=4.51", + "torchvision", + "torch>=2.6.0", + "huggingface-hub>=0.30.1", + "accelerate", + "bitsandbytes" + ], + "deprecated": false, + "downloadUrl": "", + "id": "d6df3021-b9a9-4bef-92f8-42d21a0ce482", + "node_id": "joycaption_comfyui", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "joycaption_comfyui", + "publisher": { + "createdAt": "2025-05-15T23:19:39.031248Z", + "description": "", + "id": "fpgaminer", + "logo": "", + "members": [], + "name": "", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/fpgaminer/joycaption_comfyui", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-07-17T22:29:30.21529Z", + "description": "This is a single node which can take the POSE_KEYPOINT output from the OpenPose extractor node, parse it, and return x,y,width,height bounding boxes around any elements of the OpenPose skeleton", + "downloads": 3130, + "github_stars": 33, + "icon": "", + "id": "comfyui-openpose-keypoint-extractor", + "latest_version": { + "changelog": "", + "createdAt": "2024-07-17T22:29:34.001358Z", + "dependencies": [], + "deprecated": false, + "downloadUrl": "", + "id": "b09d2c0e-a8b3-4c34-9991-d90aa5f76d32", + "node_id": "comfyui-openpose-keypoint-extractor", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.0.0" + }, + "license": "LICENSE", + "name": "ComfyUI-OpenPose-Keypoint-Extractor", + "publisher": { + "createdAt": "2024-07-17T22:16:11.85355Z", + "description": "", + "id": "hughescr", + "logo": "", + "members": [], + "name": "Craig Hughes", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/hughescr/ComfyUI-OpenPose-Keypoint-Extractor", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + }, + { + "author": "", + "banner_url": "", + "category": "", + "created_at": "2024-06-27T17:33:16.815252Z", + "description": "ComfyUI-CrewAI aims to integrate Crew AI's multi-agent collaboration framework into the ComfyUI environment. By combining the strengths of Crew AI's role-based, collaborative AI agent system with ComfyUI's intuitive interface, we will create a robust platform for managing and executing complex AI tasks seamlessly", + "downloads": 5566, + "github_stars": 53, + "icon": "https://github.com/luandev/ComfyUI-CrewAI/blob/main/docs/logo.jpeg?raw=true", + "id": "comfyui-crewai", + "latest_version": { + "changelog": "", + "createdAt": "2025-01-17T13:32:58.136569Z", + "dependencies": [ + "crewai[tools]>=0.95.0,<1.0.0" + ], + "deprecated": false, + "downloadUrl": "", + "id": "fdb9b60d-6e21-47d7-ada9-81c4bd6d5aaf", + "node_id": "comfyui-crewai", + "status": "NodeVersionStatusActive", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "version": "1.1.2" + }, + "license": "{\"file\": \"LICENSE\"}", + "name": "ComfyUI-CrewAI", + "publisher": { + "createdAt": "2024-06-27T17:03:50.989089Z", + "description": "", + "id": "crewai", + "logo": "", + "members": [], + "name": "ComfyUI-CrewAI", + "source_code_repo": "", + "status": "PublisherStatusActive", + "support": "", + "website": "" + }, + "rating": 0, + "repository": "https://github.com/luandev/ComfyUI-CrewAI", + "status": "NodeStatusActive", + "status_detail": "", + "supported_accelerators": null, + "supported_comfyui_frontend_version": "", + "supported_comfyui_version": "", + "supported_os": null, + "tags": [] + } + ] +} \ No newline at end of file diff --git a/venv/bin/accelerate b/venv/bin/accelerate new file mode 100644 index 0000000000000000000000000000000000000000..399650c4d72f22bbeec63ece11ac898e2d23570a --- /dev/null +++ b/venv/bin/accelerate @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from accelerate.commands.accelerate_cli import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/accelerate-config b/venv/bin/accelerate-config new file mode 100644 index 0000000000000000000000000000000000000000..4a61a2288d65ac8ba5f4bb04e294db019a13330b --- /dev/null +++ b/venv/bin/accelerate-config @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from accelerate.commands.config import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/accelerate-estimate-memory b/venv/bin/accelerate-estimate-memory new file mode 100644 index 0000000000000000000000000000000000000000..dd9069a99c68aa7cc6440f780909b55cf29e98c7 --- /dev/null +++ b/venv/bin/accelerate-estimate-memory @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from accelerate.commands.estimate import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/accelerate-launch b/venv/bin/accelerate-launch new file mode 100644 index 0000000000000000000000000000000000000000..53be5d2dbf6ea8acbb08dea05ac3bc52f4823dc5 --- /dev/null +++ b/venv/bin/accelerate-launch @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from accelerate.commands.launch import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/accelerate-merge-weights b/venv/bin/accelerate-merge-weights new file mode 100644 index 0000000000000000000000000000000000000000..d70256f9a5e6f568e027a40ea3d90c93e8f06f0b --- /dev/null +++ b/venv/bin/accelerate-merge-weights @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from accelerate.commands.merge import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/backend-test-tools b/venv/bin/backend-test-tools new file mode 100644 index 0000000000000000000000000000000000000000..6fe579f6b1aec62ec9bc497e30c0e47362c86b06 --- /dev/null +++ b/venv/bin/backend-test-tools @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from onnx.backend.test.cmd_tools import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/chardetect b/venv/bin/chardetect new file mode 100644 index 0000000000000000000000000000000000000000..41d7624b9886b55e7c8f12261ec2b34190d3228b --- /dev/null +++ b/venv/bin/chardetect @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from chardet.cli.chardetect import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/check-model b/venv/bin/check-model new file mode 100644 index 0000000000000000000000000000000000000000..cfd70738ddbcb3b3bd621ddb60611ccb828dd7c5 --- /dev/null +++ b/venv/bin/check-model @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from onnx.bin.checker import check_model +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(check_model()) diff --git a/venv/bin/check-node b/venv/bin/check-node new file mode 100644 index 0000000000000000000000000000000000000000..569da1ff51b596cda1ecd53bfa65cfb4fa311900 --- /dev/null +++ b/venv/bin/check-node @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from onnx.bin.checker import check_node +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(check_node()) diff --git a/venv/bin/coloredlogs b/venv/bin/coloredlogs new file mode 100644 index 0000000000000000000000000000000000000000..2b7c4d7d00bd06bc2cec1b7b533a4a0ddfa6cbe9 --- /dev/null +++ b/venv/bin/coloredlogs @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from coloredlogs.cli import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/cpuinfo b/venv/bin/cpuinfo new file mode 100644 index 0000000000000000000000000000000000000000..5d8a1924ba40b93a89c16dc158cd3b1ac7b16203 --- /dev/null +++ b/venv/bin/cpuinfo @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from cpuinfo import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/cygdb b/venv/bin/cygdb new file mode 100644 index 0000000000000000000000000000000000000000..3232b8e913a6438c6623ba2277197b772dc6065b --- /dev/null +++ b/venv/bin/cygdb @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from Cython.Debugger.Cygdb import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/cython b/venv/bin/cython new file mode 100644 index 0000000000000000000000000000000000000000..77cf9f3637fdc2348104cea3d65f714c016a969b --- /dev/null +++ b/venv/bin/cython @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from Cython.Compiler.Main import setuptools_main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(setuptools_main()) diff --git a/venv/bin/cythonize b/venv/bin/cythonize new file mode 100644 index 0000000000000000000000000000000000000000..94d2ace221cc907da2755d3489153391ece9e9a3 --- /dev/null +++ b/venv/bin/cythonize @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from Cython.Build.Cythonize import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/deepspeed b/venv/bin/deepspeed new file mode 100644 index 0000000000000000000000000000000000000000..060e07dc1945b15a10c8a81088ec426231c8d302 --- /dev/null +++ b/venv/bin/deepspeed @@ -0,0 +1,6 @@ +#!/workspace/ComfyUI/venv/bin/python + +from deepspeed.launcher.runner import main + +if __name__ == '__main__': + main() diff --git a/venv/bin/diffusers-cli b/venv/bin/diffusers-cli new file mode 100644 index 0000000000000000000000000000000000000000..a656223522f4a25fc5ad61ec27549f3f72c7ac43 --- /dev/null +++ b/venv/bin/diffusers-cli @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from diffusers.commands.diffusers_cli import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/ds_bench b/venv/bin/ds_bench new file mode 100644 index 0000000000000000000000000000000000000000..e48ba39a050defe747c9b34516dc5f4c52fa77a8 --- /dev/null +++ b/venv/bin/ds_bench @@ -0,0 +1,20 @@ +#!/workspace/ComfyUI/venv/bin/python + +from benchmarks.communication.run_all import main +from benchmarks.communication.constants import * +from benchmarks.communication.utils import * +import os +import sys + +# Run the same file with deepspeed launcher. This is required since setuptools will auto-detect python files and insert a python shebang for both 'scripts' and 'entry_points', and this benchmarks require the DS launcher +required_env = ["RANK", "WORLD_SIZE", "MASTER_ADDR", "MASTER_PORT", "LOCAL_RANK"] +if not all(map(lambda v: v in os.environ, required_env)): + import subprocess + r = subprocess.check_output(["which", "ds_bench"]) + ds_bench_bin = r.decode('utf-8').strip() + safe_cmd = ["deepspeed", ds_bench_bin] + sys.argv[1:] + subprocess.run(safe_cmd) +else: + args = benchmark_parser().parse_args() + rank = args.local_rank + main(args, rank) diff --git a/venv/bin/ds_elastic b/venv/bin/ds_elastic new file mode 100644 index 0000000000000000000000000000000000000000..f054e3f6957459fee44b5d56f729fbf1dad4efc0 --- /dev/null +++ b/venv/bin/ds_elastic @@ -0,0 +1,40 @@ +#!/workspace/ComfyUI/venv/bin/python + +import argparse +import json + +import deepspeed +from deepspeed.elasticity import compute_elastic_config + +if __name__ == '__main__': + parser = argparse.ArgumentParser() + parser.add_argument('-c', '--config', type=str, help="DeepSpeed config json") + parser.add_argument('-w', '--world-size', type=int, default=0, help="Intended/current world size") + args = parser.parse_args() + ds_config = json.load(open(args.config, 'r')) + + ds_version = deepspeed.__version__ + + elastic_config = ds_config['elasticity'] + print('------------------------------------------') + print("Elasticity config:") + print('------------------------------------------') + print(json.dumps(elastic_config, indent=4, sort_keys=True)) + + if args.world_size > 0: + final_batch_size, valid_gpus, micro_batch_size = compute_elastic_config(ds_config=ds_config, + target_deepspeed_version=ds_version, + world_size=args.world_size) + print('------------------------------------------') + print(f"Calculated results for world size {args.world_size}:") + print('------------------------------------------') + print(f'final_batch_size .... {final_batch_size}') + print(f'valid_gpus .......... {valid_gpus}') + print(f'micro_batch_size .... {micro_batch_size}') + else: + final_batch_size, valid_gpus = compute_elastic_config(ds_config=ds_config, target_deepspeed_version=ds_version) + print('------------------------------------------') + print("Calculated results:") + print('------------------------------------------') + print(f'final_batch_size .... {final_batch_size}') + print(f'valid_gpus .......... {valid_gpus}') diff --git a/venv/bin/ds_io b/venv/bin/ds_io new file mode 100644 index 0000000000000000000000000000000000000000..fbb3ac37cef90b3d2d41c3bf803ed8a8b2c37def --- /dev/null +++ b/venv/bin/ds_io @@ -0,0 +1,6 @@ +#!/workspace/ComfyUI/venv/bin/python + +from deepspeed.nvme import ds_io_main + +if __name__ == '__main__': + ds_io_main() diff --git a/venv/bin/ds_nvme_tune b/venv/bin/ds_nvme_tune new file mode 100644 index 0000000000000000000000000000000000000000..981b25819374ba078e07f0e00123d42cae7cd080 --- /dev/null +++ b/venv/bin/ds_nvme_tune @@ -0,0 +1,9 @@ +#!/workspace/ComfyUI/venv/bin/python + +from deepspeed.nvme import sweep_main, generate_main, parse_sweep_arguments + +if __name__ == '__main__': + args = parse_sweep_arguments() + print(f"Running DeepNVMe performance tuning on {args.nvme_dir}") + sweep_main(args) + generate_main(args.log_dir) diff --git a/venv/bin/ds_report b/venv/bin/ds_report new file mode 100644 index 0000000000000000000000000000000000000000..8d1ad8712249376ea5819fc36cf414bcdfced5eb --- /dev/null +++ b/venv/bin/ds_report @@ -0,0 +1,6 @@ +#!/workspace/ComfyUI/venv/bin/python + +from deepspeed.env_report import cli_main + +if __name__ == '__main__': + cli_main() diff --git a/venv/bin/ds_ssh b/venv/bin/ds_ssh new file mode 100644 index 0000000000000000000000000000000000000000..d89fc0b44e176c8acf422302308e6a865350ab49 --- /dev/null +++ b/venv/bin/ds_ssh @@ -0,0 +1,34 @@ +#!/bin/bash + +# Copyright 2020 The Microsoft DeepSpeed Team + +command -v pdsh +if [ $? != 0 ]; then + echo "Cannot find pdsh, please install via 'apt-get install -y pdsh'" + exit 1 +fi + +hostfile=/job/hostfile + +while getopts "h?f:" opt; do + case "$opt" in + h|\?) + echo "-f : specify a hostfile, defaults to /job/hostfile" + exit 0 + ;; + f) + hostfile=$OPTARG + shift $((OPTIND-1)) + ;; + esac +done + +echo "hostfile=$hostfile" + +if [ -f $hostfile ]; then + hosts=`cat $hostfile | awk '{print $1}' | paste -sd "," -` + export PDSH_RCMD_TYPE=ssh + pdsh -w ${hosts} $@ +else + echo "Missing hostfile at ${hostfile}, unable to proceed" +fi diff --git a/venv/bin/dsr b/venv/bin/dsr new file mode 100644 index 0000000000000000000000000000000000000000..8d1ad8712249376ea5819fc36cf414bcdfced5eb --- /dev/null +++ b/venv/bin/dsr @@ -0,0 +1,6 @@ +#!/workspace/ComfyUI/venv/bin/python + +from deepspeed.env_report import cli_main + +if __name__ == '__main__': + cli_main() diff --git a/venv/bin/f2py b/venv/bin/f2py new file mode 100644 index 0000000000000000000000000000000000000000..31400035c5c7ead0690fd63465c2a443aa808111 --- /dev/null +++ b/venv/bin/f2py @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from numpy.f2py.f2py2e import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/gguf-convert-endian b/venv/bin/gguf-convert-endian new file mode 100644 index 0000000000000000000000000000000000000000..faa3fceb421ef9c31bc573b6cc03a82bc3ff246b --- /dev/null +++ b/venv/bin/gguf-convert-endian @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from gguf.scripts.gguf_convert_endian import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/gguf-dump b/venv/bin/gguf-dump new file mode 100644 index 0000000000000000000000000000000000000000..62c2139ecf38a02fcb85bae594170ca7869933fd --- /dev/null +++ b/venv/bin/gguf-dump @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from gguf.scripts.gguf_dump import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/gguf-editor-gui b/venv/bin/gguf-editor-gui new file mode 100644 index 0000000000000000000000000000000000000000..4995aaa7ebec09bcf5289773666498f6938f6b7a --- /dev/null +++ b/venv/bin/gguf-editor-gui @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from gguf.scripts.gguf_editor_gui import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/gguf-new-metadata b/venv/bin/gguf-new-metadata new file mode 100644 index 0000000000000000000000000000000000000000..86a516d87f72446fb410a49ef584ccd59437d0bf --- /dev/null +++ b/venv/bin/gguf-new-metadata @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from gguf.scripts.gguf_new_metadata import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/gguf-set-metadata b/venv/bin/gguf-set-metadata new file mode 100644 index 0000000000000000000000000000000000000000..1cbe7b25f16f2160209d909626da7688ca32dab3 --- /dev/null +++ b/venv/bin/gguf-set-metadata @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from gguf.scripts.gguf_set_metadata import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/hjson b/venv/bin/hjson new file mode 100644 index 0000000000000000000000000000000000000000..6689d5f3f174cafcd902971b01e6486a353a5cbf --- /dev/null +++ b/venv/bin/hjson @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from hjson.tool import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/humanfriendly b/venv/bin/humanfriendly new file mode 100644 index 0000000000000000000000000000000000000000..798c37a08524dfbb699c0b088a8699b3da421fe9 --- /dev/null +++ b/venv/bin/humanfriendly @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from humanfriendly.cli import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/markdown-it b/venv/bin/markdown-it new file mode 100644 index 0000000000000000000000000000000000000000..8a48cd5d1082066b32e48f1b30715e713a062fc2 --- /dev/null +++ b/venv/bin/markdown-it @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from markdown_it.cli.parse import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/numpy-config b/venv/bin/numpy-config new file mode 100644 index 0000000000000000000000000000000000000000..41f4dd0ed5df5abb20b9c0e0b437a870a4fa9eff --- /dev/null +++ b/venv/bin/numpy-config @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from numpy._configtool import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/onnxruntime_test b/venv/bin/onnxruntime_test new file mode 100644 index 0000000000000000000000000000000000000000..bf851f57e30c5bd39848992fec3cbf34eb0b939b --- /dev/null +++ b/venv/bin/onnxruntime_test @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from onnxruntime.tools.onnxruntime_test import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/pyftsubset b/venv/bin/pyftsubset new file mode 100644 index 0000000000000000000000000000000000000000..61cb0850c7c0f9aaeabb935a27b813ec38c7f1ac --- /dev/null +++ b/venv/bin/pyftsubset @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from fontTools.subset import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/pygmentize b/venv/bin/pygmentize new file mode 100644 index 0000000000000000000000000000000000000000..b819405e74fd476960353223dd1278ab778041f4 --- /dev/null +++ b/venv/bin/pygmentize @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from pygments.cmdline import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/ttx b/venv/bin/ttx new file mode 100644 index 0000000000000000000000000000000000000000..db54df50bdb741c1152edd5c3e05c3650146dad2 --- /dev/null +++ b/venv/bin/ttx @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from fontTools.ttx import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/typer b/venv/bin/typer new file mode 100644 index 0000000000000000000000000000000000000000..4cc465c48fefc82dd20682a1d862d344ce45692d --- /dev/null +++ b/venv/bin/typer @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from typer.cli import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/ultralytics b/venv/bin/ultralytics new file mode 100644 index 0000000000000000000000000000000000000000..00dc536eff214a1eac72fd6cb685d722a53189f7 --- /dev/null +++ b/venv/bin/ultralytics @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from ultralytics.cfg import entrypoint +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(entrypoint()) diff --git a/venv/bin/yolo b/venv/bin/yolo new file mode 100644 index 0000000000000000000000000000000000000000..00dc536eff214a1eac72fd6cb685d722a53189f7 --- /dev/null +++ b/venv/bin/yolo @@ -0,0 +1,8 @@ +#!/workspace/ComfyUI/venv/bin/python +# -*- coding: utf-8 -*- +import re +import sys +from ultralytics.cfg import entrypoint +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(entrypoint()) diff --git a/venv/insightface/data/images/Tom_Hanks_54745.png b/venv/insightface/data/images/Tom_Hanks_54745.png new file mode 100644 index 0000000000000000000000000000000000000000..906315d13fa29bb3a5ded3e162592f2c7f041b23 Binary files /dev/null and b/venv/insightface/data/images/Tom_Hanks_54745.png differ diff --git a/venv/insightface/data/images/mask_black.jpg b/venv/insightface/data/images/mask_black.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0eab0df555c23f1e033537fe39f3c0c8303dd369 Binary files /dev/null and b/venv/insightface/data/images/mask_black.jpg differ diff --git a/venv/insightface/data/images/mask_blue.jpg b/venv/insightface/data/images/mask_blue.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f71336b9a0d3038ebd84e6995ebfbe54946fcbb4 Binary files /dev/null and b/venv/insightface/data/images/mask_blue.jpg differ diff --git a/venv/insightface/data/images/mask_green.jpg b/venv/insightface/data/images/mask_green.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ac2ad55f4fc580c915dfa4c157ca3bfc84e453f4 Binary files /dev/null and b/venv/insightface/data/images/mask_green.jpg differ diff --git a/venv/insightface/data/images/mask_white.jpg b/venv/insightface/data/images/mask_white.jpg new file mode 100644 index 0000000000000000000000000000000000000000..2148ab2d09fdee6e3f59315470e98ecfc54339e4 Binary files /dev/null and b/venv/insightface/data/images/mask_white.jpg differ diff --git a/venv/insightface/thirdparty/face3d/mesh/cython/__pycache__/setup.cpython-310.pyc b/venv/insightface/thirdparty/face3d/mesh/cython/__pycache__/setup.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..3dbcb79db2686564cd9e9233724c4619acbd2254 Binary files /dev/null and b/venv/insightface/thirdparty/face3d/mesh/cython/__pycache__/setup.cpython-310.pyc differ diff --git a/venv/insightface/thirdparty/face3d/mesh/cython/mesh_core.h b/venv/insightface/thirdparty/face3d/mesh/cython/mesh_core.h new file mode 100644 index 0000000000000000000000000000000000000000..3eb00290f36f8cbe27a17d88bca31fe718d77e2c --- /dev/null +++ b/venv/insightface/thirdparty/face3d/mesh/cython/mesh_core.h @@ -0,0 +1,83 @@ +#ifndef MESH_CORE_HPP_ +#define MESH_CORE_HPP_ + +#include +#include +#include +#include +#include +#include + +using namespace std; + +class point +{ + public: + float x; + float y; + + float dot(point p) + { + return this->x * p.x + this->y * p.y; + } + + point operator-(const point& p) + { + point np; + np.x = this->x - p.x; + np.y = this->y - p.y; + return np; + } + + point operator+(const point& p) + { + point np; + np.x = this->x + p.x; + np.y = this->y + p.y; + return np; + } + + point operator*(float s) + { + point np; + np.x = s * this->x; + np.y = s * this->y; + return np; + } +}; + + +bool isPointInTri(point p, point p0, point p1, point p2, int h, int w); +void get_point_weight(float* weight, point p, point p0, point p1, point p2); + +void _get_normal_core( + float* normal, float* tri_normal, int* triangles, + int ntri); + +void _rasterize_triangles_core( + float* vertices, int* triangles, + float* depth_buffer, int* triangle_buffer, float* barycentric_weight, + int nver, int ntri, + int h, int w); + +void _render_colors_core( + float* image, float* vertices, int* triangles, + float* colors, + float* depth_buffer, + int nver, int ntri, + int h, int w, int c); + +void _render_texture_core( + float* image, float* vertices, int* triangles, + float* texture, float* tex_coords, int* tex_triangles, + float* depth_buffer, + int nver, int tex_nver, int ntri, + int h, int w, int c, + int tex_h, int tex_w, int tex_c, + int mapping_type); + +void _write_obj_with_colors_texture(string filename, string mtl_name, + float* vertices, int* triangles, float* colors, float* uv_coords, + int nver, int ntri, int ntexver); + +#endif \ No newline at end of file diff --git a/venv/insightface/thirdparty/face3d/mesh/cython/mesh_core_cython.c b/venv/insightface/thirdparty/face3d/mesh/cython/mesh_core_cython.c new file mode 100644 index 0000000000000000000000000000000000000000..e113ac54ae03e4a79ea2a975ef33e67deb9d93d6 --- /dev/null +++ b/venv/insightface/thirdparty/face3d/mesh/cython/mesh_core_cython.c @@ -0,0 +1,9091 @@ +/* Generated by Cython 0.28.2 */ + +/* BEGIN: Cython Metadata +{ + "distutils": { + "depends": [ + "insightface/thirdparty/face3d/mesh/cython/mesh_core.h" + ], + "include_dirs": [ + "insightface/thirdparty/face3d/mesh/cython" + ], + "name": "mesh_core_cython", + "sources": [ + "insightface/thirdparty/face3d/mesh/cython/mesh_core_cython.pyx" + ] + }, + "module_name": "mesh_core_cython" +} +END: Cython Metadata */ + +#define PY_SSIZE_T_CLEAN +#include "Python.h" +#ifndef Py_PYTHON_H + #error Python headers needed to compile C extensions, please install development version of Python. +#elif PY_VERSION_HEX < 0x02060000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03030000) + #error Cython requires Python 2.6+ or Python 3.3+. +#else +#define CYTHON_ABI "0_28_2" +#define CYTHON_FUTURE_DIVISION 0 +#include +#ifndef offsetof + #define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) +#endif +#if !defined(WIN32) && !defined(MS_WINDOWS) + #ifndef __stdcall + #define __stdcall + #endif + #ifndef __cdecl + #define __cdecl + #endif + #ifndef __fastcall + #define __fastcall + #endif +#endif +#ifndef DL_IMPORT + #define DL_IMPORT(t) t +#endif +#ifndef DL_EXPORT + #define DL_EXPORT(t) t +#endif +#define __PYX_COMMA , +#ifndef HAVE_LONG_LONG + #if PY_VERSION_HEX >= 0x02070000 + #define HAVE_LONG_LONG + #endif +#endif +#ifndef PY_LONG_LONG + #define PY_LONG_LONG LONG_LONG +#endif +#ifndef Py_HUGE_VAL + #define Py_HUGE_VAL HUGE_VAL +#endif +#ifdef PYPY_VERSION + #define CYTHON_COMPILING_IN_PYPY 1 + #define CYTHON_COMPILING_IN_PYSTON 0 + #define CYTHON_COMPILING_IN_CPYTHON 0 + #undef CYTHON_USE_TYPE_SLOTS + #define CYTHON_USE_TYPE_SLOTS 0 + #undef CYTHON_USE_PYTYPE_LOOKUP + #define CYTHON_USE_PYTYPE_LOOKUP 0 + #if PY_VERSION_HEX < 0x03050000 + #undef CYTHON_USE_ASYNC_SLOTS + #define CYTHON_USE_ASYNC_SLOTS 0 + #elif !defined(CYTHON_USE_ASYNC_SLOTS) + #define CYTHON_USE_ASYNC_SLOTS 1 + #endif + #undef CYTHON_USE_PYLIST_INTERNALS + #define CYTHON_USE_PYLIST_INTERNALS 0 + #undef CYTHON_USE_UNICODE_INTERNALS + #define CYTHON_USE_UNICODE_INTERNALS 0 + #undef CYTHON_USE_UNICODE_WRITER + #define CYTHON_USE_UNICODE_WRITER 0 + #undef CYTHON_USE_PYLONG_INTERNALS + #define CYTHON_USE_PYLONG_INTERNALS 0 + #undef CYTHON_AVOID_BORROWED_REFS + #define CYTHON_AVOID_BORROWED_REFS 1 + #undef CYTHON_ASSUME_SAFE_MACROS + #define CYTHON_ASSUME_SAFE_MACROS 0 + #undef CYTHON_UNPACK_METHODS + #define CYTHON_UNPACK_METHODS 0 + #undef CYTHON_FAST_THREAD_STATE + #define CYTHON_FAST_THREAD_STATE 0 + #undef CYTHON_FAST_PYCALL + #define CYTHON_FAST_PYCALL 0 + #undef CYTHON_PEP489_MULTI_PHASE_INIT + #define CYTHON_PEP489_MULTI_PHASE_INIT 0 + #undef CYTHON_USE_TP_FINALIZE + #define CYTHON_USE_TP_FINALIZE 0 +#elif defined(PYSTON_VERSION) + #define CYTHON_COMPILING_IN_PYPY 0 + #define CYTHON_COMPILING_IN_PYSTON 1 + #define CYTHON_COMPILING_IN_CPYTHON 0 + #ifndef CYTHON_USE_TYPE_SLOTS + #define CYTHON_USE_TYPE_SLOTS 1 + #endif + #undef CYTHON_USE_PYTYPE_LOOKUP + #define CYTHON_USE_PYTYPE_LOOKUP 0 + #undef CYTHON_USE_ASYNC_SLOTS + #define CYTHON_USE_ASYNC_SLOTS 0 + #undef CYTHON_USE_PYLIST_INTERNALS + #define CYTHON_USE_PYLIST_INTERNALS 0 + #ifndef CYTHON_USE_UNICODE_INTERNALS + #define CYTHON_USE_UNICODE_INTERNALS 1 + #endif + #undef CYTHON_USE_UNICODE_WRITER + #define CYTHON_USE_UNICODE_WRITER 0 + #undef CYTHON_USE_PYLONG_INTERNALS + #define CYTHON_USE_PYLONG_INTERNALS 0 + #ifndef CYTHON_AVOID_BORROWED_REFS + #define CYTHON_AVOID_BORROWED_REFS 0 + #endif + #ifndef CYTHON_ASSUME_SAFE_MACROS + #define CYTHON_ASSUME_SAFE_MACROS 1 + #endif + #ifndef CYTHON_UNPACK_METHODS + #define CYTHON_UNPACK_METHODS 1 + #endif + #undef CYTHON_FAST_THREAD_STATE + #define CYTHON_FAST_THREAD_STATE 0 + #undef CYTHON_FAST_PYCALL + #define CYTHON_FAST_PYCALL 0 + #undef CYTHON_PEP489_MULTI_PHASE_INIT + #define CYTHON_PEP489_MULTI_PHASE_INIT 0 + #undef CYTHON_USE_TP_FINALIZE + #define CYTHON_USE_TP_FINALIZE 0 +#else + #define CYTHON_COMPILING_IN_PYPY 0 + #define CYTHON_COMPILING_IN_PYSTON 0 + #define CYTHON_COMPILING_IN_CPYTHON 1 + #ifndef CYTHON_USE_TYPE_SLOTS + #define CYTHON_USE_TYPE_SLOTS 1 + #endif + #if PY_VERSION_HEX < 0x02070000 + #undef CYTHON_USE_PYTYPE_LOOKUP + #define CYTHON_USE_PYTYPE_LOOKUP 0 + #elif !defined(CYTHON_USE_PYTYPE_LOOKUP) + #define CYTHON_USE_PYTYPE_LOOKUP 1 + #endif + #if PY_MAJOR_VERSION < 3 + #undef CYTHON_USE_ASYNC_SLOTS + #define CYTHON_USE_ASYNC_SLOTS 0 + #elif !defined(CYTHON_USE_ASYNC_SLOTS) + #define CYTHON_USE_ASYNC_SLOTS 1 + #endif + #if PY_VERSION_HEX < 0x02070000 + #undef CYTHON_USE_PYLONG_INTERNALS + #define CYTHON_USE_PYLONG_INTERNALS 0 + #elif !defined(CYTHON_USE_PYLONG_INTERNALS) + #define CYTHON_USE_PYLONG_INTERNALS 1 + #endif + #ifndef CYTHON_USE_PYLIST_INTERNALS + #define CYTHON_USE_PYLIST_INTERNALS 1 + #endif + #ifndef CYTHON_USE_UNICODE_INTERNALS + #define CYTHON_USE_UNICODE_INTERNALS 1 + #endif + #if PY_VERSION_HEX < 0x030300F0 + #undef CYTHON_USE_UNICODE_WRITER + #define CYTHON_USE_UNICODE_WRITER 0 + #elif !defined(CYTHON_USE_UNICODE_WRITER) + #define CYTHON_USE_UNICODE_WRITER 1 + #endif + #ifndef CYTHON_AVOID_BORROWED_REFS + #define CYTHON_AVOID_BORROWED_REFS 0 + #endif + #ifndef CYTHON_ASSUME_SAFE_MACROS + #define CYTHON_ASSUME_SAFE_MACROS 1 + #endif + #ifndef CYTHON_UNPACK_METHODS + #define CYTHON_UNPACK_METHODS 1 + #endif + #ifndef CYTHON_FAST_THREAD_STATE + #define CYTHON_FAST_THREAD_STATE 1 + #endif + #ifndef CYTHON_FAST_PYCALL + #define CYTHON_FAST_PYCALL 1 + #endif + #ifndef CYTHON_PEP489_MULTI_PHASE_INIT + #define CYTHON_PEP489_MULTI_PHASE_INIT (0 && PY_VERSION_HEX >= 0x03050000) + #endif + #ifndef CYTHON_USE_TP_FINALIZE + #define CYTHON_USE_TP_FINALIZE (PY_VERSION_HEX >= 0x030400a1) + #endif +#endif +#if !defined(CYTHON_FAST_PYCCALL) +#define CYTHON_FAST_PYCCALL (CYTHON_FAST_PYCALL && PY_VERSION_HEX >= 0x030600B1) +#endif +#if CYTHON_USE_PYLONG_INTERNALS + #include "longintrepr.h" + #undef SHIFT + #undef BASE + #undef MASK +#endif +#ifndef __has_attribute + #define __has_attribute(x) 0 +#endif +#ifndef __has_cpp_attribute + #define __has_cpp_attribute(x) 0 +#endif +#ifndef CYTHON_RESTRICT + #if defined(__GNUC__) + #define CYTHON_RESTRICT __restrict__ + #elif defined(_MSC_VER) && _MSC_VER >= 1400 + #define CYTHON_RESTRICT __restrict + #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L + #define CYTHON_RESTRICT restrict + #else + #define CYTHON_RESTRICT + #endif +#endif +#ifndef CYTHON_UNUSED +# if defined(__GNUC__) +# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) +# define CYTHON_UNUSED __attribute__ ((__unused__)) +# else +# define CYTHON_UNUSED +# endif +# elif defined(__ICC) || (defined(__INTEL_COMPILER) && !defined(_MSC_VER)) +# define CYTHON_UNUSED __attribute__ ((__unused__)) +# else +# define CYTHON_UNUSED +# endif +#endif +#ifndef CYTHON_MAYBE_UNUSED_VAR +# if defined(__cplusplus) + template void CYTHON_MAYBE_UNUSED_VAR( const T& ) { } +# else +# define CYTHON_MAYBE_UNUSED_VAR(x) (void)(x) +# endif +#endif +#ifndef CYTHON_NCP_UNUSED +# if CYTHON_COMPILING_IN_CPYTHON +# define CYTHON_NCP_UNUSED +# else +# define CYTHON_NCP_UNUSED CYTHON_UNUSED +# endif +#endif +#define __Pyx_void_to_None(void_result) ((void)(void_result), Py_INCREF(Py_None), Py_None) +#ifdef _MSC_VER + #ifndef _MSC_STDINT_H_ + #if _MSC_VER < 1300 + typedef unsigned char uint8_t; + typedef unsigned int uint32_t; + #else + typedef unsigned __int8 uint8_t; + typedef unsigned __int32 uint32_t; + #endif + #endif +#else + #include +#endif +#ifndef CYTHON_FALLTHROUGH + #if defined(__cplusplus) && __cplusplus >= 201103L + #if __has_cpp_attribute(fallthrough) + #define CYTHON_FALLTHROUGH [[fallthrough]] + #elif __has_cpp_attribute(clang::fallthrough) + #define CYTHON_FALLTHROUGH [[clang::fallthrough]] + #elif __has_cpp_attribute(gnu::fallthrough) + #define CYTHON_FALLTHROUGH [[gnu::fallthrough]] + #endif + #endif + #ifndef CYTHON_FALLTHROUGH + #if __has_attribute(fallthrough) + #define CYTHON_FALLTHROUGH __attribute__((fallthrough)) + #else + #define CYTHON_FALLTHROUGH + #endif + #endif + #if defined(__clang__ ) && defined(__apple_build_version__) + #if __apple_build_version__ < 7000000 + #undef CYTHON_FALLTHROUGH + #define CYTHON_FALLTHROUGH + #endif + #endif +#endif + +#ifndef CYTHON_INLINE + #if defined(__clang__) + #define CYTHON_INLINE __inline__ __attribute__ ((__unused__)) + #elif defined(__GNUC__) + #define CYTHON_INLINE __inline__ + #elif defined(_MSC_VER) + #define CYTHON_INLINE __inline + #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L + #define CYTHON_INLINE inline + #else + #define CYTHON_INLINE + #endif +#endif + +#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x02070600 && !defined(Py_OptimizeFlag) + #define Py_OptimizeFlag 0 +#endif +#define __PYX_BUILD_PY_SSIZE_T "n" +#define CYTHON_FORMAT_SSIZE_T "z" +#if PY_MAJOR_VERSION < 3 + #define __Pyx_BUILTIN_MODULE_NAME "__builtin__" + #define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ + PyCode_New(a+k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) + #define __Pyx_DefaultClassType PyClass_Type +#else + #define __Pyx_BUILTIN_MODULE_NAME "builtins" + #define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ + PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) + #define __Pyx_DefaultClassType PyType_Type +#endif +#ifndef Py_TPFLAGS_CHECKTYPES + #define Py_TPFLAGS_CHECKTYPES 0 +#endif +#ifndef Py_TPFLAGS_HAVE_INDEX + #define Py_TPFLAGS_HAVE_INDEX 0 +#endif +#ifndef Py_TPFLAGS_HAVE_NEWBUFFER + #define Py_TPFLAGS_HAVE_NEWBUFFER 0 +#endif +#ifndef Py_TPFLAGS_HAVE_FINALIZE + #define Py_TPFLAGS_HAVE_FINALIZE 0 +#endif +#if PY_VERSION_HEX <= 0x030700A3 || !defined(METH_FASTCALL) + #ifndef METH_FASTCALL + #define METH_FASTCALL 0x80 + #endif + typedef PyObject *(*__Pyx_PyCFunctionFast) (PyObject *self, PyObject *const *args, Py_ssize_t nargs); + typedef PyObject *(*__Pyx_PyCFunctionFastWithKeywords) (PyObject *self, PyObject *const *args, + Py_ssize_t nargs, PyObject *kwnames); +#else + #define __Pyx_PyCFunctionFast _PyCFunctionFast + #define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords +#endif +#if CYTHON_FAST_PYCCALL +#define __Pyx_PyFastCFunction_Check(func)\ + ((PyCFunction_Check(func) && (METH_FASTCALL == (PyCFunction_GET_FLAGS(func) & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_KEYWORDS))))) +#else +#define __Pyx_PyFastCFunction_Check(func) 0 +#endif +#if CYTHON_COMPILING_IN_PYPY && !defined(PyObject_Malloc) + #define PyObject_Malloc(s) PyMem_Malloc(s) + #define PyObject_Free(p) PyMem_Free(p) + #define PyObject_Realloc(p) PyMem_Realloc(p) +#endif +#if CYTHON_COMPILING_IN_PYSTON + #define __Pyx_PyCode_HasFreeVars(co) PyCode_HasFreeVars(co) + #define __Pyx_PyFrame_SetLineNumber(frame, lineno) PyFrame_SetLineNumber(frame, lineno) +#else + #define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0) + #define __Pyx_PyFrame_SetLineNumber(frame, lineno) (frame)->f_lineno = (lineno) +#endif +#if !CYTHON_FAST_THREAD_STATE || PY_VERSION_HEX < 0x02070000 + #define __Pyx_PyThreadState_Current PyThreadState_GET() +#elif PY_VERSION_HEX >= 0x03060000 + #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() +#elif PY_VERSION_HEX >= 0x03000000 + #define __Pyx_PyThreadState_Current PyThreadState_GET() +#else + #define __Pyx_PyThreadState_Current _PyThreadState_Current +#endif +#if PY_VERSION_HEX < 0x030700A2 && !defined(PyThread_tss_create) && !defined(Py_tss_NEEDS_INIT) +#include "pythread.h" +#define Py_tss_NEEDS_INIT 0 +typedef int Py_tss_t; +static CYTHON_INLINE int PyThread_tss_create(Py_tss_t *key) { + *key = PyThread_create_key(); + return 0; // PyThread_create_key reports success always +} +static CYTHON_INLINE Py_tss_t * PyThread_tss_alloc(void) { + Py_tss_t *key = (Py_tss_t *)PyObject_Malloc(sizeof(Py_tss_t)); + *key = Py_tss_NEEDS_INIT; + return key; +} +static CYTHON_INLINE void PyThread_tss_free(Py_tss_t *key) { + PyObject_Free(key); +} +static CYTHON_INLINE int PyThread_tss_is_created(Py_tss_t *key) { + return *key != Py_tss_NEEDS_INIT; +} +static CYTHON_INLINE void PyThread_tss_delete(Py_tss_t *key) { + PyThread_delete_key(*key); + *key = Py_tss_NEEDS_INIT; +} +static CYTHON_INLINE int PyThread_tss_set(Py_tss_t *key, void *value) { + return PyThread_set_key_value(*key, value); +} +static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) { + return PyThread_get_key_value(*key); +} +#endif // TSS (Thread Specific Storage) API +#if CYTHON_COMPILING_IN_CPYTHON || defined(_PyDict_NewPresized) +#define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) +#else +#define __Pyx_PyDict_NewPresized(n) PyDict_New() +#endif +#if PY_MAJOR_VERSION >= 3 || CYTHON_FUTURE_DIVISION + #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) + #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) +#else + #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) + #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) +#endif +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 && CYTHON_USE_UNICODE_INTERNALS +#define __Pyx_PyDict_GetItemStr(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) +#else +#define __Pyx_PyDict_GetItemStr(dict, name) PyDict_GetItem(dict, name) +#endif +#if PY_VERSION_HEX > 0x03030000 && defined(PyUnicode_KIND) + #define CYTHON_PEP393_ENABLED 1 + #define __Pyx_PyUnicode_READY(op) (likely(PyUnicode_IS_READY(op)) ?\ + 0 : _PyUnicode_Ready((PyObject *)(op))) + #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_LENGTH(u) + #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_READ_CHAR(u, i) + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) PyUnicode_MAX_CHAR_VALUE(u) + #define __Pyx_PyUnicode_KIND(u) PyUnicode_KIND(u) + #define __Pyx_PyUnicode_DATA(u) PyUnicode_DATA(u) + #define __Pyx_PyUnicode_READ(k, d, i) PyUnicode_READ(k, d, i) + #define __Pyx_PyUnicode_WRITE(k, d, i, ch) PyUnicode_WRITE(k, d, i, ch) + #define __Pyx_PyUnicode_IS_TRUE(u) (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : PyUnicode_GET_SIZE(u))) +#else + #define CYTHON_PEP393_ENABLED 0 + #define PyUnicode_1BYTE_KIND 1 + #define PyUnicode_2BYTE_KIND 2 + #define PyUnicode_4BYTE_KIND 4 + #define __Pyx_PyUnicode_READY(op) (0) + #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_SIZE(u) + #define __Pyx_PyUnicode_READ_CHAR(u, i) ((Py_UCS4)(PyUnicode_AS_UNICODE(u)[i])) + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((sizeof(Py_UNICODE) == 2) ? 65535 : 1114111) + #define __Pyx_PyUnicode_KIND(u) (sizeof(Py_UNICODE)) + #define __Pyx_PyUnicode_DATA(u) ((void*)PyUnicode_AS_UNICODE(u)) + #define __Pyx_PyUnicode_READ(k, d, i) ((void)(k), (Py_UCS4)(((Py_UNICODE*)d)[i])) + #define __Pyx_PyUnicode_WRITE(k, d, i, ch) (((void)(k)), ((Py_UNICODE*)d)[i] = ch) + #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_SIZE(u)) +#endif +#if CYTHON_COMPILING_IN_PYPY + #define __Pyx_PyUnicode_Concat(a, b) PyNumber_Add(a, b) + #define __Pyx_PyUnicode_ConcatSafe(a, b) PyNumber_Add(a, b) +#else + #define __Pyx_PyUnicode_Concat(a, b) PyUnicode_Concat(a, b) + #define __Pyx_PyUnicode_ConcatSafe(a, b) ((unlikely((a) == Py_None) || unlikely((b) == Py_None)) ?\ + PyNumber_Add(a, b) : __Pyx_PyUnicode_Concat(a, b)) +#endif +#if CYTHON_COMPILING_IN_PYPY && !defined(PyUnicode_Contains) + #define PyUnicode_Contains(u, s) PySequence_Contains(u, s) +#endif +#if CYTHON_COMPILING_IN_PYPY && !defined(PyByteArray_Check) + #define PyByteArray_Check(obj) PyObject_TypeCheck(obj, &PyByteArray_Type) +#endif +#if CYTHON_COMPILING_IN_PYPY && !defined(PyObject_Format) + #define PyObject_Format(obj, fmt) PyObject_CallMethod(obj, "__format__", "O", fmt) +#endif +#define __Pyx_PyString_FormatSafe(a, b) ((unlikely((a) == Py_None)) ? PyNumber_Remainder(a, b) : __Pyx_PyString_Format(a, b)) +#define __Pyx_PyUnicode_FormatSafe(a, b) ((unlikely((a) == Py_None)) ? PyNumber_Remainder(a, b) : PyUnicode_Format(a, b)) +#if PY_MAJOR_VERSION >= 3 + #define __Pyx_PyString_Format(a, b) PyUnicode_Format(a, b) +#else + #define __Pyx_PyString_Format(a, b) PyString_Format(a, b) +#endif +#if PY_MAJOR_VERSION < 3 && !defined(PyObject_ASCII) + #define PyObject_ASCII(o) PyObject_Repr(o) +#endif +#if PY_MAJOR_VERSION >= 3 + #define PyBaseString_Type PyUnicode_Type + #define PyStringObject PyUnicodeObject + #define PyString_Type PyUnicode_Type + #define PyString_Check PyUnicode_Check + #define PyString_CheckExact PyUnicode_CheckExact +#endif +#if PY_MAJOR_VERSION >= 3 + #define __Pyx_PyBaseString_Check(obj) PyUnicode_Check(obj) + #define __Pyx_PyBaseString_CheckExact(obj) PyUnicode_CheckExact(obj) +#else + #define __Pyx_PyBaseString_Check(obj) (PyString_Check(obj) || PyUnicode_Check(obj)) + #define __Pyx_PyBaseString_CheckExact(obj) (PyString_CheckExact(obj) || PyUnicode_CheckExact(obj)) +#endif +#ifndef PySet_CheckExact + #define PySet_CheckExact(obj) (Py_TYPE(obj) == &PySet_Type) +#endif +#if CYTHON_ASSUME_SAFE_MACROS + #define __Pyx_PySequence_SIZE(seq) Py_SIZE(seq) +#else + #define __Pyx_PySequence_SIZE(seq) PySequence_Size(seq) +#endif +#if PY_MAJOR_VERSION >= 3 + #define PyIntObject PyLongObject + #define PyInt_Type PyLong_Type + #define PyInt_Check(op) PyLong_Check(op) + #define PyInt_CheckExact(op) PyLong_CheckExact(op) + #define PyInt_FromString PyLong_FromString + #define PyInt_FromUnicode PyLong_FromUnicode + #define PyInt_FromLong PyLong_FromLong + #define PyInt_FromSize_t PyLong_FromSize_t + #define PyInt_FromSsize_t PyLong_FromSsize_t + #define PyInt_AsLong PyLong_AsLong + #define PyInt_AS_LONG PyLong_AS_LONG + #define PyInt_AsSsize_t PyLong_AsSsize_t + #define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask + #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask + #define PyNumber_Int PyNumber_Long +#endif +#if PY_MAJOR_VERSION >= 3 + #define PyBoolObject PyLongObject +#endif +#if PY_MAJOR_VERSION >= 3 && CYTHON_COMPILING_IN_PYPY + #ifndef PyUnicode_InternFromString + #define PyUnicode_InternFromString(s) PyUnicode_FromString(s) + #endif +#endif +#if PY_VERSION_HEX < 0x030200A4 + typedef long Py_hash_t; + #define __Pyx_PyInt_FromHash_t PyInt_FromLong + #define __Pyx_PyInt_AsHash_t PyInt_AsLong +#else + #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t + #define __Pyx_PyInt_AsHash_t PyInt_AsSsize_t +#endif +#if PY_MAJOR_VERSION >= 3 + #define __Pyx_PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : (Py_INCREF(func), func)) +#else + #define __Pyx_PyMethod_New(func, self, klass) PyMethod_New(func, self, klass) +#endif +#if CYTHON_USE_ASYNC_SLOTS + #if PY_VERSION_HEX >= 0x030500B1 + #define __Pyx_PyAsyncMethodsStruct PyAsyncMethods + #define __Pyx_PyType_AsAsync(obj) (Py_TYPE(obj)->tp_as_async) + #else + #define __Pyx_PyType_AsAsync(obj) ((__Pyx_PyAsyncMethodsStruct*) (Py_TYPE(obj)->tp_reserved)) + #endif +#else + #define __Pyx_PyType_AsAsync(obj) NULL +#endif +#ifndef __Pyx_PyAsyncMethodsStruct + typedef struct { + unaryfunc am_await; + unaryfunc am_aiter; + unaryfunc am_anext; + } __Pyx_PyAsyncMethodsStruct; +#endif + +#if defined(WIN32) || defined(MS_WINDOWS) + #define _USE_MATH_DEFINES +#endif +#include +#ifdef NAN +#define __PYX_NAN() ((float) NAN) +#else +static CYTHON_INLINE float __PYX_NAN() { + float value; + memset(&value, 0xFF, sizeof(value)); + return value; +} +#endif +#if defined(__CYGWIN__) && defined(_LDBL_EQ_DBL) +#define __Pyx_truncl trunc +#else +#define __Pyx_truncl truncl +#endif + + +#define __PYX_ERR(f_index, lineno, Ln_error) \ +{ \ + __pyx_filename = __pyx_f[f_index]; __pyx_lineno = lineno; __pyx_clineno = __LINE__; goto Ln_error; \ +} + +#ifndef __PYX_EXTERN_C + #ifdef __cplusplus + #define __PYX_EXTERN_C extern "C" + #else + #define __PYX_EXTERN_C extern + #endif +#endif + +#define __PYX_HAVE__mesh_core_cython +#define __PYX_HAVE_API__mesh_core_cython +/* Early includes */ +#include +#include +#include "numpy/arrayobject.h" +#include "numpy/ufuncobject.h" +#include "ios" +#include "new" +#include "stdexcept" +#include "typeinfo" +#include +#include "mesh_core.h" +#ifdef _OPENMP +#include +#endif /* _OPENMP */ + +#if defined(PYREX_WITHOUT_ASSERTIONS) && !defined(CYTHON_WITHOUT_ASSERTIONS) +#define CYTHON_WITHOUT_ASSERTIONS +#endif + +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding; + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; + +#define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII 0 +#define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT 0 +#define __PYX_DEFAULT_STRING_ENCODING "" +#define __Pyx_PyObject_FromString __Pyx_PyBytes_FromString +#define __Pyx_PyObject_FromStringAndSize __Pyx_PyBytes_FromStringAndSize +#define __Pyx_uchar_cast(c) ((unsigned char)c) +#define __Pyx_long_cast(x) ((long)x) +#define __Pyx_fits_Py_ssize_t(v, type, is_signed) (\ + (sizeof(type) < sizeof(Py_ssize_t)) ||\ + (sizeof(type) > sizeof(Py_ssize_t) &&\ + likely(v < (type)PY_SSIZE_T_MAX ||\ + v == (type)PY_SSIZE_T_MAX) &&\ + (!is_signed || likely(v > (type)PY_SSIZE_T_MIN ||\ + v == (type)PY_SSIZE_T_MIN))) ||\ + (sizeof(type) == sizeof(Py_ssize_t) &&\ + (is_signed || likely(v < (type)PY_SSIZE_T_MAX ||\ + v == (type)PY_SSIZE_T_MAX))) ) +#if defined (__cplusplus) && __cplusplus >= 201103L + #include + #define __Pyx_sst_abs(value) std::abs(value) +#elif SIZEOF_INT >= SIZEOF_SIZE_T + #define __Pyx_sst_abs(value) abs(value) +#elif SIZEOF_LONG >= SIZEOF_SIZE_T + #define __Pyx_sst_abs(value) labs(value) +#elif defined (_MSC_VER) + #define __Pyx_sst_abs(value) ((Py_ssize_t)_abs64(value)) +#elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L + #define __Pyx_sst_abs(value) llabs(value) +#elif defined (__GNUC__) + #define __Pyx_sst_abs(value) __builtin_llabs(value) +#else + #define __Pyx_sst_abs(value) ((value<0) ? -value : value) +#endif +static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject*); +static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length); +#define __Pyx_PyByteArray_FromString(s) PyByteArray_FromStringAndSize((const char*)s, strlen((const char*)s)) +#define __Pyx_PyByteArray_FromStringAndSize(s, l) PyByteArray_FromStringAndSize((const char*)s, l) +#define __Pyx_PyBytes_FromString PyBytes_FromString +#define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize +static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*); +#if PY_MAJOR_VERSION < 3 + #define __Pyx_PyStr_FromString __Pyx_PyBytes_FromString + #define __Pyx_PyStr_FromStringAndSize __Pyx_PyBytes_FromStringAndSize +#else + #define __Pyx_PyStr_FromString __Pyx_PyUnicode_FromString + #define __Pyx_PyStr_FromStringAndSize __Pyx_PyUnicode_FromStringAndSize +#endif +#define __Pyx_PyBytes_AsWritableString(s) ((char*) PyBytes_AS_STRING(s)) +#define __Pyx_PyBytes_AsWritableSString(s) ((signed char*) PyBytes_AS_STRING(s)) +#define __Pyx_PyBytes_AsWritableUString(s) ((unsigned char*) PyBytes_AS_STRING(s)) +#define __Pyx_PyBytes_AsString(s) ((const char*) PyBytes_AS_STRING(s)) +#define __Pyx_PyBytes_AsSString(s) ((const signed char*) PyBytes_AS_STRING(s)) +#define __Pyx_PyBytes_AsUString(s) ((const unsigned char*) PyBytes_AS_STRING(s)) +#define __Pyx_PyObject_AsWritableString(s) ((char*) __Pyx_PyObject_AsString(s)) +#define __Pyx_PyObject_AsWritableSString(s) ((signed char*) __Pyx_PyObject_AsString(s)) +#define __Pyx_PyObject_AsWritableUString(s) ((unsigned char*) __Pyx_PyObject_AsString(s)) +#define __Pyx_PyObject_AsSString(s) ((const signed char*) __Pyx_PyObject_AsString(s)) +#define __Pyx_PyObject_AsUString(s) ((const unsigned char*) __Pyx_PyObject_AsString(s)) +#define __Pyx_PyObject_FromCString(s) __Pyx_PyObject_FromString((const char*)s) +#define __Pyx_PyBytes_FromCString(s) __Pyx_PyBytes_FromString((const char*)s) +#define __Pyx_PyByteArray_FromCString(s) __Pyx_PyByteArray_FromString((const char*)s) +#define __Pyx_PyStr_FromCString(s) __Pyx_PyStr_FromString((const char*)s) +#define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s) +static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) { + const Py_UNICODE *u_end = u; + while (*u_end++) ; + return (size_t)(u_end - u - 1); +} +#define __Pyx_PyUnicode_FromUnicode(u) PyUnicode_FromUnicode(u, __Pyx_Py_UNICODE_strlen(u)) +#define __Pyx_PyUnicode_FromUnicodeAndLength PyUnicode_FromUnicode +#define __Pyx_PyUnicode_AsUnicode PyUnicode_AsUnicode +#define __Pyx_NewRef(obj) (Py_INCREF(obj), obj) +#define __Pyx_Owned_Py_None(b) __Pyx_NewRef(Py_None) +#define __Pyx_PyBool_FromLong(b) ((b) ? __Pyx_NewRef(Py_True) : __Pyx_NewRef(Py_False)) +static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*); +static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x); +#define __Pyx_PySequence_Tuple(obj)\ + (likely(PyTuple_CheckExact(obj)) ? __Pyx_NewRef(obj) : PySequence_Tuple(obj)) +static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); +static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t); +#if CYTHON_ASSUME_SAFE_MACROS +#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) +#else +#define __pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x) +#endif +#define __pyx_PyFloat_AsFloat(x) ((float) __pyx_PyFloat_AsDouble(x)) +#if PY_MAJOR_VERSION >= 3 +#define __Pyx_PyNumber_Int(x) (PyLong_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Long(x)) +#else +#define __Pyx_PyNumber_Int(x) (PyInt_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Int(x)) +#endif +#define __Pyx_PyNumber_Float(x) (PyFloat_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Float(x)) +#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII +static int __Pyx_sys_getdefaultencoding_not_ascii; +static int __Pyx_init_sys_getdefaultencoding_params(void) { + PyObject* sys; + PyObject* default_encoding = NULL; + PyObject* ascii_chars_u = NULL; + PyObject* ascii_chars_b = NULL; + const char* default_encoding_c; + sys = PyImport_ImportModule("sys"); + if (!sys) goto bad; + default_encoding = PyObject_CallMethod(sys, (char*) "getdefaultencoding", NULL); + Py_DECREF(sys); + if (!default_encoding) goto bad; + default_encoding_c = PyBytes_AsString(default_encoding); + if (!default_encoding_c) goto bad; + if (strcmp(default_encoding_c, "ascii") == 0) { + __Pyx_sys_getdefaultencoding_not_ascii = 0; + } else { + char ascii_chars[128]; + int c; + for (c = 0; c < 128; c++) { + ascii_chars[c] = c; + } + __Pyx_sys_getdefaultencoding_not_ascii = 1; + ascii_chars_u = PyUnicode_DecodeASCII(ascii_chars, 128, NULL); + if (!ascii_chars_u) goto bad; + ascii_chars_b = PyUnicode_AsEncodedString(ascii_chars_u, default_encoding_c, NULL); + if (!ascii_chars_b || !PyBytes_Check(ascii_chars_b) || memcmp(ascii_chars, PyBytes_AS_STRING(ascii_chars_b), 128) != 0) { + PyErr_Format( + PyExc_ValueError, + "This module compiled with c_string_encoding=ascii, but default encoding '%.200s' is not a superset of ascii.", + default_encoding_c); + goto bad; + } + Py_DECREF(ascii_chars_u); + Py_DECREF(ascii_chars_b); + } + Py_DECREF(default_encoding); + return 0; +bad: + Py_XDECREF(default_encoding); + Py_XDECREF(ascii_chars_u); + Py_XDECREF(ascii_chars_b); + return -1; +} +#endif +#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT && PY_MAJOR_VERSION >= 3 +#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeUTF8(c_str, size, NULL) +#else +#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL) +#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT +static char* __PYX_DEFAULT_STRING_ENCODING; +static int __Pyx_init_sys_getdefaultencoding_params(void) { + PyObject* sys; + PyObject* default_encoding = NULL; + char* default_encoding_c; + sys = PyImport_ImportModule("sys"); + if (!sys) goto bad; + default_encoding = PyObject_CallMethod(sys, (char*) (const char*) "getdefaultencoding", NULL); + Py_DECREF(sys); + if (!default_encoding) goto bad; + default_encoding_c = PyBytes_AsString(default_encoding); + if (!default_encoding_c) goto bad; + __PYX_DEFAULT_STRING_ENCODING = (char*) malloc(strlen(default_encoding_c)); + if (!__PYX_DEFAULT_STRING_ENCODING) goto bad; + strcpy(__PYX_DEFAULT_STRING_ENCODING, default_encoding_c); + Py_DECREF(default_encoding); + return 0; +bad: + Py_XDECREF(default_encoding); + return -1; +} +#endif +#endif + + +/* Test for GCC > 2.95 */ +#if defined(__GNUC__) && (__GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95))) + #define likely(x) __builtin_expect(!!(x), 1) + #define unlikely(x) __builtin_expect(!!(x), 0) +#else /* !__GNUC__ or GCC < 2.95 */ + #define likely(x) (x) + #define unlikely(x) (x) +#endif /* __GNUC__ */ +static CYTHON_INLINE void __Pyx_pretend_to_initialize(void* ptr) { (void)ptr; } + +static PyObject *__pyx_m = NULL; +static PyObject *__pyx_d; +static PyObject *__pyx_b; +static PyObject *__pyx_cython_runtime; +static PyObject *__pyx_empty_tuple; +static PyObject *__pyx_empty_bytes; +static PyObject *__pyx_empty_unicode; +static int __pyx_lineno; +static int __pyx_clineno = 0; +static const char * __pyx_cfilenm= __FILE__; +static const char *__pyx_filename; + +/* Header.proto */ +#if !defined(CYTHON_CCOMPLEX) + #if defined(__cplusplus) + #define CYTHON_CCOMPLEX 1 + #elif defined(_Complex_I) + #define CYTHON_CCOMPLEX 1 + #else + #define CYTHON_CCOMPLEX 0 + #endif +#endif +#if CYTHON_CCOMPLEX + #ifdef __cplusplus + #include + #else + #include + #endif +#endif +#if CYTHON_CCOMPLEX && !defined(__cplusplus) && defined(__sun__) && defined(__GNUC__) + #undef _Complex_I + #define _Complex_I 1.0fj +#endif + + +static const char *__pyx_f[] = { + "insightface/thirdparty/face3d/mesh/cython/mesh_core_cython.pyx", + "__init__.pxd", + "stringsource", + "type.pxd", +}; +/* BufferFormatStructs.proto */ +#define IS_UNSIGNED(type) (((type) -1) > 0) +struct __Pyx_StructField_; +#define __PYX_BUF_FLAGS_PACKED_STRUCT (1 << 0) +typedef struct { + const char* name; + struct __Pyx_StructField_* fields; + size_t size; + size_t arraysize[8]; + int ndim; + char typegroup; + char is_unsigned; + int flags; +} __Pyx_TypeInfo; +typedef struct __Pyx_StructField_ { + __Pyx_TypeInfo* type; + const char* name; + size_t offset; +} __Pyx_StructField; +typedef struct { + __Pyx_StructField* field; + size_t parent_offset; +} __Pyx_BufFmt_StackElem; +typedef struct { + __Pyx_StructField root; + __Pyx_BufFmt_StackElem* head; + size_t fmt_offset; + size_t new_count, enc_count; + size_t struct_alignment; + int is_complex; + char enc_type; + char new_packmode; + char enc_packmode; + char is_valid_array; +} __Pyx_BufFmt_Context; + + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":730 + * # in Cython to enable them only on the right systems. + * + * ctypedef npy_int8 int8_t # <<<<<<<<<<<<<< + * ctypedef npy_int16 int16_t + * ctypedef npy_int32 int32_t + */ +typedef npy_int8 __pyx_t_5numpy_int8_t; + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":731 + * + * ctypedef npy_int8 int8_t + * ctypedef npy_int16 int16_t # <<<<<<<<<<<<<< + * ctypedef npy_int32 int32_t + * ctypedef npy_int64 int64_t + */ +typedef npy_int16 __pyx_t_5numpy_int16_t; + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":732 + * ctypedef npy_int8 int8_t + * ctypedef npy_int16 int16_t + * ctypedef npy_int32 int32_t # <<<<<<<<<<<<<< + * ctypedef npy_int64 int64_t + * #ctypedef npy_int96 int96_t + */ +typedef npy_int32 __pyx_t_5numpy_int32_t; + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":733 + * ctypedef npy_int16 int16_t + * ctypedef npy_int32 int32_t + * ctypedef npy_int64 int64_t # <<<<<<<<<<<<<< + * #ctypedef npy_int96 int96_t + * #ctypedef npy_int128 int128_t + */ +typedef npy_int64 __pyx_t_5numpy_int64_t; + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":737 + * #ctypedef npy_int128 int128_t + * + * ctypedef npy_uint8 uint8_t # <<<<<<<<<<<<<< + * ctypedef npy_uint16 uint16_t + * ctypedef npy_uint32 uint32_t + */ +typedef npy_uint8 __pyx_t_5numpy_uint8_t; + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":738 + * + * ctypedef npy_uint8 uint8_t + * ctypedef npy_uint16 uint16_t # <<<<<<<<<<<<<< + * ctypedef npy_uint32 uint32_t + * ctypedef npy_uint64 uint64_t + */ +typedef npy_uint16 __pyx_t_5numpy_uint16_t; + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":739 + * ctypedef npy_uint8 uint8_t + * ctypedef npy_uint16 uint16_t + * ctypedef npy_uint32 uint32_t # <<<<<<<<<<<<<< + * ctypedef npy_uint64 uint64_t + * #ctypedef npy_uint96 uint96_t + */ +typedef npy_uint32 __pyx_t_5numpy_uint32_t; + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":740 + * ctypedef npy_uint16 uint16_t + * ctypedef npy_uint32 uint32_t + * ctypedef npy_uint64 uint64_t # <<<<<<<<<<<<<< + * #ctypedef npy_uint96 uint96_t + * #ctypedef npy_uint128 uint128_t + */ +typedef npy_uint64 __pyx_t_5numpy_uint64_t; + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":744 + * #ctypedef npy_uint128 uint128_t + * + * ctypedef npy_float32 float32_t # <<<<<<<<<<<<<< + * ctypedef npy_float64 float64_t + * #ctypedef npy_float80 float80_t + */ +typedef npy_float32 __pyx_t_5numpy_float32_t; + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":745 + * + * ctypedef npy_float32 float32_t + * ctypedef npy_float64 float64_t # <<<<<<<<<<<<<< + * #ctypedef npy_float80 float80_t + * #ctypedef npy_float128 float128_t + */ +typedef npy_float64 __pyx_t_5numpy_float64_t; + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":754 + * # The int types are mapped a bit surprising -- + * # numpy.int corresponds to 'l' and numpy.long to 'q' + * ctypedef npy_long int_t # <<<<<<<<<<<<<< + * ctypedef npy_longlong long_t + * ctypedef npy_longlong longlong_t + */ +typedef npy_long __pyx_t_5numpy_int_t; + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":755 + * # numpy.int corresponds to 'l' and numpy.long to 'q' + * ctypedef npy_long int_t + * ctypedef npy_longlong long_t # <<<<<<<<<<<<<< + * ctypedef npy_longlong longlong_t + * + */ +typedef npy_longlong __pyx_t_5numpy_long_t; + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":756 + * ctypedef npy_long int_t + * ctypedef npy_longlong long_t + * ctypedef npy_longlong longlong_t # <<<<<<<<<<<<<< + * + * ctypedef npy_ulong uint_t + */ +typedef npy_longlong __pyx_t_5numpy_longlong_t; + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":758 + * ctypedef npy_longlong longlong_t + * + * ctypedef npy_ulong uint_t # <<<<<<<<<<<<<< + * ctypedef npy_ulonglong ulong_t + * ctypedef npy_ulonglong ulonglong_t + */ +typedef npy_ulong __pyx_t_5numpy_uint_t; + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":759 + * + * ctypedef npy_ulong uint_t + * ctypedef npy_ulonglong ulong_t # <<<<<<<<<<<<<< + * ctypedef npy_ulonglong ulonglong_t + * + */ +typedef npy_ulonglong __pyx_t_5numpy_ulong_t; + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":760 + * ctypedef npy_ulong uint_t + * ctypedef npy_ulonglong ulong_t + * ctypedef npy_ulonglong ulonglong_t # <<<<<<<<<<<<<< + * + * ctypedef npy_intp intp_t + */ +typedef npy_ulonglong __pyx_t_5numpy_ulonglong_t; + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":762 + * ctypedef npy_ulonglong ulonglong_t + * + * ctypedef npy_intp intp_t # <<<<<<<<<<<<<< + * ctypedef npy_uintp uintp_t + * + */ +typedef npy_intp __pyx_t_5numpy_intp_t; + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":763 + * + * ctypedef npy_intp intp_t + * ctypedef npy_uintp uintp_t # <<<<<<<<<<<<<< + * + * ctypedef npy_double float_t + */ +typedef npy_uintp __pyx_t_5numpy_uintp_t; + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":765 + * ctypedef npy_uintp uintp_t + * + * ctypedef npy_double float_t # <<<<<<<<<<<<<< + * ctypedef npy_double double_t + * ctypedef npy_longdouble longdouble_t + */ +typedef npy_double __pyx_t_5numpy_float_t; + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":766 + * + * ctypedef npy_double float_t + * ctypedef npy_double double_t # <<<<<<<<<<<<<< + * ctypedef npy_longdouble longdouble_t + * + */ +typedef npy_double __pyx_t_5numpy_double_t; + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":767 + * ctypedef npy_double float_t + * ctypedef npy_double double_t + * ctypedef npy_longdouble longdouble_t # <<<<<<<<<<<<<< + * + * ctypedef npy_cfloat cfloat_t + */ +typedef npy_longdouble __pyx_t_5numpy_longdouble_t; +/* Declarations.proto */ +#if CYTHON_CCOMPLEX + #ifdef __cplusplus + typedef ::std::complex< float > __pyx_t_float_complex; + #else + typedef float _Complex __pyx_t_float_complex; + #endif +#else + typedef struct { float real, imag; } __pyx_t_float_complex; +#endif +static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float, float); + +/* Declarations.proto */ +#if CYTHON_CCOMPLEX + #ifdef __cplusplus + typedef ::std::complex< double > __pyx_t_double_complex; + #else + typedef double _Complex __pyx_t_double_complex; + #endif +#else + typedef struct { double real, imag; } __pyx_t_double_complex; +#endif +static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double, double); + + +/*--- Type declarations ---*/ + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":769 + * ctypedef npy_longdouble longdouble_t + * + * ctypedef npy_cfloat cfloat_t # <<<<<<<<<<<<<< + * ctypedef npy_cdouble cdouble_t + * ctypedef npy_clongdouble clongdouble_t + */ +typedef npy_cfloat __pyx_t_5numpy_cfloat_t; + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":770 + * + * ctypedef npy_cfloat cfloat_t + * ctypedef npy_cdouble cdouble_t # <<<<<<<<<<<<<< + * ctypedef npy_clongdouble clongdouble_t + * + */ +typedef npy_cdouble __pyx_t_5numpy_cdouble_t; + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":771 + * ctypedef npy_cfloat cfloat_t + * ctypedef npy_cdouble cdouble_t + * ctypedef npy_clongdouble clongdouble_t # <<<<<<<<<<<<<< + * + * ctypedef npy_cdouble complex_t + */ +typedef npy_clongdouble __pyx_t_5numpy_clongdouble_t; + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":773 + * ctypedef npy_clongdouble clongdouble_t + * + * ctypedef npy_cdouble complex_t # <<<<<<<<<<<<<< + * + * cdef inline object PyArray_MultiIterNew1(a): + */ +typedef npy_cdouble __pyx_t_5numpy_complex_t; + +/* --- Runtime support code (head) --- */ +/* Refnanny.proto */ +#ifndef CYTHON_REFNANNY + #define CYTHON_REFNANNY 0 +#endif +#if CYTHON_REFNANNY + typedef struct { + void (*INCREF)(void*, PyObject*, int); + void (*DECREF)(void*, PyObject*, int); + void (*GOTREF)(void*, PyObject*, int); + void (*GIVEREF)(void*, PyObject*, int); + void* (*SetupContext)(const char*, int, const char*); + void (*FinishContext)(void**); + } __Pyx_RefNannyAPIStruct; + static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL; + static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname); + #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL; +#ifdef WITH_THREAD + #define __Pyx_RefNannySetupContext(name, acquire_gil)\ + if (acquire_gil) {\ + PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\ + __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__);\ + PyGILState_Release(__pyx_gilstate_save);\ + } else {\ + __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__);\ + } +#else + #define __Pyx_RefNannySetupContext(name, acquire_gil)\ + __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__) +#endif + #define __Pyx_RefNannyFinishContext()\ + __Pyx_RefNanny->FinishContext(&__pyx_refnanny) + #define __Pyx_INCREF(r) __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__) + #define __Pyx_DECREF(r) __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__) + #define __Pyx_GOTREF(r) __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), __LINE__) + #define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), __LINE__) + #define __Pyx_XINCREF(r) do { if((r) != NULL) {__Pyx_INCREF(r); }} while(0) + #define __Pyx_XDECREF(r) do { if((r) != NULL) {__Pyx_DECREF(r); }} while(0) + #define __Pyx_XGOTREF(r) do { if((r) != NULL) {__Pyx_GOTREF(r); }} while(0) + #define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);}} while(0) +#else + #define __Pyx_RefNannyDeclarations + #define __Pyx_RefNannySetupContext(name, acquire_gil) + #define __Pyx_RefNannyFinishContext() + #define __Pyx_INCREF(r) Py_INCREF(r) + #define __Pyx_DECREF(r) Py_DECREF(r) + #define __Pyx_GOTREF(r) + #define __Pyx_GIVEREF(r) + #define __Pyx_XINCREF(r) Py_XINCREF(r) + #define __Pyx_XDECREF(r) Py_XDECREF(r) + #define __Pyx_XGOTREF(r) + #define __Pyx_XGIVEREF(r) +#endif +#define __Pyx_XDECREF_SET(r, v) do {\ + PyObject *tmp = (PyObject *) r;\ + r = v; __Pyx_XDECREF(tmp);\ + } while (0) +#define __Pyx_DECREF_SET(r, v) do {\ + PyObject *tmp = (PyObject *) r;\ + r = v; __Pyx_DECREF(tmp);\ + } while (0) +#define __Pyx_CLEAR(r) do { PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);} while(0) +#define __Pyx_XCLEAR(r) do { if((r) != NULL) {PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);}} while(0) + +/* RaiseArgTupleInvalid.proto */ +static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact, + Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found); + +/* RaiseDoubleKeywords.proto */ +static void __Pyx_RaiseDoubleKeywordsError(const char* func_name, PyObject* kw_name); + +/* ParseKeywords.proto */ +static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject **argnames[],\ + PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args,\ + const char* function_name); + +/* ArgTypeTest.proto */ +#define __Pyx_ArgTypeTest(obj, type, none_allowed, name, exact)\ + ((likely((Py_TYPE(obj) == type) | (none_allowed && (obj == Py_None)))) ? 1 :\ + __Pyx__ArgTypeTest(obj, type, name, exact)) +static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact); + +/* IsLittleEndian.proto */ +static CYTHON_INLINE int __Pyx_Is_Little_Endian(void); + +/* BufferFormatCheck.proto */ +static const char* __Pyx_BufFmt_CheckString(__Pyx_BufFmt_Context* ctx, const char* ts); +static void __Pyx_BufFmt_Init(__Pyx_BufFmt_Context* ctx, + __Pyx_BufFmt_StackElem* stack, + __Pyx_TypeInfo* type); + +/* BufferGetAndValidate.proto */ +#define __Pyx_GetBufferAndValidate(buf, obj, dtype, flags, nd, cast, stack)\ + ((obj == Py_None || obj == NULL) ?\ + (__Pyx_ZeroBuffer(buf), 0) :\ + __Pyx__GetBufferAndValidate(buf, obj, dtype, flags, nd, cast, stack)) +static int __Pyx__GetBufferAndValidate(Py_buffer* buf, PyObject* obj, + __Pyx_TypeInfo* dtype, int flags, int nd, int cast, __Pyx_BufFmt_StackElem* stack); +static void __Pyx_ZeroBuffer(Py_buffer* buf); +static CYTHON_INLINE void __Pyx_SafeReleaseBuffer(Py_buffer* info); +static Py_ssize_t __Pyx_minusones[] = { -1, -1, -1, -1, -1, -1, -1, -1 }; +static Py_ssize_t __Pyx_zeros[] = { 0, 0, 0, 0, 0, 0, 0, 0 }; + +/* PyThreadStateGet.proto */ +#if CYTHON_FAST_THREAD_STATE +#define __Pyx_PyThreadState_declare PyThreadState *__pyx_tstate; +#define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; +#define __Pyx_PyErr_Occurred() __pyx_tstate->curexc_type +#else +#define __Pyx_PyThreadState_declare +#define __Pyx_PyThreadState_assign +#define __Pyx_PyErr_Occurred() PyErr_Occurred() +#endif + +/* PyErrFetchRestore.proto */ +#if CYTHON_FAST_THREAD_STATE +#define __Pyx_PyErr_Clear() __Pyx_ErrRestore(NULL, NULL, NULL) +#define __Pyx_ErrRestoreWithState(type, value, tb) __Pyx_ErrRestoreInState(PyThreadState_GET(), type, value, tb) +#define __Pyx_ErrFetchWithState(type, value, tb) __Pyx_ErrFetchInState(PyThreadState_GET(), type, value, tb) +#define __Pyx_ErrRestore(type, value, tb) __Pyx_ErrRestoreInState(__pyx_tstate, type, value, tb) +#define __Pyx_ErrFetch(type, value, tb) __Pyx_ErrFetchInState(__pyx_tstate, type, value, tb) +static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb); +static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb); +#if CYTHON_COMPILING_IN_CPYTHON +#define __Pyx_PyErr_SetNone(exc) (Py_INCREF(exc), __Pyx_ErrRestore((exc), NULL, NULL)) +#else +#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc) +#endif +#else +#define __Pyx_PyErr_Clear() PyErr_Clear() +#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc) +#define __Pyx_ErrRestoreWithState(type, value, tb) PyErr_Restore(type, value, tb) +#define __Pyx_ErrFetchWithState(type, value, tb) PyErr_Fetch(type, value, tb) +#define __Pyx_ErrRestoreInState(tstate, type, value, tb) PyErr_Restore(type, value, tb) +#define __Pyx_ErrFetchInState(tstate, type, value, tb) PyErr_Fetch(type, value, tb) +#define __Pyx_ErrRestore(type, value, tb) PyErr_Restore(type, value, tb) +#define __Pyx_ErrFetch(type, value, tb) PyErr_Fetch(type, value, tb) +#endif + +/* PyObjectGetAttrStr.proto */ +#if CYTHON_USE_TYPE_SLOTS +static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name); +#else +#define __Pyx_PyObject_GetAttrStr(o,n) PyObject_GetAttr(o,n) +#endif + +/* GetBuiltinName.proto */ +static PyObject *__Pyx_GetBuiltinName(PyObject *name); + +/* PyObjectCall.proto */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw); +#else +#define __Pyx_PyObject_Call(func, arg, kw) PyObject_Call(func, arg, kw) +#endif + +/* RaiseException.proto */ +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause); + +/* PyCFunctionFastCall.proto */ +#if CYTHON_FAST_PYCCALL +static CYTHON_INLINE PyObject *__Pyx_PyCFunction_FastCall(PyObject *func, PyObject **args, Py_ssize_t nargs); +#else +#define __Pyx_PyCFunction_FastCall(func, args, nargs) (assert(0), NULL) +#endif + +/* PyFunctionFastCall.proto */ +#if CYTHON_FAST_PYCALL +#define __Pyx_PyFunction_FastCall(func, args, nargs)\ + __Pyx_PyFunction_FastCallDict((func), (args), (nargs), NULL) +#if 1 || PY_VERSION_HEX < 0x030600B1 +static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, int nargs, PyObject *kwargs); +#else +#define __Pyx_PyFunction_FastCallDict(func, args, nargs, kwargs) _PyFunction_FastCallDict(func, args, nargs, kwargs) +#endif +#endif + +/* PyObjectCallMethO.proto */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg); +#endif + +/* PyObjectCallOneArg.proto */ +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg); + +/* DictGetItem.proto */ +#if PY_MAJOR_VERSION >= 3 && !CYTHON_COMPILING_IN_PYPY +static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key); +#define __Pyx_PyObject_Dict_GetItem(obj, name)\ + (likely(PyDict_CheckExact(obj)) ?\ + __Pyx_PyDict_GetItem(obj, name) : PyObject_GetItem(obj, name)) +#else +#define __Pyx_PyDict_GetItem(d, key) PyObject_GetItem(d, key) +#define __Pyx_PyObject_Dict_GetItem(obj, name) PyObject_GetItem(obj, name) +#endif + +/* RaiseTooManyValuesToUnpack.proto */ +static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected); + +/* RaiseNeedMoreValuesToUnpack.proto */ +static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index); + +/* RaiseNoneIterError.proto */ +static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void); + +/* ExtTypeTest.proto */ +static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type); + +/* SaveResetException.proto */ +#if CYTHON_FAST_THREAD_STATE +#define __Pyx_ExceptionSave(type, value, tb) __Pyx__ExceptionSave(__pyx_tstate, type, value, tb) +static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb); +#define __Pyx_ExceptionReset(type, value, tb) __Pyx__ExceptionReset(__pyx_tstate, type, value, tb) +static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb); +#else +#define __Pyx_ExceptionSave(type, value, tb) PyErr_GetExcInfo(type, value, tb) +#define __Pyx_ExceptionReset(type, value, tb) PyErr_SetExcInfo(type, value, tb) +#endif + +/* PyErrExceptionMatches.proto */ +#if CYTHON_FAST_THREAD_STATE +#define __Pyx_PyErr_ExceptionMatches(err) __Pyx_PyErr_ExceptionMatchesInState(__pyx_tstate, err) +static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err); +#else +#define __Pyx_PyErr_ExceptionMatches(err) PyErr_ExceptionMatches(err) +#endif + +/* GetException.proto */ +#if CYTHON_FAST_THREAD_STATE +#define __Pyx_GetException(type, value, tb) __Pyx__GetException(__pyx_tstate, type, value, tb) +static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb); +#else +static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb); +#endif + +/* Import.proto */ +static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level); + +/* CLineInTraceback.proto */ +#ifdef CYTHON_CLINE_IN_TRACEBACK +#define __Pyx_CLineForTraceback(tstate, c_line) (((CYTHON_CLINE_IN_TRACEBACK)) ? c_line : 0) +#else +static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line); +#endif + +/* CodeObjectCache.proto */ +typedef struct { + PyCodeObject* code_object; + int code_line; +} __Pyx_CodeObjectCacheEntry; +struct __Pyx_CodeObjectCache { + int count; + int max_count; + __Pyx_CodeObjectCacheEntry* entries; +}; +static struct __Pyx_CodeObjectCache __pyx_code_cache = {0,0,NULL}; +static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line); +static PyCodeObject *__pyx_find_code_object(int code_line); +static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object); + +/* AddTraceback.proto */ +static void __Pyx_AddTraceback(const char *funcname, int c_line, + int py_line, const char *filename); + +/* BufferStructDeclare.proto */ +typedef struct { + Py_ssize_t shape, strides, suboffsets; +} __Pyx_Buf_DimInfo; +typedef struct { + size_t refcount; + Py_buffer pybuffer; +} __Pyx_Buffer; +typedef struct { + __Pyx_Buffer *rcbuffer; + char *data; + __Pyx_Buf_DimInfo diminfo[8]; +} __Pyx_LocalBuf_ND; + +#if PY_MAJOR_VERSION < 3 + static int __Pyx_GetBuffer(PyObject *obj, Py_buffer *view, int flags); + static void __Pyx_ReleaseBuffer(Py_buffer *view); +#else + #define __Pyx_GetBuffer PyObject_GetBuffer + #define __Pyx_ReleaseBuffer PyBuffer_Release +#endif + + +/* RealImag.proto */ +#if CYTHON_CCOMPLEX + #ifdef __cplusplus + #define __Pyx_CREAL(z) ((z).real()) + #define __Pyx_CIMAG(z) ((z).imag()) + #else + #define __Pyx_CREAL(z) (__real__(z)) + #define __Pyx_CIMAG(z) (__imag__(z)) + #endif +#else + #define __Pyx_CREAL(z) ((z).real) + #define __Pyx_CIMAG(z) ((z).imag) +#endif +#if defined(__cplusplus) && CYTHON_CCOMPLEX\ + && (defined(_WIN32) || defined(__clang__) || (defined(__GNUC__) && (__GNUC__ >= 5 || __GNUC__ == 4 && __GNUC_MINOR__ >= 4 )) || __cplusplus >= 201103) + #define __Pyx_SET_CREAL(z,x) ((z).real(x)) + #define __Pyx_SET_CIMAG(z,y) ((z).imag(y)) +#else + #define __Pyx_SET_CREAL(z,x) __Pyx_CREAL(z) = (x) + #define __Pyx_SET_CIMAG(z,y) __Pyx_CIMAG(z) = (y) +#endif + +/* Arithmetic.proto */ +#if CYTHON_CCOMPLEX + #define __Pyx_c_eq_float(a, b) ((a)==(b)) + #define __Pyx_c_sum_float(a, b) ((a)+(b)) + #define __Pyx_c_diff_float(a, b) ((a)-(b)) + #define __Pyx_c_prod_float(a, b) ((a)*(b)) + #define __Pyx_c_quot_float(a, b) ((a)/(b)) + #define __Pyx_c_neg_float(a) (-(a)) + #ifdef __cplusplus + #define __Pyx_c_is_zero_float(z) ((z)==(float)0) + #define __Pyx_c_conj_float(z) (::std::conj(z)) + #if 1 + #define __Pyx_c_abs_float(z) (::std::abs(z)) + #define __Pyx_c_pow_float(a, b) (::std::pow(a, b)) + #endif + #else + #define __Pyx_c_is_zero_float(z) ((z)==0) + #define __Pyx_c_conj_float(z) (conjf(z)) + #if 1 + #define __Pyx_c_abs_float(z) (cabsf(z)) + #define __Pyx_c_pow_float(a, b) (cpowf(a, b)) + #endif + #endif +#else + static CYTHON_INLINE int __Pyx_c_eq_float(__pyx_t_float_complex, __pyx_t_float_complex); + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_sum_float(__pyx_t_float_complex, __pyx_t_float_complex); + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_diff_float(__pyx_t_float_complex, __pyx_t_float_complex); + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_prod_float(__pyx_t_float_complex, __pyx_t_float_complex); + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quot_float(__pyx_t_float_complex, __pyx_t_float_complex); + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_neg_float(__pyx_t_float_complex); + static CYTHON_INLINE int __Pyx_c_is_zero_float(__pyx_t_float_complex); + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_conj_float(__pyx_t_float_complex); + #if 1 + static CYTHON_INLINE float __Pyx_c_abs_float(__pyx_t_float_complex); + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_pow_float(__pyx_t_float_complex, __pyx_t_float_complex); + #endif +#endif + +/* Arithmetic.proto */ +#if CYTHON_CCOMPLEX + #define __Pyx_c_eq_double(a, b) ((a)==(b)) + #define __Pyx_c_sum_double(a, b) ((a)+(b)) + #define __Pyx_c_diff_double(a, b) ((a)-(b)) + #define __Pyx_c_prod_double(a, b) ((a)*(b)) + #define __Pyx_c_quot_double(a, b) ((a)/(b)) + #define __Pyx_c_neg_double(a) (-(a)) + #ifdef __cplusplus + #define __Pyx_c_is_zero_double(z) ((z)==(double)0) + #define __Pyx_c_conj_double(z) (::std::conj(z)) + #if 1 + #define __Pyx_c_abs_double(z) (::std::abs(z)) + #define __Pyx_c_pow_double(a, b) (::std::pow(a, b)) + #endif + #else + #define __Pyx_c_is_zero_double(z) ((z)==0) + #define __Pyx_c_conj_double(z) (conj(z)) + #if 1 + #define __Pyx_c_abs_double(z) (cabs(z)) + #define __Pyx_c_pow_double(a, b) (cpow(a, b)) + #endif + #endif +#else + static CYTHON_INLINE int __Pyx_c_eq_double(__pyx_t_double_complex, __pyx_t_double_complex); + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_sum_double(__pyx_t_double_complex, __pyx_t_double_complex); + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_diff_double(__pyx_t_double_complex, __pyx_t_double_complex); + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_prod_double(__pyx_t_double_complex, __pyx_t_double_complex); + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot_double(__pyx_t_double_complex, __pyx_t_double_complex); + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_neg_double(__pyx_t_double_complex); + static CYTHON_INLINE int __Pyx_c_is_zero_double(__pyx_t_double_complex); + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_conj_double(__pyx_t_double_complex); + #if 1 + static CYTHON_INLINE double __Pyx_c_abs_double(__pyx_t_double_complex); + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_pow_double(__pyx_t_double_complex, __pyx_t_double_complex); + #endif +#endif + +/* CIntToPy.proto */ +static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value); + +/* CIntToPy.proto */ +static CYTHON_INLINE PyObject* __Pyx_PyInt_From_enum__NPY_TYPES(enum NPY_TYPES value); + +/* CIntFromPy.proto */ +static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *); + +/* CIntToPy.proto */ +static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value); + +/* CIntFromPy.proto */ +static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *); + +/* FastTypeChecks.proto */ +#if CYTHON_COMPILING_IN_CPYTHON +#define __Pyx_TypeCheck(obj, type) __Pyx_IsSubtype(Py_TYPE(obj), (PyTypeObject *)type) +static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b); +static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject *type); +static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *type1, PyObject *type2); +#else +#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) +#define __Pyx_PyErr_GivenExceptionMatches(err, type) PyErr_GivenExceptionMatches(err, type) +#define __Pyx_PyErr_GivenExceptionMatches2(err, type1, type2) (PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2)) +#endif +#define __Pyx_PyException_Check(obj) __Pyx_TypeCheck(obj, PyExc_Exception) + +/* CheckBinaryVersion.proto */ +static int __Pyx_check_binary_version(void); + +/* PyIdentifierFromString.proto */ +#if !defined(__Pyx_PyIdentifier_FromString) +#if PY_MAJOR_VERSION < 3 + #define __Pyx_PyIdentifier_FromString(s) PyString_FromString(s) +#else + #define __Pyx_PyIdentifier_FromString(s) PyUnicode_FromString(s) +#endif +#endif + +/* ModuleImport.proto */ +static PyObject *__Pyx_ImportModule(const char *name); + +/* TypeImport.proto */ +static PyTypeObject *__Pyx_ImportType(const char *module_name, const char *class_name, size_t size, int strict); + +/* InitStrings.proto */ +static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); + + +/* Module declarations from 'cpython.buffer' */ + +/* Module declarations from 'libc.string' */ + +/* Module declarations from 'libc.stdio' */ + +/* Module declarations from '__builtin__' */ + +/* Module declarations from 'cpython.type' */ +static PyTypeObject *__pyx_ptype_7cpython_4type_type = 0; + +/* Module declarations from 'cpython' */ + +/* Module declarations from 'cpython.object' */ + +/* Module declarations from 'cpython.ref' */ + +/* Module declarations from 'cpython.mem' */ + +/* Module declarations from 'numpy' */ + +/* Module declarations from 'numpy' */ +static PyTypeObject *__pyx_ptype_5numpy_dtype = 0; +static PyTypeObject *__pyx_ptype_5numpy_flatiter = 0; +static PyTypeObject *__pyx_ptype_5numpy_broadcast = 0; +static PyTypeObject *__pyx_ptype_5numpy_ndarray = 0; +static PyTypeObject *__pyx_ptype_5numpy_ufunc = 0; +static CYTHON_INLINE char *__pyx_f_5numpy__util_dtypestring(PyArray_Descr *, char *, char *, int *); /*proto*/ +static CYTHON_INLINE int __pyx_f_5numpy_import_array(void); /*proto*/ + +/* Module declarations from 'libcpp.string' */ + +/* Module declarations from 'mesh_core_cython' */ +static std::string __pyx_convert_string_from_py_std__in_string(PyObject *); /*proto*/ +static __Pyx_TypeInfo __Pyx_TypeInfo_float = { "float", NULL, sizeof(float), { 0 }, 0, 'R', 0, 0 }; +static __Pyx_TypeInfo __Pyx_TypeInfo_int = { "int", NULL, sizeof(int), { 0 }, 0, IS_UNSIGNED(int) ? 'U' : 'I', IS_UNSIGNED(int), 0 }; +#define __Pyx_MODULE_NAME "mesh_core_cython" +extern int __pyx_module_is_main_mesh_core_cython; +int __pyx_module_is_main_mesh_core_cython = 0; + +/* Implementation of 'mesh_core_cython' */ +static PyObject *__pyx_builtin_ValueError; +static PyObject *__pyx_builtin_range; +static PyObject *__pyx_builtin_RuntimeError; +static PyObject *__pyx_builtin_ImportError; +static const char __pyx_k_c[] = "c"; +static const char __pyx_k_h[] = "h"; +static const char __pyx_k_w[] = "w"; +static const char __pyx_k_np[] = "np"; +static const char __pyx_k_main[] = "__main__"; +static const char __pyx_k_ntri[] = "ntri"; +static const char __pyx_k_nver[] = "nver"; +static const char __pyx_k_test[] = "__test__"; +static const char __pyx_k_image[] = "image"; +static const char __pyx_k_numpy[] = "numpy"; +static const char __pyx_k_range[] = "range"; +static const char __pyx_k_tex_c[] = "tex_c"; +static const char __pyx_k_tex_h[] = "tex_h"; +static const char __pyx_k_tex_w[] = "tex_w"; +static const char __pyx_k_colors[] = "colors"; +static const char __pyx_k_import[] = "__import__"; +static const char __pyx_k_normal[] = "normal"; +static const char __pyx_k_ntexver[] = "ntexver"; +static const char __pyx_k_texture[] = "texture"; +static const char __pyx_k_filename[] = "filename"; +static const char __pyx_k_mtl_name[] = "mtl_name"; +static const char __pyx_k_tex_nver[] = "tex_nver"; +static const char __pyx_k_vertices[] = "vertices"; +static const char __pyx_k_triangles[] = "triangles"; +static const char __pyx_k_uv_coords[] = "uv_coords"; +static const char __pyx_k_ValueError[] = "ValueError"; +static const char __pyx_k_tex_coords[] = "tex_coords"; +static const char __pyx_k_tri_normal[] = "tri_normal"; +static const char __pyx_k_ImportError[] = "ImportError"; +static const char __pyx_k_RuntimeError[] = "RuntimeError"; +static const char __pyx_k_depth_buffer[] = "depth_buffer"; +static const char __pyx_k_mapping_type[] = "mapping_type"; +static const char __pyx_k_tex_triangles[] = "tex_triangles"; +static const char __pyx_k_get_normal_core[] = "get_normal_core"; +static const char __pyx_k_triangle_buffer[] = "triangle_buffer"; +static const char __pyx_k_mesh_core_cython[] = "mesh_core_cython"; +static const char __pyx_k_barycentric_weight[] = "barycentric_weight"; +static const char __pyx_k_cline_in_traceback[] = "cline_in_traceback"; +static const char __pyx_k_render_colors_core[] = "render_colors_core"; +static const char __pyx_k_render_texture_core[] = "render_texture_core"; +static const char __pyx_k_rasterize_triangles_core[] = "rasterize_triangles_core"; +static const char __pyx_k_ndarray_is_not_C_contiguous[] = "ndarray is not C contiguous"; +static const char __pyx_k_numpy_core_multiarray_failed_to[] = "numpy.core.multiarray failed to import"; +static const char __pyx_k_unknown_dtype_code_in_numpy_pxd[] = "unknown dtype code in numpy.pxd (%d)"; +static const char __pyx_k_Format_string_allocated_too_shor[] = "Format string allocated too short, see comment in numpy.pxd"; +static const char __pyx_k_Non_native_byte_order_not_suppor[] = "Non-native byte order not supported"; +static const char __pyx_k_insightface_thirdparty_face3d_me[] = "insightface/thirdparty/face3d/mesh/cython/mesh_core_cython.pyx"; +static const char __pyx_k_ndarray_is_not_Fortran_contiguou[] = "ndarray is not Fortran contiguous"; +static const char __pyx_k_numpy_core_umath_failed_to_impor[] = "numpy.core.umath failed to import"; +static const char __pyx_k_write_obj_with_colors_texture_co[] = "write_obj_with_colors_texture_core"; +static const char __pyx_k_Format_string_allocated_too_shor_2[] = "Format string allocated too short."; +static PyObject *__pyx_kp_u_Format_string_allocated_too_shor; +static PyObject *__pyx_kp_u_Format_string_allocated_too_shor_2; +static PyObject *__pyx_n_s_ImportError; +static PyObject *__pyx_kp_u_Non_native_byte_order_not_suppor; +static PyObject *__pyx_n_s_RuntimeError; +static PyObject *__pyx_n_s_ValueError; +static PyObject *__pyx_n_s_barycentric_weight; +static PyObject *__pyx_n_s_c; +static PyObject *__pyx_n_s_cline_in_traceback; +static PyObject *__pyx_n_s_colors; +static PyObject *__pyx_n_s_depth_buffer; +static PyObject *__pyx_n_s_filename; +static PyObject *__pyx_n_s_get_normal_core; +static PyObject *__pyx_n_s_h; +static PyObject *__pyx_n_s_image; +static PyObject *__pyx_n_s_import; +static PyObject *__pyx_kp_s_insightface_thirdparty_face3d_me; +static PyObject *__pyx_n_s_main; +static PyObject *__pyx_n_s_mapping_type; +static PyObject *__pyx_n_s_mesh_core_cython; +static PyObject *__pyx_n_s_mtl_name; +static PyObject *__pyx_kp_u_ndarray_is_not_C_contiguous; +static PyObject *__pyx_kp_u_ndarray_is_not_Fortran_contiguou; +static PyObject *__pyx_n_s_normal; +static PyObject *__pyx_n_s_np; +static PyObject *__pyx_n_s_ntexver; +static PyObject *__pyx_n_s_ntri; +static PyObject *__pyx_n_s_numpy; +static PyObject *__pyx_kp_s_numpy_core_multiarray_failed_to; +static PyObject *__pyx_kp_s_numpy_core_umath_failed_to_impor; +static PyObject *__pyx_n_s_nver; +static PyObject *__pyx_n_s_range; +static PyObject *__pyx_n_s_rasterize_triangles_core; +static PyObject *__pyx_n_s_render_colors_core; +static PyObject *__pyx_n_s_render_texture_core; +static PyObject *__pyx_n_s_test; +static PyObject *__pyx_n_s_tex_c; +static PyObject *__pyx_n_s_tex_coords; +static PyObject *__pyx_n_s_tex_h; +static PyObject *__pyx_n_s_tex_nver; +static PyObject *__pyx_n_s_tex_triangles; +static PyObject *__pyx_n_s_tex_w; +static PyObject *__pyx_n_s_texture; +static PyObject *__pyx_n_s_tri_normal; +static PyObject *__pyx_n_s_triangle_buffer; +static PyObject *__pyx_n_s_triangles; +static PyObject *__pyx_kp_u_unknown_dtype_code_in_numpy_pxd; +static PyObject *__pyx_n_s_uv_coords; +static PyObject *__pyx_n_s_vertices; +static PyObject *__pyx_n_s_w; +static PyObject *__pyx_n_s_write_obj_with_colors_texture_co; +static PyObject *__pyx_pf_16mesh_core_cython_get_normal_core(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_normal, PyArrayObject *__pyx_v_tri_normal, PyArrayObject *__pyx_v_triangles, int __pyx_v_ntri); /* proto */ +static PyObject *__pyx_pf_16mesh_core_cython_2rasterize_triangles_core(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_vertices, PyArrayObject *__pyx_v_triangles, PyArrayObject *__pyx_v_depth_buffer, PyArrayObject *__pyx_v_triangle_buffer, PyArrayObject *__pyx_v_barycentric_weight, int __pyx_v_nver, int __pyx_v_ntri, int __pyx_v_h, int __pyx_v_w); /* proto */ +static PyObject *__pyx_pf_16mesh_core_cython_4render_colors_core(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_image, PyArrayObject *__pyx_v_vertices, PyArrayObject *__pyx_v_triangles, PyArrayObject *__pyx_v_colors, PyArrayObject *__pyx_v_depth_buffer, int __pyx_v_nver, int __pyx_v_ntri, int __pyx_v_h, int __pyx_v_w, int __pyx_v_c); /* proto */ +static PyObject *__pyx_pf_16mesh_core_cython_6render_texture_core(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_image, PyArrayObject *__pyx_v_vertices, PyArrayObject *__pyx_v_triangles, PyArrayObject *__pyx_v_texture, PyArrayObject *__pyx_v_tex_coords, PyArrayObject *__pyx_v_tex_triangles, PyArrayObject *__pyx_v_depth_buffer, int __pyx_v_nver, int __pyx_v_tex_nver, int __pyx_v_ntri, int __pyx_v_h, int __pyx_v_w, int __pyx_v_c, int __pyx_v_tex_h, int __pyx_v_tex_w, int __pyx_v_tex_c, int __pyx_v_mapping_type); /* proto */ +static PyObject *__pyx_pf_16mesh_core_cython_8write_obj_with_colors_texture_core(CYTHON_UNUSED PyObject *__pyx_self, std::string __pyx_v_filename, std::string __pyx_v_mtl_name, PyArrayObject *__pyx_v_vertices, PyArrayObject *__pyx_v_triangles, PyArrayObject *__pyx_v_colors, PyArrayObject *__pyx_v_uv_coords, int __pyx_v_nver, int __pyx_v_ntri, int __pyx_v_ntexver); /* proto */ +static int __pyx_pf_5numpy_7ndarray___getbuffer__(PyArrayObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags); /* proto */ +static void __pyx_pf_5numpy_7ndarray_2__releasebuffer__(PyArrayObject *__pyx_v_self, Py_buffer *__pyx_v_info); /* proto */ +static PyObject *__pyx_tuple_; +static PyObject *__pyx_tuple__2; +static PyObject *__pyx_tuple__3; +static PyObject *__pyx_tuple__4; +static PyObject *__pyx_tuple__5; +static PyObject *__pyx_tuple__6; +static PyObject *__pyx_tuple__7; +static PyObject *__pyx_tuple__8; +static PyObject *__pyx_tuple__9; +static PyObject *__pyx_tuple__10; +static PyObject *__pyx_tuple__12; +static PyObject *__pyx_tuple__14; +static PyObject *__pyx_tuple__16; +static PyObject *__pyx_tuple__18; +static PyObject *__pyx_codeobj__11; +static PyObject *__pyx_codeobj__13; +static PyObject *__pyx_codeobj__15; +static PyObject *__pyx_codeobj__17; +static PyObject *__pyx_codeobj__19; +/* Late includes */ + +/* "mesh_core_cython.pyx":40 + * int nver, int ntri, int ntexver) + * + * def get_normal_core(np.ndarray[float, ndim=2, mode = "c"] normal not None, # <<<<<<<<<<<<<< + * np.ndarray[float, ndim=2, mode = "c"] tri_normal not None, + * np.ndarray[int, ndim=2, mode="c"] triangles not None, + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_16mesh_core_cython_1get_normal_core(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static PyMethodDef __pyx_mdef_16mesh_core_cython_1get_normal_core = {"get_normal_core", (PyCFunction)__pyx_pw_16mesh_core_cython_1get_normal_core, METH_VARARGS|METH_KEYWORDS, 0}; +static PyObject *__pyx_pw_16mesh_core_cython_1get_normal_core(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { + PyArrayObject *__pyx_v_normal = 0; + PyArrayObject *__pyx_v_tri_normal = 0; + PyArrayObject *__pyx_v_triangles = 0; + int __pyx_v_ntri; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("get_normal_core (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_normal,&__pyx_n_s_tri_normal,&__pyx_n_s_triangles,&__pyx_n_s_ntri,0}; + PyObject* values[4] = {0,0,0,0}; + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; + } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_normal)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_tri_normal)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("get_normal_core", 1, 4, 4, 1); __PYX_ERR(0, 40, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 2: + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_triangles)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("get_normal_core", 1, 4, 4, 2); __PYX_ERR(0, 40, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 3: + if (likely((values[3] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_ntri)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("get_normal_core", 1, 4, 4, 3); __PYX_ERR(0, 40, __pyx_L3_error) + } + } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "get_normal_core") < 0)) __PYX_ERR(0, 40, __pyx_L3_error) + } + } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + } + __pyx_v_normal = ((PyArrayObject *)values[0]); + __pyx_v_tri_normal = ((PyArrayObject *)values[1]); + __pyx_v_triangles = ((PyArrayObject *)values[2]); + __pyx_v_ntri = __Pyx_PyInt_As_int(values[3]); if (unlikely((__pyx_v_ntri == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 43, __pyx_L3_error) + } + goto __pyx_L4_argument_unpacking_done; + __pyx_L5_argtuple_error:; + __Pyx_RaiseArgtupleInvalid("get_normal_core", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 40, __pyx_L3_error) + __pyx_L3_error:; + __Pyx_AddTraceback("mesh_core_cython.get_normal_core", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_RefNannyFinishContext(); + return NULL; + __pyx_L4_argument_unpacking_done:; + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_normal), __pyx_ptype_5numpy_ndarray, 0, "normal", 0))) __PYX_ERR(0, 40, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_tri_normal), __pyx_ptype_5numpy_ndarray, 0, "tri_normal", 0))) __PYX_ERR(0, 41, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_triangles), __pyx_ptype_5numpy_ndarray, 0, "triangles", 0))) __PYX_ERR(0, 42, __pyx_L1_error) + __pyx_r = __pyx_pf_16mesh_core_cython_get_normal_core(__pyx_self, __pyx_v_normal, __pyx_v_tri_normal, __pyx_v_triangles, __pyx_v_ntri); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_16mesh_core_cython_get_normal_core(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_normal, PyArrayObject *__pyx_v_tri_normal, PyArrayObject *__pyx_v_triangles, int __pyx_v_ntri) { + __Pyx_LocalBuf_ND __pyx_pybuffernd_normal; + __Pyx_Buffer __pyx_pybuffer_normal; + __Pyx_LocalBuf_ND __pyx_pybuffernd_tri_normal; + __Pyx_Buffer __pyx_pybuffer_tri_normal; + __Pyx_LocalBuf_ND __pyx_pybuffernd_triangles; + __Pyx_Buffer __pyx_pybuffer_triangles; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("get_normal_core", 0); + __pyx_pybuffer_normal.pybuffer.buf = NULL; + __pyx_pybuffer_normal.refcount = 0; + __pyx_pybuffernd_normal.data = NULL; + __pyx_pybuffernd_normal.rcbuffer = &__pyx_pybuffer_normal; + __pyx_pybuffer_tri_normal.pybuffer.buf = NULL; + __pyx_pybuffer_tri_normal.refcount = 0; + __pyx_pybuffernd_tri_normal.data = NULL; + __pyx_pybuffernd_tri_normal.rcbuffer = &__pyx_pybuffer_tri_normal; + __pyx_pybuffer_triangles.pybuffer.buf = NULL; + __pyx_pybuffer_triangles.refcount = 0; + __pyx_pybuffernd_triangles.data = NULL; + __pyx_pybuffernd_triangles.rcbuffer = &__pyx_pybuffer_triangles; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_normal.rcbuffer->pybuffer, (PyObject*)__pyx_v_normal, &__Pyx_TypeInfo_float, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 40, __pyx_L1_error) + } + __pyx_pybuffernd_normal.diminfo[0].strides = __pyx_pybuffernd_normal.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_normal.diminfo[0].shape = __pyx_pybuffernd_normal.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_normal.diminfo[1].strides = __pyx_pybuffernd_normal.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_normal.diminfo[1].shape = __pyx_pybuffernd_normal.rcbuffer->pybuffer.shape[1]; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_tri_normal.rcbuffer->pybuffer, (PyObject*)__pyx_v_tri_normal, &__Pyx_TypeInfo_float, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 40, __pyx_L1_error) + } + __pyx_pybuffernd_tri_normal.diminfo[0].strides = __pyx_pybuffernd_tri_normal.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_tri_normal.diminfo[0].shape = __pyx_pybuffernd_tri_normal.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_tri_normal.diminfo[1].strides = __pyx_pybuffernd_tri_normal.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_tri_normal.diminfo[1].shape = __pyx_pybuffernd_tri_normal.rcbuffer->pybuffer.shape[1]; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_triangles.rcbuffer->pybuffer, (PyObject*)__pyx_v_triangles, &__Pyx_TypeInfo_int, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 40, __pyx_L1_error) + } + __pyx_pybuffernd_triangles.diminfo[0].strides = __pyx_pybuffernd_triangles.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_triangles.diminfo[0].shape = __pyx_pybuffernd_triangles.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_triangles.diminfo[1].strides = __pyx_pybuffernd_triangles.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_triangles.diminfo[1].shape = __pyx_pybuffernd_triangles.rcbuffer->pybuffer.shape[1]; + + /* "mesh_core_cython.pyx":45 + * int ntri + * ): + * _get_normal_core( # <<<<<<<<<<<<<< + * np.PyArray_DATA(normal), np.PyArray_DATA(tri_normal), np.PyArray_DATA(triangles), + * ntri) + */ + _get_normal_core(((float *)PyArray_DATA(((PyArrayObject *)__pyx_v_normal))), ((float *)PyArray_DATA(((PyArrayObject *)__pyx_v_tri_normal))), ((int *)PyArray_DATA(((PyArrayObject *)__pyx_v_triangles))), __pyx_v_ntri); + + /* "mesh_core_cython.pyx":40 + * int nver, int ntri, int ntexver) + * + * def get_normal_core(np.ndarray[float, ndim=2, mode = "c"] normal not None, # <<<<<<<<<<<<<< + * np.ndarray[float, ndim=2, mode = "c"] tri_normal not None, + * np.ndarray[int, ndim=2, mode="c"] triangles not None, + */ + + /* function exit code */ + __pyx_r = Py_None; __Pyx_INCREF(Py_None); + goto __pyx_L0; + __pyx_L1_error:; + { PyObject *__pyx_type, *__pyx_value, *__pyx_tb; + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign + __Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_normal.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_tri_normal.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_triangles.rcbuffer->pybuffer); + __Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);} + __Pyx_AddTraceback("mesh_core_cython.get_normal_core", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + goto __pyx_L2; + __pyx_L0:; + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_normal.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_tri_normal.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_triangles.rcbuffer->pybuffer); + __pyx_L2:; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "mesh_core_cython.pyx":49 + * ntri) + * + * def rasterize_triangles_core( # <<<<<<<<<<<<<< + * np.ndarray[float, ndim=2, mode = "c"] vertices not None, + * np.ndarray[int, ndim=2, mode="c"] triangles not None, + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_16mesh_core_cython_3rasterize_triangles_core(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static PyMethodDef __pyx_mdef_16mesh_core_cython_3rasterize_triangles_core = {"rasterize_triangles_core", (PyCFunction)__pyx_pw_16mesh_core_cython_3rasterize_triangles_core, METH_VARARGS|METH_KEYWORDS, 0}; +static PyObject *__pyx_pw_16mesh_core_cython_3rasterize_triangles_core(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { + PyArrayObject *__pyx_v_vertices = 0; + PyArrayObject *__pyx_v_triangles = 0; + PyArrayObject *__pyx_v_depth_buffer = 0; + PyArrayObject *__pyx_v_triangle_buffer = 0; + PyArrayObject *__pyx_v_barycentric_weight = 0; + int __pyx_v_nver; + int __pyx_v_ntri; + int __pyx_v_h; + int __pyx_v_w; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("rasterize_triangles_core (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_vertices,&__pyx_n_s_triangles,&__pyx_n_s_depth_buffer,&__pyx_n_s_triangle_buffer,&__pyx_n_s_barycentric_weight,&__pyx_n_s_nver,&__pyx_n_s_ntri,&__pyx_n_s_h,&__pyx_n_s_w,0}; + PyObject* values[9] = {0,0,0,0,0,0,0,0,0}; + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 9: values[8] = PyTuple_GET_ITEM(__pyx_args, 8); + CYTHON_FALLTHROUGH; + case 8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7); + CYTHON_FALLTHROUGH; + case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + CYTHON_FALLTHROUGH; + case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + CYTHON_FALLTHROUGH; + case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; + } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_vertices)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_triangles)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("rasterize_triangles_core", 1, 9, 9, 1); __PYX_ERR(0, 49, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 2: + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_depth_buffer)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("rasterize_triangles_core", 1, 9, 9, 2); __PYX_ERR(0, 49, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 3: + if (likely((values[3] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_triangle_buffer)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("rasterize_triangles_core", 1, 9, 9, 3); __PYX_ERR(0, 49, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 4: + if (likely((values[4] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_barycentric_weight)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("rasterize_triangles_core", 1, 9, 9, 4); __PYX_ERR(0, 49, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 5: + if (likely((values[5] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_nver)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("rasterize_triangles_core", 1, 9, 9, 5); __PYX_ERR(0, 49, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 6: + if (likely((values[6] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_ntri)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("rasterize_triangles_core", 1, 9, 9, 6); __PYX_ERR(0, 49, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 7: + if (likely((values[7] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_h)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("rasterize_triangles_core", 1, 9, 9, 7); __PYX_ERR(0, 49, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 8: + if (likely((values[8] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_w)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("rasterize_triangles_core", 1, 9, 9, 8); __PYX_ERR(0, 49, __pyx_L3_error) + } + } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "rasterize_triangles_core") < 0)) __PYX_ERR(0, 49, __pyx_L3_error) + } + } else if (PyTuple_GET_SIZE(__pyx_args) != 9) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + values[7] = PyTuple_GET_ITEM(__pyx_args, 7); + values[8] = PyTuple_GET_ITEM(__pyx_args, 8); + } + __pyx_v_vertices = ((PyArrayObject *)values[0]); + __pyx_v_triangles = ((PyArrayObject *)values[1]); + __pyx_v_depth_buffer = ((PyArrayObject *)values[2]); + __pyx_v_triangle_buffer = ((PyArrayObject *)values[3]); + __pyx_v_barycentric_weight = ((PyArrayObject *)values[4]); + __pyx_v_nver = __Pyx_PyInt_As_int(values[5]); if (unlikely((__pyx_v_nver == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 55, __pyx_L3_error) + __pyx_v_ntri = __Pyx_PyInt_As_int(values[6]); if (unlikely((__pyx_v_ntri == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 55, __pyx_L3_error) + __pyx_v_h = __Pyx_PyInt_As_int(values[7]); if (unlikely((__pyx_v_h == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 56, __pyx_L3_error) + __pyx_v_w = __Pyx_PyInt_As_int(values[8]); if (unlikely((__pyx_v_w == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 56, __pyx_L3_error) + } + goto __pyx_L4_argument_unpacking_done; + __pyx_L5_argtuple_error:; + __Pyx_RaiseArgtupleInvalid("rasterize_triangles_core", 1, 9, 9, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 49, __pyx_L3_error) + __pyx_L3_error:; + __Pyx_AddTraceback("mesh_core_cython.rasterize_triangles_core", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_RefNannyFinishContext(); + return NULL; + __pyx_L4_argument_unpacking_done:; + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vertices), __pyx_ptype_5numpy_ndarray, 0, "vertices", 0))) __PYX_ERR(0, 50, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_triangles), __pyx_ptype_5numpy_ndarray, 0, "triangles", 0))) __PYX_ERR(0, 51, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_depth_buffer), __pyx_ptype_5numpy_ndarray, 0, "depth_buffer", 0))) __PYX_ERR(0, 52, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_triangle_buffer), __pyx_ptype_5numpy_ndarray, 0, "triangle_buffer", 0))) __PYX_ERR(0, 53, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_barycentric_weight), __pyx_ptype_5numpy_ndarray, 0, "barycentric_weight", 0))) __PYX_ERR(0, 54, __pyx_L1_error) + __pyx_r = __pyx_pf_16mesh_core_cython_2rasterize_triangles_core(__pyx_self, __pyx_v_vertices, __pyx_v_triangles, __pyx_v_depth_buffer, __pyx_v_triangle_buffer, __pyx_v_barycentric_weight, __pyx_v_nver, __pyx_v_ntri, __pyx_v_h, __pyx_v_w); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_16mesh_core_cython_2rasterize_triangles_core(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_vertices, PyArrayObject *__pyx_v_triangles, PyArrayObject *__pyx_v_depth_buffer, PyArrayObject *__pyx_v_triangle_buffer, PyArrayObject *__pyx_v_barycentric_weight, int __pyx_v_nver, int __pyx_v_ntri, int __pyx_v_h, int __pyx_v_w) { + __Pyx_LocalBuf_ND __pyx_pybuffernd_barycentric_weight; + __Pyx_Buffer __pyx_pybuffer_barycentric_weight; + __Pyx_LocalBuf_ND __pyx_pybuffernd_depth_buffer; + __Pyx_Buffer __pyx_pybuffer_depth_buffer; + __Pyx_LocalBuf_ND __pyx_pybuffernd_triangle_buffer; + __Pyx_Buffer __pyx_pybuffer_triangle_buffer; + __Pyx_LocalBuf_ND __pyx_pybuffernd_triangles; + __Pyx_Buffer __pyx_pybuffer_triangles; + __Pyx_LocalBuf_ND __pyx_pybuffernd_vertices; + __Pyx_Buffer __pyx_pybuffer_vertices; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("rasterize_triangles_core", 0); + __pyx_pybuffer_vertices.pybuffer.buf = NULL; + __pyx_pybuffer_vertices.refcount = 0; + __pyx_pybuffernd_vertices.data = NULL; + __pyx_pybuffernd_vertices.rcbuffer = &__pyx_pybuffer_vertices; + __pyx_pybuffer_triangles.pybuffer.buf = NULL; + __pyx_pybuffer_triangles.refcount = 0; + __pyx_pybuffernd_triangles.data = NULL; + __pyx_pybuffernd_triangles.rcbuffer = &__pyx_pybuffer_triangles; + __pyx_pybuffer_depth_buffer.pybuffer.buf = NULL; + __pyx_pybuffer_depth_buffer.refcount = 0; + __pyx_pybuffernd_depth_buffer.data = NULL; + __pyx_pybuffernd_depth_buffer.rcbuffer = &__pyx_pybuffer_depth_buffer; + __pyx_pybuffer_triangle_buffer.pybuffer.buf = NULL; + __pyx_pybuffer_triangle_buffer.refcount = 0; + __pyx_pybuffernd_triangle_buffer.data = NULL; + __pyx_pybuffernd_triangle_buffer.rcbuffer = &__pyx_pybuffer_triangle_buffer; + __pyx_pybuffer_barycentric_weight.pybuffer.buf = NULL; + __pyx_pybuffer_barycentric_weight.refcount = 0; + __pyx_pybuffernd_barycentric_weight.data = NULL; + __pyx_pybuffernd_barycentric_weight.rcbuffer = &__pyx_pybuffer_barycentric_weight; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_vertices.rcbuffer->pybuffer, (PyObject*)__pyx_v_vertices, &__Pyx_TypeInfo_float, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 49, __pyx_L1_error) + } + __pyx_pybuffernd_vertices.diminfo[0].strides = __pyx_pybuffernd_vertices.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_vertices.diminfo[0].shape = __pyx_pybuffernd_vertices.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_vertices.diminfo[1].strides = __pyx_pybuffernd_vertices.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_vertices.diminfo[1].shape = __pyx_pybuffernd_vertices.rcbuffer->pybuffer.shape[1]; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_triangles.rcbuffer->pybuffer, (PyObject*)__pyx_v_triangles, &__Pyx_TypeInfo_int, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 49, __pyx_L1_error) + } + __pyx_pybuffernd_triangles.diminfo[0].strides = __pyx_pybuffernd_triangles.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_triangles.diminfo[0].shape = __pyx_pybuffernd_triangles.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_triangles.diminfo[1].strides = __pyx_pybuffernd_triangles.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_triangles.diminfo[1].shape = __pyx_pybuffernd_triangles.rcbuffer->pybuffer.shape[1]; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_depth_buffer.rcbuffer->pybuffer, (PyObject*)__pyx_v_depth_buffer, &__Pyx_TypeInfo_float, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 49, __pyx_L1_error) + } + __pyx_pybuffernd_depth_buffer.diminfo[0].strides = __pyx_pybuffernd_depth_buffer.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_depth_buffer.diminfo[0].shape = __pyx_pybuffernd_depth_buffer.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_depth_buffer.diminfo[1].strides = __pyx_pybuffernd_depth_buffer.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_depth_buffer.diminfo[1].shape = __pyx_pybuffernd_depth_buffer.rcbuffer->pybuffer.shape[1]; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_triangle_buffer.rcbuffer->pybuffer, (PyObject*)__pyx_v_triangle_buffer, &__Pyx_TypeInfo_int, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 49, __pyx_L1_error) + } + __pyx_pybuffernd_triangle_buffer.diminfo[0].strides = __pyx_pybuffernd_triangle_buffer.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_triangle_buffer.diminfo[0].shape = __pyx_pybuffernd_triangle_buffer.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_triangle_buffer.diminfo[1].strides = __pyx_pybuffernd_triangle_buffer.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_triangle_buffer.diminfo[1].shape = __pyx_pybuffernd_triangle_buffer.rcbuffer->pybuffer.shape[1]; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_barycentric_weight.rcbuffer->pybuffer, (PyObject*)__pyx_v_barycentric_weight, &__Pyx_TypeInfo_float, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 49, __pyx_L1_error) + } + __pyx_pybuffernd_barycentric_weight.diminfo[0].strides = __pyx_pybuffernd_barycentric_weight.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_barycentric_weight.diminfo[0].shape = __pyx_pybuffernd_barycentric_weight.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_barycentric_weight.diminfo[1].strides = __pyx_pybuffernd_barycentric_weight.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_barycentric_weight.diminfo[1].shape = __pyx_pybuffernd_barycentric_weight.rcbuffer->pybuffer.shape[1]; + + /* "mesh_core_cython.pyx":58 + * int h, int w + * ): + * _rasterize_triangles_core( # <<<<<<<<<<<<<< + * np.PyArray_DATA(vertices), np.PyArray_DATA(triangles), + * np.PyArray_DATA(depth_buffer), np.PyArray_DATA(triangle_buffer), np.PyArray_DATA(barycentric_weight), + */ + _rasterize_triangles_core(((float *)PyArray_DATA(((PyArrayObject *)__pyx_v_vertices))), ((int *)PyArray_DATA(((PyArrayObject *)__pyx_v_triangles))), ((float *)PyArray_DATA(((PyArrayObject *)__pyx_v_depth_buffer))), ((int *)PyArray_DATA(((PyArrayObject *)__pyx_v_triangle_buffer))), ((float *)PyArray_DATA(((PyArrayObject *)__pyx_v_barycentric_weight))), __pyx_v_nver, __pyx_v_ntri, __pyx_v_h, __pyx_v_w); + + /* "mesh_core_cython.pyx":49 + * ntri) + * + * def rasterize_triangles_core( # <<<<<<<<<<<<<< + * np.ndarray[float, ndim=2, mode = "c"] vertices not None, + * np.ndarray[int, ndim=2, mode="c"] triangles not None, + */ + + /* function exit code */ + __pyx_r = Py_None; __Pyx_INCREF(Py_None); + goto __pyx_L0; + __pyx_L1_error:; + { PyObject *__pyx_type, *__pyx_value, *__pyx_tb; + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign + __Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_barycentric_weight.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_depth_buffer.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_triangle_buffer.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_triangles.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_vertices.rcbuffer->pybuffer); + __Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);} + __Pyx_AddTraceback("mesh_core_cython.rasterize_triangles_core", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + goto __pyx_L2; + __pyx_L0:; + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_barycentric_weight.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_depth_buffer.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_triangle_buffer.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_triangles.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_vertices.rcbuffer->pybuffer); + __pyx_L2:; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "mesh_core_cython.pyx":64 + * h, w) + * + * def render_colors_core(np.ndarray[float, ndim=3, mode = "c"] image not None, # <<<<<<<<<<<<<< + * np.ndarray[float, ndim=2, mode = "c"] vertices not None, + * np.ndarray[int, ndim=2, mode="c"] triangles not None, + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_16mesh_core_cython_5render_colors_core(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static PyMethodDef __pyx_mdef_16mesh_core_cython_5render_colors_core = {"render_colors_core", (PyCFunction)__pyx_pw_16mesh_core_cython_5render_colors_core, METH_VARARGS|METH_KEYWORDS, 0}; +static PyObject *__pyx_pw_16mesh_core_cython_5render_colors_core(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { + PyArrayObject *__pyx_v_image = 0; + PyArrayObject *__pyx_v_vertices = 0; + PyArrayObject *__pyx_v_triangles = 0; + PyArrayObject *__pyx_v_colors = 0; + PyArrayObject *__pyx_v_depth_buffer = 0; + int __pyx_v_nver; + int __pyx_v_ntri; + int __pyx_v_h; + int __pyx_v_w; + int __pyx_v_c; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("render_colors_core (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_image,&__pyx_n_s_vertices,&__pyx_n_s_triangles,&__pyx_n_s_colors,&__pyx_n_s_depth_buffer,&__pyx_n_s_nver,&__pyx_n_s_ntri,&__pyx_n_s_h,&__pyx_n_s_w,&__pyx_n_s_c,0}; + PyObject* values[10] = {0,0,0,0,0,0,0,0,0,0}; + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 10: values[9] = PyTuple_GET_ITEM(__pyx_args, 9); + CYTHON_FALLTHROUGH; + case 9: values[8] = PyTuple_GET_ITEM(__pyx_args, 8); + CYTHON_FALLTHROUGH; + case 8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7); + CYTHON_FALLTHROUGH; + case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + CYTHON_FALLTHROUGH; + case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + CYTHON_FALLTHROUGH; + case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; + } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_image)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_vertices)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_colors_core", 1, 10, 10, 1); __PYX_ERR(0, 64, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 2: + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_triangles)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_colors_core", 1, 10, 10, 2); __PYX_ERR(0, 64, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 3: + if (likely((values[3] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_colors)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_colors_core", 1, 10, 10, 3); __PYX_ERR(0, 64, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 4: + if (likely((values[4] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_depth_buffer)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_colors_core", 1, 10, 10, 4); __PYX_ERR(0, 64, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 5: + if (likely((values[5] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_nver)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_colors_core", 1, 10, 10, 5); __PYX_ERR(0, 64, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 6: + if (likely((values[6] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_ntri)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_colors_core", 1, 10, 10, 6); __PYX_ERR(0, 64, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 7: + if (likely((values[7] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_h)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_colors_core", 1, 10, 10, 7); __PYX_ERR(0, 64, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 8: + if (likely((values[8] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_w)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_colors_core", 1, 10, 10, 8); __PYX_ERR(0, 64, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 9: + if (likely((values[9] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_c)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_colors_core", 1, 10, 10, 9); __PYX_ERR(0, 64, __pyx_L3_error) + } + } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "render_colors_core") < 0)) __PYX_ERR(0, 64, __pyx_L3_error) + } + } else if (PyTuple_GET_SIZE(__pyx_args) != 10) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + values[7] = PyTuple_GET_ITEM(__pyx_args, 7); + values[8] = PyTuple_GET_ITEM(__pyx_args, 8); + values[9] = PyTuple_GET_ITEM(__pyx_args, 9); + } + __pyx_v_image = ((PyArrayObject *)values[0]); + __pyx_v_vertices = ((PyArrayObject *)values[1]); + __pyx_v_triangles = ((PyArrayObject *)values[2]); + __pyx_v_colors = ((PyArrayObject *)values[3]); + __pyx_v_depth_buffer = ((PyArrayObject *)values[4]); + __pyx_v_nver = __Pyx_PyInt_As_int(values[5]); if (unlikely((__pyx_v_nver == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 69, __pyx_L3_error) + __pyx_v_ntri = __Pyx_PyInt_As_int(values[6]); if (unlikely((__pyx_v_ntri == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 69, __pyx_L3_error) + __pyx_v_h = __Pyx_PyInt_As_int(values[7]); if (unlikely((__pyx_v_h == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 70, __pyx_L3_error) + __pyx_v_w = __Pyx_PyInt_As_int(values[8]); if (unlikely((__pyx_v_w == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 70, __pyx_L3_error) + __pyx_v_c = __Pyx_PyInt_As_int(values[9]); if (unlikely((__pyx_v_c == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 70, __pyx_L3_error) + } + goto __pyx_L4_argument_unpacking_done; + __pyx_L5_argtuple_error:; + __Pyx_RaiseArgtupleInvalid("render_colors_core", 1, 10, 10, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 64, __pyx_L3_error) + __pyx_L3_error:; + __Pyx_AddTraceback("mesh_core_cython.render_colors_core", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_RefNannyFinishContext(); + return NULL; + __pyx_L4_argument_unpacking_done:; + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_image), __pyx_ptype_5numpy_ndarray, 0, "image", 0))) __PYX_ERR(0, 64, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vertices), __pyx_ptype_5numpy_ndarray, 0, "vertices", 0))) __PYX_ERR(0, 65, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_triangles), __pyx_ptype_5numpy_ndarray, 0, "triangles", 0))) __PYX_ERR(0, 66, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_colors), __pyx_ptype_5numpy_ndarray, 0, "colors", 0))) __PYX_ERR(0, 67, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_depth_buffer), __pyx_ptype_5numpy_ndarray, 0, "depth_buffer", 0))) __PYX_ERR(0, 68, __pyx_L1_error) + __pyx_r = __pyx_pf_16mesh_core_cython_4render_colors_core(__pyx_self, __pyx_v_image, __pyx_v_vertices, __pyx_v_triangles, __pyx_v_colors, __pyx_v_depth_buffer, __pyx_v_nver, __pyx_v_ntri, __pyx_v_h, __pyx_v_w, __pyx_v_c); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_16mesh_core_cython_4render_colors_core(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_image, PyArrayObject *__pyx_v_vertices, PyArrayObject *__pyx_v_triangles, PyArrayObject *__pyx_v_colors, PyArrayObject *__pyx_v_depth_buffer, int __pyx_v_nver, int __pyx_v_ntri, int __pyx_v_h, int __pyx_v_w, int __pyx_v_c) { + __Pyx_LocalBuf_ND __pyx_pybuffernd_colors; + __Pyx_Buffer __pyx_pybuffer_colors; + __Pyx_LocalBuf_ND __pyx_pybuffernd_depth_buffer; + __Pyx_Buffer __pyx_pybuffer_depth_buffer; + __Pyx_LocalBuf_ND __pyx_pybuffernd_image; + __Pyx_Buffer __pyx_pybuffer_image; + __Pyx_LocalBuf_ND __pyx_pybuffernd_triangles; + __Pyx_Buffer __pyx_pybuffer_triangles; + __Pyx_LocalBuf_ND __pyx_pybuffernd_vertices; + __Pyx_Buffer __pyx_pybuffer_vertices; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("render_colors_core", 0); + __pyx_pybuffer_image.pybuffer.buf = NULL; + __pyx_pybuffer_image.refcount = 0; + __pyx_pybuffernd_image.data = NULL; + __pyx_pybuffernd_image.rcbuffer = &__pyx_pybuffer_image; + __pyx_pybuffer_vertices.pybuffer.buf = NULL; + __pyx_pybuffer_vertices.refcount = 0; + __pyx_pybuffernd_vertices.data = NULL; + __pyx_pybuffernd_vertices.rcbuffer = &__pyx_pybuffer_vertices; + __pyx_pybuffer_triangles.pybuffer.buf = NULL; + __pyx_pybuffer_triangles.refcount = 0; + __pyx_pybuffernd_triangles.data = NULL; + __pyx_pybuffernd_triangles.rcbuffer = &__pyx_pybuffer_triangles; + __pyx_pybuffer_colors.pybuffer.buf = NULL; + __pyx_pybuffer_colors.refcount = 0; + __pyx_pybuffernd_colors.data = NULL; + __pyx_pybuffernd_colors.rcbuffer = &__pyx_pybuffer_colors; + __pyx_pybuffer_depth_buffer.pybuffer.buf = NULL; + __pyx_pybuffer_depth_buffer.refcount = 0; + __pyx_pybuffernd_depth_buffer.data = NULL; + __pyx_pybuffernd_depth_buffer.rcbuffer = &__pyx_pybuffer_depth_buffer; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_image.rcbuffer->pybuffer, (PyObject*)__pyx_v_image, &__Pyx_TypeInfo_float, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 3, 0, __pyx_stack) == -1)) __PYX_ERR(0, 64, __pyx_L1_error) + } + __pyx_pybuffernd_image.diminfo[0].strides = __pyx_pybuffernd_image.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_image.diminfo[0].shape = __pyx_pybuffernd_image.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_image.diminfo[1].strides = __pyx_pybuffernd_image.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_image.diminfo[1].shape = __pyx_pybuffernd_image.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_image.diminfo[2].strides = __pyx_pybuffernd_image.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_image.diminfo[2].shape = __pyx_pybuffernd_image.rcbuffer->pybuffer.shape[2]; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_vertices.rcbuffer->pybuffer, (PyObject*)__pyx_v_vertices, &__Pyx_TypeInfo_float, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 64, __pyx_L1_error) + } + __pyx_pybuffernd_vertices.diminfo[0].strides = __pyx_pybuffernd_vertices.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_vertices.diminfo[0].shape = __pyx_pybuffernd_vertices.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_vertices.diminfo[1].strides = __pyx_pybuffernd_vertices.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_vertices.diminfo[1].shape = __pyx_pybuffernd_vertices.rcbuffer->pybuffer.shape[1]; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_triangles.rcbuffer->pybuffer, (PyObject*)__pyx_v_triangles, &__Pyx_TypeInfo_int, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 64, __pyx_L1_error) + } + __pyx_pybuffernd_triangles.diminfo[0].strides = __pyx_pybuffernd_triangles.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_triangles.diminfo[0].shape = __pyx_pybuffernd_triangles.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_triangles.diminfo[1].strides = __pyx_pybuffernd_triangles.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_triangles.diminfo[1].shape = __pyx_pybuffernd_triangles.rcbuffer->pybuffer.shape[1]; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_colors.rcbuffer->pybuffer, (PyObject*)__pyx_v_colors, &__Pyx_TypeInfo_float, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 64, __pyx_L1_error) + } + __pyx_pybuffernd_colors.diminfo[0].strides = __pyx_pybuffernd_colors.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_colors.diminfo[0].shape = __pyx_pybuffernd_colors.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_colors.diminfo[1].strides = __pyx_pybuffernd_colors.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_colors.diminfo[1].shape = __pyx_pybuffernd_colors.rcbuffer->pybuffer.shape[1]; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_depth_buffer.rcbuffer->pybuffer, (PyObject*)__pyx_v_depth_buffer, &__Pyx_TypeInfo_float, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 64, __pyx_L1_error) + } + __pyx_pybuffernd_depth_buffer.diminfo[0].strides = __pyx_pybuffernd_depth_buffer.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_depth_buffer.diminfo[0].shape = __pyx_pybuffernd_depth_buffer.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_depth_buffer.diminfo[1].strides = __pyx_pybuffernd_depth_buffer.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_depth_buffer.diminfo[1].shape = __pyx_pybuffernd_depth_buffer.rcbuffer->pybuffer.shape[1]; + + /* "mesh_core_cython.pyx":72 + * int h, int w, int c + * ): + * _render_colors_core( # <<<<<<<<<<<<<< + * np.PyArray_DATA(image), np.PyArray_DATA(vertices), np.PyArray_DATA(triangles), + * np.PyArray_DATA(colors), + */ + _render_colors_core(((float *)PyArray_DATA(((PyArrayObject *)__pyx_v_image))), ((float *)PyArray_DATA(((PyArrayObject *)__pyx_v_vertices))), ((int *)PyArray_DATA(((PyArrayObject *)__pyx_v_triangles))), ((float *)PyArray_DATA(((PyArrayObject *)__pyx_v_colors))), ((float *)PyArray_DATA(((PyArrayObject *)__pyx_v_depth_buffer))), __pyx_v_nver, __pyx_v_ntri, __pyx_v_h, __pyx_v_w, __pyx_v_c); + + /* "mesh_core_cython.pyx":64 + * h, w) + * + * def render_colors_core(np.ndarray[float, ndim=3, mode = "c"] image not None, # <<<<<<<<<<<<<< + * np.ndarray[float, ndim=2, mode = "c"] vertices not None, + * np.ndarray[int, ndim=2, mode="c"] triangles not None, + */ + + /* function exit code */ + __pyx_r = Py_None; __Pyx_INCREF(Py_None); + goto __pyx_L0; + __pyx_L1_error:; + { PyObject *__pyx_type, *__pyx_value, *__pyx_tb; + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign + __Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_colors.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_depth_buffer.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_image.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_triangles.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_vertices.rcbuffer->pybuffer); + __Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);} + __Pyx_AddTraceback("mesh_core_cython.render_colors_core", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + goto __pyx_L2; + __pyx_L0:; + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_colors.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_depth_buffer.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_image.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_triangles.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_vertices.rcbuffer->pybuffer); + __pyx_L2:; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "mesh_core_cython.pyx":79 + * h, w, c) + * + * def render_texture_core(np.ndarray[float, ndim=3, mode = "c"] image not None, # <<<<<<<<<<<<<< + * np.ndarray[float, ndim=2, mode = "c"] vertices not None, + * np.ndarray[int, ndim=2, mode="c"] triangles not None, + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_16mesh_core_cython_7render_texture_core(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static PyMethodDef __pyx_mdef_16mesh_core_cython_7render_texture_core = {"render_texture_core", (PyCFunction)__pyx_pw_16mesh_core_cython_7render_texture_core, METH_VARARGS|METH_KEYWORDS, 0}; +static PyObject *__pyx_pw_16mesh_core_cython_7render_texture_core(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { + PyArrayObject *__pyx_v_image = 0; + PyArrayObject *__pyx_v_vertices = 0; + PyArrayObject *__pyx_v_triangles = 0; + PyArrayObject *__pyx_v_texture = 0; + PyArrayObject *__pyx_v_tex_coords = 0; + PyArrayObject *__pyx_v_tex_triangles = 0; + PyArrayObject *__pyx_v_depth_buffer = 0; + int __pyx_v_nver; + int __pyx_v_tex_nver; + int __pyx_v_ntri; + int __pyx_v_h; + int __pyx_v_w; + int __pyx_v_c; + int __pyx_v_tex_h; + int __pyx_v_tex_w; + int __pyx_v_tex_c; + int __pyx_v_mapping_type; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("render_texture_core (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_image,&__pyx_n_s_vertices,&__pyx_n_s_triangles,&__pyx_n_s_texture,&__pyx_n_s_tex_coords,&__pyx_n_s_tex_triangles,&__pyx_n_s_depth_buffer,&__pyx_n_s_nver,&__pyx_n_s_tex_nver,&__pyx_n_s_ntri,&__pyx_n_s_h,&__pyx_n_s_w,&__pyx_n_s_c,&__pyx_n_s_tex_h,&__pyx_n_s_tex_w,&__pyx_n_s_tex_c,&__pyx_n_s_mapping_type,0}; + PyObject* values[17] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 17: values[16] = PyTuple_GET_ITEM(__pyx_args, 16); + CYTHON_FALLTHROUGH; + case 16: values[15] = PyTuple_GET_ITEM(__pyx_args, 15); + CYTHON_FALLTHROUGH; + case 15: values[14] = PyTuple_GET_ITEM(__pyx_args, 14); + CYTHON_FALLTHROUGH; + case 14: values[13] = PyTuple_GET_ITEM(__pyx_args, 13); + CYTHON_FALLTHROUGH; + case 13: values[12] = PyTuple_GET_ITEM(__pyx_args, 12); + CYTHON_FALLTHROUGH; + case 12: values[11] = PyTuple_GET_ITEM(__pyx_args, 11); + CYTHON_FALLTHROUGH; + case 11: values[10] = PyTuple_GET_ITEM(__pyx_args, 10); + CYTHON_FALLTHROUGH; + case 10: values[9] = PyTuple_GET_ITEM(__pyx_args, 9); + CYTHON_FALLTHROUGH; + case 9: values[8] = PyTuple_GET_ITEM(__pyx_args, 8); + CYTHON_FALLTHROUGH; + case 8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7); + CYTHON_FALLTHROUGH; + case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + CYTHON_FALLTHROUGH; + case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + CYTHON_FALLTHROUGH; + case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; + } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_image)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_vertices)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_texture_core", 1, 17, 17, 1); __PYX_ERR(0, 79, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 2: + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_triangles)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_texture_core", 1, 17, 17, 2); __PYX_ERR(0, 79, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 3: + if (likely((values[3] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_texture)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_texture_core", 1, 17, 17, 3); __PYX_ERR(0, 79, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 4: + if (likely((values[4] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_tex_coords)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_texture_core", 1, 17, 17, 4); __PYX_ERR(0, 79, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 5: + if (likely((values[5] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_tex_triangles)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_texture_core", 1, 17, 17, 5); __PYX_ERR(0, 79, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 6: + if (likely((values[6] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_depth_buffer)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_texture_core", 1, 17, 17, 6); __PYX_ERR(0, 79, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 7: + if (likely((values[7] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_nver)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_texture_core", 1, 17, 17, 7); __PYX_ERR(0, 79, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 8: + if (likely((values[8] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_tex_nver)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_texture_core", 1, 17, 17, 8); __PYX_ERR(0, 79, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 9: + if (likely((values[9] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_ntri)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_texture_core", 1, 17, 17, 9); __PYX_ERR(0, 79, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 10: + if (likely((values[10] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_h)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_texture_core", 1, 17, 17, 10); __PYX_ERR(0, 79, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 11: + if (likely((values[11] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_w)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_texture_core", 1, 17, 17, 11); __PYX_ERR(0, 79, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 12: + if (likely((values[12] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_c)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_texture_core", 1, 17, 17, 12); __PYX_ERR(0, 79, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 13: + if (likely((values[13] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_tex_h)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_texture_core", 1, 17, 17, 13); __PYX_ERR(0, 79, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 14: + if (likely((values[14] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_tex_w)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_texture_core", 1, 17, 17, 14); __PYX_ERR(0, 79, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 15: + if (likely((values[15] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_tex_c)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_texture_core", 1, 17, 17, 15); __PYX_ERR(0, 79, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 16: + if (likely((values[16] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_mapping_type)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("render_texture_core", 1, 17, 17, 16); __PYX_ERR(0, 79, __pyx_L3_error) + } + } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "render_texture_core") < 0)) __PYX_ERR(0, 79, __pyx_L3_error) + } + } else if (PyTuple_GET_SIZE(__pyx_args) != 17) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + values[7] = PyTuple_GET_ITEM(__pyx_args, 7); + values[8] = PyTuple_GET_ITEM(__pyx_args, 8); + values[9] = PyTuple_GET_ITEM(__pyx_args, 9); + values[10] = PyTuple_GET_ITEM(__pyx_args, 10); + values[11] = PyTuple_GET_ITEM(__pyx_args, 11); + values[12] = PyTuple_GET_ITEM(__pyx_args, 12); + values[13] = PyTuple_GET_ITEM(__pyx_args, 13); + values[14] = PyTuple_GET_ITEM(__pyx_args, 14); + values[15] = PyTuple_GET_ITEM(__pyx_args, 15); + values[16] = PyTuple_GET_ITEM(__pyx_args, 16); + } + __pyx_v_image = ((PyArrayObject *)values[0]); + __pyx_v_vertices = ((PyArrayObject *)values[1]); + __pyx_v_triangles = ((PyArrayObject *)values[2]); + __pyx_v_texture = ((PyArrayObject *)values[3]); + __pyx_v_tex_coords = ((PyArrayObject *)values[4]); + __pyx_v_tex_triangles = ((PyArrayObject *)values[5]); + __pyx_v_depth_buffer = ((PyArrayObject *)values[6]); + __pyx_v_nver = __Pyx_PyInt_As_int(values[7]); if (unlikely((__pyx_v_nver == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 86, __pyx_L3_error) + __pyx_v_tex_nver = __Pyx_PyInt_As_int(values[8]); if (unlikely((__pyx_v_tex_nver == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 86, __pyx_L3_error) + __pyx_v_ntri = __Pyx_PyInt_As_int(values[9]); if (unlikely((__pyx_v_ntri == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 86, __pyx_L3_error) + __pyx_v_h = __Pyx_PyInt_As_int(values[10]); if (unlikely((__pyx_v_h == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 87, __pyx_L3_error) + __pyx_v_w = __Pyx_PyInt_As_int(values[11]); if (unlikely((__pyx_v_w == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 87, __pyx_L3_error) + __pyx_v_c = __Pyx_PyInt_As_int(values[12]); if (unlikely((__pyx_v_c == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 87, __pyx_L3_error) + __pyx_v_tex_h = __Pyx_PyInt_As_int(values[13]); if (unlikely((__pyx_v_tex_h == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 88, __pyx_L3_error) + __pyx_v_tex_w = __Pyx_PyInt_As_int(values[14]); if (unlikely((__pyx_v_tex_w == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 88, __pyx_L3_error) + __pyx_v_tex_c = __Pyx_PyInt_As_int(values[15]); if (unlikely((__pyx_v_tex_c == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 88, __pyx_L3_error) + __pyx_v_mapping_type = __Pyx_PyInt_As_int(values[16]); if (unlikely((__pyx_v_mapping_type == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 89, __pyx_L3_error) + } + goto __pyx_L4_argument_unpacking_done; + __pyx_L5_argtuple_error:; + __Pyx_RaiseArgtupleInvalid("render_texture_core", 1, 17, 17, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 79, __pyx_L3_error) + __pyx_L3_error:; + __Pyx_AddTraceback("mesh_core_cython.render_texture_core", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_RefNannyFinishContext(); + return NULL; + __pyx_L4_argument_unpacking_done:; + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_image), __pyx_ptype_5numpy_ndarray, 0, "image", 0))) __PYX_ERR(0, 79, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vertices), __pyx_ptype_5numpy_ndarray, 0, "vertices", 0))) __PYX_ERR(0, 80, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_triangles), __pyx_ptype_5numpy_ndarray, 0, "triangles", 0))) __PYX_ERR(0, 81, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_texture), __pyx_ptype_5numpy_ndarray, 0, "texture", 0))) __PYX_ERR(0, 82, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_tex_coords), __pyx_ptype_5numpy_ndarray, 0, "tex_coords", 0))) __PYX_ERR(0, 83, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_tex_triangles), __pyx_ptype_5numpy_ndarray, 0, "tex_triangles", 0))) __PYX_ERR(0, 84, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_depth_buffer), __pyx_ptype_5numpy_ndarray, 0, "depth_buffer", 0))) __PYX_ERR(0, 85, __pyx_L1_error) + __pyx_r = __pyx_pf_16mesh_core_cython_6render_texture_core(__pyx_self, __pyx_v_image, __pyx_v_vertices, __pyx_v_triangles, __pyx_v_texture, __pyx_v_tex_coords, __pyx_v_tex_triangles, __pyx_v_depth_buffer, __pyx_v_nver, __pyx_v_tex_nver, __pyx_v_ntri, __pyx_v_h, __pyx_v_w, __pyx_v_c, __pyx_v_tex_h, __pyx_v_tex_w, __pyx_v_tex_c, __pyx_v_mapping_type); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_16mesh_core_cython_6render_texture_core(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_image, PyArrayObject *__pyx_v_vertices, PyArrayObject *__pyx_v_triangles, PyArrayObject *__pyx_v_texture, PyArrayObject *__pyx_v_tex_coords, PyArrayObject *__pyx_v_tex_triangles, PyArrayObject *__pyx_v_depth_buffer, int __pyx_v_nver, int __pyx_v_tex_nver, int __pyx_v_ntri, int __pyx_v_h, int __pyx_v_w, int __pyx_v_c, int __pyx_v_tex_h, int __pyx_v_tex_w, int __pyx_v_tex_c, int __pyx_v_mapping_type) { + __Pyx_LocalBuf_ND __pyx_pybuffernd_depth_buffer; + __Pyx_Buffer __pyx_pybuffer_depth_buffer; + __Pyx_LocalBuf_ND __pyx_pybuffernd_image; + __Pyx_Buffer __pyx_pybuffer_image; + __Pyx_LocalBuf_ND __pyx_pybuffernd_tex_coords; + __Pyx_Buffer __pyx_pybuffer_tex_coords; + __Pyx_LocalBuf_ND __pyx_pybuffernd_tex_triangles; + __Pyx_Buffer __pyx_pybuffer_tex_triangles; + __Pyx_LocalBuf_ND __pyx_pybuffernd_texture; + __Pyx_Buffer __pyx_pybuffer_texture; + __Pyx_LocalBuf_ND __pyx_pybuffernd_triangles; + __Pyx_Buffer __pyx_pybuffer_triangles; + __Pyx_LocalBuf_ND __pyx_pybuffernd_vertices; + __Pyx_Buffer __pyx_pybuffer_vertices; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("render_texture_core", 0); + __pyx_pybuffer_image.pybuffer.buf = NULL; + __pyx_pybuffer_image.refcount = 0; + __pyx_pybuffernd_image.data = NULL; + __pyx_pybuffernd_image.rcbuffer = &__pyx_pybuffer_image; + __pyx_pybuffer_vertices.pybuffer.buf = NULL; + __pyx_pybuffer_vertices.refcount = 0; + __pyx_pybuffernd_vertices.data = NULL; + __pyx_pybuffernd_vertices.rcbuffer = &__pyx_pybuffer_vertices; + __pyx_pybuffer_triangles.pybuffer.buf = NULL; + __pyx_pybuffer_triangles.refcount = 0; + __pyx_pybuffernd_triangles.data = NULL; + __pyx_pybuffernd_triangles.rcbuffer = &__pyx_pybuffer_triangles; + __pyx_pybuffer_texture.pybuffer.buf = NULL; + __pyx_pybuffer_texture.refcount = 0; + __pyx_pybuffernd_texture.data = NULL; + __pyx_pybuffernd_texture.rcbuffer = &__pyx_pybuffer_texture; + __pyx_pybuffer_tex_coords.pybuffer.buf = NULL; + __pyx_pybuffer_tex_coords.refcount = 0; + __pyx_pybuffernd_tex_coords.data = NULL; + __pyx_pybuffernd_tex_coords.rcbuffer = &__pyx_pybuffer_tex_coords; + __pyx_pybuffer_tex_triangles.pybuffer.buf = NULL; + __pyx_pybuffer_tex_triangles.refcount = 0; + __pyx_pybuffernd_tex_triangles.data = NULL; + __pyx_pybuffernd_tex_triangles.rcbuffer = &__pyx_pybuffer_tex_triangles; + __pyx_pybuffer_depth_buffer.pybuffer.buf = NULL; + __pyx_pybuffer_depth_buffer.refcount = 0; + __pyx_pybuffernd_depth_buffer.data = NULL; + __pyx_pybuffernd_depth_buffer.rcbuffer = &__pyx_pybuffer_depth_buffer; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_image.rcbuffer->pybuffer, (PyObject*)__pyx_v_image, &__Pyx_TypeInfo_float, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 3, 0, __pyx_stack) == -1)) __PYX_ERR(0, 79, __pyx_L1_error) + } + __pyx_pybuffernd_image.diminfo[0].strides = __pyx_pybuffernd_image.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_image.diminfo[0].shape = __pyx_pybuffernd_image.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_image.diminfo[1].strides = __pyx_pybuffernd_image.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_image.diminfo[1].shape = __pyx_pybuffernd_image.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_image.diminfo[2].strides = __pyx_pybuffernd_image.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_image.diminfo[2].shape = __pyx_pybuffernd_image.rcbuffer->pybuffer.shape[2]; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_vertices.rcbuffer->pybuffer, (PyObject*)__pyx_v_vertices, &__Pyx_TypeInfo_float, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 79, __pyx_L1_error) + } + __pyx_pybuffernd_vertices.diminfo[0].strides = __pyx_pybuffernd_vertices.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_vertices.diminfo[0].shape = __pyx_pybuffernd_vertices.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_vertices.diminfo[1].strides = __pyx_pybuffernd_vertices.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_vertices.diminfo[1].shape = __pyx_pybuffernd_vertices.rcbuffer->pybuffer.shape[1]; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_triangles.rcbuffer->pybuffer, (PyObject*)__pyx_v_triangles, &__Pyx_TypeInfo_int, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 79, __pyx_L1_error) + } + __pyx_pybuffernd_triangles.diminfo[0].strides = __pyx_pybuffernd_triangles.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_triangles.diminfo[0].shape = __pyx_pybuffernd_triangles.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_triangles.diminfo[1].strides = __pyx_pybuffernd_triangles.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_triangles.diminfo[1].shape = __pyx_pybuffernd_triangles.rcbuffer->pybuffer.shape[1]; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_texture.rcbuffer->pybuffer, (PyObject*)__pyx_v_texture, &__Pyx_TypeInfo_float, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 3, 0, __pyx_stack) == -1)) __PYX_ERR(0, 79, __pyx_L1_error) + } + __pyx_pybuffernd_texture.diminfo[0].strides = __pyx_pybuffernd_texture.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_texture.diminfo[0].shape = __pyx_pybuffernd_texture.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_texture.diminfo[1].strides = __pyx_pybuffernd_texture.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_texture.diminfo[1].shape = __pyx_pybuffernd_texture.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_texture.diminfo[2].strides = __pyx_pybuffernd_texture.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_texture.diminfo[2].shape = __pyx_pybuffernd_texture.rcbuffer->pybuffer.shape[2]; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_tex_coords.rcbuffer->pybuffer, (PyObject*)__pyx_v_tex_coords, &__Pyx_TypeInfo_float, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 79, __pyx_L1_error) + } + __pyx_pybuffernd_tex_coords.diminfo[0].strides = __pyx_pybuffernd_tex_coords.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_tex_coords.diminfo[0].shape = __pyx_pybuffernd_tex_coords.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_tex_coords.diminfo[1].strides = __pyx_pybuffernd_tex_coords.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_tex_coords.diminfo[1].shape = __pyx_pybuffernd_tex_coords.rcbuffer->pybuffer.shape[1]; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_tex_triangles.rcbuffer->pybuffer, (PyObject*)__pyx_v_tex_triangles, &__Pyx_TypeInfo_int, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 79, __pyx_L1_error) + } + __pyx_pybuffernd_tex_triangles.diminfo[0].strides = __pyx_pybuffernd_tex_triangles.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_tex_triangles.diminfo[0].shape = __pyx_pybuffernd_tex_triangles.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_tex_triangles.diminfo[1].strides = __pyx_pybuffernd_tex_triangles.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_tex_triangles.diminfo[1].shape = __pyx_pybuffernd_tex_triangles.rcbuffer->pybuffer.shape[1]; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_depth_buffer.rcbuffer->pybuffer, (PyObject*)__pyx_v_depth_buffer, &__Pyx_TypeInfo_float, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 79, __pyx_L1_error) + } + __pyx_pybuffernd_depth_buffer.diminfo[0].strides = __pyx_pybuffernd_depth_buffer.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_depth_buffer.diminfo[0].shape = __pyx_pybuffernd_depth_buffer.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_depth_buffer.diminfo[1].strides = __pyx_pybuffernd_depth_buffer.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_depth_buffer.diminfo[1].shape = __pyx_pybuffernd_depth_buffer.rcbuffer->pybuffer.shape[1]; + + /* "mesh_core_cython.pyx":91 + * int mapping_type + * ): + * _render_texture_core( # <<<<<<<<<<<<<< + * np.PyArray_DATA(image), np.PyArray_DATA(vertices), np.PyArray_DATA(triangles), + * np.PyArray_DATA(texture), np.PyArray_DATA(tex_coords), np.PyArray_DATA(tex_triangles), + */ + _render_texture_core(((float *)PyArray_DATA(((PyArrayObject *)__pyx_v_image))), ((float *)PyArray_DATA(((PyArrayObject *)__pyx_v_vertices))), ((int *)PyArray_DATA(((PyArrayObject *)__pyx_v_triangles))), ((float *)PyArray_DATA(((PyArrayObject *)__pyx_v_texture))), ((float *)PyArray_DATA(((PyArrayObject *)__pyx_v_tex_coords))), ((int *)PyArray_DATA(((PyArrayObject *)__pyx_v_tex_triangles))), ((float *)PyArray_DATA(((PyArrayObject *)__pyx_v_depth_buffer))), __pyx_v_nver, __pyx_v_tex_nver, __pyx_v_ntri, __pyx_v_h, __pyx_v_w, __pyx_v_c, __pyx_v_tex_h, __pyx_v_tex_w, __pyx_v_tex_c, __pyx_v_mapping_type); + + /* "mesh_core_cython.pyx":79 + * h, w, c) + * + * def render_texture_core(np.ndarray[float, ndim=3, mode = "c"] image not None, # <<<<<<<<<<<<<< + * np.ndarray[float, ndim=2, mode = "c"] vertices not None, + * np.ndarray[int, ndim=2, mode="c"] triangles not None, + */ + + /* function exit code */ + __pyx_r = Py_None; __Pyx_INCREF(Py_None); + goto __pyx_L0; + __pyx_L1_error:; + { PyObject *__pyx_type, *__pyx_value, *__pyx_tb; + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign + __Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_depth_buffer.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_image.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_tex_coords.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_tex_triangles.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_texture.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_triangles.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_vertices.rcbuffer->pybuffer); + __Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);} + __Pyx_AddTraceback("mesh_core_cython.render_texture_core", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + goto __pyx_L2; + __pyx_L0:; + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_depth_buffer.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_image.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_tex_coords.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_tex_triangles.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_texture.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_triangles.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_vertices.rcbuffer->pybuffer); + __pyx_L2:; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "mesh_core_cython.pyx":100 + * mapping_type) + * + * def write_obj_with_colors_texture_core(string filename, string mtl_name, # <<<<<<<<<<<<<< + * np.ndarray[float, ndim=2, mode = "c"] vertices not None, + * np.ndarray[int, ndim=2, mode="c"] triangles not None, + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_16mesh_core_cython_9write_obj_with_colors_texture_core(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static PyMethodDef __pyx_mdef_16mesh_core_cython_9write_obj_with_colors_texture_core = {"write_obj_with_colors_texture_core", (PyCFunction)__pyx_pw_16mesh_core_cython_9write_obj_with_colors_texture_core, METH_VARARGS|METH_KEYWORDS, 0}; +static PyObject *__pyx_pw_16mesh_core_cython_9write_obj_with_colors_texture_core(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { + std::string __pyx_v_filename; + std::string __pyx_v_mtl_name; + PyArrayObject *__pyx_v_vertices = 0; + PyArrayObject *__pyx_v_triangles = 0; + PyArrayObject *__pyx_v_colors = 0; + PyArrayObject *__pyx_v_uv_coords = 0; + int __pyx_v_nver; + int __pyx_v_ntri; + int __pyx_v_ntexver; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("write_obj_with_colors_texture_core (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_filename,&__pyx_n_s_mtl_name,&__pyx_n_s_vertices,&__pyx_n_s_triangles,&__pyx_n_s_colors,&__pyx_n_s_uv_coords,&__pyx_n_s_nver,&__pyx_n_s_ntri,&__pyx_n_s_ntexver,0}; + PyObject* values[9] = {0,0,0,0,0,0,0,0,0}; + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 9: values[8] = PyTuple_GET_ITEM(__pyx_args, 8); + CYTHON_FALLTHROUGH; + case 8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7); + CYTHON_FALLTHROUGH; + case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + CYTHON_FALLTHROUGH; + case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + CYTHON_FALLTHROUGH; + case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; + } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_filename)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_mtl_name)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("write_obj_with_colors_texture_core", 1, 9, 9, 1); __PYX_ERR(0, 100, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 2: + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_vertices)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("write_obj_with_colors_texture_core", 1, 9, 9, 2); __PYX_ERR(0, 100, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 3: + if (likely((values[3] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_triangles)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("write_obj_with_colors_texture_core", 1, 9, 9, 3); __PYX_ERR(0, 100, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 4: + if (likely((values[4] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_colors)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("write_obj_with_colors_texture_core", 1, 9, 9, 4); __PYX_ERR(0, 100, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 5: + if (likely((values[5] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_uv_coords)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("write_obj_with_colors_texture_core", 1, 9, 9, 5); __PYX_ERR(0, 100, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 6: + if (likely((values[6] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_nver)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("write_obj_with_colors_texture_core", 1, 9, 9, 6); __PYX_ERR(0, 100, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 7: + if (likely((values[7] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_ntri)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("write_obj_with_colors_texture_core", 1, 9, 9, 7); __PYX_ERR(0, 100, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 8: + if (likely((values[8] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_ntexver)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("write_obj_with_colors_texture_core", 1, 9, 9, 8); __PYX_ERR(0, 100, __pyx_L3_error) + } + } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "write_obj_with_colors_texture_core") < 0)) __PYX_ERR(0, 100, __pyx_L3_error) + } + } else if (PyTuple_GET_SIZE(__pyx_args) != 9) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + values[7] = PyTuple_GET_ITEM(__pyx_args, 7); + values[8] = PyTuple_GET_ITEM(__pyx_args, 8); + } + __pyx_v_filename = __pyx_convert_string_from_py_std__in_string(values[0]); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 100, __pyx_L3_error) + __pyx_v_mtl_name = __pyx_convert_string_from_py_std__in_string(values[1]); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 100, __pyx_L3_error) + __pyx_v_vertices = ((PyArrayObject *)values[2]); + __pyx_v_triangles = ((PyArrayObject *)values[3]); + __pyx_v_colors = ((PyArrayObject *)values[4]); + __pyx_v_uv_coords = ((PyArrayObject *)values[5]); + __pyx_v_nver = __Pyx_PyInt_As_int(values[6]); if (unlikely((__pyx_v_nver == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 105, __pyx_L3_error) + __pyx_v_ntri = __Pyx_PyInt_As_int(values[7]); if (unlikely((__pyx_v_ntri == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 105, __pyx_L3_error) + __pyx_v_ntexver = __Pyx_PyInt_As_int(values[8]); if (unlikely((__pyx_v_ntexver == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 105, __pyx_L3_error) + } + goto __pyx_L4_argument_unpacking_done; + __pyx_L5_argtuple_error:; + __Pyx_RaiseArgtupleInvalid("write_obj_with_colors_texture_core", 1, 9, 9, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 100, __pyx_L3_error) + __pyx_L3_error:; + __Pyx_AddTraceback("mesh_core_cython.write_obj_with_colors_texture_core", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_RefNannyFinishContext(); + return NULL; + __pyx_L4_argument_unpacking_done:; + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vertices), __pyx_ptype_5numpy_ndarray, 0, "vertices", 0))) __PYX_ERR(0, 101, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_triangles), __pyx_ptype_5numpy_ndarray, 0, "triangles", 0))) __PYX_ERR(0, 102, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_colors), __pyx_ptype_5numpy_ndarray, 0, "colors", 0))) __PYX_ERR(0, 103, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_uv_coords), __pyx_ptype_5numpy_ndarray, 0, "uv_coords", 0))) __PYX_ERR(0, 104, __pyx_L1_error) + __pyx_r = __pyx_pf_16mesh_core_cython_8write_obj_with_colors_texture_core(__pyx_self, __pyx_v_filename, __pyx_v_mtl_name, __pyx_v_vertices, __pyx_v_triangles, __pyx_v_colors, __pyx_v_uv_coords, __pyx_v_nver, __pyx_v_ntri, __pyx_v_ntexver); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_16mesh_core_cython_8write_obj_with_colors_texture_core(CYTHON_UNUSED PyObject *__pyx_self, std::string __pyx_v_filename, std::string __pyx_v_mtl_name, PyArrayObject *__pyx_v_vertices, PyArrayObject *__pyx_v_triangles, PyArrayObject *__pyx_v_colors, PyArrayObject *__pyx_v_uv_coords, int __pyx_v_nver, int __pyx_v_ntri, int __pyx_v_ntexver) { + __Pyx_LocalBuf_ND __pyx_pybuffernd_colors; + __Pyx_Buffer __pyx_pybuffer_colors; + __Pyx_LocalBuf_ND __pyx_pybuffernd_triangles; + __Pyx_Buffer __pyx_pybuffer_triangles; + __Pyx_LocalBuf_ND __pyx_pybuffernd_uv_coords; + __Pyx_Buffer __pyx_pybuffer_uv_coords; + __Pyx_LocalBuf_ND __pyx_pybuffernd_vertices; + __Pyx_Buffer __pyx_pybuffer_vertices; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("write_obj_with_colors_texture_core", 0); + __pyx_pybuffer_vertices.pybuffer.buf = NULL; + __pyx_pybuffer_vertices.refcount = 0; + __pyx_pybuffernd_vertices.data = NULL; + __pyx_pybuffernd_vertices.rcbuffer = &__pyx_pybuffer_vertices; + __pyx_pybuffer_triangles.pybuffer.buf = NULL; + __pyx_pybuffer_triangles.refcount = 0; + __pyx_pybuffernd_triangles.data = NULL; + __pyx_pybuffernd_triangles.rcbuffer = &__pyx_pybuffer_triangles; + __pyx_pybuffer_colors.pybuffer.buf = NULL; + __pyx_pybuffer_colors.refcount = 0; + __pyx_pybuffernd_colors.data = NULL; + __pyx_pybuffernd_colors.rcbuffer = &__pyx_pybuffer_colors; + __pyx_pybuffer_uv_coords.pybuffer.buf = NULL; + __pyx_pybuffer_uv_coords.refcount = 0; + __pyx_pybuffernd_uv_coords.data = NULL; + __pyx_pybuffernd_uv_coords.rcbuffer = &__pyx_pybuffer_uv_coords; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_vertices.rcbuffer->pybuffer, (PyObject*)__pyx_v_vertices, &__Pyx_TypeInfo_float, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 100, __pyx_L1_error) + } + __pyx_pybuffernd_vertices.diminfo[0].strides = __pyx_pybuffernd_vertices.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_vertices.diminfo[0].shape = __pyx_pybuffernd_vertices.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_vertices.diminfo[1].strides = __pyx_pybuffernd_vertices.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_vertices.diminfo[1].shape = __pyx_pybuffernd_vertices.rcbuffer->pybuffer.shape[1]; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_triangles.rcbuffer->pybuffer, (PyObject*)__pyx_v_triangles, &__Pyx_TypeInfo_int, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 100, __pyx_L1_error) + } + __pyx_pybuffernd_triangles.diminfo[0].strides = __pyx_pybuffernd_triangles.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_triangles.diminfo[0].shape = __pyx_pybuffernd_triangles.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_triangles.diminfo[1].strides = __pyx_pybuffernd_triangles.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_triangles.diminfo[1].shape = __pyx_pybuffernd_triangles.rcbuffer->pybuffer.shape[1]; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_colors.rcbuffer->pybuffer, (PyObject*)__pyx_v_colors, &__Pyx_TypeInfo_float, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 100, __pyx_L1_error) + } + __pyx_pybuffernd_colors.diminfo[0].strides = __pyx_pybuffernd_colors.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_colors.diminfo[0].shape = __pyx_pybuffernd_colors.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_colors.diminfo[1].strides = __pyx_pybuffernd_colors.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_colors.diminfo[1].shape = __pyx_pybuffernd_colors.rcbuffer->pybuffer.shape[1]; + { + __Pyx_BufFmt_StackElem __pyx_stack[1]; + if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_uv_coords.rcbuffer->pybuffer, (PyObject*)__pyx_v_uv_coords, &__Pyx_TypeInfo_float, PyBUF_FORMAT| PyBUF_C_CONTIGUOUS, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 100, __pyx_L1_error) + } + __pyx_pybuffernd_uv_coords.diminfo[0].strides = __pyx_pybuffernd_uv_coords.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_uv_coords.diminfo[0].shape = __pyx_pybuffernd_uv_coords.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_uv_coords.diminfo[1].strides = __pyx_pybuffernd_uv_coords.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_uv_coords.diminfo[1].shape = __pyx_pybuffernd_uv_coords.rcbuffer->pybuffer.shape[1]; + + /* "mesh_core_cython.pyx":107 + * int nver, int ntri, int ntexver + * ): + * _write_obj_with_colors_texture(filename, mtl_name, # <<<<<<<<<<<<<< + * np.PyArray_DATA(vertices), np.PyArray_DATA(triangles), np.PyArray_DATA(colors), np.PyArray_DATA(uv_coords), + * nver, ntri, ntexver) + */ + _write_obj_with_colors_texture(__pyx_v_filename, __pyx_v_mtl_name, ((float *)PyArray_DATA(((PyArrayObject *)__pyx_v_vertices))), ((int *)PyArray_DATA(((PyArrayObject *)__pyx_v_triangles))), ((float *)PyArray_DATA(((PyArrayObject *)__pyx_v_colors))), ((float *)PyArray_DATA(((PyArrayObject *)__pyx_v_uv_coords))), __pyx_v_nver, __pyx_v_ntri, __pyx_v_ntexver); + + /* "mesh_core_cython.pyx":100 + * mapping_type) + * + * def write_obj_with_colors_texture_core(string filename, string mtl_name, # <<<<<<<<<<<<<< + * np.ndarray[float, ndim=2, mode = "c"] vertices not None, + * np.ndarray[int, ndim=2, mode="c"] triangles not None, + */ + + /* function exit code */ + __pyx_r = Py_None; __Pyx_INCREF(Py_None); + goto __pyx_L0; + __pyx_L1_error:; + { PyObject *__pyx_type, *__pyx_value, *__pyx_tb; + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign + __Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_colors.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_triangles.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_uv_coords.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_vertices.rcbuffer->pybuffer); + __Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);} + __Pyx_AddTraceback("mesh_core_cython.write_obj_with_colors_texture_core", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + goto __pyx_L2; + __pyx_L0:; + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_colors.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_triangles.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_uv_coords.rcbuffer->pybuffer); + __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_vertices.rcbuffer->pybuffer); + __pyx_L2:; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":215 + * # experimental exception made for __getbuffer__ and __releasebuffer__ + * # -- the details of this may change. + * def __getbuffer__(ndarray self, Py_buffer* info, int flags): # <<<<<<<<<<<<<< + * # This implementation of getbuffer is geared towards Cython + * # requirements, and does not yet fulfill the PEP. + */ + +/* Python wrapper */ +static CYTHON_UNUSED int __pyx_pw_5numpy_7ndarray_1__getbuffer__(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags); /*proto*/ +static CYTHON_UNUSED int __pyx_pw_5numpy_7ndarray_1__getbuffer__(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) { + int __pyx_r; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getbuffer__ (wrapper)", 0); + __pyx_r = __pyx_pf_5numpy_7ndarray___getbuffer__(((PyArrayObject *)__pyx_v_self), ((Py_buffer *)__pyx_v_info), ((int)__pyx_v_flags)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_5numpy_7ndarray___getbuffer__(PyArrayObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) { + int __pyx_v_i; + int __pyx_v_ndim; + int __pyx_v_endian_detector; + int __pyx_v_little_endian; + int __pyx_v_t; + char *__pyx_v_f; + PyArray_Descr *__pyx_v_descr = 0; + int __pyx_v_offset; + int __pyx_r; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + int __pyx_t_2; + PyObject *__pyx_t_3 = NULL; + int __pyx_t_4; + int __pyx_t_5; + int __pyx_t_6; + PyObject *__pyx_t_7 = NULL; + char *__pyx_t_8; + if (__pyx_v_info == NULL) { + PyErr_SetString(PyExc_BufferError, "PyObject_GetBuffer: view==NULL argument is obsolete"); + return -1; + } + __Pyx_RefNannySetupContext("__getbuffer__", 0); + __pyx_v_info->obj = Py_None; __Pyx_INCREF(Py_None); + __Pyx_GIVEREF(__pyx_v_info->obj); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":222 + * + * cdef int i, ndim + * cdef int endian_detector = 1 # <<<<<<<<<<<<<< + * cdef bint little_endian = ((&endian_detector)[0] != 0) + * + */ + __pyx_v_endian_detector = 1; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":223 + * cdef int i, ndim + * cdef int endian_detector = 1 + * cdef bint little_endian = ((&endian_detector)[0] != 0) # <<<<<<<<<<<<<< + * + * ndim = PyArray_NDIM(self) + */ + __pyx_v_little_endian = ((((char *)(&__pyx_v_endian_detector))[0]) != 0); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":225 + * cdef bint little_endian = ((&endian_detector)[0] != 0) + * + * ndim = PyArray_NDIM(self) # <<<<<<<<<<<<<< + * + * if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS) + */ + __pyx_v_ndim = PyArray_NDIM(__pyx_v_self); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":227 + * ndim = PyArray_NDIM(self) + * + * if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS) # <<<<<<<<<<<<<< + * and not PyArray_CHKFLAGS(self, NPY_C_CONTIGUOUS)): + * raise ValueError(u"ndarray is not C contiguous") + */ + __pyx_t_2 = (((__pyx_v_flags & PyBUF_C_CONTIGUOUS) == PyBUF_C_CONTIGUOUS) != 0); + if (__pyx_t_2) { + } else { + __pyx_t_1 = __pyx_t_2; + goto __pyx_L4_bool_binop_done; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":228 + * + * if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS) + * and not PyArray_CHKFLAGS(self, NPY_C_CONTIGUOUS)): # <<<<<<<<<<<<<< + * raise ValueError(u"ndarray is not C contiguous") + * + */ + __pyx_t_2 = ((!(PyArray_CHKFLAGS(__pyx_v_self, NPY_C_CONTIGUOUS) != 0)) != 0); + __pyx_t_1 = __pyx_t_2; + __pyx_L4_bool_binop_done:; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":227 + * ndim = PyArray_NDIM(self) + * + * if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS) # <<<<<<<<<<<<<< + * and not PyArray_CHKFLAGS(self, NPY_C_CONTIGUOUS)): + * raise ValueError(u"ndarray is not C contiguous") + */ + if (unlikely(__pyx_t_1)) { + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":229 + * if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS) + * and not PyArray_CHKFLAGS(self, NPY_C_CONTIGUOUS)): + * raise ValueError(u"ndarray is not C contiguous") # <<<<<<<<<<<<<< + * + * if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS) + */ + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple_, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 229, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_Raise(__pyx_t_3, 0, 0, 0); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __PYX_ERR(1, 229, __pyx_L1_error) + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":227 + * ndim = PyArray_NDIM(self) + * + * if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS) # <<<<<<<<<<<<<< + * and not PyArray_CHKFLAGS(self, NPY_C_CONTIGUOUS)): + * raise ValueError(u"ndarray is not C contiguous") + */ + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":231 + * raise ValueError(u"ndarray is not C contiguous") + * + * if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS) # <<<<<<<<<<<<<< + * and not PyArray_CHKFLAGS(self, NPY_F_CONTIGUOUS)): + * raise ValueError(u"ndarray is not Fortran contiguous") + */ + __pyx_t_2 = (((__pyx_v_flags & PyBUF_F_CONTIGUOUS) == PyBUF_F_CONTIGUOUS) != 0); + if (__pyx_t_2) { + } else { + __pyx_t_1 = __pyx_t_2; + goto __pyx_L7_bool_binop_done; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":232 + * + * if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS) + * and not PyArray_CHKFLAGS(self, NPY_F_CONTIGUOUS)): # <<<<<<<<<<<<<< + * raise ValueError(u"ndarray is not Fortran contiguous") + * + */ + __pyx_t_2 = ((!(PyArray_CHKFLAGS(__pyx_v_self, NPY_F_CONTIGUOUS) != 0)) != 0); + __pyx_t_1 = __pyx_t_2; + __pyx_L7_bool_binop_done:; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":231 + * raise ValueError(u"ndarray is not C contiguous") + * + * if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS) # <<<<<<<<<<<<<< + * and not PyArray_CHKFLAGS(self, NPY_F_CONTIGUOUS)): + * raise ValueError(u"ndarray is not Fortran contiguous") + */ + if (unlikely(__pyx_t_1)) { + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":233 + * if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS) + * and not PyArray_CHKFLAGS(self, NPY_F_CONTIGUOUS)): + * raise ValueError(u"ndarray is not Fortran contiguous") # <<<<<<<<<<<<<< + * + * info.buf = PyArray_DATA(self) + */ + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__2, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 233, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_Raise(__pyx_t_3, 0, 0, 0); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __PYX_ERR(1, 233, __pyx_L1_error) + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":231 + * raise ValueError(u"ndarray is not C contiguous") + * + * if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS) # <<<<<<<<<<<<<< + * and not PyArray_CHKFLAGS(self, NPY_F_CONTIGUOUS)): + * raise ValueError(u"ndarray is not Fortran contiguous") + */ + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":235 + * raise ValueError(u"ndarray is not Fortran contiguous") + * + * info.buf = PyArray_DATA(self) # <<<<<<<<<<<<<< + * info.ndim = ndim + * if sizeof(npy_intp) != sizeof(Py_ssize_t): + */ + __pyx_v_info->buf = PyArray_DATA(__pyx_v_self); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":236 + * + * info.buf = PyArray_DATA(self) + * info.ndim = ndim # <<<<<<<<<<<<<< + * if sizeof(npy_intp) != sizeof(Py_ssize_t): + * # Allocate new buffer for strides and shape info. + */ + __pyx_v_info->ndim = __pyx_v_ndim; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":237 + * info.buf = PyArray_DATA(self) + * info.ndim = ndim + * if sizeof(npy_intp) != sizeof(Py_ssize_t): # <<<<<<<<<<<<<< + * # Allocate new buffer for strides and shape info. + * # This is allocated as one block, strides first. + */ + __pyx_t_1 = (((sizeof(npy_intp)) != (sizeof(Py_ssize_t))) != 0); + if (__pyx_t_1) { + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":240 + * # Allocate new buffer for strides and shape info. + * # This is allocated as one block, strides first. + * info.strides = PyObject_Malloc(sizeof(Py_ssize_t) * 2 * ndim) # <<<<<<<<<<<<<< + * info.shape = info.strides + ndim + * for i in range(ndim): + */ + __pyx_v_info->strides = ((Py_ssize_t *)PyObject_Malloc((((sizeof(Py_ssize_t)) * 2) * ((size_t)__pyx_v_ndim)))); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":241 + * # This is allocated as one block, strides first. + * info.strides = PyObject_Malloc(sizeof(Py_ssize_t) * 2 * ndim) + * info.shape = info.strides + ndim # <<<<<<<<<<<<<< + * for i in range(ndim): + * info.strides[i] = PyArray_STRIDES(self)[i] + */ + __pyx_v_info->shape = (__pyx_v_info->strides + __pyx_v_ndim); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":242 + * info.strides = PyObject_Malloc(sizeof(Py_ssize_t) * 2 * ndim) + * info.shape = info.strides + ndim + * for i in range(ndim): # <<<<<<<<<<<<<< + * info.strides[i] = PyArray_STRIDES(self)[i] + * info.shape[i] = PyArray_DIMS(self)[i] + */ + __pyx_t_4 = __pyx_v_ndim; + __pyx_t_5 = __pyx_t_4; + for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) { + __pyx_v_i = __pyx_t_6; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":243 + * info.shape = info.strides + ndim + * for i in range(ndim): + * info.strides[i] = PyArray_STRIDES(self)[i] # <<<<<<<<<<<<<< + * info.shape[i] = PyArray_DIMS(self)[i] + * else: + */ + (__pyx_v_info->strides[__pyx_v_i]) = (PyArray_STRIDES(__pyx_v_self)[__pyx_v_i]); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":244 + * for i in range(ndim): + * info.strides[i] = PyArray_STRIDES(self)[i] + * info.shape[i] = PyArray_DIMS(self)[i] # <<<<<<<<<<<<<< + * else: + * info.strides = PyArray_STRIDES(self) + */ + (__pyx_v_info->shape[__pyx_v_i]) = (PyArray_DIMS(__pyx_v_self)[__pyx_v_i]); + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":237 + * info.buf = PyArray_DATA(self) + * info.ndim = ndim + * if sizeof(npy_intp) != sizeof(Py_ssize_t): # <<<<<<<<<<<<<< + * # Allocate new buffer for strides and shape info. + * # This is allocated as one block, strides first. + */ + goto __pyx_L9; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":246 + * info.shape[i] = PyArray_DIMS(self)[i] + * else: + * info.strides = PyArray_STRIDES(self) # <<<<<<<<<<<<<< + * info.shape = PyArray_DIMS(self) + * info.suboffsets = NULL + */ + /*else*/ { + __pyx_v_info->strides = ((Py_ssize_t *)PyArray_STRIDES(__pyx_v_self)); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":247 + * else: + * info.strides = PyArray_STRIDES(self) + * info.shape = PyArray_DIMS(self) # <<<<<<<<<<<<<< + * info.suboffsets = NULL + * info.itemsize = PyArray_ITEMSIZE(self) + */ + __pyx_v_info->shape = ((Py_ssize_t *)PyArray_DIMS(__pyx_v_self)); + } + __pyx_L9:; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":248 + * info.strides = PyArray_STRIDES(self) + * info.shape = PyArray_DIMS(self) + * info.suboffsets = NULL # <<<<<<<<<<<<<< + * info.itemsize = PyArray_ITEMSIZE(self) + * info.readonly = not PyArray_ISWRITEABLE(self) + */ + __pyx_v_info->suboffsets = NULL; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":249 + * info.shape = PyArray_DIMS(self) + * info.suboffsets = NULL + * info.itemsize = PyArray_ITEMSIZE(self) # <<<<<<<<<<<<<< + * info.readonly = not PyArray_ISWRITEABLE(self) + * + */ + __pyx_v_info->itemsize = PyArray_ITEMSIZE(__pyx_v_self); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":250 + * info.suboffsets = NULL + * info.itemsize = PyArray_ITEMSIZE(self) + * info.readonly = not PyArray_ISWRITEABLE(self) # <<<<<<<<<<<<<< + * + * cdef int t + */ + __pyx_v_info->readonly = (!(PyArray_ISWRITEABLE(__pyx_v_self) != 0)); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":253 + * + * cdef int t + * cdef char* f = NULL # <<<<<<<<<<<<<< + * cdef dtype descr = self.descr + * cdef int offset + */ + __pyx_v_f = NULL; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":254 + * cdef int t + * cdef char* f = NULL + * cdef dtype descr = self.descr # <<<<<<<<<<<<<< + * cdef int offset + * + */ + __pyx_t_3 = ((PyObject *)__pyx_v_self->descr); + __Pyx_INCREF(__pyx_t_3); + __pyx_v_descr = ((PyArray_Descr *)__pyx_t_3); + __pyx_t_3 = 0; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":257 + * cdef int offset + * + * info.obj = self # <<<<<<<<<<<<<< + * + * if not PyDataType_HASFIELDS(descr): + */ + __Pyx_INCREF(((PyObject *)__pyx_v_self)); + __Pyx_GIVEREF(((PyObject *)__pyx_v_self)); + __Pyx_GOTREF(__pyx_v_info->obj); + __Pyx_DECREF(__pyx_v_info->obj); + __pyx_v_info->obj = ((PyObject *)__pyx_v_self); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":259 + * info.obj = self + * + * if not PyDataType_HASFIELDS(descr): # <<<<<<<<<<<<<< + * t = descr.type_num + * if ((descr.byteorder == c'>' and little_endian) or + */ + __pyx_t_1 = ((!(PyDataType_HASFIELDS(__pyx_v_descr) != 0)) != 0); + if (__pyx_t_1) { + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":260 + * + * if not PyDataType_HASFIELDS(descr): + * t = descr.type_num # <<<<<<<<<<<<<< + * if ((descr.byteorder == c'>' and little_endian) or + * (descr.byteorder == c'<' and not little_endian)): + */ + __pyx_t_4 = __pyx_v_descr->type_num; + __pyx_v_t = __pyx_t_4; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":261 + * if not PyDataType_HASFIELDS(descr): + * t = descr.type_num + * if ((descr.byteorder == c'>' and little_endian) or # <<<<<<<<<<<<<< + * (descr.byteorder == c'<' and not little_endian)): + * raise ValueError(u"Non-native byte order not supported") + */ + __pyx_t_2 = ((__pyx_v_descr->byteorder == '>') != 0); + if (!__pyx_t_2) { + goto __pyx_L15_next_or; + } else { + } + __pyx_t_2 = (__pyx_v_little_endian != 0); + if (!__pyx_t_2) { + } else { + __pyx_t_1 = __pyx_t_2; + goto __pyx_L14_bool_binop_done; + } + __pyx_L15_next_or:; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":262 + * t = descr.type_num + * if ((descr.byteorder == c'>' and little_endian) or + * (descr.byteorder == c'<' and not little_endian)): # <<<<<<<<<<<<<< + * raise ValueError(u"Non-native byte order not supported") + * if t == NPY_BYTE: f = "b" + */ + __pyx_t_2 = ((__pyx_v_descr->byteorder == '<') != 0); + if (__pyx_t_2) { + } else { + __pyx_t_1 = __pyx_t_2; + goto __pyx_L14_bool_binop_done; + } + __pyx_t_2 = ((!(__pyx_v_little_endian != 0)) != 0); + __pyx_t_1 = __pyx_t_2; + __pyx_L14_bool_binop_done:; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":261 + * if not PyDataType_HASFIELDS(descr): + * t = descr.type_num + * if ((descr.byteorder == c'>' and little_endian) or # <<<<<<<<<<<<<< + * (descr.byteorder == c'<' and not little_endian)): + * raise ValueError(u"Non-native byte order not supported") + */ + if (unlikely(__pyx_t_1)) { + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":263 + * if ((descr.byteorder == c'>' and little_endian) or + * (descr.byteorder == c'<' and not little_endian)): + * raise ValueError(u"Non-native byte order not supported") # <<<<<<<<<<<<<< + * if t == NPY_BYTE: f = "b" + * elif t == NPY_UBYTE: f = "B" + */ + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__3, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 263, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_Raise(__pyx_t_3, 0, 0, 0); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __PYX_ERR(1, 263, __pyx_L1_error) + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":261 + * if not PyDataType_HASFIELDS(descr): + * t = descr.type_num + * if ((descr.byteorder == c'>' and little_endian) or # <<<<<<<<<<<<<< + * (descr.byteorder == c'<' and not little_endian)): + * raise ValueError(u"Non-native byte order not supported") + */ + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":264 + * (descr.byteorder == c'<' and not little_endian)): + * raise ValueError(u"Non-native byte order not supported") + * if t == NPY_BYTE: f = "b" # <<<<<<<<<<<<<< + * elif t == NPY_UBYTE: f = "B" + * elif t == NPY_SHORT: f = "h" + */ + switch (__pyx_v_t) { + case NPY_BYTE: + __pyx_v_f = ((char *)"b"); + break; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":265 + * raise ValueError(u"Non-native byte order not supported") + * if t == NPY_BYTE: f = "b" + * elif t == NPY_UBYTE: f = "B" # <<<<<<<<<<<<<< + * elif t == NPY_SHORT: f = "h" + * elif t == NPY_USHORT: f = "H" + */ + case NPY_UBYTE: + __pyx_v_f = ((char *)"B"); + break; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":266 + * if t == NPY_BYTE: f = "b" + * elif t == NPY_UBYTE: f = "B" + * elif t == NPY_SHORT: f = "h" # <<<<<<<<<<<<<< + * elif t == NPY_USHORT: f = "H" + * elif t == NPY_INT: f = "i" + */ + case NPY_SHORT: + __pyx_v_f = ((char *)"h"); + break; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":267 + * elif t == NPY_UBYTE: f = "B" + * elif t == NPY_SHORT: f = "h" + * elif t == NPY_USHORT: f = "H" # <<<<<<<<<<<<<< + * elif t == NPY_INT: f = "i" + * elif t == NPY_UINT: f = "I" + */ + case NPY_USHORT: + __pyx_v_f = ((char *)"H"); + break; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":268 + * elif t == NPY_SHORT: f = "h" + * elif t == NPY_USHORT: f = "H" + * elif t == NPY_INT: f = "i" # <<<<<<<<<<<<<< + * elif t == NPY_UINT: f = "I" + * elif t == NPY_LONG: f = "l" + */ + case NPY_INT: + __pyx_v_f = ((char *)"i"); + break; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":269 + * elif t == NPY_USHORT: f = "H" + * elif t == NPY_INT: f = "i" + * elif t == NPY_UINT: f = "I" # <<<<<<<<<<<<<< + * elif t == NPY_LONG: f = "l" + * elif t == NPY_ULONG: f = "L" + */ + case NPY_UINT: + __pyx_v_f = ((char *)"I"); + break; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":270 + * elif t == NPY_INT: f = "i" + * elif t == NPY_UINT: f = "I" + * elif t == NPY_LONG: f = "l" # <<<<<<<<<<<<<< + * elif t == NPY_ULONG: f = "L" + * elif t == NPY_LONGLONG: f = "q" + */ + case NPY_LONG: + __pyx_v_f = ((char *)"l"); + break; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":271 + * elif t == NPY_UINT: f = "I" + * elif t == NPY_LONG: f = "l" + * elif t == NPY_ULONG: f = "L" # <<<<<<<<<<<<<< + * elif t == NPY_LONGLONG: f = "q" + * elif t == NPY_ULONGLONG: f = "Q" + */ + case NPY_ULONG: + __pyx_v_f = ((char *)"L"); + break; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":272 + * elif t == NPY_LONG: f = "l" + * elif t == NPY_ULONG: f = "L" + * elif t == NPY_LONGLONG: f = "q" # <<<<<<<<<<<<<< + * elif t == NPY_ULONGLONG: f = "Q" + * elif t == NPY_FLOAT: f = "f" + */ + case NPY_LONGLONG: + __pyx_v_f = ((char *)"q"); + break; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":273 + * elif t == NPY_ULONG: f = "L" + * elif t == NPY_LONGLONG: f = "q" + * elif t == NPY_ULONGLONG: f = "Q" # <<<<<<<<<<<<<< + * elif t == NPY_FLOAT: f = "f" + * elif t == NPY_DOUBLE: f = "d" + */ + case NPY_ULONGLONG: + __pyx_v_f = ((char *)"Q"); + break; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":274 + * elif t == NPY_LONGLONG: f = "q" + * elif t == NPY_ULONGLONG: f = "Q" + * elif t == NPY_FLOAT: f = "f" # <<<<<<<<<<<<<< + * elif t == NPY_DOUBLE: f = "d" + * elif t == NPY_LONGDOUBLE: f = "g" + */ + case NPY_FLOAT: + __pyx_v_f = ((char *)"f"); + break; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":275 + * elif t == NPY_ULONGLONG: f = "Q" + * elif t == NPY_FLOAT: f = "f" + * elif t == NPY_DOUBLE: f = "d" # <<<<<<<<<<<<<< + * elif t == NPY_LONGDOUBLE: f = "g" + * elif t == NPY_CFLOAT: f = "Zf" + */ + case NPY_DOUBLE: + __pyx_v_f = ((char *)"d"); + break; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":276 + * elif t == NPY_FLOAT: f = "f" + * elif t == NPY_DOUBLE: f = "d" + * elif t == NPY_LONGDOUBLE: f = "g" # <<<<<<<<<<<<<< + * elif t == NPY_CFLOAT: f = "Zf" + * elif t == NPY_CDOUBLE: f = "Zd" + */ + case NPY_LONGDOUBLE: + __pyx_v_f = ((char *)"g"); + break; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":277 + * elif t == NPY_DOUBLE: f = "d" + * elif t == NPY_LONGDOUBLE: f = "g" + * elif t == NPY_CFLOAT: f = "Zf" # <<<<<<<<<<<<<< + * elif t == NPY_CDOUBLE: f = "Zd" + * elif t == NPY_CLONGDOUBLE: f = "Zg" + */ + case NPY_CFLOAT: + __pyx_v_f = ((char *)"Zf"); + break; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":278 + * elif t == NPY_LONGDOUBLE: f = "g" + * elif t == NPY_CFLOAT: f = "Zf" + * elif t == NPY_CDOUBLE: f = "Zd" # <<<<<<<<<<<<<< + * elif t == NPY_CLONGDOUBLE: f = "Zg" + * elif t == NPY_OBJECT: f = "O" + */ + case NPY_CDOUBLE: + __pyx_v_f = ((char *)"Zd"); + break; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":279 + * elif t == NPY_CFLOAT: f = "Zf" + * elif t == NPY_CDOUBLE: f = "Zd" + * elif t == NPY_CLONGDOUBLE: f = "Zg" # <<<<<<<<<<<<<< + * elif t == NPY_OBJECT: f = "O" + * else: + */ + case NPY_CLONGDOUBLE: + __pyx_v_f = ((char *)"Zg"); + break; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":280 + * elif t == NPY_CDOUBLE: f = "Zd" + * elif t == NPY_CLONGDOUBLE: f = "Zg" + * elif t == NPY_OBJECT: f = "O" # <<<<<<<<<<<<<< + * else: + * raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t) + */ + case NPY_OBJECT: + __pyx_v_f = ((char *)"O"); + break; + default: + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":282 + * elif t == NPY_OBJECT: f = "O" + * else: + * raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t) # <<<<<<<<<<<<<< + * info.format = f + * return + */ + __pyx_t_3 = __Pyx_PyInt_From_int(__pyx_v_t); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 282, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_7 = PyUnicode_Format(__pyx_kp_u_unknown_dtype_code_in_numpy_pxd, __pyx_t_3); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 282, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_builtin_ValueError, __pyx_t_7); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 282, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + __Pyx_Raise(__pyx_t_3, 0, 0, 0); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __PYX_ERR(1, 282, __pyx_L1_error) + break; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":283 + * else: + * raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t) + * info.format = f # <<<<<<<<<<<<<< + * return + * else: + */ + __pyx_v_info->format = __pyx_v_f; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":284 + * raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t) + * info.format = f + * return # <<<<<<<<<<<<<< + * else: + * info.format = PyObject_Malloc(_buffer_format_string_len) + */ + __pyx_r = 0; + goto __pyx_L0; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":259 + * info.obj = self + * + * if not PyDataType_HASFIELDS(descr): # <<<<<<<<<<<<<< + * t = descr.type_num + * if ((descr.byteorder == c'>' and little_endian) or + */ + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":286 + * return + * else: + * info.format = PyObject_Malloc(_buffer_format_string_len) # <<<<<<<<<<<<<< + * info.format[0] = c'^' # Native data types, manual alignment + * offset = 0 + */ + /*else*/ { + __pyx_v_info->format = ((char *)PyObject_Malloc(0xFF)); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":287 + * else: + * info.format = PyObject_Malloc(_buffer_format_string_len) + * info.format[0] = c'^' # Native data types, manual alignment # <<<<<<<<<<<<<< + * offset = 0 + * f = _util_dtypestring(descr, info.format + 1, + */ + (__pyx_v_info->format[0]) = '^'; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":288 + * info.format = PyObject_Malloc(_buffer_format_string_len) + * info.format[0] = c'^' # Native data types, manual alignment + * offset = 0 # <<<<<<<<<<<<<< + * f = _util_dtypestring(descr, info.format + 1, + * info.format + _buffer_format_string_len, + */ + __pyx_v_offset = 0; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":289 + * info.format[0] = c'^' # Native data types, manual alignment + * offset = 0 + * f = _util_dtypestring(descr, info.format + 1, # <<<<<<<<<<<<<< + * info.format + _buffer_format_string_len, + * &offset) + */ + __pyx_t_8 = __pyx_f_5numpy__util_dtypestring(__pyx_v_descr, (__pyx_v_info->format + 1), (__pyx_v_info->format + 0xFF), (&__pyx_v_offset)); if (unlikely(__pyx_t_8 == ((char *)NULL))) __PYX_ERR(1, 289, __pyx_L1_error) + __pyx_v_f = __pyx_t_8; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":292 + * info.format + _buffer_format_string_len, + * &offset) + * f[0] = c'\0' # Terminate format string # <<<<<<<<<<<<<< + * + * def __releasebuffer__(ndarray self, Py_buffer* info): + */ + (__pyx_v_f[0]) = '\x00'; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":215 + * # experimental exception made for __getbuffer__ and __releasebuffer__ + * # -- the details of this may change. + * def __getbuffer__(ndarray self, Py_buffer* info, int flags): # <<<<<<<<<<<<<< + * # This implementation of getbuffer is geared towards Cython + * # requirements, and does not yet fulfill the PEP. + */ + + /* function exit code */ + __pyx_r = 0; + goto __pyx_L0; + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_3); + __Pyx_XDECREF(__pyx_t_7); + __Pyx_AddTraceback("numpy.ndarray.__getbuffer__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = -1; + if (__pyx_v_info->obj != NULL) { + __Pyx_GOTREF(__pyx_v_info->obj); + __Pyx_DECREF(__pyx_v_info->obj); __pyx_v_info->obj = 0; + } + goto __pyx_L2; + __pyx_L0:; + if (__pyx_v_info->obj == Py_None) { + __Pyx_GOTREF(__pyx_v_info->obj); + __Pyx_DECREF(__pyx_v_info->obj); __pyx_v_info->obj = 0; + } + __pyx_L2:; + __Pyx_XDECREF((PyObject *)__pyx_v_descr); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":294 + * f[0] = c'\0' # Terminate format string + * + * def __releasebuffer__(ndarray self, Py_buffer* info): # <<<<<<<<<<<<<< + * if PyArray_HASFIELDS(self): + * PyObject_Free(info.format) + */ + +/* Python wrapper */ +static CYTHON_UNUSED void __pyx_pw_5numpy_7ndarray_3__releasebuffer__(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info); /*proto*/ +static CYTHON_UNUSED void __pyx_pw_5numpy_7ndarray_3__releasebuffer__(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__releasebuffer__ (wrapper)", 0); + __pyx_pf_5numpy_7ndarray_2__releasebuffer__(((PyArrayObject *)__pyx_v_self), ((Py_buffer *)__pyx_v_info)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); +} + +static void __pyx_pf_5numpy_7ndarray_2__releasebuffer__(PyArrayObject *__pyx_v_self, Py_buffer *__pyx_v_info) { + __Pyx_RefNannyDeclarations + int __pyx_t_1; + __Pyx_RefNannySetupContext("__releasebuffer__", 0); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":295 + * + * def __releasebuffer__(ndarray self, Py_buffer* info): + * if PyArray_HASFIELDS(self): # <<<<<<<<<<<<<< + * PyObject_Free(info.format) + * if sizeof(npy_intp) != sizeof(Py_ssize_t): + */ + __pyx_t_1 = (PyArray_HASFIELDS(__pyx_v_self) != 0); + if (__pyx_t_1) { + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":296 + * def __releasebuffer__(ndarray self, Py_buffer* info): + * if PyArray_HASFIELDS(self): + * PyObject_Free(info.format) # <<<<<<<<<<<<<< + * if sizeof(npy_intp) != sizeof(Py_ssize_t): + * PyObject_Free(info.strides) + */ + PyObject_Free(__pyx_v_info->format); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":295 + * + * def __releasebuffer__(ndarray self, Py_buffer* info): + * if PyArray_HASFIELDS(self): # <<<<<<<<<<<<<< + * PyObject_Free(info.format) + * if sizeof(npy_intp) != sizeof(Py_ssize_t): + */ + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":297 + * if PyArray_HASFIELDS(self): + * PyObject_Free(info.format) + * if sizeof(npy_intp) != sizeof(Py_ssize_t): # <<<<<<<<<<<<<< + * PyObject_Free(info.strides) + * # info.shape was stored after info.strides in the same block + */ + __pyx_t_1 = (((sizeof(npy_intp)) != (sizeof(Py_ssize_t))) != 0); + if (__pyx_t_1) { + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":298 + * PyObject_Free(info.format) + * if sizeof(npy_intp) != sizeof(Py_ssize_t): + * PyObject_Free(info.strides) # <<<<<<<<<<<<<< + * # info.shape was stored after info.strides in the same block + * + */ + PyObject_Free(__pyx_v_info->strides); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":297 + * if PyArray_HASFIELDS(self): + * PyObject_Free(info.format) + * if sizeof(npy_intp) != sizeof(Py_ssize_t): # <<<<<<<<<<<<<< + * PyObject_Free(info.strides) + * # info.shape was stored after info.strides in the same block + */ + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":294 + * f[0] = c'\0' # Terminate format string + * + * def __releasebuffer__(ndarray self, Py_buffer* info): # <<<<<<<<<<<<<< + * if PyArray_HASFIELDS(self): + * PyObject_Free(info.format) + */ + + /* function exit code */ + __Pyx_RefNannyFinishContext(); +} + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":775 + * ctypedef npy_cdouble complex_t + * + * cdef inline object PyArray_MultiIterNew1(a): # <<<<<<<<<<<<<< + * return PyArray_MultiIterNew(1, a) + * + */ + +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew1(PyObject *__pyx_v_a) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + __Pyx_RefNannySetupContext("PyArray_MultiIterNew1", 0); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":776 + * + * cdef inline object PyArray_MultiIterNew1(a): + * return PyArray_MultiIterNew(1, a) # <<<<<<<<<<<<<< + * + * cdef inline object PyArray_MultiIterNew2(a, b): + */ + __Pyx_XDECREF(__pyx_r); + __pyx_t_1 = PyArray_MultiIterNew(1, ((void *)__pyx_v_a)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 776, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_r = __pyx_t_1; + __pyx_t_1 = 0; + goto __pyx_L0; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":775 + * ctypedef npy_cdouble complex_t + * + * cdef inline object PyArray_MultiIterNew1(a): # <<<<<<<<<<<<<< + * return PyArray_MultiIterNew(1, a) + * + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("numpy.PyArray_MultiIterNew1", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = 0; + __pyx_L0:; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":778 + * return PyArray_MultiIterNew(1, a) + * + * cdef inline object PyArray_MultiIterNew2(a, b): # <<<<<<<<<<<<<< + * return PyArray_MultiIterNew(2, a, b) + * + */ + +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew2(PyObject *__pyx_v_a, PyObject *__pyx_v_b) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + __Pyx_RefNannySetupContext("PyArray_MultiIterNew2", 0); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":779 + * + * cdef inline object PyArray_MultiIterNew2(a, b): + * return PyArray_MultiIterNew(2, a, b) # <<<<<<<<<<<<<< + * + * cdef inline object PyArray_MultiIterNew3(a, b, c): + */ + __Pyx_XDECREF(__pyx_r); + __pyx_t_1 = PyArray_MultiIterNew(2, ((void *)__pyx_v_a), ((void *)__pyx_v_b)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 779, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_r = __pyx_t_1; + __pyx_t_1 = 0; + goto __pyx_L0; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":778 + * return PyArray_MultiIterNew(1, a) + * + * cdef inline object PyArray_MultiIterNew2(a, b): # <<<<<<<<<<<<<< + * return PyArray_MultiIterNew(2, a, b) + * + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("numpy.PyArray_MultiIterNew2", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = 0; + __pyx_L0:; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":781 + * return PyArray_MultiIterNew(2, a, b) + * + * cdef inline object PyArray_MultiIterNew3(a, b, c): # <<<<<<<<<<<<<< + * return PyArray_MultiIterNew(3, a, b, c) + * + */ + +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew3(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + __Pyx_RefNannySetupContext("PyArray_MultiIterNew3", 0); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":782 + * + * cdef inline object PyArray_MultiIterNew3(a, b, c): + * return PyArray_MultiIterNew(3, a, b, c) # <<<<<<<<<<<<<< + * + * cdef inline object PyArray_MultiIterNew4(a, b, c, d): + */ + __Pyx_XDECREF(__pyx_r); + __pyx_t_1 = PyArray_MultiIterNew(3, ((void *)__pyx_v_a), ((void *)__pyx_v_b), ((void *)__pyx_v_c)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 782, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_r = __pyx_t_1; + __pyx_t_1 = 0; + goto __pyx_L0; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":781 + * return PyArray_MultiIterNew(2, a, b) + * + * cdef inline object PyArray_MultiIterNew3(a, b, c): # <<<<<<<<<<<<<< + * return PyArray_MultiIterNew(3, a, b, c) + * + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("numpy.PyArray_MultiIterNew3", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = 0; + __pyx_L0:; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":784 + * return PyArray_MultiIterNew(3, a, b, c) + * + * cdef inline object PyArray_MultiIterNew4(a, b, c, d): # <<<<<<<<<<<<<< + * return PyArray_MultiIterNew(4, a, b, c, d) + * + */ + +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew4(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c, PyObject *__pyx_v_d) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + __Pyx_RefNannySetupContext("PyArray_MultiIterNew4", 0); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":785 + * + * cdef inline object PyArray_MultiIterNew4(a, b, c, d): + * return PyArray_MultiIterNew(4, a, b, c, d) # <<<<<<<<<<<<<< + * + * cdef inline object PyArray_MultiIterNew5(a, b, c, d, e): + */ + __Pyx_XDECREF(__pyx_r); + __pyx_t_1 = PyArray_MultiIterNew(4, ((void *)__pyx_v_a), ((void *)__pyx_v_b), ((void *)__pyx_v_c), ((void *)__pyx_v_d)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 785, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_r = __pyx_t_1; + __pyx_t_1 = 0; + goto __pyx_L0; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":784 + * return PyArray_MultiIterNew(3, a, b, c) + * + * cdef inline object PyArray_MultiIterNew4(a, b, c, d): # <<<<<<<<<<<<<< + * return PyArray_MultiIterNew(4, a, b, c, d) + * + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("numpy.PyArray_MultiIterNew4", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = 0; + __pyx_L0:; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":787 + * return PyArray_MultiIterNew(4, a, b, c, d) + * + * cdef inline object PyArray_MultiIterNew5(a, b, c, d, e): # <<<<<<<<<<<<<< + * return PyArray_MultiIterNew(5, a, b, c, d, e) + * + */ + +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew5(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c, PyObject *__pyx_v_d, PyObject *__pyx_v_e) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + __Pyx_RefNannySetupContext("PyArray_MultiIterNew5", 0); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":788 + * + * cdef inline object PyArray_MultiIterNew5(a, b, c, d, e): + * return PyArray_MultiIterNew(5, a, b, c, d, e) # <<<<<<<<<<<<<< + * + * cdef inline tuple PyDataType_SHAPE(dtype d): + */ + __Pyx_XDECREF(__pyx_r); + __pyx_t_1 = PyArray_MultiIterNew(5, ((void *)__pyx_v_a), ((void *)__pyx_v_b), ((void *)__pyx_v_c), ((void *)__pyx_v_d), ((void *)__pyx_v_e)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 788, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_r = __pyx_t_1; + __pyx_t_1 = 0; + goto __pyx_L0; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":787 + * return PyArray_MultiIterNew(4, a, b, c, d) + * + * cdef inline object PyArray_MultiIterNew5(a, b, c, d, e): # <<<<<<<<<<<<<< + * return PyArray_MultiIterNew(5, a, b, c, d, e) + * + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("numpy.PyArray_MultiIterNew5", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = 0; + __pyx_L0:; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":790 + * return PyArray_MultiIterNew(5, a, b, c, d, e) + * + * cdef inline tuple PyDataType_SHAPE(dtype d): # <<<<<<<<<<<<<< + * if PyDataType_HASSUBARRAY(d): + * return d.subarray.shape + */ + +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyDataType_SHAPE(PyArray_Descr *__pyx_v_d) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + __Pyx_RefNannySetupContext("PyDataType_SHAPE", 0); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":791 + * + * cdef inline tuple PyDataType_SHAPE(dtype d): + * if PyDataType_HASSUBARRAY(d): # <<<<<<<<<<<<<< + * return d.subarray.shape + * else: + */ + __pyx_t_1 = (PyDataType_HASSUBARRAY(__pyx_v_d) != 0); + if (__pyx_t_1) { + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":792 + * cdef inline tuple PyDataType_SHAPE(dtype d): + * if PyDataType_HASSUBARRAY(d): + * return d.subarray.shape # <<<<<<<<<<<<<< + * else: + * return () + */ + __Pyx_XDECREF(__pyx_r); + __Pyx_INCREF(((PyObject*)__pyx_v_d->subarray->shape)); + __pyx_r = ((PyObject*)__pyx_v_d->subarray->shape); + goto __pyx_L0; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":791 + * + * cdef inline tuple PyDataType_SHAPE(dtype d): + * if PyDataType_HASSUBARRAY(d): # <<<<<<<<<<<<<< + * return d.subarray.shape + * else: + */ + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":794 + * return d.subarray.shape + * else: + * return () # <<<<<<<<<<<<<< + * + * cdef inline char* _util_dtypestring(dtype descr, char* f, char* end, int* offset) except NULL: + */ + /*else*/ { + __Pyx_XDECREF(__pyx_r); + __Pyx_INCREF(__pyx_empty_tuple); + __pyx_r = __pyx_empty_tuple; + goto __pyx_L0; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":790 + * return PyArray_MultiIterNew(5, a, b, c, d, e) + * + * cdef inline tuple PyDataType_SHAPE(dtype d): # <<<<<<<<<<<<<< + * if PyDataType_HASSUBARRAY(d): + * return d.subarray.shape + */ + + /* function exit code */ + __pyx_L0:; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":796 + * return () + * + * cdef inline char* _util_dtypestring(dtype descr, char* f, char* end, int* offset) except NULL: # <<<<<<<<<<<<<< + * # Recursive utility function used in __getbuffer__ to get format + * # string. The new location in the format string is returned. + */ + +static CYTHON_INLINE char *__pyx_f_5numpy__util_dtypestring(PyArray_Descr *__pyx_v_descr, char *__pyx_v_f, char *__pyx_v_end, int *__pyx_v_offset) { + PyArray_Descr *__pyx_v_child = 0; + int __pyx_v_endian_detector; + int __pyx_v_little_endian; + PyObject *__pyx_v_fields = 0; + PyObject *__pyx_v_childname = NULL; + PyObject *__pyx_v_new_offset = NULL; + PyObject *__pyx_v_t = NULL; + char *__pyx_r; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + Py_ssize_t __pyx_t_2; + PyObject *__pyx_t_3 = NULL; + PyObject *__pyx_t_4 = NULL; + int __pyx_t_5; + int __pyx_t_6; + int __pyx_t_7; + long __pyx_t_8; + char *__pyx_t_9; + __Pyx_RefNannySetupContext("_util_dtypestring", 0); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":801 + * + * cdef dtype child + * cdef int endian_detector = 1 # <<<<<<<<<<<<<< + * cdef bint little_endian = ((&endian_detector)[0] != 0) + * cdef tuple fields + */ + __pyx_v_endian_detector = 1; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":802 + * cdef dtype child + * cdef int endian_detector = 1 + * cdef bint little_endian = ((&endian_detector)[0] != 0) # <<<<<<<<<<<<<< + * cdef tuple fields + * + */ + __pyx_v_little_endian = ((((char *)(&__pyx_v_endian_detector))[0]) != 0); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":805 + * cdef tuple fields + * + * for childname in descr.names: # <<<<<<<<<<<<<< + * fields = descr.fields[childname] + * child, new_offset = fields + */ + if (unlikely(__pyx_v_descr->names == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); + __PYX_ERR(1, 805, __pyx_L1_error) + } + __pyx_t_1 = __pyx_v_descr->names; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; + for (;;) { + if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely(0 < 0)) __PYX_ERR(1, 805, __pyx_L1_error) + #else + __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 805, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + #endif + __Pyx_XDECREF_SET(__pyx_v_childname, __pyx_t_3); + __pyx_t_3 = 0; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":806 + * + * for childname in descr.names: + * fields = descr.fields[childname] # <<<<<<<<<<<<<< + * child, new_offset = fields + * + */ + if (unlikely(__pyx_v_descr->fields == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(1, 806, __pyx_L1_error) + } + __pyx_t_3 = __Pyx_PyDict_GetItem(__pyx_v_descr->fields, __pyx_v_childname); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 806, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (!(likely(PyTuple_CheckExact(__pyx_t_3))||((__pyx_t_3) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_t_3)->tp_name), 0))) __PYX_ERR(1, 806, __pyx_L1_error) + __Pyx_XDECREF_SET(__pyx_v_fields, ((PyObject*)__pyx_t_3)); + __pyx_t_3 = 0; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":807 + * for childname in descr.names: + * fields = descr.fields[childname] + * child, new_offset = fields # <<<<<<<<<<<<<< + * + * if (end - f) - (new_offset - offset[0]) < 15: + */ + if (likely(__pyx_v_fields != Py_None)) { + PyObject* sequence = __pyx_v_fields; + Py_ssize_t size = __Pyx_PySequence_SIZE(sequence); + if (unlikely(size != 2)) { + if (size > 2) __Pyx_RaiseTooManyValuesError(2); + else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); + __PYX_ERR(1, 807, __pyx_L1_error) + } + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_3 = PyTuple_GET_ITEM(sequence, 0); + __pyx_t_4 = PyTuple_GET_ITEM(sequence, 1); + __Pyx_INCREF(__pyx_t_3); + __Pyx_INCREF(__pyx_t_4); + #else + __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 807, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 807, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + #endif + } else { + __Pyx_RaiseNoneNotIterableError(); __PYX_ERR(1, 807, __pyx_L1_error) + } + if (!(likely(((__pyx_t_3) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_5numpy_dtype))))) __PYX_ERR(1, 807, __pyx_L1_error) + __Pyx_XDECREF_SET(__pyx_v_child, ((PyArray_Descr *)__pyx_t_3)); + __pyx_t_3 = 0; + __Pyx_XDECREF_SET(__pyx_v_new_offset, __pyx_t_4); + __pyx_t_4 = 0; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":809 + * child, new_offset = fields + * + * if (end - f) - (new_offset - offset[0]) < 15: # <<<<<<<<<<<<<< + * raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd") + * + */ + __pyx_t_4 = __Pyx_PyInt_From_int((__pyx_v_offset[0])); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 809, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = PyNumber_Subtract(__pyx_v_new_offset, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 809, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_3); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 809, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_6 = ((((__pyx_v_end - __pyx_v_f) - ((int)__pyx_t_5)) < 15) != 0); + if (unlikely(__pyx_t_6)) { + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":810 + * + * if (end - f) - (new_offset - offset[0]) < 15: + * raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd") # <<<<<<<<<<<<<< + * + * if ((child.byteorder == c'>' and little_endian) or + */ + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__4, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 810, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_Raise(__pyx_t_3, 0, 0, 0); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __PYX_ERR(1, 810, __pyx_L1_error) + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":809 + * child, new_offset = fields + * + * if (end - f) - (new_offset - offset[0]) < 15: # <<<<<<<<<<<<<< + * raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd") + * + */ + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":812 + * raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd") + * + * if ((child.byteorder == c'>' and little_endian) or # <<<<<<<<<<<<<< + * (child.byteorder == c'<' and not little_endian)): + * raise ValueError(u"Non-native byte order not supported") + */ + __pyx_t_7 = ((__pyx_v_child->byteorder == '>') != 0); + if (!__pyx_t_7) { + goto __pyx_L8_next_or; + } else { + } + __pyx_t_7 = (__pyx_v_little_endian != 0); + if (!__pyx_t_7) { + } else { + __pyx_t_6 = __pyx_t_7; + goto __pyx_L7_bool_binop_done; + } + __pyx_L8_next_or:; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":813 + * + * if ((child.byteorder == c'>' and little_endian) or + * (child.byteorder == c'<' and not little_endian)): # <<<<<<<<<<<<<< + * raise ValueError(u"Non-native byte order not supported") + * # One could encode it in the format string and have Cython + */ + __pyx_t_7 = ((__pyx_v_child->byteorder == '<') != 0); + if (__pyx_t_7) { + } else { + __pyx_t_6 = __pyx_t_7; + goto __pyx_L7_bool_binop_done; + } + __pyx_t_7 = ((!(__pyx_v_little_endian != 0)) != 0); + __pyx_t_6 = __pyx_t_7; + __pyx_L7_bool_binop_done:; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":812 + * raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd") + * + * if ((child.byteorder == c'>' and little_endian) or # <<<<<<<<<<<<<< + * (child.byteorder == c'<' and not little_endian)): + * raise ValueError(u"Non-native byte order not supported") + */ + if (unlikely(__pyx_t_6)) { + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":814 + * if ((child.byteorder == c'>' and little_endian) or + * (child.byteorder == c'<' and not little_endian)): + * raise ValueError(u"Non-native byte order not supported") # <<<<<<<<<<<<<< + * # One could encode it in the format string and have Cython + * # complain instead, BUT: < and > in format strings also imply + */ + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__5, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 814, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_Raise(__pyx_t_3, 0, 0, 0); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __PYX_ERR(1, 814, __pyx_L1_error) + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":812 + * raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd") + * + * if ((child.byteorder == c'>' and little_endian) or # <<<<<<<<<<<<<< + * (child.byteorder == c'<' and not little_endian)): + * raise ValueError(u"Non-native byte order not supported") + */ + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":824 + * + * # Output padding bytes + * while offset[0] < new_offset: # <<<<<<<<<<<<<< + * f[0] = 120 # "x"; pad byte + * f += 1 + */ + while (1) { + __pyx_t_3 = __Pyx_PyInt_From_int((__pyx_v_offset[0])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 824, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = PyObject_RichCompare(__pyx_t_3, __pyx_v_new_offset, Py_LT); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 824, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 824, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (!__pyx_t_6) break; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":825 + * # Output padding bytes + * while offset[0] < new_offset: + * f[0] = 120 # "x"; pad byte # <<<<<<<<<<<<<< + * f += 1 + * offset[0] += 1 + */ + (__pyx_v_f[0]) = 0x78; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":826 + * while offset[0] < new_offset: + * f[0] = 120 # "x"; pad byte + * f += 1 # <<<<<<<<<<<<<< + * offset[0] += 1 + * + */ + __pyx_v_f = (__pyx_v_f + 1); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":827 + * f[0] = 120 # "x"; pad byte + * f += 1 + * offset[0] += 1 # <<<<<<<<<<<<<< + * + * offset[0] += child.itemsize + */ + __pyx_t_8 = 0; + (__pyx_v_offset[__pyx_t_8]) = ((__pyx_v_offset[__pyx_t_8]) + 1); + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":829 + * offset[0] += 1 + * + * offset[0] += child.itemsize # <<<<<<<<<<<<<< + * + * if not PyDataType_HASFIELDS(child): + */ + __pyx_t_8 = 0; + (__pyx_v_offset[__pyx_t_8]) = ((__pyx_v_offset[__pyx_t_8]) + __pyx_v_child->elsize); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":831 + * offset[0] += child.itemsize + * + * if not PyDataType_HASFIELDS(child): # <<<<<<<<<<<<<< + * t = child.type_num + * if end - f < 5: + */ + __pyx_t_6 = ((!(PyDataType_HASFIELDS(__pyx_v_child) != 0)) != 0); + if (__pyx_t_6) { + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":832 + * + * if not PyDataType_HASFIELDS(child): + * t = child.type_num # <<<<<<<<<<<<<< + * if end - f < 5: + * raise RuntimeError(u"Format string allocated too short.") + */ + __pyx_t_4 = __Pyx_PyInt_From_int(__pyx_v_child->type_num); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 832, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_XDECREF_SET(__pyx_v_t, __pyx_t_4); + __pyx_t_4 = 0; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":833 + * if not PyDataType_HASFIELDS(child): + * t = child.type_num + * if end - f < 5: # <<<<<<<<<<<<<< + * raise RuntimeError(u"Format string allocated too short.") + * + */ + __pyx_t_6 = (((__pyx_v_end - __pyx_v_f) < 5) != 0); + if (unlikely(__pyx_t_6)) { + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":834 + * t = child.type_num + * if end - f < 5: + * raise RuntimeError(u"Format string allocated too short.") # <<<<<<<<<<<<<< + * + * # Until ticket #99 is fixed, use integers to avoid warnings + */ + __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__6, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 834, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_Raise(__pyx_t_4, 0, 0, 0); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __PYX_ERR(1, 834, __pyx_L1_error) + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":833 + * if not PyDataType_HASFIELDS(child): + * t = child.type_num + * if end - f < 5: # <<<<<<<<<<<<<< + * raise RuntimeError(u"Format string allocated too short.") + * + */ + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":837 + * + * # Until ticket #99 is fixed, use integers to avoid warnings + * if t == NPY_BYTE: f[0] = 98 #"b" # <<<<<<<<<<<<<< + * elif t == NPY_UBYTE: f[0] = 66 #"B" + * elif t == NPY_SHORT: f[0] = 104 #"h" + */ + __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_BYTE); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 837, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 837, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 837, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 98; + goto __pyx_L15; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":838 + * # Until ticket #99 is fixed, use integers to avoid warnings + * if t == NPY_BYTE: f[0] = 98 #"b" + * elif t == NPY_UBYTE: f[0] = 66 #"B" # <<<<<<<<<<<<<< + * elif t == NPY_SHORT: f[0] = 104 #"h" + * elif t == NPY_USHORT: f[0] = 72 #"H" + */ + __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_UBYTE); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 838, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 838, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 838, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 66; + goto __pyx_L15; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":839 + * if t == NPY_BYTE: f[0] = 98 #"b" + * elif t == NPY_UBYTE: f[0] = 66 #"B" + * elif t == NPY_SHORT: f[0] = 104 #"h" # <<<<<<<<<<<<<< + * elif t == NPY_USHORT: f[0] = 72 #"H" + * elif t == NPY_INT: f[0] = 105 #"i" + */ + __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_SHORT); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 839, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 839, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 839, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 0x68; + goto __pyx_L15; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":840 + * elif t == NPY_UBYTE: f[0] = 66 #"B" + * elif t == NPY_SHORT: f[0] = 104 #"h" + * elif t == NPY_USHORT: f[0] = 72 #"H" # <<<<<<<<<<<<<< + * elif t == NPY_INT: f[0] = 105 #"i" + * elif t == NPY_UINT: f[0] = 73 #"I" + */ + __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_USHORT); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 840, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 840, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 840, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 72; + goto __pyx_L15; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":841 + * elif t == NPY_SHORT: f[0] = 104 #"h" + * elif t == NPY_USHORT: f[0] = 72 #"H" + * elif t == NPY_INT: f[0] = 105 #"i" # <<<<<<<<<<<<<< + * elif t == NPY_UINT: f[0] = 73 #"I" + * elif t == NPY_LONG: f[0] = 108 #"l" + */ + __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_INT); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 841, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 841, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 841, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 0x69; + goto __pyx_L15; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":842 + * elif t == NPY_USHORT: f[0] = 72 #"H" + * elif t == NPY_INT: f[0] = 105 #"i" + * elif t == NPY_UINT: f[0] = 73 #"I" # <<<<<<<<<<<<<< + * elif t == NPY_LONG: f[0] = 108 #"l" + * elif t == NPY_ULONG: f[0] = 76 #"L" + */ + __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_UINT); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 842, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 842, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 842, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 73; + goto __pyx_L15; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":843 + * elif t == NPY_INT: f[0] = 105 #"i" + * elif t == NPY_UINT: f[0] = 73 #"I" + * elif t == NPY_LONG: f[0] = 108 #"l" # <<<<<<<<<<<<<< + * elif t == NPY_ULONG: f[0] = 76 #"L" + * elif t == NPY_LONGLONG: f[0] = 113 #"q" + */ + __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_LONG); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 843, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 843, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 843, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 0x6C; + goto __pyx_L15; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":844 + * elif t == NPY_UINT: f[0] = 73 #"I" + * elif t == NPY_LONG: f[0] = 108 #"l" + * elif t == NPY_ULONG: f[0] = 76 #"L" # <<<<<<<<<<<<<< + * elif t == NPY_LONGLONG: f[0] = 113 #"q" + * elif t == NPY_ULONGLONG: f[0] = 81 #"Q" + */ + __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_ULONG); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 844, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 844, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 844, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 76; + goto __pyx_L15; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":845 + * elif t == NPY_LONG: f[0] = 108 #"l" + * elif t == NPY_ULONG: f[0] = 76 #"L" + * elif t == NPY_LONGLONG: f[0] = 113 #"q" # <<<<<<<<<<<<<< + * elif t == NPY_ULONGLONG: f[0] = 81 #"Q" + * elif t == NPY_FLOAT: f[0] = 102 #"f" + */ + __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_LONGLONG); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 845, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 845, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 845, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 0x71; + goto __pyx_L15; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":846 + * elif t == NPY_ULONG: f[0] = 76 #"L" + * elif t == NPY_LONGLONG: f[0] = 113 #"q" + * elif t == NPY_ULONGLONG: f[0] = 81 #"Q" # <<<<<<<<<<<<<< + * elif t == NPY_FLOAT: f[0] = 102 #"f" + * elif t == NPY_DOUBLE: f[0] = 100 #"d" + */ + __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_ULONGLONG); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 846, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 846, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 846, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 81; + goto __pyx_L15; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":847 + * elif t == NPY_LONGLONG: f[0] = 113 #"q" + * elif t == NPY_ULONGLONG: f[0] = 81 #"Q" + * elif t == NPY_FLOAT: f[0] = 102 #"f" # <<<<<<<<<<<<<< + * elif t == NPY_DOUBLE: f[0] = 100 #"d" + * elif t == NPY_LONGDOUBLE: f[0] = 103 #"g" + */ + __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_FLOAT); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 847, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 847, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 847, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 0x66; + goto __pyx_L15; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":848 + * elif t == NPY_ULONGLONG: f[0] = 81 #"Q" + * elif t == NPY_FLOAT: f[0] = 102 #"f" + * elif t == NPY_DOUBLE: f[0] = 100 #"d" # <<<<<<<<<<<<<< + * elif t == NPY_LONGDOUBLE: f[0] = 103 #"g" + * elif t == NPY_CFLOAT: f[0] = 90; f[1] = 102; f += 1 # Zf + */ + __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_DOUBLE); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 848, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 848, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 848, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 0x64; + goto __pyx_L15; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":849 + * elif t == NPY_FLOAT: f[0] = 102 #"f" + * elif t == NPY_DOUBLE: f[0] = 100 #"d" + * elif t == NPY_LONGDOUBLE: f[0] = 103 #"g" # <<<<<<<<<<<<<< + * elif t == NPY_CFLOAT: f[0] = 90; f[1] = 102; f += 1 # Zf + * elif t == NPY_CDOUBLE: f[0] = 90; f[1] = 100; f += 1 # Zd + */ + __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_LONGDOUBLE); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 849, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 849, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 849, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 0x67; + goto __pyx_L15; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":850 + * elif t == NPY_DOUBLE: f[0] = 100 #"d" + * elif t == NPY_LONGDOUBLE: f[0] = 103 #"g" + * elif t == NPY_CFLOAT: f[0] = 90; f[1] = 102; f += 1 # Zf # <<<<<<<<<<<<<< + * elif t == NPY_CDOUBLE: f[0] = 90; f[1] = 100; f += 1 # Zd + * elif t == NPY_CLONGDOUBLE: f[0] = 90; f[1] = 103; f += 1 # Zg + */ + __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_CFLOAT); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 850, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 850, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 850, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 90; + (__pyx_v_f[1]) = 0x66; + __pyx_v_f = (__pyx_v_f + 1); + goto __pyx_L15; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":851 + * elif t == NPY_LONGDOUBLE: f[0] = 103 #"g" + * elif t == NPY_CFLOAT: f[0] = 90; f[1] = 102; f += 1 # Zf + * elif t == NPY_CDOUBLE: f[0] = 90; f[1] = 100; f += 1 # Zd # <<<<<<<<<<<<<< + * elif t == NPY_CLONGDOUBLE: f[0] = 90; f[1] = 103; f += 1 # Zg + * elif t == NPY_OBJECT: f[0] = 79 #"O" + */ + __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_CDOUBLE); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 851, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 851, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 851, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 90; + (__pyx_v_f[1]) = 0x64; + __pyx_v_f = (__pyx_v_f + 1); + goto __pyx_L15; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":852 + * elif t == NPY_CFLOAT: f[0] = 90; f[1] = 102; f += 1 # Zf + * elif t == NPY_CDOUBLE: f[0] = 90; f[1] = 100; f += 1 # Zd + * elif t == NPY_CLONGDOUBLE: f[0] = 90; f[1] = 103; f += 1 # Zg # <<<<<<<<<<<<<< + * elif t == NPY_OBJECT: f[0] = 79 #"O" + * else: + */ + __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_CLONGDOUBLE); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 852, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 852, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 852, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (__pyx_t_6) { + (__pyx_v_f[0]) = 90; + (__pyx_v_f[1]) = 0x67; + __pyx_v_f = (__pyx_v_f + 1); + goto __pyx_L15; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":853 + * elif t == NPY_CDOUBLE: f[0] = 90; f[1] = 100; f += 1 # Zd + * elif t == NPY_CLONGDOUBLE: f[0] = 90; f[1] = 103; f += 1 # Zg + * elif t == NPY_OBJECT: f[0] = 79 #"O" # <<<<<<<<<<<<<< + * else: + * raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t) + */ + __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_OBJECT); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 853, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 853, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 853, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (likely(__pyx_t_6)) { + (__pyx_v_f[0]) = 79; + goto __pyx_L15; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":855 + * elif t == NPY_OBJECT: f[0] = 79 #"O" + * else: + * raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t) # <<<<<<<<<<<<<< + * f += 1 + * else: + */ + /*else*/ { + __pyx_t_3 = PyUnicode_Format(__pyx_kp_u_unknown_dtype_code_in_numpy_pxd, __pyx_v_t); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 855, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_builtin_ValueError, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 855, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_Raise(__pyx_t_4, 0, 0, 0); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __PYX_ERR(1, 855, __pyx_L1_error) + } + __pyx_L15:; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":856 + * else: + * raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t) + * f += 1 # <<<<<<<<<<<<<< + * else: + * # Cython ignores struct boundary information ("T{...}"), + */ + __pyx_v_f = (__pyx_v_f + 1); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":831 + * offset[0] += child.itemsize + * + * if not PyDataType_HASFIELDS(child): # <<<<<<<<<<<<<< + * t = child.type_num + * if end - f < 5: + */ + goto __pyx_L13; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":860 + * # Cython ignores struct boundary information ("T{...}"), + * # so don't output it + * f = _util_dtypestring(child, f, end, offset) # <<<<<<<<<<<<<< + * return f + * + */ + /*else*/ { + __pyx_t_9 = __pyx_f_5numpy__util_dtypestring(__pyx_v_child, __pyx_v_f, __pyx_v_end, __pyx_v_offset); if (unlikely(__pyx_t_9 == ((char *)NULL))) __PYX_ERR(1, 860, __pyx_L1_error) + __pyx_v_f = __pyx_t_9; + } + __pyx_L13:; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":805 + * cdef tuple fields + * + * for childname in descr.names: # <<<<<<<<<<<<<< + * fields = descr.fields[childname] + * child, new_offset = fields + */ + } + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":861 + * # so don't output it + * f = _util_dtypestring(child, f, end, offset) + * return f # <<<<<<<<<<<<<< + * + * + */ + __pyx_r = __pyx_v_f; + goto __pyx_L0; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":796 + * return () + * + * cdef inline char* _util_dtypestring(dtype descr, char* f, char* end, int* offset) except NULL: # <<<<<<<<<<<<<< + * # Recursive utility function used in __getbuffer__ to get format + * # string. The new location in the format string is returned. + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_AddTraceback("numpy._util_dtypestring", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __pyx_L0:; + __Pyx_XDECREF((PyObject *)__pyx_v_child); + __Pyx_XDECREF(__pyx_v_fields); + __Pyx_XDECREF(__pyx_v_childname); + __Pyx_XDECREF(__pyx_v_new_offset); + __Pyx_XDECREF(__pyx_v_t); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":977 + * + * + * cdef inline void set_array_base(ndarray arr, object base): # <<<<<<<<<<<<<< + * cdef PyObject* baseptr + * if base is None: + */ + +static CYTHON_INLINE void __pyx_f_5numpy_set_array_base(PyArrayObject *__pyx_v_arr, PyObject *__pyx_v_base) { + PyObject *__pyx_v_baseptr; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + int __pyx_t_2; + __Pyx_RefNannySetupContext("set_array_base", 0); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":979 + * cdef inline void set_array_base(ndarray arr, object base): + * cdef PyObject* baseptr + * if base is None: # <<<<<<<<<<<<<< + * baseptr = NULL + * else: + */ + __pyx_t_1 = (__pyx_v_base == Py_None); + __pyx_t_2 = (__pyx_t_1 != 0); + if (__pyx_t_2) { + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":980 + * cdef PyObject* baseptr + * if base is None: + * baseptr = NULL # <<<<<<<<<<<<<< + * else: + * Py_INCREF(base) # important to do this before decref below! + */ + __pyx_v_baseptr = NULL; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":979 + * cdef inline void set_array_base(ndarray arr, object base): + * cdef PyObject* baseptr + * if base is None: # <<<<<<<<<<<<<< + * baseptr = NULL + * else: + */ + goto __pyx_L3; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":982 + * baseptr = NULL + * else: + * Py_INCREF(base) # important to do this before decref below! # <<<<<<<<<<<<<< + * baseptr = base + * Py_XDECREF(arr.base) + */ + /*else*/ { + Py_INCREF(__pyx_v_base); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":983 + * else: + * Py_INCREF(base) # important to do this before decref below! + * baseptr = base # <<<<<<<<<<<<<< + * Py_XDECREF(arr.base) + * arr.base = baseptr + */ + __pyx_v_baseptr = ((PyObject *)__pyx_v_base); + } + __pyx_L3:; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":984 + * Py_INCREF(base) # important to do this before decref below! + * baseptr = base + * Py_XDECREF(arr.base) # <<<<<<<<<<<<<< + * arr.base = baseptr + * + */ + Py_XDECREF(__pyx_v_arr->base); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":985 + * baseptr = base + * Py_XDECREF(arr.base) + * arr.base = baseptr # <<<<<<<<<<<<<< + * + * cdef inline object get_array_base(ndarray arr): + */ + __pyx_v_arr->base = __pyx_v_baseptr; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":977 + * + * + * cdef inline void set_array_base(ndarray arr, object base): # <<<<<<<<<<<<<< + * cdef PyObject* baseptr + * if base is None: + */ + + /* function exit code */ + __Pyx_RefNannyFinishContext(); +} + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":987 + * arr.base = baseptr + * + * cdef inline object get_array_base(ndarray arr): # <<<<<<<<<<<<<< + * if arr.base is NULL: + * return None + */ + +static CYTHON_INLINE PyObject *__pyx_f_5numpy_get_array_base(PyArrayObject *__pyx_v_arr) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + __Pyx_RefNannySetupContext("get_array_base", 0); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":988 + * + * cdef inline object get_array_base(ndarray arr): + * if arr.base is NULL: # <<<<<<<<<<<<<< + * return None + * else: + */ + __pyx_t_1 = ((__pyx_v_arr->base == NULL) != 0); + if (__pyx_t_1) { + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":989 + * cdef inline object get_array_base(ndarray arr): + * if arr.base is NULL: + * return None # <<<<<<<<<<<<<< + * else: + * return arr.base + */ + __Pyx_XDECREF(__pyx_r); + __pyx_r = Py_None; __Pyx_INCREF(Py_None); + goto __pyx_L0; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":988 + * + * cdef inline object get_array_base(ndarray arr): + * if arr.base is NULL: # <<<<<<<<<<<<<< + * return None + * else: + */ + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":991 + * return None + * else: + * return arr.base # <<<<<<<<<<<<<< + * + * + */ + /*else*/ { + __Pyx_XDECREF(__pyx_r); + __Pyx_INCREF(((PyObject *)__pyx_v_arr->base)); + __pyx_r = ((PyObject *)__pyx_v_arr->base); + goto __pyx_L0; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":987 + * arr.base = baseptr + * + * cdef inline object get_array_base(ndarray arr): # <<<<<<<<<<<<<< + * if arr.base is NULL: + * return None + */ + + /* function exit code */ + __pyx_L0:; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":996 + * # Versions of the import_* functions which are more suitable for + * # Cython code. + * cdef inline int import_array() except -1: # <<<<<<<<<<<<<< + * try: + * _import_array() + */ + +static CYTHON_INLINE int __pyx_f_5numpy_import_array(void) { + int __pyx_r; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + int __pyx_t_4; + PyObject *__pyx_t_5 = NULL; + PyObject *__pyx_t_6 = NULL; + PyObject *__pyx_t_7 = NULL; + PyObject *__pyx_t_8 = NULL; + __Pyx_RefNannySetupContext("import_array", 0); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":997 + * # Cython code. + * cdef inline int import_array() except -1: + * try: # <<<<<<<<<<<<<< + * _import_array() + * except Exception: + */ + { + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign + __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3); + __Pyx_XGOTREF(__pyx_t_1); + __Pyx_XGOTREF(__pyx_t_2); + __Pyx_XGOTREF(__pyx_t_3); + /*try:*/ { + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":998 + * cdef inline int import_array() except -1: + * try: + * _import_array() # <<<<<<<<<<<<<< + * except Exception: + * raise ImportError("numpy.core.multiarray failed to import") + */ + __pyx_t_4 = _import_array(); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(1, 998, __pyx_L3_error) + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":997 + * # Cython code. + * cdef inline int import_array() except -1: + * try: # <<<<<<<<<<<<<< + * _import_array() + * except Exception: + */ + } + __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + goto __pyx_L8_try_end; + __pyx_L3_error:; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":999 + * try: + * _import_array() + * except Exception: # <<<<<<<<<<<<<< + * raise ImportError("numpy.core.multiarray failed to import") + * + */ + __pyx_t_4 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); + if (__pyx_t_4) { + __Pyx_AddTraceback("numpy.import_array", __pyx_clineno, __pyx_lineno, __pyx_filename); + if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7) < 0) __PYX_ERR(1, 999, __pyx_L5_except_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_GOTREF(__pyx_t_6); + __Pyx_GOTREF(__pyx_t_7); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1000 + * _import_array() + * except Exception: + * raise ImportError("numpy.core.multiarray failed to import") # <<<<<<<<<<<<<< + * + * cdef inline int import_umath() except -1: + */ + __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_ImportError, __pyx_tuple__7, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 1000, __pyx_L5_except_error) + __Pyx_GOTREF(__pyx_t_8); + __Pyx_Raise(__pyx_t_8, 0, 0, 0); + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + __PYX_ERR(1, 1000, __pyx_L5_except_error) + } + goto __pyx_L5_except_error; + __pyx_L5_except_error:; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":997 + * # Cython code. + * cdef inline int import_array() except -1: + * try: # <<<<<<<<<<<<<< + * _import_array() + * except Exception: + */ + __Pyx_XGIVEREF(__pyx_t_1); + __Pyx_XGIVEREF(__pyx_t_2); + __Pyx_XGIVEREF(__pyx_t_3); + __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3); + goto __pyx_L1_error; + __pyx_L8_try_end:; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":996 + * # Versions of the import_* functions which are more suitable for + * # Cython code. + * cdef inline int import_array() except -1: # <<<<<<<<<<<<<< + * try: + * _import_array() + */ + + /* function exit code */ + __pyx_r = 0; + goto __pyx_L0; + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); + __Pyx_XDECREF(__pyx_t_7); + __Pyx_XDECREF(__pyx_t_8); + __Pyx_AddTraceback("numpy.import_array", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = -1; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1002 + * raise ImportError("numpy.core.multiarray failed to import") + * + * cdef inline int import_umath() except -1: # <<<<<<<<<<<<<< + * try: + * _import_umath() + */ + +static CYTHON_INLINE int __pyx_f_5numpy_import_umath(void) { + int __pyx_r; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + int __pyx_t_4; + PyObject *__pyx_t_5 = NULL; + PyObject *__pyx_t_6 = NULL; + PyObject *__pyx_t_7 = NULL; + PyObject *__pyx_t_8 = NULL; + __Pyx_RefNannySetupContext("import_umath", 0); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1003 + * + * cdef inline int import_umath() except -1: + * try: # <<<<<<<<<<<<<< + * _import_umath() + * except Exception: + */ + { + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign + __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3); + __Pyx_XGOTREF(__pyx_t_1); + __Pyx_XGOTREF(__pyx_t_2); + __Pyx_XGOTREF(__pyx_t_3); + /*try:*/ { + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1004 + * cdef inline int import_umath() except -1: + * try: + * _import_umath() # <<<<<<<<<<<<<< + * except Exception: + * raise ImportError("numpy.core.umath failed to import") + */ + __pyx_t_4 = _import_umath(); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(1, 1004, __pyx_L3_error) + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1003 + * + * cdef inline int import_umath() except -1: + * try: # <<<<<<<<<<<<<< + * _import_umath() + * except Exception: + */ + } + __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + goto __pyx_L8_try_end; + __pyx_L3_error:; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1005 + * try: + * _import_umath() + * except Exception: # <<<<<<<<<<<<<< + * raise ImportError("numpy.core.umath failed to import") + * + */ + __pyx_t_4 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); + if (__pyx_t_4) { + __Pyx_AddTraceback("numpy.import_umath", __pyx_clineno, __pyx_lineno, __pyx_filename); + if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7) < 0) __PYX_ERR(1, 1005, __pyx_L5_except_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_GOTREF(__pyx_t_6); + __Pyx_GOTREF(__pyx_t_7); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1006 + * _import_umath() + * except Exception: + * raise ImportError("numpy.core.umath failed to import") # <<<<<<<<<<<<<< + * + * cdef inline int import_ufunc() except -1: + */ + __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_ImportError, __pyx_tuple__8, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 1006, __pyx_L5_except_error) + __Pyx_GOTREF(__pyx_t_8); + __Pyx_Raise(__pyx_t_8, 0, 0, 0); + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + __PYX_ERR(1, 1006, __pyx_L5_except_error) + } + goto __pyx_L5_except_error; + __pyx_L5_except_error:; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1003 + * + * cdef inline int import_umath() except -1: + * try: # <<<<<<<<<<<<<< + * _import_umath() + * except Exception: + */ + __Pyx_XGIVEREF(__pyx_t_1); + __Pyx_XGIVEREF(__pyx_t_2); + __Pyx_XGIVEREF(__pyx_t_3); + __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3); + goto __pyx_L1_error; + __pyx_L8_try_end:; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1002 + * raise ImportError("numpy.core.multiarray failed to import") + * + * cdef inline int import_umath() except -1: # <<<<<<<<<<<<<< + * try: + * _import_umath() + */ + + /* function exit code */ + __pyx_r = 0; + goto __pyx_L0; + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); + __Pyx_XDECREF(__pyx_t_7); + __Pyx_XDECREF(__pyx_t_8); + __Pyx_AddTraceback("numpy.import_umath", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = -1; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1008 + * raise ImportError("numpy.core.umath failed to import") + * + * cdef inline int import_ufunc() except -1: # <<<<<<<<<<<<<< + * try: + * _import_umath() + */ + +static CYTHON_INLINE int __pyx_f_5numpy_import_ufunc(void) { + int __pyx_r; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + int __pyx_t_4; + PyObject *__pyx_t_5 = NULL; + PyObject *__pyx_t_6 = NULL; + PyObject *__pyx_t_7 = NULL; + PyObject *__pyx_t_8 = NULL; + __Pyx_RefNannySetupContext("import_ufunc", 0); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1009 + * + * cdef inline int import_ufunc() except -1: + * try: # <<<<<<<<<<<<<< + * _import_umath() + * except Exception: + */ + { + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign + __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3); + __Pyx_XGOTREF(__pyx_t_1); + __Pyx_XGOTREF(__pyx_t_2); + __Pyx_XGOTREF(__pyx_t_3); + /*try:*/ { + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1010 + * cdef inline int import_ufunc() except -1: + * try: + * _import_umath() # <<<<<<<<<<<<<< + * except Exception: + * raise ImportError("numpy.core.umath failed to import") + */ + __pyx_t_4 = _import_umath(); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(1, 1010, __pyx_L3_error) + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1009 + * + * cdef inline int import_ufunc() except -1: + * try: # <<<<<<<<<<<<<< + * _import_umath() + * except Exception: + */ + } + __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + goto __pyx_L8_try_end; + __pyx_L3_error:; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1011 + * try: + * _import_umath() + * except Exception: # <<<<<<<<<<<<<< + * raise ImportError("numpy.core.umath failed to import") + */ + __pyx_t_4 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); + if (__pyx_t_4) { + __Pyx_AddTraceback("numpy.import_ufunc", __pyx_clineno, __pyx_lineno, __pyx_filename); + if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7) < 0) __PYX_ERR(1, 1011, __pyx_L5_except_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_GOTREF(__pyx_t_6); + __Pyx_GOTREF(__pyx_t_7); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1012 + * _import_umath() + * except Exception: + * raise ImportError("numpy.core.umath failed to import") # <<<<<<<<<<<<<< + */ + __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_ImportError, __pyx_tuple__9, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 1012, __pyx_L5_except_error) + __Pyx_GOTREF(__pyx_t_8); + __Pyx_Raise(__pyx_t_8, 0, 0, 0); + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + __PYX_ERR(1, 1012, __pyx_L5_except_error) + } + goto __pyx_L5_except_error; + __pyx_L5_except_error:; + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1009 + * + * cdef inline int import_ufunc() except -1: + * try: # <<<<<<<<<<<<<< + * _import_umath() + * except Exception: + */ + __Pyx_XGIVEREF(__pyx_t_1); + __Pyx_XGIVEREF(__pyx_t_2); + __Pyx_XGIVEREF(__pyx_t_3); + __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3); + goto __pyx_L1_error; + __pyx_L8_try_end:; + } + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1008 + * raise ImportError("numpy.core.umath failed to import") + * + * cdef inline int import_ufunc() except -1: # <<<<<<<<<<<<<< + * try: + * _import_umath() + */ + + /* function exit code */ + __pyx_r = 0; + goto __pyx_L0; + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); + __Pyx_XDECREF(__pyx_t_7); + __Pyx_XDECREF(__pyx_t_8); + __Pyx_AddTraceback("numpy.import_ufunc", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = -1; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "string.from_py":13 + * + * @cname("__pyx_convert_string_from_py_std__in_string") + * cdef string __pyx_convert_string_from_py_std__in_string(object o) except *: # <<<<<<<<<<<<<< + * cdef Py_ssize_t length + * cdef const char* data = __Pyx_PyObject_AsStringAndSize(o, &length) + */ + +static std::string __pyx_convert_string_from_py_std__in_string(PyObject *__pyx_v_o) { + Py_ssize_t __pyx_v_length; + char const *__pyx_v_data; + std::string __pyx_r; + __Pyx_RefNannyDeclarations + char const *__pyx_t_1; + __Pyx_RefNannySetupContext("__pyx_convert_string_from_py_std__in_string", 0); + + /* "string.from_py":15 + * cdef string __pyx_convert_string_from_py_std__in_string(object o) except *: + * cdef Py_ssize_t length + * cdef const char* data = __Pyx_PyObject_AsStringAndSize(o, &length) # <<<<<<<<<<<<<< + * return string(data, length) + * + */ + __pyx_t_1 = __Pyx_PyObject_AsStringAndSize(__pyx_v_o, (&__pyx_v_length)); if (unlikely(__pyx_t_1 == ((char const *)NULL))) __PYX_ERR(2, 15, __pyx_L1_error) + __pyx_v_data = __pyx_t_1; + + /* "string.from_py":16 + * cdef Py_ssize_t length + * cdef const char* data = __Pyx_PyObject_AsStringAndSize(o, &length) + * return string(data, length) # <<<<<<<<<<<<<< + * + * + */ + __pyx_r = std::string(__pyx_v_data, __pyx_v_length); + goto __pyx_L0; + + /* "string.from_py":13 + * + * @cname("__pyx_convert_string_from_py_std__in_string") + * cdef string __pyx_convert_string_from_py_std__in_string(object o) except *: # <<<<<<<<<<<<<< + * cdef Py_ssize_t length + * cdef const char* data = __Pyx_PyObject_AsStringAndSize(o, &length) + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_AddTraceback("string.from_py.__pyx_convert_string_from_py_std__in_string", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_pretend_to_initialize(&__pyx_r); + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyMethodDef __pyx_methods[] = { + {0, 0, 0, 0} +}; + +#if PY_MAJOR_VERSION >= 3 +#if CYTHON_PEP489_MULTI_PHASE_INIT +static PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def); /*proto*/ +static int __pyx_pymod_exec_mesh_core_cython(PyObject* module); /*proto*/ +static PyModuleDef_Slot __pyx_moduledef_slots[] = { + {Py_mod_create, (void*)__pyx_pymod_create}, + {Py_mod_exec, (void*)__pyx_pymod_exec_mesh_core_cython}, + {0, NULL} +}; +#endif + +static struct PyModuleDef __pyx_moduledef = { + PyModuleDef_HEAD_INIT, + "mesh_core_cython", + 0, /* m_doc */ + #if CYTHON_PEP489_MULTI_PHASE_INIT + 0, /* m_size */ + #else + -1, /* m_size */ + #endif + __pyx_methods /* m_methods */, + #if CYTHON_PEP489_MULTI_PHASE_INIT + __pyx_moduledef_slots, /* m_slots */ + #else + NULL, /* m_reload */ + #endif + NULL, /* m_traverse */ + NULL, /* m_clear */ + NULL /* m_free */ +}; +#endif + +static __Pyx_StringTabEntry __pyx_string_tab[] = { + {&__pyx_kp_u_Format_string_allocated_too_shor, __pyx_k_Format_string_allocated_too_shor, sizeof(__pyx_k_Format_string_allocated_too_shor), 0, 1, 0, 0}, + {&__pyx_kp_u_Format_string_allocated_too_shor_2, __pyx_k_Format_string_allocated_too_shor_2, sizeof(__pyx_k_Format_string_allocated_too_shor_2), 0, 1, 0, 0}, + {&__pyx_n_s_ImportError, __pyx_k_ImportError, sizeof(__pyx_k_ImportError), 0, 0, 1, 1}, + {&__pyx_kp_u_Non_native_byte_order_not_suppor, __pyx_k_Non_native_byte_order_not_suppor, sizeof(__pyx_k_Non_native_byte_order_not_suppor), 0, 1, 0, 0}, + {&__pyx_n_s_RuntimeError, __pyx_k_RuntimeError, sizeof(__pyx_k_RuntimeError), 0, 0, 1, 1}, + {&__pyx_n_s_ValueError, __pyx_k_ValueError, sizeof(__pyx_k_ValueError), 0, 0, 1, 1}, + {&__pyx_n_s_barycentric_weight, __pyx_k_barycentric_weight, sizeof(__pyx_k_barycentric_weight), 0, 0, 1, 1}, + {&__pyx_n_s_c, __pyx_k_c, sizeof(__pyx_k_c), 0, 0, 1, 1}, + {&__pyx_n_s_cline_in_traceback, __pyx_k_cline_in_traceback, sizeof(__pyx_k_cline_in_traceback), 0, 0, 1, 1}, + {&__pyx_n_s_colors, __pyx_k_colors, sizeof(__pyx_k_colors), 0, 0, 1, 1}, + {&__pyx_n_s_depth_buffer, __pyx_k_depth_buffer, sizeof(__pyx_k_depth_buffer), 0, 0, 1, 1}, + {&__pyx_n_s_filename, __pyx_k_filename, sizeof(__pyx_k_filename), 0, 0, 1, 1}, + {&__pyx_n_s_get_normal_core, __pyx_k_get_normal_core, sizeof(__pyx_k_get_normal_core), 0, 0, 1, 1}, + {&__pyx_n_s_h, __pyx_k_h, sizeof(__pyx_k_h), 0, 0, 1, 1}, + {&__pyx_n_s_image, __pyx_k_image, sizeof(__pyx_k_image), 0, 0, 1, 1}, + {&__pyx_n_s_import, __pyx_k_import, sizeof(__pyx_k_import), 0, 0, 1, 1}, + {&__pyx_kp_s_insightface_thirdparty_face3d_me, __pyx_k_insightface_thirdparty_face3d_me, sizeof(__pyx_k_insightface_thirdparty_face3d_me), 0, 0, 1, 0}, + {&__pyx_n_s_main, __pyx_k_main, sizeof(__pyx_k_main), 0, 0, 1, 1}, + {&__pyx_n_s_mapping_type, __pyx_k_mapping_type, sizeof(__pyx_k_mapping_type), 0, 0, 1, 1}, + {&__pyx_n_s_mesh_core_cython, __pyx_k_mesh_core_cython, sizeof(__pyx_k_mesh_core_cython), 0, 0, 1, 1}, + {&__pyx_n_s_mtl_name, __pyx_k_mtl_name, sizeof(__pyx_k_mtl_name), 0, 0, 1, 1}, + {&__pyx_kp_u_ndarray_is_not_C_contiguous, __pyx_k_ndarray_is_not_C_contiguous, sizeof(__pyx_k_ndarray_is_not_C_contiguous), 0, 1, 0, 0}, + {&__pyx_kp_u_ndarray_is_not_Fortran_contiguou, __pyx_k_ndarray_is_not_Fortran_contiguou, sizeof(__pyx_k_ndarray_is_not_Fortran_contiguou), 0, 1, 0, 0}, + {&__pyx_n_s_normal, __pyx_k_normal, sizeof(__pyx_k_normal), 0, 0, 1, 1}, + {&__pyx_n_s_np, __pyx_k_np, sizeof(__pyx_k_np), 0, 0, 1, 1}, + {&__pyx_n_s_ntexver, __pyx_k_ntexver, sizeof(__pyx_k_ntexver), 0, 0, 1, 1}, + {&__pyx_n_s_ntri, __pyx_k_ntri, sizeof(__pyx_k_ntri), 0, 0, 1, 1}, + {&__pyx_n_s_numpy, __pyx_k_numpy, sizeof(__pyx_k_numpy), 0, 0, 1, 1}, + {&__pyx_kp_s_numpy_core_multiarray_failed_to, __pyx_k_numpy_core_multiarray_failed_to, sizeof(__pyx_k_numpy_core_multiarray_failed_to), 0, 0, 1, 0}, + {&__pyx_kp_s_numpy_core_umath_failed_to_impor, __pyx_k_numpy_core_umath_failed_to_impor, sizeof(__pyx_k_numpy_core_umath_failed_to_impor), 0, 0, 1, 0}, + {&__pyx_n_s_nver, __pyx_k_nver, sizeof(__pyx_k_nver), 0, 0, 1, 1}, + {&__pyx_n_s_range, __pyx_k_range, sizeof(__pyx_k_range), 0, 0, 1, 1}, + {&__pyx_n_s_rasterize_triangles_core, __pyx_k_rasterize_triangles_core, sizeof(__pyx_k_rasterize_triangles_core), 0, 0, 1, 1}, + {&__pyx_n_s_render_colors_core, __pyx_k_render_colors_core, sizeof(__pyx_k_render_colors_core), 0, 0, 1, 1}, + {&__pyx_n_s_render_texture_core, __pyx_k_render_texture_core, sizeof(__pyx_k_render_texture_core), 0, 0, 1, 1}, + {&__pyx_n_s_test, __pyx_k_test, sizeof(__pyx_k_test), 0, 0, 1, 1}, + {&__pyx_n_s_tex_c, __pyx_k_tex_c, sizeof(__pyx_k_tex_c), 0, 0, 1, 1}, + {&__pyx_n_s_tex_coords, __pyx_k_tex_coords, sizeof(__pyx_k_tex_coords), 0, 0, 1, 1}, + {&__pyx_n_s_tex_h, __pyx_k_tex_h, sizeof(__pyx_k_tex_h), 0, 0, 1, 1}, + {&__pyx_n_s_tex_nver, __pyx_k_tex_nver, sizeof(__pyx_k_tex_nver), 0, 0, 1, 1}, + {&__pyx_n_s_tex_triangles, __pyx_k_tex_triangles, sizeof(__pyx_k_tex_triangles), 0, 0, 1, 1}, + {&__pyx_n_s_tex_w, __pyx_k_tex_w, sizeof(__pyx_k_tex_w), 0, 0, 1, 1}, + {&__pyx_n_s_texture, __pyx_k_texture, sizeof(__pyx_k_texture), 0, 0, 1, 1}, + {&__pyx_n_s_tri_normal, __pyx_k_tri_normal, sizeof(__pyx_k_tri_normal), 0, 0, 1, 1}, + {&__pyx_n_s_triangle_buffer, __pyx_k_triangle_buffer, sizeof(__pyx_k_triangle_buffer), 0, 0, 1, 1}, + {&__pyx_n_s_triangles, __pyx_k_triangles, sizeof(__pyx_k_triangles), 0, 0, 1, 1}, + {&__pyx_kp_u_unknown_dtype_code_in_numpy_pxd, __pyx_k_unknown_dtype_code_in_numpy_pxd, sizeof(__pyx_k_unknown_dtype_code_in_numpy_pxd), 0, 1, 0, 0}, + {&__pyx_n_s_uv_coords, __pyx_k_uv_coords, sizeof(__pyx_k_uv_coords), 0, 0, 1, 1}, + {&__pyx_n_s_vertices, __pyx_k_vertices, sizeof(__pyx_k_vertices), 0, 0, 1, 1}, + {&__pyx_n_s_w, __pyx_k_w, sizeof(__pyx_k_w), 0, 0, 1, 1}, + {&__pyx_n_s_write_obj_with_colors_texture_co, __pyx_k_write_obj_with_colors_texture_co, sizeof(__pyx_k_write_obj_with_colors_texture_co), 0, 0, 1, 1}, + {0, 0, 0, 0, 0, 0, 0} +}; +static int __Pyx_InitCachedBuiltins(void) { + __pyx_builtin_ValueError = __Pyx_GetBuiltinName(__pyx_n_s_ValueError); if (!__pyx_builtin_ValueError) __PYX_ERR(1, 229, __pyx_L1_error) + __pyx_builtin_range = __Pyx_GetBuiltinName(__pyx_n_s_range); if (!__pyx_builtin_range) __PYX_ERR(1, 242, __pyx_L1_error) + __pyx_builtin_RuntimeError = __Pyx_GetBuiltinName(__pyx_n_s_RuntimeError); if (!__pyx_builtin_RuntimeError) __PYX_ERR(1, 810, __pyx_L1_error) + __pyx_builtin_ImportError = __Pyx_GetBuiltinName(__pyx_n_s_ImportError); if (!__pyx_builtin_ImportError) __PYX_ERR(1, 1000, __pyx_L1_error) + return 0; + __pyx_L1_error:; + return -1; +} + +static int __Pyx_InitCachedConstants(void) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":229 + * if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS) + * and not PyArray_CHKFLAGS(self, NPY_C_CONTIGUOUS)): + * raise ValueError(u"ndarray is not C contiguous") # <<<<<<<<<<<<<< + * + * if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS) + */ + __pyx_tuple_ = PyTuple_Pack(1, __pyx_kp_u_ndarray_is_not_C_contiguous); if (unlikely(!__pyx_tuple_)) __PYX_ERR(1, 229, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple_); + __Pyx_GIVEREF(__pyx_tuple_); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":233 + * if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS) + * and not PyArray_CHKFLAGS(self, NPY_F_CONTIGUOUS)): + * raise ValueError(u"ndarray is not Fortran contiguous") # <<<<<<<<<<<<<< + * + * info.buf = PyArray_DATA(self) + */ + __pyx_tuple__2 = PyTuple_Pack(1, __pyx_kp_u_ndarray_is_not_Fortran_contiguou); if (unlikely(!__pyx_tuple__2)) __PYX_ERR(1, 233, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__2); + __Pyx_GIVEREF(__pyx_tuple__2); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":263 + * if ((descr.byteorder == c'>' and little_endian) or + * (descr.byteorder == c'<' and not little_endian)): + * raise ValueError(u"Non-native byte order not supported") # <<<<<<<<<<<<<< + * if t == NPY_BYTE: f = "b" + * elif t == NPY_UBYTE: f = "B" + */ + __pyx_tuple__3 = PyTuple_Pack(1, __pyx_kp_u_Non_native_byte_order_not_suppor); if (unlikely(!__pyx_tuple__3)) __PYX_ERR(1, 263, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__3); + __Pyx_GIVEREF(__pyx_tuple__3); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":810 + * + * if (end - f) - (new_offset - offset[0]) < 15: + * raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd") # <<<<<<<<<<<<<< + * + * if ((child.byteorder == c'>' and little_endian) or + */ + __pyx_tuple__4 = PyTuple_Pack(1, __pyx_kp_u_Format_string_allocated_too_shor); if (unlikely(!__pyx_tuple__4)) __PYX_ERR(1, 810, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__4); + __Pyx_GIVEREF(__pyx_tuple__4); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":814 + * if ((child.byteorder == c'>' and little_endian) or + * (child.byteorder == c'<' and not little_endian)): + * raise ValueError(u"Non-native byte order not supported") # <<<<<<<<<<<<<< + * # One could encode it in the format string and have Cython + * # complain instead, BUT: < and > in format strings also imply + */ + __pyx_tuple__5 = PyTuple_Pack(1, __pyx_kp_u_Non_native_byte_order_not_suppor); if (unlikely(!__pyx_tuple__5)) __PYX_ERR(1, 814, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__5); + __Pyx_GIVEREF(__pyx_tuple__5); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":834 + * t = child.type_num + * if end - f < 5: + * raise RuntimeError(u"Format string allocated too short.") # <<<<<<<<<<<<<< + * + * # Until ticket #99 is fixed, use integers to avoid warnings + */ + __pyx_tuple__6 = PyTuple_Pack(1, __pyx_kp_u_Format_string_allocated_too_shor_2); if (unlikely(!__pyx_tuple__6)) __PYX_ERR(1, 834, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__6); + __Pyx_GIVEREF(__pyx_tuple__6); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1000 + * _import_array() + * except Exception: + * raise ImportError("numpy.core.multiarray failed to import") # <<<<<<<<<<<<<< + * + * cdef inline int import_umath() except -1: + */ + __pyx_tuple__7 = PyTuple_Pack(1, __pyx_kp_s_numpy_core_multiarray_failed_to); if (unlikely(!__pyx_tuple__7)) __PYX_ERR(1, 1000, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__7); + __Pyx_GIVEREF(__pyx_tuple__7); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1006 + * _import_umath() + * except Exception: + * raise ImportError("numpy.core.umath failed to import") # <<<<<<<<<<<<<< + * + * cdef inline int import_ufunc() except -1: + */ + __pyx_tuple__8 = PyTuple_Pack(1, __pyx_kp_s_numpy_core_umath_failed_to_impor); if (unlikely(!__pyx_tuple__8)) __PYX_ERR(1, 1006, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__8); + __Pyx_GIVEREF(__pyx_tuple__8); + + /* "../../../../jack_ssd/home/jack/anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1012 + * _import_umath() + * except Exception: + * raise ImportError("numpy.core.umath failed to import") # <<<<<<<<<<<<<< + */ + __pyx_tuple__9 = PyTuple_Pack(1, __pyx_kp_s_numpy_core_umath_failed_to_impor); if (unlikely(!__pyx_tuple__9)) __PYX_ERR(1, 1012, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__9); + __Pyx_GIVEREF(__pyx_tuple__9); + + /* "mesh_core_cython.pyx":40 + * int nver, int ntri, int ntexver) + * + * def get_normal_core(np.ndarray[float, ndim=2, mode = "c"] normal not None, # <<<<<<<<<<<<<< + * np.ndarray[float, ndim=2, mode = "c"] tri_normal not None, + * np.ndarray[int, ndim=2, mode="c"] triangles not None, + */ + __pyx_tuple__10 = PyTuple_Pack(4, __pyx_n_s_normal, __pyx_n_s_tri_normal, __pyx_n_s_triangles, __pyx_n_s_ntri); if (unlikely(!__pyx_tuple__10)) __PYX_ERR(0, 40, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__10); + __Pyx_GIVEREF(__pyx_tuple__10); + __pyx_codeobj__11 = (PyObject*)__Pyx_PyCode_New(4, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__10, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_insightface_thirdparty_face3d_me, __pyx_n_s_get_normal_core, 40, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__11)) __PYX_ERR(0, 40, __pyx_L1_error) + + /* "mesh_core_cython.pyx":49 + * ntri) + * + * def rasterize_triangles_core( # <<<<<<<<<<<<<< + * np.ndarray[float, ndim=2, mode = "c"] vertices not None, + * np.ndarray[int, ndim=2, mode="c"] triangles not None, + */ + __pyx_tuple__12 = PyTuple_Pack(9, __pyx_n_s_vertices, __pyx_n_s_triangles, __pyx_n_s_depth_buffer, __pyx_n_s_triangle_buffer, __pyx_n_s_barycentric_weight, __pyx_n_s_nver, __pyx_n_s_ntri, __pyx_n_s_h, __pyx_n_s_w); if (unlikely(!__pyx_tuple__12)) __PYX_ERR(0, 49, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__12); + __Pyx_GIVEREF(__pyx_tuple__12); + __pyx_codeobj__13 = (PyObject*)__Pyx_PyCode_New(9, 0, 9, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__12, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_insightface_thirdparty_face3d_me, __pyx_n_s_rasterize_triangles_core, 49, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__13)) __PYX_ERR(0, 49, __pyx_L1_error) + + /* "mesh_core_cython.pyx":64 + * h, w) + * + * def render_colors_core(np.ndarray[float, ndim=3, mode = "c"] image not None, # <<<<<<<<<<<<<< + * np.ndarray[float, ndim=2, mode = "c"] vertices not None, + * np.ndarray[int, ndim=2, mode="c"] triangles not None, + */ + __pyx_tuple__14 = PyTuple_Pack(10, __pyx_n_s_image, __pyx_n_s_vertices, __pyx_n_s_triangles, __pyx_n_s_colors, __pyx_n_s_depth_buffer, __pyx_n_s_nver, __pyx_n_s_ntri, __pyx_n_s_h, __pyx_n_s_w, __pyx_n_s_c); if (unlikely(!__pyx_tuple__14)) __PYX_ERR(0, 64, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__14); + __Pyx_GIVEREF(__pyx_tuple__14); + __pyx_codeobj__15 = (PyObject*)__Pyx_PyCode_New(10, 0, 10, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__14, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_insightface_thirdparty_face3d_me, __pyx_n_s_render_colors_core, 64, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__15)) __PYX_ERR(0, 64, __pyx_L1_error) + + /* "mesh_core_cython.pyx":79 + * h, w, c) + * + * def render_texture_core(np.ndarray[float, ndim=3, mode = "c"] image not None, # <<<<<<<<<<<<<< + * np.ndarray[float, ndim=2, mode = "c"] vertices not None, + * np.ndarray[int, ndim=2, mode="c"] triangles not None, + */ + __pyx_tuple__16 = PyTuple_Pack(17, __pyx_n_s_image, __pyx_n_s_vertices, __pyx_n_s_triangles, __pyx_n_s_texture, __pyx_n_s_tex_coords, __pyx_n_s_tex_triangles, __pyx_n_s_depth_buffer, __pyx_n_s_nver, __pyx_n_s_tex_nver, __pyx_n_s_ntri, __pyx_n_s_h, __pyx_n_s_w, __pyx_n_s_c, __pyx_n_s_tex_h, __pyx_n_s_tex_w, __pyx_n_s_tex_c, __pyx_n_s_mapping_type); if (unlikely(!__pyx_tuple__16)) __PYX_ERR(0, 79, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__16); + __Pyx_GIVEREF(__pyx_tuple__16); + __pyx_codeobj__17 = (PyObject*)__Pyx_PyCode_New(17, 0, 17, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__16, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_insightface_thirdparty_face3d_me, __pyx_n_s_render_texture_core, 79, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__17)) __PYX_ERR(0, 79, __pyx_L1_error) + + /* "mesh_core_cython.pyx":100 + * mapping_type) + * + * def write_obj_with_colors_texture_core(string filename, string mtl_name, # <<<<<<<<<<<<<< + * np.ndarray[float, ndim=2, mode = "c"] vertices not None, + * np.ndarray[int, ndim=2, mode="c"] triangles not None, + */ + __pyx_tuple__18 = PyTuple_Pack(9, __pyx_n_s_filename, __pyx_n_s_mtl_name, __pyx_n_s_vertices, __pyx_n_s_triangles, __pyx_n_s_colors, __pyx_n_s_uv_coords, __pyx_n_s_nver, __pyx_n_s_ntri, __pyx_n_s_ntexver); if (unlikely(!__pyx_tuple__18)) __PYX_ERR(0, 100, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__18); + __Pyx_GIVEREF(__pyx_tuple__18); + __pyx_codeobj__19 = (PyObject*)__Pyx_PyCode_New(9, 0, 9, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__18, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_insightface_thirdparty_face3d_me, __pyx_n_s_write_obj_with_colors_texture_co, 100, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__19)) __PYX_ERR(0, 100, __pyx_L1_error) + __Pyx_RefNannyFinishContext(); + return 0; + __pyx_L1_error:; + __Pyx_RefNannyFinishContext(); + return -1; +} + +static int __Pyx_InitGlobals(void) { + if (__Pyx_InitStrings(__pyx_string_tab) < 0) __PYX_ERR(0, 1, __pyx_L1_error); + return 0; + __pyx_L1_error:; + return -1; +} + +static int __Pyx_modinit_global_init_code(void); /*proto*/ +static int __Pyx_modinit_variable_export_code(void); /*proto*/ +static int __Pyx_modinit_function_export_code(void); /*proto*/ +static int __Pyx_modinit_type_init_code(void); /*proto*/ +static int __Pyx_modinit_type_import_code(void); /*proto*/ +static int __Pyx_modinit_variable_import_code(void); /*proto*/ +static int __Pyx_modinit_function_import_code(void); /*proto*/ + +static int __Pyx_modinit_global_init_code(void) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__Pyx_modinit_global_init_code", 0); + /*--- Global init code ---*/ + __Pyx_RefNannyFinishContext(); + return 0; +} + +static int __Pyx_modinit_variable_export_code(void) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__Pyx_modinit_variable_export_code", 0); + /*--- Variable export code ---*/ + __Pyx_RefNannyFinishContext(); + return 0; +} + +static int __Pyx_modinit_function_export_code(void) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__Pyx_modinit_function_export_code", 0); + /*--- Function export code ---*/ + __Pyx_RefNannyFinishContext(); + return 0; +} + +static int __Pyx_modinit_type_init_code(void) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__Pyx_modinit_type_init_code", 0); + /*--- Type init code ---*/ + __Pyx_RefNannyFinishContext(); + return 0; +} + +static int __Pyx_modinit_type_import_code(void) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__Pyx_modinit_type_import_code", 0); + /*--- Type import code ---*/ + __pyx_ptype_7cpython_4type_type = __Pyx_ImportType(__Pyx_BUILTIN_MODULE_NAME, "type", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(PyTypeObject), + #else + sizeof(PyHeapTypeObject), + #endif + 0); if (unlikely(!__pyx_ptype_7cpython_4type_type)) __PYX_ERR(3, 9, __pyx_L1_error) + __pyx_ptype_5numpy_dtype = __Pyx_ImportType("numpy", "dtype", sizeof(PyArray_Descr), 0); if (unlikely(!__pyx_ptype_5numpy_dtype)) __PYX_ERR(1, 164, __pyx_L1_error) + __pyx_ptype_5numpy_flatiter = __Pyx_ImportType("numpy", "flatiter", sizeof(PyArrayIterObject), 0); if (unlikely(!__pyx_ptype_5numpy_flatiter)) __PYX_ERR(1, 186, __pyx_L1_error) + __pyx_ptype_5numpy_broadcast = __Pyx_ImportType("numpy", "broadcast", sizeof(PyArrayMultiIterObject), 0); if (unlikely(!__pyx_ptype_5numpy_broadcast)) __PYX_ERR(1, 190, __pyx_L1_error) + __pyx_ptype_5numpy_ndarray = __Pyx_ImportType("numpy", "ndarray", sizeof(PyArrayObject), 0); if (unlikely(!__pyx_ptype_5numpy_ndarray)) __PYX_ERR(1, 199, __pyx_L1_error) + __pyx_ptype_5numpy_ufunc = __Pyx_ImportType("numpy", "ufunc", sizeof(PyUFuncObject), 0); if (unlikely(!__pyx_ptype_5numpy_ufunc)) __PYX_ERR(1, 872, __pyx_L1_error) + __Pyx_RefNannyFinishContext(); + return 0; + __pyx_L1_error:; + __Pyx_RefNannyFinishContext(); + return -1; +} + +static int __Pyx_modinit_variable_import_code(void) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__Pyx_modinit_variable_import_code", 0); + /*--- Variable import code ---*/ + __Pyx_RefNannyFinishContext(); + return 0; +} + +static int __Pyx_modinit_function_import_code(void) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__Pyx_modinit_function_import_code", 0); + /*--- Function import code ---*/ + __Pyx_RefNannyFinishContext(); + return 0; +} + + +#if PY_MAJOR_VERSION < 3 +#ifdef CYTHON_NO_PYINIT_EXPORT +#define __Pyx_PyMODINIT_FUNC void +#else +#define __Pyx_PyMODINIT_FUNC PyMODINIT_FUNC +#endif +#else +#ifdef CYTHON_NO_PYINIT_EXPORT +#define __Pyx_PyMODINIT_FUNC PyObject * +#else +#define __Pyx_PyMODINIT_FUNC PyMODINIT_FUNC +#endif +#endif +#ifndef CYTHON_SMALL_CODE +#if defined(__clang__) + #define CYTHON_SMALL_CODE +#elif defined(__GNUC__) + #define CYTHON_SMALL_CODE __attribute__((optimize("Os"))) +#else + #define CYTHON_SMALL_CODE +#endif +#endif + + +#if PY_MAJOR_VERSION < 3 +__Pyx_PyMODINIT_FUNC initmesh_core_cython(void) CYTHON_SMALL_CODE; /*proto*/ +__Pyx_PyMODINIT_FUNC initmesh_core_cython(void) +#else +__Pyx_PyMODINIT_FUNC PyInit_mesh_core_cython(void) CYTHON_SMALL_CODE; /*proto*/ +__Pyx_PyMODINIT_FUNC PyInit_mesh_core_cython(void) +#if CYTHON_PEP489_MULTI_PHASE_INIT +{ + return PyModuleDef_Init(&__pyx_moduledef); +} +static int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *moddict, const char* from_name, const char* to_name) { + PyObject *value = PyObject_GetAttrString(spec, from_name); + int result = 0; + if (likely(value)) { + result = PyDict_SetItemString(moddict, to_name, value); + Py_DECREF(value); + } else if (PyErr_ExceptionMatches(PyExc_AttributeError)) { + PyErr_Clear(); + } else { + result = -1; + } + return result; +} +static PyObject* __pyx_pymod_create(PyObject *spec, CYTHON_UNUSED PyModuleDef *def) { + PyObject *module = NULL, *moddict, *modname; + if (__pyx_m) + return __Pyx_NewRef(__pyx_m); + modname = PyObject_GetAttrString(spec, "name"); + if (unlikely(!modname)) goto bad; + module = PyModule_NewObject(modname); + Py_DECREF(modname); + if (unlikely(!module)) goto bad; + moddict = PyModule_GetDict(module); + if (unlikely(!moddict)) goto bad; + if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "loader", "__loader__") < 0)) goto bad; + if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "origin", "__file__") < 0)) goto bad; + if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "parent", "__package__") < 0)) goto bad; + if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "submodule_search_locations", "__path__") < 0)) goto bad; + return module; +bad: + Py_XDECREF(module); + return NULL; +} + + +static int __pyx_pymod_exec_mesh_core_cython(PyObject *__pyx_pyinit_module) +#endif +#endif +{ + PyObject *__pyx_t_1 = NULL; + int __pyx_t_2; + __Pyx_RefNannyDeclarations + #if CYTHON_PEP489_MULTI_PHASE_INIT + if (__pyx_m && __pyx_m == __pyx_pyinit_module) return 0; + #elif PY_MAJOR_VERSION >= 3 + if (__pyx_m) return __Pyx_NewRef(__pyx_m); + #endif + #if CYTHON_REFNANNY +__Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); +if (!__Pyx_RefNanny) { + PyErr_Clear(); + __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny"); + if (!__Pyx_RefNanny) + Py_FatalError("failed to import 'refnanny' module"); +} +#endif + __Pyx_RefNannySetupContext("__Pyx_PyMODINIT_FUNC PyInit_mesh_core_cython(void)", 0); + if (__Pyx_check_binary_version() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_empty_unicode = PyUnicode_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_unicode)) __PYX_ERR(0, 1, __pyx_L1_error) + #ifdef __Pyx_CyFunction_USED + if (__pyx_CyFunction_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + #endif + #ifdef __Pyx_FusedFunction_USED + if (__pyx_FusedFunction_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + #endif + #ifdef __Pyx_Coroutine_USED + if (__pyx_Coroutine_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + #endif + #ifdef __Pyx_Generator_USED + if (__pyx_Generator_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + #endif + #ifdef __Pyx_AsyncGen_USED + if (__pyx_AsyncGen_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + #endif + #ifdef __Pyx_StopAsyncIteration_USED + if (__pyx_StopAsyncIteration_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + #endif + /*--- Library function declarations ---*/ + /*--- Threads initialization code ---*/ + #if defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS + #ifdef WITH_THREAD /* Python build with threading support? */ + PyEval_InitThreads(); + #endif + #endif + /*--- Module creation code ---*/ + #if CYTHON_PEP489_MULTI_PHASE_INIT + __pyx_m = __pyx_pyinit_module; + Py_INCREF(__pyx_m); + #else + #if PY_MAJOR_VERSION < 3 + __pyx_m = Py_InitModule4("mesh_core_cython", __pyx_methods, 0, 0, PYTHON_API_VERSION); Py_XINCREF(__pyx_m); + #else + __pyx_m = PyModule_Create(&__pyx_moduledef); + #endif + if (unlikely(!__pyx_m)) __PYX_ERR(0, 1, __pyx_L1_error) + #endif + __pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_d)) __PYX_ERR(0, 1, __pyx_L1_error) + Py_INCREF(__pyx_d); + __pyx_b = PyImport_AddModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_cython_runtime = PyImport_AddModule((char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(0, 1, __pyx_L1_error) + #if CYTHON_COMPILING_IN_PYPY + Py_INCREF(__pyx_b); + #endif + if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) __PYX_ERR(0, 1, __pyx_L1_error); + /*--- Initialize various global constants etc. ---*/ + if (__Pyx_InitGlobals() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + #if PY_MAJOR_VERSION < 3 && (__PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT) + if (__Pyx_init_sys_getdefaultencoding_params() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + #endif + if (__pyx_module_is_main_mesh_core_cython) { + if (PyObject_SetAttrString(__pyx_m, "__name__", __pyx_n_s_main) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + } + #if PY_MAJOR_VERSION >= 3 + { + PyObject *modules = PyImport_GetModuleDict(); if (unlikely(!modules)) __PYX_ERR(0, 1, __pyx_L1_error) + if (!PyDict_GetItemString(modules, "mesh_core_cython")) { + if (unlikely(PyDict_SetItemString(modules, "mesh_core_cython", __pyx_m) < 0)) __PYX_ERR(0, 1, __pyx_L1_error) + } + } + #endif + /*--- Builtin init code ---*/ + if (__Pyx_InitCachedBuiltins() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + /*--- Constants init code ---*/ + if (__Pyx_InitCachedConstants() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + /*--- Global type/function init code ---*/ + (void)__Pyx_modinit_global_init_code(); + (void)__Pyx_modinit_variable_export_code(); + (void)__Pyx_modinit_function_export_code(); + (void)__Pyx_modinit_type_init_code(); + if (unlikely(__Pyx_modinit_type_import_code() != 0)) goto __pyx_L1_error; + (void)__Pyx_modinit_variable_import_code(); + (void)__Pyx_modinit_function_import_code(); + /*--- Execution code ---*/ + #if defined(__Pyx_Generator_USED) || defined(__Pyx_Coroutine_USED) + if (__Pyx_patch_abc() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + #endif + + /* "mesh_core_cython.pyx":1 + * import numpy as np # <<<<<<<<<<<<<< + * cimport numpy as np + * from libcpp.string cimport string + */ + __pyx_t_1 = __Pyx_Import(__pyx_n_s_numpy, 0, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_d, __pyx_n_s_np, __pyx_t_1) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + + /* "mesh_core_cython.pyx":6 + * + * # use the Numpy-C-API from Cython + * np.import_array() # <<<<<<<<<<<<<< + * + * # cdefine the signature of our c function + */ + __pyx_t_2 = __pyx_f_5numpy_import_array(); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 6, __pyx_L1_error) + + /* "mesh_core_cython.pyx":40 + * int nver, int ntri, int ntexver) + * + * def get_normal_core(np.ndarray[float, ndim=2, mode = "c"] normal not None, # <<<<<<<<<<<<<< + * np.ndarray[float, ndim=2, mode = "c"] tri_normal not None, + * np.ndarray[int, ndim=2, mode="c"] triangles not None, + */ + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_16mesh_core_cython_1get_normal_core, NULL, __pyx_n_s_mesh_core_cython); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 40, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_normal_core, __pyx_t_1) < 0) __PYX_ERR(0, 40, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + + /* "mesh_core_cython.pyx":49 + * ntri) + * + * def rasterize_triangles_core( # <<<<<<<<<<<<<< + * np.ndarray[float, ndim=2, mode = "c"] vertices not None, + * np.ndarray[int, ndim=2, mode="c"] triangles not None, + */ + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_16mesh_core_cython_3rasterize_triangles_core, NULL, __pyx_n_s_mesh_core_cython); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 49, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_d, __pyx_n_s_rasterize_triangles_core, __pyx_t_1) < 0) __PYX_ERR(0, 49, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + + /* "mesh_core_cython.pyx":64 + * h, w) + * + * def render_colors_core(np.ndarray[float, ndim=3, mode = "c"] image not None, # <<<<<<<<<<<<<< + * np.ndarray[float, ndim=2, mode = "c"] vertices not None, + * np.ndarray[int, ndim=2, mode="c"] triangles not None, + */ + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_16mesh_core_cython_5render_colors_core, NULL, __pyx_n_s_mesh_core_cython); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 64, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_d, __pyx_n_s_render_colors_core, __pyx_t_1) < 0) __PYX_ERR(0, 64, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + + /* "mesh_core_cython.pyx":79 + * h, w, c) + * + * def render_texture_core(np.ndarray[float, ndim=3, mode = "c"] image not None, # <<<<<<<<<<<<<< + * np.ndarray[float, ndim=2, mode = "c"] vertices not None, + * np.ndarray[int, ndim=2, mode="c"] triangles not None, + */ + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_16mesh_core_cython_7render_texture_core, NULL, __pyx_n_s_mesh_core_cython); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 79, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_d, __pyx_n_s_render_texture_core, __pyx_t_1) < 0) __PYX_ERR(0, 79, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + + /* "mesh_core_cython.pyx":100 + * mapping_type) + * + * def write_obj_with_colors_texture_core(string filename, string mtl_name, # <<<<<<<<<<<<<< + * np.ndarray[float, ndim=2, mode = "c"] vertices not None, + * np.ndarray[int, ndim=2, mode="c"] triangles not None, + */ + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_16mesh_core_cython_9write_obj_with_colors_texture_core, NULL, __pyx_n_s_mesh_core_cython); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 100, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_d, __pyx_n_s_write_obj_with_colors_texture_co, __pyx_t_1) < 0) __PYX_ERR(0, 100, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + + /* "mesh_core_cython.pyx":1 + * import numpy as np # <<<<<<<<<<<<<< + * cimport numpy as np + * from libcpp.string cimport string + */ + __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_d, __pyx_n_s_test, __pyx_t_1) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + + /* "string.from_py":13 + * + * @cname("__pyx_convert_string_from_py_std__in_string") + * cdef string __pyx_convert_string_from_py_std__in_string(object o) except *: # <<<<<<<<<<<<<< + * cdef Py_ssize_t length + * cdef const char* data = __Pyx_PyObject_AsStringAndSize(o, &length) + */ + + /*--- Wrapped vars code ---*/ + + goto __pyx_L0; + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + if (__pyx_m) { + if (__pyx_d) { + __Pyx_AddTraceback("init mesh_core_cython", 0, __pyx_lineno, __pyx_filename); + } + Py_DECREF(__pyx_m); __pyx_m = 0; + } else if (!PyErr_Occurred()) { + PyErr_SetString(PyExc_ImportError, "init mesh_core_cython"); + } + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + #if CYTHON_PEP489_MULTI_PHASE_INIT + return (__pyx_m != NULL) ? 0 : -1; + #elif PY_MAJOR_VERSION >= 3 + return __pyx_m; + #else + return; + #endif +} + +/* --- Runtime support code --- */ +/* Refnanny */ +#if CYTHON_REFNANNY +static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { + PyObject *m = NULL, *p = NULL; + void *r = NULL; + m = PyImport_ImportModule((char *)modname); + if (!m) goto end; + p = PyObject_GetAttrString(m, (char *)"RefNannyAPI"); + if (!p) goto end; + r = PyLong_AsVoidPtr(p); +end: + Py_XDECREF(p); + Py_XDECREF(m); + return (__Pyx_RefNannyAPIStruct *)r; +} +#endif + +/* RaiseArgTupleInvalid */ +static void __Pyx_RaiseArgtupleInvalid( + const char* func_name, + int exact, + Py_ssize_t num_min, + Py_ssize_t num_max, + Py_ssize_t num_found) +{ + Py_ssize_t num_expected; + const char *more_or_less; + if (num_found < num_min) { + num_expected = num_min; + more_or_less = "at least"; + } else { + num_expected = num_max; + more_or_less = "at most"; + } + if (exact) { + more_or_less = "exactly"; + } + PyErr_Format(PyExc_TypeError, + "%.200s() takes %.8s %" CYTHON_FORMAT_SSIZE_T "d positional argument%.1s (%" CYTHON_FORMAT_SSIZE_T "d given)", + func_name, more_or_less, num_expected, + (num_expected == 1) ? "" : "s", num_found); +} + +/* RaiseDoubleKeywords */ +static void __Pyx_RaiseDoubleKeywordsError( + const char* func_name, + PyObject* kw_name) +{ + PyErr_Format(PyExc_TypeError, + #if PY_MAJOR_VERSION >= 3 + "%s() got multiple values for keyword argument '%U'", func_name, kw_name); + #else + "%s() got multiple values for keyword argument '%s'", func_name, + PyString_AsString(kw_name)); + #endif +} + +/* ParseKeywords */ +static int __Pyx_ParseOptionalKeywords( + PyObject *kwds, + PyObject **argnames[], + PyObject *kwds2, + PyObject *values[], + Py_ssize_t num_pos_args, + const char* function_name) +{ + PyObject *key = 0, *value = 0; + Py_ssize_t pos = 0; + PyObject*** name; + PyObject*** first_kw_arg = argnames + num_pos_args; + while (PyDict_Next(kwds, &pos, &key, &value)) { + name = first_kw_arg; + while (*name && (**name != key)) name++; + if (*name) { + values[name-argnames] = value; + continue; + } + name = first_kw_arg; + #if PY_MAJOR_VERSION < 3 + if (likely(PyString_CheckExact(key)) || likely(PyString_Check(key))) { + while (*name) { + if ((CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**name) == PyString_GET_SIZE(key)) + && _PyString_Eq(**name, key)) { + values[name-argnames] = value; + break; + } + name++; + } + if (*name) continue; + else { + PyObject*** argname = argnames; + while (argname != first_kw_arg) { + if ((**argname == key) || ( + (CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**argname) == PyString_GET_SIZE(key)) + && _PyString_Eq(**argname, key))) { + goto arg_passed_twice; + } + argname++; + } + } + } else + #endif + if (likely(PyUnicode_Check(key))) { + while (*name) { + int cmp = (**name == key) ? 0 : + #if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3 + (PyUnicode_GET_SIZE(**name) != PyUnicode_GET_SIZE(key)) ? 1 : + #endif + PyUnicode_Compare(**name, key); + if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; + if (cmp == 0) { + values[name-argnames] = value; + break; + } + name++; + } + if (*name) continue; + else { + PyObject*** argname = argnames; + while (argname != first_kw_arg) { + int cmp = (**argname == key) ? 0 : + #if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3 + (PyUnicode_GET_SIZE(**argname) != PyUnicode_GET_SIZE(key)) ? 1 : + #endif + PyUnicode_Compare(**argname, key); + if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; + if (cmp == 0) goto arg_passed_twice; + argname++; + } + } + } else + goto invalid_keyword_type; + if (kwds2) { + if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad; + } else { + goto invalid_keyword; + } + } + return 0; +arg_passed_twice: + __Pyx_RaiseDoubleKeywordsError(function_name, key); + goto bad; +invalid_keyword_type: + PyErr_Format(PyExc_TypeError, + "%.200s() keywords must be strings", function_name); + goto bad; +invalid_keyword: + PyErr_Format(PyExc_TypeError, + #if PY_MAJOR_VERSION < 3 + "%.200s() got an unexpected keyword argument '%.200s'", + function_name, PyString_AsString(key)); + #else + "%s() got an unexpected keyword argument '%U'", + function_name, key); + #endif +bad: + return -1; +} + +/* ArgTypeTest */ +static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact) +{ + if (unlikely(!type)) { + PyErr_SetString(PyExc_SystemError, "Missing type object"); + return 0; + } + else if (exact) { + #if PY_MAJOR_VERSION == 2 + if ((type == &PyBaseString_Type) && likely(__Pyx_PyBaseString_CheckExact(obj))) return 1; + #endif + } + else { + if (likely(__Pyx_TypeCheck(obj, type))) return 1; + } + PyErr_Format(PyExc_TypeError, + "Argument '%.200s' has incorrect type (expected %.200s, got %.200s)", + name, type->tp_name, Py_TYPE(obj)->tp_name); + return 0; +} + +/* IsLittleEndian */ +static CYTHON_INLINE int __Pyx_Is_Little_Endian(void) +{ + union { + uint32_t u32; + uint8_t u8[4]; + } S; + S.u32 = 0x01020304; + return S.u8[0] == 4; +} + +/* BufferFormatCheck */ +static void __Pyx_BufFmt_Init(__Pyx_BufFmt_Context* ctx, + __Pyx_BufFmt_StackElem* stack, + __Pyx_TypeInfo* type) { + stack[0].field = &ctx->root; + stack[0].parent_offset = 0; + ctx->root.type = type; + ctx->root.name = "buffer dtype"; + ctx->root.offset = 0; + ctx->head = stack; + ctx->head->field = &ctx->root; + ctx->fmt_offset = 0; + ctx->head->parent_offset = 0; + ctx->new_packmode = '@'; + ctx->enc_packmode = '@'; + ctx->new_count = 1; + ctx->enc_count = 0; + ctx->enc_type = 0; + ctx->is_complex = 0; + ctx->is_valid_array = 0; + ctx->struct_alignment = 0; + while (type->typegroup == 'S') { + ++ctx->head; + ctx->head->field = type->fields; + ctx->head->parent_offset = 0; + type = type->fields->type; + } +} +static int __Pyx_BufFmt_ParseNumber(const char** ts) { + int count; + const char* t = *ts; + if (*t < '0' || *t > '9') { + return -1; + } else { + count = *t++ - '0'; + while (*t >= '0' && *t < '9') { + count *= 10; + count += *t++ - '0'; + } + } + *ts = t; + return count; +} +static int __Pyx_BufFmt_ExpectNumber(const char **ts) { + int number = __Pyx_BufFmt_ParseNumber(ts); + if (number == -1) + PyErr_Format(PyExc_ValueError,\ + "Does not understand character buffer dtype format string ('%c')", **ts); + return number; +} +static void __Pyx_BufFmt_RaiseUnexpectedChar(char ch) { + PyErr_Format(PyExc_ValueError, + "Unexpected format string character: '%c'", ch); +} +static const char* __Pyx_BufFmt_DescribeTypeChar(char ch, int is_complex) { + switch (ch) { + case 'c': return "'char'"; + case 'b': return "'signed char'"; + case 'B': return "'unsigned char'"; + case 'h': return "'short'"; + case 'H': return "'unsigned short'"; + case 'i': return "'int'"; + case 'I': return "'unsigned int'"; + case 'l': return "'long'"; + case 'L': return "'unsigned long'"; + case 'q': return "'long long'"; + case 'Q': return "'unsigned long long'"; + case 'f': return (is_complex ? "'complex float'" : "'float'"); + case 'd': return (is_complex ? "'complex double'" : "'double'"); + case 'g': return (is_complex ? "'complex long double'" : "'long double'"); + case 'T': return "a struct"; + case 'O': return "Python object"; + case 'P': return "a pointer"; + case 's': case 'p': return "a string"; + case 0: return "end"; + default: return "unparseable format string"; + } +} +static size_t __Pyx_BufFmt_TypeCharToStandardSize(char ch, int is_complex) { + switch (ch) { + case '?': case 'c': case 'b': case 'B': case 's': case 'p': return 1; + case 'h': case 'H': return 2; + case 'i': case 'I': case 'l': case 'L': return 4; + case 'q': case 'Q': return 8; + case 'f': return (is_complex ? 8 : 4); + case 'd': return (is_complex ? 16 : 8); + case 'g': { + PyErr_SetString(PyExc_ValueError, "Python does not define a standard format string size for long double ('g').."); + return 0; + } + case 'O': case 'P': return sizeof(void*); + default: + __Pyx_BufFmt_RaiseUnexpectedChar(ch); + return 0; + } +} +static size_t __Pyx_BufFmt_TypeCharToNativeSize(char ch, int is_complex) { + switch (ch) { + case 'c': case 'b': case 'B': case 's': case 'p': return 1; + case 'h': case 'H': return sizeof(short); + case 'i': case 'I': return sizeof(int); + case 'l': case 'L': return sizeof(long); + #ifdef HAVE_LONG_LONG + case 'q': case 'Q': return sizeof(PY_LONG_LONG); + #endif + case 'f': return sizeof(float) * (is_complex ? 2 : 1); + case 'd': return sizeof(double) * (is_complex ? 2 : 1); + case 'g': return sizeof(long double) * (is_complex ? 2 : 1); + case 'O': case 'P': return sizeof(void*); + default: { + __Pyx_BufFmt_RaiseUnexpectedChar(ch); + return 0; + } + } +} +typedef struct { char c; short x; } __Pyx_st_short; +typedef struct { char c; int x; } __Pyx_st_int; +typedef struct { char c; long x; } __Pyx_st_long; +typedef struct { char c; float x; } __Pyx_st_float; +typedef struct { char c; double x; } __Pyx_st_double; +typedef struct { char c; long double x; } __Pyx_st_longdouble; +typedef struct { char c; void *x; } __Pyx_st_void_p; +#ifdef HAVE_LONG_LONG +typedef struct { char c; PY_LONG_LONG x; } __Pyx_st_longlong; +#endif +static size_t __Pyx_BufFmt_TypeCharToAlignment(char ch, CYTHON_UNUSED int is_complex) { + switch (ch) { + case '?': case 'c': case 'b': case 'B': case 's': case 'p': return 1; + case 'h': case 'H': return sizeof(__Pyx_st_short) - sizeof(short); + case 'i': case 'I': return sizeof(__Pyx_st_int) - sizeof(int); + case 'l': case 'L': return sizeof(__Pyx_st_long) - sizeof(long); +#ifdef HAVE_LONG_LONG + case 'q': case 'Q': return sizeof(__Pyx_st_longlong) - sizeof(PY_LONG_LONG); +#endif + case 'f': return sizeof(__Pyx_st_float) - sizeof(float); + case 'd': return sizeof(__Pyx_st_double) - sizeof(double); + case 'g': return sizeof(__Pyx_st_longdouble) - sizeof(long double); + case 'P': case 'O': return sizeof(__Pyx_st_void_p) - sizeof(void*); + default: + __Pyx_BufFmt_RaiseUnexpectedChar(ch); + return 0; + } +} +/* These are for computing the padding at the end of the struct to align + on the first member of the struct. This will probably the same as above, + but we don't have any guarantees. + */ +typedef struct { short x; char c; } __Pyx_pad_short; +typedef struct { int x; char c; } __Pyx_pad_int; +typedef struct { long x; char c; } __Pyx_pad_long; +typedef struct { float x; char c; } __Pyx_pad_float; +typedef struct { double x; char c; } __Pyx_pad_double; +typedef struct { long double x; char c; } __Pyx_pad_longdouble; +typedef struct { void *x; char c; } __Pyx_pad_void_p; +#ifdef HAVE_LONG_LONG +typedef struct { PY_LONG_LONG x; char c; } __Pyx_pad_longlong; +#endif +static size_t __Pyx_BufFmt_TypeCharToPadding(char ch, CYTHON_UNUSED int is_complex) { + switch (ch) { + case '?': case 'c': case 'b': case 'B': case 's': case 'p': return 1; + case 'h': case 'H': return sizeof(__Pyx_pad_short) - sizeof(short); + case 'i': case 'I': return sizeof(__Pyx_pad_int) - sizeof(int); + case 'l': case 'L': return sizeof(__Pyx_pad_long) - sizeof(long); +#ifdef HAVE_LONG_LONG + case 'q': case 'Q': return sizeof(__Pyx_pad_longlong) - sizeof(PY_LONG_LONG); +#endif + case 'f': return sizeof(__Pyx_pad_float) - sizeof(float); + case 'd': return sizeof(__Pyx_pad_double) - sizeof(double); + case 'g': return sizeof(__Pyx_pad_longdouble) - sizeof(long double); + case 'P': case 'O': return sizeof(__Pyx_pad_void_p) - sizeof(void*); + default: + __Pyx_BufFmt_RaiseUnexpectedChar(ch); + return 0; + } +} +static char __Pyx_BufFmt_TypeCharToGroup(char ch, int is_complex) { + switch (ch) { + case 'c': + return 'H'; + case 'b': case 'h': case 'i': + case 'l': case 'q': case 's': case 'p': + return 'I'; + case 'B': case 'H': case 'I': case 'L': case 'Q': + return 'U'; + case 'f': case 'd': case 'g': + return (is_complex ? 'C' : 'R'); + case 'O': + return 'O'; + case 'P': + return 'P'; + default: { + __Pyx_BufFmt_RaiseUnexpectedChar(ch); + return 0; + } + } +} +static void __Pyx_BufFmt_RaiseExpected(__Pyx_BufFmt_Context* ctx) { + if (ctx->head == NULL || ctx->head->field == &ctx->root) { + const char* expected; + const char* quote; + if (ctx->head == NULL) { + expected = "end"; + quote = ""; + } else { + expected = ctx->head->field->type->name; + quote = "'"; + } + PyErr_Format(PyExc_ValueError, + "Buffer dtype mismatch, expected %s%s%s but got %s", + quote, expected, quote, + __Pyx_BufFmt_DescribeTypeChar(ctx->enc_type, ctx->is_complex)); + } else { + __Pyx_StructField* field = ctx->head->field; + __Pyx_StructField* parent = (ctx->head - 1)->field; + PyErr_Format(PyExc_ValueError, + "Buffer dtype mismatch, expected '%s' but got %s in '%s.%s'", + field->type->name, __Pyx_BufFmt_DescribeTypeChar(ctx->enc_type, ctx->is_complex), + parent->type->name, field->name); + } +} +static int __Pyx_BufFmt_ProcessTypeChunk(__Pyx_BufFmt_Context* ctx) { + char group; + size_t size, offset, arraysize = 1; + if (ctx->enc_type == 0) return 0; + if (ctx->head->field->type->arraysize[0]) { + int i, ndim = 0; + if (ctx->enc_type == 's' || ctx->enc_type == 'p') { + ctx->is_valid_array = ctx->head->field->type->ndim == 1; + ndim = 1; + if (ctx->enc_count != ctx->head->field->type->arraysize[0]) { + PyErr_Format(PyExc_ValueError, + "Expected a dimension of size %zu, got %zu", + ctx->head->field->type->arraysize[0], ctx->enc_count); + return -1; + } + } + if (!ctx->is_valid_array) { + PyErr_Format(PyExc_ValueError, "Expected %d dimensions, got %d", + ctx->head->field->type->ndim, ndim); + return -1; + } + for (i = 0; i < ctx->head->field->type->ndim; i++) { + arraysize *= ctx->head->field->type->arraysize[i]; + } + ctx->is_valid_array = 0; + ctx->enc_count = 1; + } + group = __Pyx_BufFmt_TypeCharToGroup(ctx->enc_type, ctx->is_complex); + do { + __Pyx_StructField* field = ctx->head->field; + __Pyx_TypeInfo* type = field->type; + if (ctx->enc_packmode == '@' || ctx->enc_packmode == '^') { + size = __Pyx_BufFmt_TypeCharToNativeSize(ctx->enc_type, ctx->is_complex); + } else { + size = __Pyx_BufFmt_TypeCharToStandardSize(ctx->enc_type, ctx->is_complex); + } + if (ctx->enc_packmode == '@') { + size_t align_at = __Pyx_BufFmt_TypeCharToAlignment(ctx->enc_type, ctx->is_complex); + size_t align_mod_offset; + if (align_at == 0) return -1; + align_mod_offset = ctx->fmt_offset % align_at; + if (align_mod_offset > 0) ctx->fmt_offset += align_at - align_mod_offset; + if (ctx->struct_alignment == 0) + ctx->struct_alignment = __Pyx_BufFmt_TypeCharToPadding(ctx->enc_type, + ctx->is_complex); + } + if (type->size != size || type->typegroup != group) { + if (type->typegroup == 'C' && type->fields != NULL) { + size_t parent_offset = ctx->head->parent_offset + field->offset; + ++ctx->head; + ctx->head->field = type->fields; + ctx->head->parent_offset = parent_offset; + continue; + } + if ((type->typegroup == 'H' || group == 'H') && type->size == size) { + } else { + __Pyx_BufFmt_RaiseExpected(ctx); + return -1; + } + } + offset = ctx->head->parent_offset + field->offset; + if (ctx->fmt_offset != offset) { + PyErr_Format(PyExc_ValueError, + "Buffer dtype mismatch; next field is at offset %" CYTHON_FORMAT_SSIZE_T "d but %" CYTHON_FORMAT_SSIZE_T "d expected", + (Py_ssize_t)ctx->fmt_offset, (Py_ssize_t)offset); + return -1; + } + ctx->fmt_offset += size; + if (arraysize) + ctx->fmt_offset += (arraysize - 1) * size; + --ctx->enc_count; + while (1) { + if (field == &ctx->root) { + ctx->head = NULL; + if (ctx->enc_count != 0) { + __Pyx_BufFmt_RaiseExpected(ctx); + return -1; + } + break; + } + ctx->head->field = ++field; + if (field->type == NULL) { + --ctx->head; + field = ctx->head->field; + continue; + } else if (field->type->typegroup == 'S') { + size_t parent_offset = ctx->head->parent_offset + field->offset; + if (field->type->fields->type == NULL) continue; + field = field->type->fields; + ++ctx->head; + ctx->head->field = field; + ctx->head->parent_offset = parent_offset; + break; + } else { + break; + } + } + } while (ctx->enc_count); + ctx->enc_type = 0; + ctx->is_complex = 0; + return 0; +} +static PyObject * +__pyx_buffmt_parse_array(__Pyx_BufFmt_Context* ctx, const char** tsp) +{ + const char *ts = *tsp; + int i = 0, number; + int ndim = ctx->head->field->type->ndim; +; + ++ts; + if (ctx->new_count != 1) { + PyErr_SetString(PyExc_ValueError, + "Cannot handle repeated arrays in format string"); + return NULL; + } + if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL; + while (*ts && *ts != ')') { + switch (*ts) { + case ' ': case '\f': case '\r': case '\n': case '\t': case '\v': continue; + default: break; + } + number = __Pyx_BufFmt_ExpectNumber(&ts); + if (number == -1) return NULL; + if (i < ndim && (size_t) number != ctx->head->field->type->arraysize[i]) + return PyErr_Format(PyExc_ValueError, + "Expected a dimension of size %zu, got %d", + ctx->head->field->type->arraysize[i], number); + if (*ts != ',' && *ts != ')') + return PyErr_Format(PyExc_ValueError, + "Expected a comma in format string, got '%c'", *ts); + if (*ts == ',') ts++; + i++; + } + if (i != ndim) + return PyErr_Format(PyExc_ValueError, "Expected %d dimension(s), got %d", + ctx->head->field->type->ndim, i); + if (!*ts) { + PyErr_SetString(PyExc_ValueError, + "Unexpected end of format string, expected ')'"); + return NULL; + } + ctx->is_valid_array = 1; + ctx->new_count = 1; + *tsp = ++ts; + return Py_None; +} +static const char* __Pyx_BufFmt_CheckString(__Pyx_BufFmt_Context* ctx, const char* ts) { + int got_Z = 0; + while (1) { + switch(*ts) { + case 0: + if (ctx->enc_type != 0 && ctx->head == NULL) { + __Pyx_BufFmt_RaiseExpected(ctx); + return NULL; + } + if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL; + if (ctx->head != NULL) { + __Pyx_BufFmt_RaiseExpected(ctx); + return NULL; + } + return ts; + case ' ': + case '\r': + case '\n': + ++ts; + break; + case '<': + if (!__Pyx_Is_Little_Endian()) { + PyErr_SetString(PyExc_ValueError, "Little-endian buffer not supported on big-endian compiler"); + return NULL; + } + ctx->new_packmode = '='; + ++ts; + break; + case '>': + case '!': + if (__Pyx_Is_Little_Endian()) { + PyErr_SetString(PyExc_ValueError, "Big-endian buffer not supported on little-endian compiler"); + return NULL; + } + ctx->new_packmode = '='; + ++ts; + break; + case '=': + case '@': + case '^': + ctx->new_packmode = *ts++; + break; + case 'T': + { + const char* ts_after_sub; + size_t i, struct_count = ctx->new_count; + size_t struct_alignment = ctx->struct_alignment; + ctx->new_count = 1; + ++ts; + if (*ts != '{') { + PyErr_SetString(PyExc_ValueError, "Buffer acquisition: Expected '{' after 'T'"); + return NULL; + } + if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL; + ctx->enc_type = 0; + ctx->enc_count = 0; + ctx->struct_alignment = 0; + ++ts; + ts_after_sub = ts; + for (i = 0; i != struct_count; ++i) { + ts_after_sub = __Pyx_BufFmt_CheckString(ctx, ts); + if (!ts_after_sub) return NULL; + } + ts = ts_after_sub; + if (struct_alignment) ctx->struct_alignment = struct_alignment; + } + break; + case '}': + { + size_t alignment = ctx->struct_alignment; + ++ts; + if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL; + ctx->enc_type = 0; + if (alignment && ctx->fmt_offset % alignment) { + ctx->fmt_offset += alignment - (ctx->fmt_offset % alignment); + } + } + return ts; + case 'x': + if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL; + ctx->fmt_offset += ctx->new_count; + ctx->new_count = 1; + ctx->enc_count = 0; + ctx->enc_type = 0; + ctx->enc_packmode = ctx->new_packmode; + ++ts; + break; + case 'Z': + got_Z = 1; + ++ts; + if (*ts != 'f' && *ts != 'd' && *ts != 'g') { + __Pyx_BufFmt_RaiseUnexpectedChar('Z'); + return NULL; + } + CYTHON_FALLTHROUGH; + case 'c': case 'b': case 'B': case 'h': case 'H': case 'i': case 'I': + case 'l': case 'L': case 'q': case 'Q': + case 'f': case 'd': case 'g': + case 'O': case 'p': + if (ctx->enc_type == *ts && got_Z == ctx->is_complex && + ctx->enc_packmode == ctx->new_packmode) { + ctx->enc_count += ctx->new_count; + ctx->new_count = 1; + got_Z = 0; + ++ts; + break; + } + CYTHON_FALLTHROUGH; + case 's': + if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL; + ctx->enc_count = ctx->new_count; + ctx->enc_packmode = ctx->new_packmode; + ctx->enc_type = *ts; + ctx->is_complex = got_Z; + ++ts; + ctx->new_count = 1; + got_Z = 0; + break; + case ':': + ++ts; + while(*ts != ':') ++ts; + ++ts; + break; + case '(': + if (!__pyx_buffmt_parse_array(ctx, &ts)) return NULL; + break; + default: + { + int number = __Pyx_BufFmt_ExpectNumber(&ts); + if (number == -1) return NULL; + ctx->new_count = (size_t)number; + } + } + } +} + +/* BufferGetAndValidate */ + static CYTHON_INLINE void __Pyx_SafeReleaseBuffer(Py_buffer* info) { + if (unlikely(info->buf == NULL)) return; + if (info->suboffsets == __Pyx_minusones) info->suboffsets = NULL; + __Pyx_ReleaseBuffer(info); +} +static void __Pyx_ZeroBuffer(Py_buffer* buf) { + buf->buf = NULL; + buf->obj = NULL; + buf->strides = __Pyx_zeros; + buf->shape = __Pyx_zeros; + buf->suboffsets = __Pyx_minusones; +} +static int __Pyx__GetBufferAndValidate( + Py_buffer* buf, PyObject* obj, __Pyx_TypeInfo* dtype, int flags, + int nd, int cast, __Pyx_BufFmt_StackElem* stack) +{ + buf->buf = NULL; + if (unlikely(__Pyx_GetBuffer(obj, buf, flags) == -1)) { + __Pyx_ZeroBuffer(buf); + return -1; + } + if (unlikely(buf->ndim != nd)) { + PyErr_Format(PyExc_ValueError, + "Buffer has wrong number of dimensions (expected %d, got %d)", + nd, buf->ndim); + goto fail; + } + if (!cast) { + __Pyx_BufFmt_Context ctx; + __Pyx_BufFmt_Init(&ctx, stack, dtype); + if (!__Pyx_BufFmt_CheckString(&ctx, buf->format)) goto fail; + } + if (unlikely((unsigned)buf->itemsize != dtype->size)) { + PyErr_Format(PyExc_ValueError, + "Item size of buffer (%" CYTHON_FORMAT_SSIZE_T "d byte%s) does not match size of '%s' (%" CYTHON_FORMAT_SSIZE_T "d byte%s)", + buf->itemsize, (buf->itemsize > 1) ? "s" : "", + dtype->name, (Py_ssize_t)dtype->size, (dtype->size > 1) ? "s" : ""); + goto fail; + } + if (buf->suboffsets == NULL) buf->suboffsets = __Pyx_minusones; + return 0; +fail:; + __Pyx_SafeReleaseBuffer(buf); + return -1; +} + +/* PyErrFetchRestore */ + #if CYTHON_FAST_THREAD_STATE +static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) { + PyObject *tmp_type, *tmp_value, *tmp_tb; + tmp_type = tstate->curexc_type; + tmp_value = tstate->curexc_value; + tmp_tb = tstate->curexc_traceback; + tstate->curexc_type = type; + tstate->curexc_value = value; + tstate->curexc_traceback = tb; + Py_XDECREF(tmp_type); + Py_XDECREF(tmp_value); + Py_XDECREF(tmp_tb); +} +static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) { + *type = tstate->curexc_type; + *value = tstate->curexc_value; + *tb = tstate->curexc_traceback; + tstate->curexc_type = 0; + tstate->curexc_value = 0; + tstate->curexc_traceback = 0; +} +#endif + +/* PyObjectGetAttrStr */ + #if CYTHON_USE_TYPE_SLOTS +static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) { + PyTypeObject* tp = Py_TYPE(obj); + if (likely(tp->tp_getattro)) + return tp->tp_getattro(obj, attr_name); +#if PY_MAJOR_VERSION < 3 + if (likely(tp->tp_getattr)) + return tp->tp_getattr(obj, PyString_AS_STRING(attr_name)); +#endif + return PyObject_GetAttr(obj, attr_name); +} +#endif + +/* GetBuiltinName */ + static PyObject *__Pyx_GetBuiltinName(PyObject *name) { + PyObject* result = __Pyx_PyObject_GetAttrStr(__pyx_b, name); + if (unlikely(!result)) { + PyErr_Format(PyExc_NameError, +#if PY_MAJOR_VERSION >= 3 + "name '%U' is not defined", name); +#else + "name '%.200s' is not defined", PyString_AS_STRING(name)); +#endif + } + return result; +} + +/* PyObjectCall */ + #if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) { + PyObject *result; + ternaryfunc call = func->ob_type->tp_call; + if (unlikely(!call)) + return PyObject_Call(func, arg, kw); + if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) + return NULL; + result = (*call)(func, arg, kw); + Py_LeaveRecursiveCall(); + if (unlikely(!result) && unlikely(!PyErr_Occurred())) { + PyErr_SetString( + PyExc_SystemError, + "NULL result without error in PyObject_Call"); + } + return result; +} +#endif + +/* RaiseException */ + #if PY_MAJOR_VERSION < 3 +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, + CYTHON_UNUSED PyObject *cause) { + __Pyx_PyThreadState_declare + Py_XINCREF(type); + if (!value || value == Py_None) + value = NULL; + else + Py_INCREF(value); + if (!tb || tb == Py_None) + tb = NULL; + else { + Py_INCREF(tb); + if (!PyTraceBack_Check(tb)) { + PyErr_SetString(PyExc_TypeError, + "raise: arg 3 must be a traceback or None"); + goto raise_error; + } + } + if (PyType_Check(type)) { +#if CYTHON_COMPILING_IN_PYPY + if (!value) { + Py_INCREF(Py_None); + value = Py_None; + } +#endif + PyErr_NormalizeException(&type, &value, &tb); + } else { + if (value) { + PyErr_SetString(PyExc_TypeError, + "instance exception may not have a separate value"); + goto raise_error; + } + value = type; + type = (PyObject*) Py_TYPE(type); + Py_INCREF(type); + if (!PyType_IsSubtype((PyTypeObject *)type, (PyTypeObject *)PyExc_BaseException)) { + PyErr_SetString(PyExc_TypeError, + "raise: exception class must be a subclass of BaseException"); + goto raise_error; + } + } + __Pyx_PyThreadState_assign + __Pyx_ErrRestore(type, value, tb); + return; +raise_error: + Py_XDECREF(value); + Py_XDECREF(type); + Py_XDECREF(tb); + return; +} +#else +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) { + PyObject* owned_instance = NULL; + if (tb == Py_None) { + tb = 0; + } else if (tb && !PyTraceBack_Check(tb)) { + PyErr_SetString(PyExc_TypeError, + "raise: arg 3 must be a traceback or None"); + goto bad; + } + if (value == Py_None) + value = 0; + if (PyExceptionInstance_Check(type)) { + if (value) { + PyErr_SetString(PyExc_TypeError, + "instance exception may not have a separate value"); + goto bad; + } + value = type; + type = (PyObject*) Py_TYPE(value); + } else if (PyExceptionClass_Check(type)) { + PyObject *instance_class = NULL; + if (value && PyExceptionInstance_Check(value)) { + instance_class = (PyObject*) Py_TYPE(value); + if (instance_class != type) { + int is_subclass = PyObject_IsSubclass(instance_class, type); + if (!is_subclass) { + instance_class = NULL; + } else if (unlikely(is_subclass == -1)) { + goto bad; + } else { + type = instance_class; + } + } + } + if (!instance_class) { + PyObject *args; + if (!value) + args = PyTuple_New(0); + else if (PyTuple_Check(value)) { + Py_INCREF(value); + args = value; + } else + args = PyTuple_Pack(1, value); + if (!args) + goto bad; + owned_instance = PyObject_Call(type, args, NULL); + Py_DECREF(args); + if (!owned_instance) + goto bad; + value = owned_instance; + if (!PyExceptionInstance_Check(value)) { + PyErr_Format(PyExc_TypeError, + "calling %R should have returned an instance of " + "BaseException, not %R", + type, Py_TYPE(value)); + goto bad; + } + } + } else { + PyErr_SetString(PyExc_TypeError, + "raise: exception class must be a subclass of BaseException"); + goto bad; + } + if (cause) { + PyObject *fixed_cause; + if (cause == Py_None) { + fixed_cause = NULL; + } else if (PyExceptionClass_Check(cause)) { + fixed_cause = PyObject_CallObject(cause, NULL); + if (fixed_cause == NULL) + goto bad; + } else if (PyExceptionInstance_Check(cause)) { + fixed_cause = cause; + Py_INCREF(fixed_cause); + } else { + PyErr_SetString(PyExc_TypeError, + "exception causes must derive from " + "BaseException"); + goto bad; + } + PyException_SetCause(value, fixed_cause); + } + PyErr_SetObject(type, value); + if (tb) { +#if CYTHON_COMPILING_IN_PYPY + PyObject *tmp_type, *tmp_value, *tmp_tb; + PyErr_Fetch(&tmp_type, &tmp_value, &tmp_tb); + Py_INCREF(tb); + PyErr_Restore(tmp_type, tmp_value, tb); + Py_XDECREF(tmp_tb); +#else + PyThreadState *tstate = __Pyx_PyThreadState_Current; + PyObject* tmp_tb = tstate->curexc_traceback; + if (tb != tmp_tb) { + Py_INCREF(tb); + tstate->curexc_traceback = tb; + Py_XDECREF(tmp_tb); + } +#endif + } +bad: + Py_XDECREF(owned_instance); + return; +} +#endif + +/* PyCFunctionFastCall */ + #if CYTHON_FAST_PYCCALL +static CYTHON_INLINE PyObject * __Pyx_PyCFunction_FastCall(PyObject *func_obj, PyObject **args, Py_ssize_t nargs) { + PyCFunctionObject *func = (PyCFunctionObject*)func_obj; + PyCFunction meth = PyCFunction_GET_FUNCTION(func); + PyObject *self = PyCFunction_GET_SELF(func); + int flags = PyCFunction_GET_FLAGS(func); + assert(PyCFunction_Check(func)); + assert(METH_FASTCALL == (flags & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_KEYWORDS))); + assert(nargs >= 0); + assert(nargs == 0 || args != NULL); + /* _PyCFunction_FastCallDict() must not be called with an exception set, + because it may clear it (directly or indirectly) and so the + caller loses its exception */ + assert(!PyErr_Occurred()); + if ((PY_VERSION_HEX < 0x030700A0) || unlikely(flags & METH_KEYWORDS)) { + return (*((__Pyx_PyCFunctionFastWithKeywords)meth)) (self, args, nargs, NULL); + } else { + return (*((__Pyx_PyCFunctionFast)meth)) (self, args, nargs); + } +} +#endif + +/* PyFunctionFastCall */ + #if CYTHON_FAST_PYCALL +#include "frameobject.h" +static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject **args, Py_ssize_t na, + PyObject *globals) { + PyFrameObject *f; + PyThreadState *tstate = __Pyx_PyThreadState_Current; + PyObject **fastlocals; + Py_ssize_t i; + PyObject *result; + assert(globals != NULL); + /* XXX Perhaps we should create a specialized + PyFrame_New() that doesn't take locals, but does + take builtins without sanity checking them. + */ + assert(tstate != NULL); + f = PyFrame_New(tstate, co, globals, NULL); + if (f == NULL) { + return NULL; + } + fastlocals = f->f_localsplus; + for (i = 0; i < na; i++) { + Py_INCREF(*args); + fastlocals[i] = *args++; + } + result = PyEval_EvalFrameEx(f,0); + ++tstate->recursion_depth; + Py_DECREF(f); + --tstate->recursion_depth; + return result; +} +#if 1 || PY_VERSION_HEX < 0x030600B1 +static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, int nargs, PyObject *kwargs) { + PyCodeObject *co = (PyCodeObject *)PyFunction_GET_CODE(func); + PyObject *globals = PyFunction_GET_GLOBALS(func); + PyObject *argdefs = PyFunction_GET_DEFAULTS(func); + PyObject *closure; +#if PY_MAJOR_VERSION >= 3 + PyObject *kwdefs; +#endif + PyObject *kwtuple, **k; + PyObject **d; + Py_ssize_t nd; + Py_ssize_t nk; + PyObject *result; + assert(kwargs == NULL || PyDict_Check(kwargs)); + nk = kwargs ? PyDict_Size(kwargs) : 0; + if (Py_EnterRecursiveCall((char*)" while calling a Python object")) { + return NULL; + } + if ( +#if PY_MAJOR_VERSION >= 3 + co->co_kwonlyargcount == 0 && +#endif + likely(kwargs == NULL || nk == 0) && + co->co_flags == (CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE)) { + if (argdefs == NULL && co->co_argcount == nargs) { + result = __Pyx_PyFunction_FastCallNoKw(co, args, nargs, globals); + goto done; + } + else if (nargs == 0 && argdefs != NULL + && co->co_argcount == Py_SIZE(argdefs)) { + /* function called with no arguments, but all parameters have + a default value: use default values as arguments .*/ + args = &PyTuple_GET_ITEM(argdefs, 0); + result =__Pyx_PyFunction_FastCallNoKw(co, args, Py_SIZE(argdefs), globals); + goto done; + } + } + if (kwargs != NULL) { + Py_ssize_t pos, i; + kwtuple = PyTuple_New(2 * nk); + if (kwtuple == NULL) { + result = NULL; + goto done; + } + k = &PyTuple_GET_ITEM(kwtuple, 0); + pos = i = 0; + while (PyDict_Next(kwargs, &pos, &k[i], &k[i+1])) { + Py_INCREF(k[i]); + Py_INCREF(k[i+1]); + i += 2; + } + nk = i / 2; + } + else { + kwtuple = NULL; + k = NULL; + } + closure = PyFunction_GET_CLOSURE(func); +#if PY_MAJOR_VERSION >= 3 + kwdefs = PyFunction_GET_KW_DEFAULTS(func); +#endif + if (argdefs != NULL) { + d = &PyTuple_GET_ITEM(argdefs, 0); + nd = Py_SIZE(argdefs); + } + else { + d = NULL; + nd = 0; + } +#if PY_MAJOR_VERSION >= 3 + result = PyEval_EvalCodeEx((PyObject*)co, globals, (PyObject *)NULL, + args, nargs, + k, (int)nk, + d, (int)nd, kwdefs, closure); +#else + result = PyEval_EvalCodeEx(co, globals, (PyObject *)NULL, + args, nargs, + k, (int)nk, + d, (int)nd, closure); +#endif + Py_XDECREF(kwtuple); +done: + Py_LeaveRecursiveCall(); + return result; +} +#endif +#endif + +/* PyObjectCallMethO */ + #if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) { + PyObject *self, *result; + PyCFunction cfunc; + cfunc = PyCFunction_GET_FUNCTION(func); + self = PyCFunction_GET_SELF(func); + if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) + return NULL; + result = cfunc(self, arg); + Py_LeaveRecursiveCall(); + if (unlikely(!result) && unlikely(!PyErr_Occurred())) { + PyErr_SetString( + PyExc_SystemError, + "NULL result without error in PyObject_Call"); + } + return result; +} +#endif + +/* PyObjectCallOneArg */ + #if CYTHON_COMPILING_IN_CPYTHON +static PyObject* __Pyx__PyObject_CallOneArg(PyObject *func, PyObject *arg) { + PyObject *result; + PyObject *args = PyTuple_New(1); + if (unlikely(!args)) return NULL; + Py_INCREF(arg); + PyTuple_SET_ITEM(args, 0, arg); + result = __Pyx_PyObject_Call(func, args, NULL); + Py_DECREF(args); + return result; +} +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) { +#if CYTHON_FAST_PYCALL + if (PyFunction_Check(func)) { + return __Pyx_PyFunction_FastCall(func, &arg, 1); + } +#endif + if (likely(PyCFunction_Check(func))) { + if (likely(PyCFunction_GET_FLAGS(func) & METH_O)) { + return __Pyx_PyObject_CallMethO(func, arg); +#if CYTHON_FAST_PYCCALL + } else if (PyCFunction_GET_FLAGS(func) & METH_FASTCALL) { + return __Pyx_PyCFunction_FastCall(func, &arg, 1); +#endif + } + } + return __Pyx__PyObject_CallOneArg(func, arg); +} +#else +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) { + PyObject *result; + PyObject *args = PyTuple_Pack(1, arg); + if (unlikely(!args)) return NULL; + result = __Pyx_PyObject_Call(func, args, NULL); + Py_DECREF(args); + return result; +} +#endif + +/* DictGetItem */ + #if PY_MAJOR_VERSION >= 3 && !CYTHON_COMPILING_IN_PYPY +static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key) { + PyObject *value; + value = PyDict_GetItemWithError(d, key); + if (unlikely(!value)) { + if (!PyErr_Occurred()) { + PyObject* args = PyTuple_Pack(1, key); + if (likely(args)) + PyErr_SetObject(PyExc_KeyError, args); + Py_XDECREF(args); + } + return NULL; + } + Py_INCREF(value); + return value; +} +#endif + +/* RaiseTooManyValuesToUnpack */ + static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected) { + PyErr_Format(PyExc_ValueError, + "too many values to unpack (expected %" CYTHON_FORMAT_SSIZE_T "d)", expected); +} + +/* RaiseNeedMoreValuesToUnpack */ + static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index) { + PyErr_Format(PyExc_ValueError, + "need more than %" CYTHON_FORMAT_SSIZE_T "d value%.1s to unpack", + index, (index == 1) ? "" : "s"); +} + +/* RaiseNoneIterError */ + static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); +} + +/* ExtTypeTest */ + static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) { + if (unlikely(!type)) { + PyErr_SetString(PyExc_SystemError, "Missing type object"); + return 0; + } + if (likely(__Pyx_TypeCheck(obj, type))) + return 1; + PyErr_Format(PyExc_TypeError, "Cannot convert %.200s to %.200s", + Py_TYPE(obj)->tp_name, type->tp_name); + return 0; +} + +/* SaveResetException */ + #if CYTHON_FAST_THREAD_STATE +static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) { + #if PY_VERSION_HEX >= 0x030700A2 + *type = tstate->exc_state.exc_type; + *value = tstate->exc_state.exc_value; + *tb = tstate->exc_state.exc_traceback; + #else + *type = tstate->exc_type; + *value = tstate->exc_value; + *tb = tstate->exc_traceback; + #endif + Py_XINCREF(*type); + Py_XINCREF(*value); + Py_XINCREF(*tb); +} +static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) { + PyObject *tmp_type, *tmp_value, *tmp_tb; + #if PY_VERSION_HEX >= 0x030700A2 + tmp_type = tstate->exc_state.exc_type; + tmp_value = tstate->exc_state.exc_value; + tmp_tb = tstate->exc_state.exc_traceback; + tstate->exc_state.exc_type = type; + tstate->exc_state.exc_value = value; + tstate->exc_state.exc_traceback = tb; + #else + tmp_type = tstate->exc_type; + tmp_value = tstate->exc_value; + tmp_tb = tstate->exc_traceback; + tstate->exc_type = type; + tstate->exc_value = value; + tstate->exc_traceback = tb; + #endif + Py_XDECREF(tmp_type); + Py_XDECREF(tmp_value); + Py_XDECREF(tmp_tb); +} +#endif + +/* PyErrExceptionMatches */ + #if CYTHON_FAST_THREAD_STATE +static int __Pyx_PyErr_ExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) { + Py_ssize_t i, n; + n = PyTuple_GET_SIZE(tuple); +#if PY_MAJOR_VERSION >= 3 + for (i=0; icurexc_type; + if (exc_type == err) return 1; + if (unlikely(!exc_type)) return 0; + if (unlikely(PyTuple_Check(err))) + return __Pyx_PyErr_ExceptionMatchesTuple(exc_type, err); + return __Pyx_PyErr_GivenExceptionMatches(exc_type, err); +} +#endif + +/* GetException */ + #if CYTHON_FAST_THREAD_STATE +static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) { +#else +static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) { +#endif + PyObject *local_type, *local_value, *local_tb; +#if CYTHON_FAST_THREAD_STATE + PyObject *tmp_type, *tmp_value, *tmp_tb; + local_type = tstate->curexc_type; + local_value = tstate->curexc_value; + local_tb = tstate->curexc_traceback; + tstate->curexc_type = 0; + tstate->curexc_value = 0; + tstate->curexc_traceback = 0; +#else + PyErr_Fetch(&local_type, &local_value, &local_tb); +#endif + PyErr_NormalizeException(&local_type, &local_value, &local_tb); +#if CYTHON_FAST_THREAD_STATE + if (unlikely(tstate->curexc_type)) +#else + if (unlikely(PyErr_Occurred())) +#endif + goto bad; + #if PY_MAJOR_VERSION >= 3 + if (local_tb) { + if (unlikely(PyException_SetTraceback(local_value, local_tb) < 0)) + goto bad; + } + #endif + Py_XINCREF(local_tb); + Py_XINCREF(local_type); + Py_XINCREF(local_value); + *type = local_type; + *value = local_value; + *tb = local_tb; +#if CYTHON_FAST_THREAD_STATE + #if PY_VERSION_HEX >= 0x030700A2 + tmp_type = tstate->exc_state.exc_type; + tmp_value = tstate->exc_state.exc_value; + tmp_tb = tstate->exc_state.exc_traceback; + tstate->exc_state.exc_type = local_type; + tstate->exc_state.exc_value = local_value; + tstate->exc_state.exc_traceback = local_tb; + #else + tmp_type = tstate->exc_type; + tmp_value = tstate->exc_value; + tmp_tb = tstate->exc_traceback; + tstate->exc_type = local_type; + tstate->exc_value = local_value; + tstate->exc_traceback = local_tb; + #endif + Py_XDECREF(tmp_type); + Py_XDECREF(tmp_value); + Py_XDECREF(tmp_tb); +#else + PyErr_SetExcInfo(local_type, local_value, local_tb); +#endif + return 0; +bad: + *type = 0; + *value = 0; + *tb = 0; + Py_XDECREF(local_type); + Py_XDECREF(local_value); + Py_XDECREF(local_tb); + return -1; +} + +/* Import */ + static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) { + PyObject *empty_list = 0; + PyObject *module = 0; + PyObject *global_dict = 0; + PyObject *empty_dict = 0; + PyObject *list; + #if PY_MAJOR_VERSION < 3 + PyObject *py_import; + py_import = __Pyx_PyObject_GetAttrStr(__pyx_b, __pyx_n_s_import); + if (!py_import) + goto bad; + #endif + if (from_list) + list = from_list; + else { + empty_list = PyList_New(0); + if (!empty_list) + goto bad; + list = empty_list; + } + global_dict = PyModule_GetDict(__pyx_m); + if (!global_dict) + goto bad; + empty_dict = PyDict_New(); + if (!empty_dict) + goto bad; + { + #if PY_MAJOR_VERSION >= 3 + if (level == -1) { + if (strchr(__Pyx_MODULE_NAME, '.')) { + module = PyImport_ImportModuleLevelObject( + name, global_dict, empty_dict, list, 1); + if (!module) { + if (!PyErr_ExceptionMatches(PyExc_ImportError)) + goto bad; + PyErr_Clear(); + } + } + level = 0; + } + #endif + if (!module) { + #if PY_MAJOR_VERSION < 3 + PyObject *py_level = PyInt_FromLong(level); + if (!py_level) + goto bad; + module = PyObject_CallFunctionObjArgs(py_import, + name, global_dict, empty_dict, list, py_level, NULL); + Py_DECREF(py_level); + #else + module = PyImport_ImportModuleLevelObject( + name, global_dict, empty_dict, list, level); + #endif + } + } +bad: + #if PY_MAJOR_VERSION < 3 + Py_XDECREF(py_import); + #endif + Py_XDECREF(empty_list); + Py_XDECREF(empty_dict); + return module; +} + +/* CLineInTraceback */ + #ifndef CYTHON_CLINE_IN_TRACEBACK +static int __Pyx_CLineForTraceback(CYTHON_UNUSED PyThreadState *tstate, int c_line) { + PyObject *use_cline; + PyObject *ptype, *pvalue, *ptraceback; +#if CYTHON_COMPILING_IN_CPYTHON + PyObject **cython_runtime_dict; +#endif + __Pyx_ErrFetchInState(tstate, &ptype, &pvalue, &ptraceback); +#if CYTHON_COMPILING_IN_CPYTHON + cython_runtime_dict = _PyObject_GetDictPtr(__pyx_cython_runtime); + if (likely(cython_runtime_dict)) { + use_cline = __Pyx_PyDict_GetItemStr(*cython_runtime_dict, __pyx_n_s_cline_in_traceback); + } else +#endif + { + PyObject *use_cline_obj = __Pyx_PyObject_GetAttrStr(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback); + if (use_cline_obj) { + use_cline = PyObject_Not(use_cline_obj) ? Py_False : Py_True; + Py_DECREF(use_cline_obj); + } else { + PyErr_Clear(); + use_cline = NULL; + } + } + if (!use_cline) { + c_line = 0; + PyObject_SetAttr(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback, Py_False); + } + else if (PyObject_Not(use_cline) != 0) { + c_line = 0; + } + __Pyx_ErrRestoreInState(tstate, ptype, pvalue, ptraceback); + return c_line; +} +#endif + +/* CodeObjectCache */ + static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) { + int start = 0, mid = 0, end = count - 1; + if (end >= 0 && code_line > entries[end].code_line) { + return count; + } + while (start < end) { + mid = start + (end - start) / 2; + if (code_line < entries[mid].code_line) { + end = mid; + } else if (code_line > entries[mid].code_line) { + start = mid + 1; + } else { + return mid; + } + } + if (code_line <= entries[mid].code_line) { + return mid; + } else { + return mid + 1; + } +} +static PyCodeObject *__pyx_find_code_object(int code_line) { + PyCodeObject* code_object; + int pos; + if (unlikely(!code_line) || unlikely(!__pyx_code_cache.entries)) { + return NULL; + } + pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line); + if (unlikely(pos >= __pyx_code_cache.count) || unlikely(__pyx_code_cache.entries[pos].code_line != code_line)) { + return NULL; + } + code_object = __pyx_code_cache.entries[pos].code_object; + Py_INCREF(code_object); + return code_object; +} +static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) { + int pos, i; + __Pyx_CodeObjectCacheEntry* entries = __pyx_code_cache.entries; + if (unlikely(!code_line)) { + return; + } + if (unlikely(!entries)) { + entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Malloc(64*sizeof(__Pyx_CodeObjectCacheEntry)); + if (likely(entries)) { + __pyx_code_cache.entries = entries; + __pyx_code_cache.max_count = 64; + __pyx_code_cache.count = 1; + entries[0].code_line = code_line; + entries[0].code_object = code_object; + Py_INCREF(code_object); + } + return; + } + pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line); + if ((pos < __pyx_code_cache.count) && unlikely(__pyx_code_cache.entries[pos].code_line == code_line)) { + PyCodeObject* tmp = entries[pos].code_object; + entries[pos].code_object = code_object; + Py_DECREF(tmp); + return; + } + if (__pyx_code_cache.count == __pyx_code_cache.max_count) { + int new_max = __pyx_code_cache.max_count + 64; + entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Realloc( + __pyx_code_cache.entries, (size_t)new_max*sizeof(__Pyx_CodeObjectCacheEntry)); + if (unlikely(!entries)) { + return; + } + __pyx_code_cache.entries = entries; + __pyx_code_cache.max_count = new_max; + } + for (i=__pyx_code_cache.count; i>pos; i--) { + entries[i] = entries[i-1]; + } + entries[pos].code_line = code_line; + entries[pos].code_object = code_object; + __pyx_code_cache.count++; + Py_INCREF(code_object); +} + +/* AddTraceback */ + #include "compile.h" +#include "frameobject.h" +#include "traceback.h" +static PyCodeObject* __Pyx_CreateCodeObjectForTraceback( + const char *funcname, int c_line, + int py_line, const char *filename) { + PyCodeObject *py_code = 0; + PyObject *py_srcfile = 0; + PyObject *py_funcname = 0; + #if PY_MAJOR_VERSION < 3 + py_srcfile = PyString_FromString(filename); + #else + py_srcfile = PyUnicode_FromString(filename); + #endif + if (!py_srcfile) goto bad; + if (c_line) { + #if PY_MAJOR_VERSION < 3 + py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line); + #else + py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line); + #endif + } + else { + #if PY_MAJOR_VERSION < 3 + py_funcname = PyString_FromString(funcname); + #else + py_funcname = PyUnicode_FromString(funcname); + #endif + } + if (!py_funcname) goto bad; + py_code = __Pyx_PyCode_New( + 0, + 0, + 0, + 0, + 0, + __pyx_empty_bytes, /*PyObject *code,*/ + __pyx_empty_tuple, /*PyObject *consts,*/ + __pyx_empty_tuple, /*PyObject *names,*/ + __pyx_empty_tuple, /*PyObject *varnames,*/ + __pyx_empty_tuple, /*PyObject *freevars,*/ + __pyx_empty_tuple, /*PyObject *cellvars,*/ + py_srcfile, /*PyObject *filename,*/ + py_funcname, /*PyObject *name,*/ + py_line, + __pyx_empty_bytes /*PyObject *lnotab*/ + ); + Py_DECREF(py_srcfile); + Py_DECREF(py_funcname); + return py_code; +bad: + Py_XDECREF(py_srcfile); + Py_XDECREF(py_funcname); + return NULL; +} +static void __Pyx_AddTraceback(const char *funcname, int c_line, + int py_line, const char *filename) { + PyCodeObject *py_code = 0; + PyFrameObject *py_frame = 0; + PyThreadState *tstate = __Pyx_PyThreadState_Current; + if (c_line) { + c_line = __Pyx_CLineForTraceback(tstate, c_line); + } + py_code = __pyx_find_code_object(c_line ? -c_line : py_line); + if (!py_code) { + py_code = __Pyx_CreateCodeObjectForTraceback( + funcname, c_line, py_line, filename); + if (!py_code) goto bad; + __pyx_insert_code_object(c_line ? -c_line : py_line, py_code); + } + py_frame = PyFrame_New( + tstate, /*PyThreadState *tstate,*/ + py_code, /*PyCodeObject *code,*/ + __pyx_d, /*PyObject *globals,*/ + 0 /*PyObject *locals*/ + ); + if (!py_frame) goto bad; + __Pyx_PyFrame_SetLineNumber(py_frame, py_line); + PyTraceBack_Here(py_frame); +bad: + Py_XDECREF(py_code); + Py_XDECREF(py_frame); +} + +#if PY_MAJOR_VERSION < 3 +static int __Pyx_GetBuffer(PyObject *obj, Py_buffer *view, int flags) { + if (PyObject_CheckBuffer(obj)) return PyObject_GetBuffer(obj, view, flags); + if (__Pyx_TypeCheck(obj, __pyx_ptype_5numpy_ndarray)) return __pyx_pw_5numpy_7ndarray_1__getbuffer__(obj, view, flags); + PyErr_Format(PyExc_TypeError, "'%.200s' does not have the buffer interface", Py_TYPE(obj)->tp_name); + return -1; +} +static void __Pyx_ReleaseBuffer(Py_buffer *view) { + PyObject *obj = view->obj; + if (!obj) return; + if (PyObject_CheckBuffer(obj)) { + PyBuffer_Release(view); + return; + } + if ((0)) {} + else if (__Pyx_TypeCheck(obj, __pyx_ptype_5numpy_ndarray)) __pyx_pw_5numpy_7ndarray_3__releasebuffer__(obj, view); + view->obj = NULL; + Py_DECREF(obj); +} +#endif + + + /* CIntFromPyVerify */ + #define __PYX_VERIFY_RETURN_INT(target_type, func_type, func_value)\ + __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 0) +#define __PYX_VERIFY_RETURN_INT_EXC(target_type, func_type, func_value)\ + __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 1) +#define __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, exc)\ + {\ + func_type value = func_value;\ + if (sizeof(target_type) < sizeof(func_type)) {\ + if (unlikely(value != (func_type) (target_type) value)) {\ + func_type zero = 0;\ + if (exc && unlikely(value == (func_type)-1 && PyErr_Occurred()))\ + return (target_type) -1;\ + if (is_unsigned && unlikely(value < zero))\ + goto raise_neg_overflow;\ + else\ + goto raise_overflow;\ + }\ + }\ + return (target_type) value;\ + } + +/* Declarations */ + #if CYTHON_CCOMPLEX + #ifdef __cplusplus + static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) { + return ::std::complex< float >(x, y); + } + #else + static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) { + return x + y*(__pyx_t_float_complex)_Complex_I; + } + #endif +#else + static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) { + __pyx_t_float_complex z; + z.real = x; + z.imag = y; + return z; + } +#endif + +/* Arithmetic */ + #if CYTHON_CCOMPLEX +#else + static CYTHON_INLINE int __Pyx_c_eq_float(__pyx_t_float_complex a, __pyx_t_float_complex b) { + return (a.real == b.real) && (a.imag == b.imag); + } + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_sum_float(__pyx_t_float_complex a, __pyx_t_float_complex b) { + __pyx_t_float_complex z; + z.real = a.real + b.real; + z.imag = a.imag + b.imag; + return z; + } + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_diff_float(__pyx_t_float_complex a, __pyx_t_float_complex b) { + __pyx_t_float_complex z; + z.real = a.real - b.real; + z.imag = a.imag - b.imag; + return z; + } + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_prod_float(__pyx_t_float_complex a, __pyx_t_float_complex b) { + __pyx_t_float_complex z; + z.real = a.real * b.real - a.imag * b.imag; + z.imag = a.real * b.imag + a.imag * b.real; + return z; + } + #if 1 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quot_float(__pyx_t_float_complex a, __pyx_t_float_complex b) { + if (b.imag == 0) { + return __pyx_t_float_complex_from_parts(a.real / b.real, a.imag / b.real); + } else if (fabsf(b.real) >= fabsf(b.imag)) { + if (b.real == 0 && b.imag == 0) { + return __pyx_t_float_complex_from_parts(a.real / b.real, a.imag / b.imag); + } else { + float r = b.imag / b.real; + float s = 1.0 / (b.real + b.imag * r); + return __pyx_t_float_complex_from_parts( + (a.real + a.imag * r) * s, (a.imag - a.real * r) * s); + } + } else { + float r = b.real / b.imag; + float s = 1.0 / (b.imag + b.real * r); + return __pyx_t_float_complex_from_parts( + (a.real * r + a.imag) * s, (a.imag * r - a.real) * s); + } + } + #else + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quot_float(__pyx_t_float_complex a, __pyx_t_float_complex b) { + if (b.imag == 0) { + return __pyx_t_float_complex_from_parts(a.real / b.real, a.imag / b.real); + } else { + float denom = b.real * b.real + b.imag * b.imag; + return __pyx_t_float_complex_from_parts( + (a.real * b.real + a.imag * b.imag) / denom, + (a.imag * b.real - a.real * b.imag) / denom); + } + } + #endif + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_neg_float(__pyx_t_float_complex a) { + __pyx_t_float_complex z; + z.real = -a.real; + z.imag = -a.imag; + return z; + } + static CYTHON_INLINE int __Pyx_c_is_zero_float(__pyx_t_float_complex a) { + return (a.real == 0) && (a.imag == 0); + } + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_conj_float(__pyx_t_float_complex a) { + __pyx_t_float_complex z; + z.real = a.real; + z.imag = -a.imag; + return z; + } + #if 1 + static CYTHON_INLINE float __Pyx_c_abs_float(__pyx_t_float_complex z) { + #if !defined(HAVE_HYPOT) || defined(_MSC_VER) + return sqrtf(z.real*z.real + z.imag*z.imag); + #else + return hypotf(z.real, z.imag); + #endif + } + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_pow_float(__pyx_t_float_complex a, __pyx_t_float_complex b) { + __pyx_t_float_complex z; + float r, lnr, theta, z_r, z_theta; + if (b.imag == 0 && b.real == (int)b.real) { + if (b.real < 0) { + float denom = a.real * a.real + a.imag * a.imag; + a.real = a.real / denom; + a.imag = -a.imag / denom; + b.real = -b.real; + } + switch ((int)b.real) { + case 0: + z.real = 1; + z.imag = 0; + return z; + case 1: + return a; + case 2: + z = __Pyx_c_prod_float(a, a); + return __Pyx_c_prod_float(a, a); + case 3: + z = __Pyx_c_prod_float(a, a); + return __Pyx_c_prod_float(z, a); + case 4: + z = __Pyx_c_prod_float(a, a); + return __Pyx_c_prod_float(z, z); + } + } + if (a.imag == 0) { + if (a.real == 0) { + return a; + } else if (b.imag == 0) { + z.real = powf(a.real, b.real); + z.imag = 0; + return z; + } else if (a.real > 0) { + r = a.real; + theta = 0; + } else { + r = -a.real; + theta = atan2f(0, -1); + } + } else { + r = __Pyx_c_abs_float(a); + theta = atan2f(a.imag, a.real); + } + lnr = logf(r); + z_r = expf(lnr * b.real - theta * b.imag); + z_theta = theta * b.real + lnr * b.imag; + z.real = z_r * cosf(z_theta); + z.imag = z_r * sinf(z_theta); + return z; + } + #endif +#endif + +/* Declarations */ + #if CYTHON_CCOMPLEX + #ifdef __cplusplus + static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) { + return ::std::complex< double >(x, y); + } + #else + static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) { + return x + y*(__pyx_t_double_complex)_Complex_I; + } + #endif +#else + static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) { + __pyx_t_double_complex z; + z.real = x; + z.imag = y; + return z; + } +#endif + +/* Arithmetic */ + #if CYTHON_CCOMPLEX +#else + static CYTHON_INLINE int __Pyx_c_eq_double(__pyx_t_double_complex a, __pyx_t_double_complex b) { + return (a.real == b.real) && (a.imag == b.imag); + } + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_sum_double(__pyx_t_double_complex a, __pyx_t_double_complex b) { + __pyx_t_double_complex z; + z.real = a.real + b.real; + z.imag = a.imag + b.imag; + return z; + } + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_diff_double(__pyx_t_double_complex a, __pyx_t_double_complex b) { + __pyx_t_double_complex z; + z.real = a.real - b.real; + z.imag = a.imag - b.imag; + return z; + } + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_prod_double(__pyx_t_double_complex a, __pyx_t_double_complex b) { + __pyx_t_double_complex z; + z.real = a.real * b.real - a.imag * b.imag; + z.imag = a.real * b.imag + a.imag * b.real; + return z; + } + #if 1 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot_double(__pyx_t_double_complex a, __pyx_t_double_complex b) { + if (b.imag == 0) { + return __pyx_t_double_complex_from_parts(a.real / b.real, a.imag / b.real); + } else if (fabs(b.real) >= fabs(b.imag)) { + if (b.real == 0 && b.imag == 0) { + return __pyx_t_double_complex_from_parts(a.real / b.real, a.imag / b.imag); + } else { + double r = b.imag / b.real; + double s = 1.0 / (b.real + b.imag * r); + return __pyx_t_double_complex_from_parts( + (a.real + a.imag * r) * s, (a.imag - a.real * r) * s); + } + } else { + double r = b.real / b.imag; + double s = 1.0 / (b.imag + b.real * r); + return __pyx_t_double_complex_from_parts( + (a.real * r + a.imag) * s, (a.imag * r - a.real) * s); + } + } + #else + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot_double(__pyx_t_double_complex a, __pyx_t_double_complex b) { + if (b.imag == 0) { + return __pyx_t_double_complex_from_parts(a.real / b.real, a.imag / b.real); + } else { + double denom = b.real * b.real + b.imag * b.imag; + return __pyx_t_double_complex_from_parts( + (a.real * b.real + a.imag * b.imag) / denom, + (a.imag * b.real - a.real * b.imag) / denom); + } + } + #endif + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_neg_double(__pyx_t_double_complex a) { + __pyx_t_double_complex z; + z.real = -a.real; + z.imag = -a.imag; + return z; + } + static CYTHON_INLINE int __Pyx_c_is_zero_double(__pyx_t_double_complex a) { + return (a.real == 0) && (a.imag == 0); + } + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_conj_double(__pyx_t_double_complex a) { + __pyx_t_double_complex z; + z.real = a.real; + z.imag = -a.imag; + return z; + } + #if 1 + static CYTHON_INLINE double __Pyx_c_abs_double(__pyx_t_double_complex z) { + #if !defined(HAVE_HYPOT) || defined(_MSC_VER) + return sqrt(z.real*z.real + z.imag*z.imag); + #else + return hypot(z.real, z.imag); + #endif + } + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_pow_double(__pyx_t_double_complex a, __pyx_t_double_complex b) { + __pyx_t_double_complex z; + double r, lnr, theta, z_r, z_theta; + if (b.imag == 0 && b.real == (int)b.real) { + if (b.real < 0) { + double denom = a.real * a.real + a.imag * a.imag; + a.real = a.real / denom; + a.imag = -a.imag / denom; + b.real = -b.real; + } + switch ((int)b.real) { + case 0: + z.real = 1; + z.imag = 0; + return z; + case 1: + return a; + case 2: + z = __Pyx_c_prod_double(a, a); + return __Pyx_c_prod_double(a, a); + case 3: + z = __Pyx_c_prod_double(a, a); + return __Pyx_c_prod_double(z, a); + case 4: + z = __Pyx_c_prod_double(a, a); + return __Pyx_c_prod_double(z, z); + } + } + if (a.imag == 0) { + if (a.real == 0) { + return a; + } else if (b.imag == 0) { + z.real = pow(a.real, b.real); + z.imag = 0; + return z; + } else if (a.real > 0) { + r = a.real; + theta = 0; + } else { + r = -a.real; + theta = atan2(0, -1); + } + } else { + r = __Pyx_c_abs_double(a); + theta = atan2(a.imag, a.real); + } + lnr = log(r); + z_r = exp(lnr * b.real - theta * b.imag); + z_theta = theta * b.real + lnr * b.imag; + z.real = z_r * cos(z_theta); + z.imag = z_r * sin(z_theta); + return z; + } + #endif +#endif + +/* CIntToPy */ + static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) { + const int neg_one = (int) -1, const_zero = (int) 0; + const int is_unsigned = neg_one > const_zero; + if (is_unsigned) { + if (sizeof(int) < sizeof(long)) { + return PyInt_FromLong((long) value); + } else if (sizeof(int) <= sizeof(unsigned long)) { + return PyLong_FromUnsignedLong((unsigned long) value); +#ifdef HAVE_LONG_LONG + } else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) { + return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); +#endif + } + } else { + if (sizeof(int) <= sizeof(long)) { + return PyInt_FromLong((long) value); +#ifdef HAVE_LONG_LONG + } else if (sizeof(int) <= sizeof(PY_LONG_LONG)) { + return PyLong_FromLongLong((PY_LONG_LONG) value); +#endif + } + } + { + int one = 1; int little = (int)*(unsigned char *)&one; + unsigned char *bytes = (unsigned char *)&value; + return _PyLong_FromByteArray(bytes, sizeof(int), + little, !is_unsigned); + } +} + +/* CIntToPy */ + static CYTHON_INLINE PyObject* __Pyx_PyInt_From_enum__NPY_TYPES(enum NPY_TYPES value) { + const enum NPY_TYPES neg_one = (enum NPY_TYPES) -1, const_zero = (enum NPY_TYPES) 0; + const int is_unsigned = neg_one > const_zero; + if (is_unsigned) { + if (sizeof(enum NPY_TYPES) < sizeof(long)) { + return PyInt_FromLong((long) value); + } else if (sizeof(enum NPY_TYPES) <= sizeof(unsigned long)) { + return PyLong_FromUnsignedLong((unsigned long) value); +#ifdef HAVE_LONG_LONG + } else if (sizeof(enum NPY_TYPES) <= sizeof(unsigned PY_LONG_LONG)) { + return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); +#endif + } + } else { + if (sizeof(enum NPY_TYPES) <= sizeof(long)) { + return PyInt_FromLong((long) value); +#ifdef HAVE_LONG_LONG + } else if (sizeof(enum NPY_TYPES) <= sizeof(PY_LONG_LONG)) { + return PyLong_FromLongLong((PY_LONG_LONG) value); +#endif + } + } + { + int one = 1; int little = (int)*(unsigned char *)&one; + unsigned char *bytes = (unsigned char *)&value; + return _PyLong_FromByteArray(bytes, sizeof(enum NPY_TYPES), + little, !is_unsigned); + } +} + +/* CIntFromPy */ + static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { + const int neg_one = (int) -1, const_zero = (int) 0; + const int is_unsigned = neg_one > const_zero; +#if PY_MAJOR_VERSION < 3 + if (likely(PyInt_Check(x))) { + if (sizeof(int) < sizeof(long)) { + __PYX_VERIFY_RETURN_INT(int, long, PyInt_AS_LONG(x)) + } else { + long val = PyInt_AS_LONG(x); + if (is_unsigned && unlikely(val < 0)) { + goto raise_neg_overflow; + } + return (int) val; + } + } else +#endif + if (likely(PyLong_Check(x))) { + if (is_unsigned) { +#if CYTHON_USE_PYLONG_INTERNALS + const digit* digits = ((PyLongObject*)x)->ob_digit; + switch (Py_SIZE(x)) { + case 0: return (int) 0; + case 1: __PYX_VERIFY_RETURN_INT(int, digit, digits[0]) + case 2: + if (8 * sizeof(int) > 1 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(int) >= 2 * PyLong_SHIFT) { + return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + } + } + break; + case 3: + if (8 * sizeof(int) > 2 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(int) >= 3 * PyLong_SHIFT) { + return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + } + } + break; + case 4: + if (8 * sizeof(int) > 3 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(int) >= 4 * PyLong_SHIFT) { + return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + } + } + break; + } +#endif +#if CYTHON_COMPILING_IN_CPYTHON + if (unlikely(Py_SIZE(x) < 0)) { + goto raise_neg_overflow; + } +#else + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (int) -1; + if (unlikely(result == 1)) + goto raise_neg_overflow; + } +#endif + if (sizeof(int) <= sizeof(unsigned long)) { + __PYX_VERIFY_RETURN_INT_EXC(int, unsigned long, PyLong_AsUnsignedLong(x)) +#ifdef HAVE_LONG_LONG + } else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) { + __PYX_VERIFY_RETURN_INT_EXC(int, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) +#endif + } + } else { +#if CYTHON_USE_PYLONG_INTERNALS + const digit* digits = ((PyLongObject*)x)->ob_digit; + switch (Py_SIZE(x)) { + case 0: return (int) 0; + case -1: __PYX_VERIFY_RETURN_INT(int, sdigit, (sdigit) (-(sdigit)digits[0])) + case 1: __PYX_VERIFY_RETURN_INT(int, digit, +digits[0]) + case -2: + if (8 * sizeof(int) - 1 > 1 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(int) - 1 > 2 * PyLong_SHIFT) { + return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } + } + break; + case 2: + if (8 * sizeof(int) > 1 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(int) - 1 > 2 * PyLong_SHIFT) { + return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } + } + break; + case -3: + if (8 * sizeof(int) - 1 > 2 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(int) - 1 > 3 * PyLong_SHIFT) { + return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } + } + break; + case 3: + if (8 * sizeof(int) > 2 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(int) - 1 > 3 * PyLong_SHIFT) { + return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } + } + break; + case -4: + if (8 * sizeof(int) - 1 > 3 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(int) - 1 > 4 * PyLong_SHIFT) { + return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } + } + break; + case 4: + if (8 * sizeof(int) > 3 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(int) - 1 > 4 * PyLong_SHIFT) { + return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } + } + break; + } +#endif + if (sizeof(int) <= sizeof(long)) { + __PYX_VERIFY_RETURN_INT_EXC(int, long, PyLong_AsLong(x)) +#ifdef HAVE_LONG_LONG + } else if (sizeof(int) <= sizeof(PY_LONG_LONG)) { + __PYX_VERIFY_RETURN_INT_EXC(int, PY_LONG_LONG, PyLong_AsLongLong(x)) +#endif + } + } + { +#if CYTHON_COMPILING_IN_PYPY && !defined(_PyLong_AsByteArray) + PyErr_SetString(PyExc_RuntimeError, + "_PyLong_AsByteArray() not available in PyPy, cannot convert large numbers"); +#else + int val; + PyObject *v = __Pyx_PyNumber_IntOrLong(x); + #if PY_MAJOR_VERSION < 3 + if (likely(v) && !PyLong_Check(v)) { + PyObject *tmp = v; + v = PyNumber_Long(tmp); + Py_DECREF(tmp); + } + #endif + if (likely(v)) { + int one = 1; int is_little = (int)*(unsigned char *)&one; + unsigned char *bytes = (unsigned char *)&val; + int ret = _PyLong_AsByteArray((PyLongObject *)v, + bytes, sizeof(val), + is_little, !is_unsigned); + Py_DECREF(v); + if (likely(!ret)) + return val; + } +#endif + return (int) -1; + } + } else { + int val; + PyObject *tmp = __Pyx_PyNumber_IntOrLong(x); + if (!tmp) return (int) -1; + val = __Pyx_PyInt_As_int(tmp); + Py_DECREF(tmp); + return val; + } +raise_overflow: + PyErr_SetString(PyExc_OverflowError, + "value too large to convert to int"); + return (int) -1; +raise_neg_overflow: + PyErr_SetString(PyExc_OverflowError, + "can't convert negative value to int"); + return (int) -1; +} + +/* CIntToPy */ + static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { + const long neg_one = (long) -1, const_zero = (long) 0; + const int is_unsigned = neg_one > const_zero; + if (is_unsigned) { + if (sizeof(long) < sizeof(long)) { + return PyInt_FromLong((long) value); + } else if (sizeof(long) <= sizeof(unsigned long)) { + return PyLong_FromUnsignedLong((unsigned long) value); +#ifdef HAVE_LONG_LONG + } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) { + return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); +#endif + } + } else { + if (sizeof(long) <= sizeof(long)) { + return PyInt_FromLong((long) value); +#ifdef HAVE_LONG_LONG + } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) { + return PyLong_FromLongLong((PY_LONG_LONG) value); +#endif + } + } + { + int one = 1; int little = (int)*(unsigned char *)&one; + unsigned char *bytes = (unsigned char *)&value; + return _PyLong_FromByteArray(bytes, sizeof(long), + little, !is_unsigned); + } +} + +/* CIntFromPy */ + static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { + const long neg_one = (long) -1, const_zero = (long) 0; + const int is_unsigned = neg_one > const_zero; +#if PY_MAJOR_VERSION < 3 + if (likely(PyInt_Check(x))) { + if (sizeof(long) < sizeof(long)) { + __PYX_VERIFY_RETURN_INT(long, long, PyInt_AS_LONG(x)) + } else { + long val = PyInt_AS_LONG(x); + if (is_unsigned && unlikely(val < 0)) { + goto raise_neg_overflow; + } + return (long) val; + } + } else +#endif + if (likely(PyLong_Check(x))) { + if (is_unsigned) { +#if CYTHON_USE_PYLONG_INTERNALS + const digit* digits = ((PyLongObject*)x)->ob_digit; + switch (Py_SIZE(x)) { + case 0: return (long) 0; + case 1: __PYX_VERIFY_RETURN_INT(long, digit, digits[0]) + case 2: + if (8 * sizeof(long) > 1 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(long) >= 2 * PyLong_SHIFT) { + return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + } + } + break; + case 3: + if (8 * sizeof(long) > 2 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(long) >= 3 * PyLong_SHIFT) { + return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + } + } + break; + case 4: + if (8 * sizeof(long) > 3 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(long) >= 4 * PyLong_SHIFT) { + return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + } + } + break; + } +#endif +#if CYTHON_COMPILING_IN_CPYTHON + if (unlikely(Py_SIZE(x) < 0)) { + goto raise_neg_overflow; + } +#else + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (long) -1; + if (unlikely(result == 1)) + goto raise_neg_overflow; + } +#endif + if (sizeof(long) <= sizeof(unsigned long)) { + __PYX_VERIFY_RETURN_INT_EXC(long, unsigned long, PyLong_AsUnsignedLong(x)) +#ifdef HAVE_LONG_LONG + } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) { + __PYX_VERIFY_RETURN_INT_EXC(long, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) +#endif + } + } else { +#if CYTHON_USE_PYLONG_INTERNALS + const digit* digits = ((PyLongObject*)x)->ob_digit; + switch (Py_SIZE(x)) { + case 0: return (long) 0; + case -1: __PYX_VERIFY_RETURN_INT(long, sdigit, (sdigit) (-(sdigit)digits[0])) + case 1: __PYX_VERIFY_RETURN_INT(long, digit, +digits[0]) + case -2: + if (8 * sizeof(long) - 1 > 1 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) { + return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } + } + break; + case 2: + if (8 * sizeof(long) > 1 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) { + return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } + } + break; + case -3: + if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) { + return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } + } + break; + case 3: + if (8 * sizeof(long) > 2 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) { + return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } + } + break; + case -4: + if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) { + return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } + } + break; + case 4: + if (8 * sizeof(long) > 3 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) { + return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } + } + break; + } +#endif + if (sizeof(long) <= sizeof(long)) { + __PYX_VERIFY_RETURN_INT_EXC(long, long, PyLong_AsLong(x)) +#ifdef HAVE_LONG_LONG + } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) { + __PYX_VERIFY_RETURN_INT_EXC(long, PY_LONG_LONG, PyLong_AsLongLong(x)) +#endif + } + } + { +#if CYTHON_COMPILING_IN_PYPY && !defined(_PyLong_AsByteArray) + PyErr_SetString(PyExc_RuntimeError, + "_PyLong_AsByteArray() not available in PyPy, cannot convert large numbers"); +#else + long val; + PyObject *v = __Pyx_PyNumber_IntOrLong(x); + #if PY_MAJOR_VERSION < 3 + if (likely(v) && !PyLong_Check(v)) { + PyObject *tmp = v; + v = PyNumber_Long(tmp); + Py_DECREF(tmp); + } + #endif + if (likely(v)) { + int one = 1; int is_little = (int)*(unsigned char *)&one; + unsigned char *bytes = (unsigned char *)&val; + int ret = _PyLong_AsByteArray((PyLongObject *)v, + bytes, sizeof(val), + is_little, !is_unsigned); + Py_DECREF(v); + if (likely(!ret)) + return val; + } +#endif + return (long) -1; + } + } else { + long val; + PyObject *tmp = __Pyx_PyNumber_IntOrLong(x); + if (!tmp) return (long) -1; + val = __Pyx_PyInt_As_long(tmp); + Py_DECREF(tmp); + return val; + } +raise_overflow: + PyErr_SetString(PyExc_OverflowError, + "value too large to convert to long"); + return (long) -1; +raise_neg_overflow: + PyErr_SetString(PyExc_OverflowError, + "can't convert negative value to long"); + return (long) -1; +} + +/* FastTypeChecks */ + #if CYTHON_COMPILING_IN_CPYTHON +static int __Pyx_InBases(PyTypeObject *a, PyTypeObject *b) { + while (a) { + a = a->tp_base; + if (a == b) + return 1; + } + return b == &PyBaseObject_Type; +} +static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b) { + PyObject *mro; + if (a == b) return 1; + mro = a->tp_mro; + if (likely(mro)) { + Py_ssize_t i, n; + n = PyTuple_GET_SIZE(mro); + for (i = 0; i < n; i++) { + if (PyTuple_GET_ITEM(mro, i) == (PyObject *)b) + return 1; + } + return 0; + } + return __Pyx_InBases(a, b); +} +#if PY_MAJOR_VERSION == 2 +static int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject* exc_type2) { + PyObject *exception, *value, *tb; + int res; + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign + __Pyx_ErrFetch(&exception, &value, &tb); + res = exc_type1 ? PyObject_IsSubclass(err, exc_type1) : 0; + if (unlikely(res == -1)) { + PyErr_WriteUnraisable(err); + res = 0; + } + if (!res) { + res = PyObject_IsSubclass(err, exc_type2); + if (unlikely(res == -1)) { + PyErr_WriteUnraisable(err); + res = 0; + } + } + __Pyx_ErrRestore(exception, value, tb); + return res; +} +#else +static CYTHON_INLINE int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject *exc_type2) { + int res = exc_type1 ? __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type1) : 0; + if (!res) { + res = __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type2); + } + return res; +} +#endif +static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject* exc_type) { + if (likely(err == exc_type)) return 1; + if (likely(PyExceptionClass_Check(err))) { + return __Pyx_inner_PyErr_GivenExceptionMatches2(err, NULL, exc_type); + } + return PyErr_GivenExceptionMatches(err, exc_type); +} +static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *exc_type1, PyObject *exc_type2) { + if (likely(err == exc_type1 || err == exc_type2)) return 1; + if (likely(PyExceptionClass_Check(err))) { + return __Pyx_inner_PyErr_GivenExceptionMatches2(err, exc_type1, exc_type2); + } + return (PyErr_GivenExceptionMatches(err, exc_type1) || PyErr_GivenExceptionMatches(err, exc_type2)); +} +#endif + +/* CheckBinaryVersion */ + static int __Pyx_check_binary_version(void) { + char ctversion[4], rtversion[4]; + PyOS_snprintf(ctversion, 4, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION); + PyOS_snprintf(rtversion, 4, "%s", Py_GetVersion()); + if (ctversion[0] != rtversion[0] || ctversion[2] != rtversion[2]) { + char message[200]; + PyOS_snprintf(message, sizeof(message), + "compiletime version %s of module '%.100s' " + "does not match runtime version %s", + ctversion, __Pyx_MODULE_NAME, rtversion); + return PyErr_WarnEx(NULL, message, 1); + } + return 0; +} + +/* ModuleImport */ + #ifndef __PYX_HAVE_RT_ImportModule +#define __PYX_HAVE_RT_ImportModule +static PyObject *__Pyx_ImportModule(const char *name) { + PyObject *py_name = 0; + PyObject *py_module = 0; + py_name = __Pyx_PyIdentifier_FromString(name); + if (!py_name) + goto bad; + py_module = PyImport_Import(py_name); + Py_DECREF(py_name); + return py_module; +bad: + Py_XDECREF(py_name); + return 0; +} +#endif + +/* TypeImport */ + #ifndef __PYX_HAVE_RT_ImportType +#define __PYX_HAVE_RT_ImportType +static PyTypeObject *__Pyx_ImportType(const char *module_name, const char *class_name, + size_t size, int strict) +{ + PyObject *py_module = 0; + PyObject *result = 0; + PyObject *py_name = 0; + char warning[200]; + Py_ssize_t basicsize; +#ifdef Py_LIMITED_API + PyObject *py_basicsize; +#endif + py_module = __Pyx_ImportModule(module_name); + if (!py_module) + goto bad; + py_name = __Pyx_PyIdentifier_FromString(class_name); + if (!py_name) + goto bad; + result = PyObject_GetAttr(py_module, py_name); + Py_DECREF(py_name); + py_name = 0; + Py_DECREF(py_module); + py_module = 0; + if (!result) + goto bad; + if (!PyType_Check(result)) { + PyErr_Format(PyExc_TypeError, + "%.200s.%.200s is not a type object", + module_name, class_name); + goto bad; + } +#ifndef Py_LIMITED_API + basicsize = ((PyTypeObject *)result)->tp_basicsize; +#else + py_basicsize = PyObject_GetAttrString(result, "__basicsize__"); + if (!py_basicsize) + goto bad; + basicsize = PyLong_AsSsize_t(py_basicsize); + Py_DECREF(py_basicsize); + py_basicsize = 0; + if (basicsize == (Py_ssize_t)-1 && PyErr_Occurred()) + goto bad; +#endif + if (!strict && (size_t)basicsize > size) { + PyOS_snprintf(warning, sizeof(warning), + "%s.%s size changed, may indicate binary incompatibility. Expected %zd, got %zd", + module_name, class_name, basicsize, size); + if (PyErr_WarnEx(NULL, warning, 0) < 0) goto bad; + } + else if ((size_t)basicsize != size) { + PyErr_Format(PyExc_ValueError, + "%.200s.%.200s has the wrong size, try recompiling. Expected %zd, got %zd", + module_name, class_name, basicsize, size); + goto bad; + } + return (PyTypeObject *)result; +bad: + Py_XDECREF(py_module); + Py_XDECREF(result); + return NULL; +} +#endif + +/* InitStrings */ + static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { + while (t->p) { + #if PY_MAJOR_VERSION < 3 + if (t->is_unicode) { + *t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL); + } else if (t->intern) { + *t->p = PyString_InternFromString(t->s); + } else { + *t->p = PyString_FromStringAndSize(t->s, t->n - 1); + } + #else + if (t->is_unicode | t->is_str) { + if (t->intern) { + *t->p = PyUnicode_InternFromString(t->s); + } else if (t->encoding) { + *t->p = PyUnicode_Decode(t->s, t->n - 1, t->encoding, NULL); + } else { + *t->p = PyUnicode_FromStringAndSize(t->s, t->n - 1); + } + } else { + *t->p = PyBytes_FromStringAndSize(t->s, t->n - 1); + } + #endif + if (!*t->p) + return -1; + if (PyObject_Hash(*t->p) == -1) + return -1; + ++t; + } + return 0; +} + +static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) { + return __Pyx_PyUnicode_FromStringAndSize(c_str, (Py_ssize_t)strlen(c_str)); +} +static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject* o) { + Py_ssize_t ignore; + return __Pyx_PyObject_AsStringAndSize(o, &ignore); +} +#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT +#if !CYTHON_PEP393_ENABLED +static const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) { + char* defenc_c; + PyObject* defenc = _PyUnicode_AsDefaultEncodedString(o, NULL); + if (!defenc) return NULL; + defenc_c = PyBytes_AS_STRING(defenc); +#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII + { + char* end = defenc_c + PyBytes_GET_SIZE(defenc); + char* c; + for (c = defenc_c; c < end; c++) { + if ((unsigned char) (*c) >= 128) { + PyUnicode_AsASCIIString(o); + return NULL; + } + } + } +#endif + *length = PyBytes_GET_SIZE(defenc); + return defenc_c; +} +#else +static CYTHON_INLINE const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) { + if (unlikely(__Pyx_PyUnicode_READY(o) == -1)) return NULL; +#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII + if (likely(PyUnicode_IS_ASCII(o))) { + *length = PyUnicode_GET_LENGTH(o); + return PyUnicode_AsUTF8(o); + } else { + PyUnicode_AsASCIIString(o); + return NULL; + } +#else + return PyUnicode_AsUTF8AndSize(o, length); +#endif +} +#endif +#endif +static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) { +#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT + if ( +#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII + __Pyx_sys_getdefaultencoding_not_ascii && +#endif + PyUnicode_Check(o)) { + return __Pyx_PyUnicode_AsStringAndSize(o, length); + } else +#endif +#if (!CYTHON_COMPILING_IN_PYPY) || (defined(PyByteArray_AS_STRING) && defined(PyByteArray_GET_SIZE)) + if (PyByteArray_Check(o)) { + *length = PyByteArray_GET_SIZE(o); + return PyByteArray_AS_STRING(o); + } else +#endif + { + char* result; + int r = PyBytes_AsStringAndSize(o, &result, length); + if (unlikely(r < 0)) { + return NULL; + } else { + return result; + } + } +} +static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) { + int is_true = x == Py_True; + if (is_true | (x == Py_False) | (x == Py_None)) return is_true; + else return PyObject_IsTrue(x); +} +static PyObject* __Pyx_PyNumber_IntOrLongWrongResultType(PyObject* result, const char* type_name) { +#if PY_MAJOR_VERSION >= 3 + if (PyLong_Check(result)) { + if (PyErr_WarnFormat(PyExc_DeprecationWarning, 1, + "__int__ returned non-int (type %.200s). " + "The ability to return an instance of a strict subclass of int " + "is deprecated, and may be removed in a future version of Python.", + Py_TYPE(result)->tp_name)) { + Py_DECREF(result); + return NULL; + } + return result; + } +#endif + PyErr_Format(PyExc_TypeError, + "__%.4s__ returned non-%.4s (type %.200s)", + type_name, type_name, Py_TYPE(result)->tp_name); + Py_DECREF(result); + return NULL; +} +static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x) { +#if CYTHON_USE_TYPE_SLOTS + PyNumberMethods *m; +#endif + const char *name = NULL; + PyObject *res = NULL; +#if PY_MAJOR_VERSION < 3 + if (likely(PyInt_Check(x) || PyLong_Check(x))) +#else + if (likely(PyLong_Check(x))) +#endif + return __Pyx_NewRef(x); +#if CYTHON_USE_TYPE_SLOTS + m = Py_TYPE(x)->tp_as_number; + #if PY_MAJOR_VERSION < 3 + if (m && m->nb_int) { + name = "int"; + res = m->nb_int(x); + } + else if (m && m->nb_long) { + name = "long"; + res = m->nb_long(x); + } + #else + if (likely(m && m->nb_int)) { + name = "int"; + res = m->nb_int(x); + } + #endif +#else + if (!PyBytes_CheckExact(x) && !PyUnicode_CheckExact(x)) { + res = PyNumber_Int(x); + } +#endif + if (likely(res)) { +#if PY_MAJOR_VERSION < 3 + if (unlikely(!PyInt_Check(res) && !PyLong_Check(res))) { +#else + if (unlikely(!PyLong_CheckExact(res))) { +#endif + return __Pyx_PyNumber_IntOrLongWrongResultType(res, name); + } + } + else if (!PyErr_Occurred()) { + PyErr_SetString(PyExc_TypeError, + "an integer is required"); + } + return res; +} +static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { + Py_ssize_t ival; + PyObject *x; +#if PY_MAJOR_VERSION < 3 + if (likely(PyInt_CheckExact(b))) { + if (sizeof(Py_ssize_t) >= sizeof(long)) + return PyInt_AS_LONG(b); + else + return PyInt_AsSsize_t(x); + } +#endif + if (likely(PyLong_CheckExact(b))) { + #if CYTHON_USE_PYLONG_INTERNALS + const digit* digits = ((PyLongObject*)b)->ob_digit; + const Py_ssize_t size = Py_SIZE(b); + if (likely(__Pyx_sst_abs(size) <= 1)) { + ival = likely(size) ? digits[0] : 0; + if (size == -1) ival = -ival; + return ival; + } else { + switch (size) { + case 2: + if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) { + return (Py_ssize_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); + } + break; + case -2: + if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) { + return -(Py_ssize_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); + } + break; + case 3: + if (8 * sizeof(Py_ssize_t) > 3 * PyLong_SHIFT) { + return (Py_ssize_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); + } + break; + case -3: + if (8 * sizeof(Py_ssize_t) > 3 * PyLong_SHIFT) { + return -(Py_ssize_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); + } + break; + case 4: + if (8 * sizeof(Py_ssize_t) > 4 * PyLong_SHIFT) { + return (Py_ssize_t) (((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); + } + break; + case -4: + if (8 * sizeof(Py_ssize_t) > 4 * PyLong_SHIFT) { + return -(Py_ssize_t) (((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); + } + break; + } + } + #endif + return PyLong_AsSsize_t(b); + } + x = PyNumber_Index(b); + if (!x) return -1; + ival = PyInt_AsSsize_t(x); + Py_DECREF(x); + return ival; +} +static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { + return PyInt_FromSize_t(ival); +} + + +#endif /* Py_PYTHON_H */ diff --git a/venv/insightface/thirdparty/face3d/mesh/cython/mesh_core_cython.pyx b/venv/insightface/thirdparty/face3d/mesh/cython/mesh_core_cython.pyx new file mode 100644 index 0000000000000000000000000000000000000000..40f589a9b6ddfe5d42d62c242348380c0fe2242a --- /dev/null +++ b/venv/insightface/thirdparty/face3d/mesh/cython/mesh_core_cython.pyx @@ -0,0 +1,109 @@ +import numpy as np +cimport numpy as np +from libcpp.string cimport string + +# use the Numpy-C-API from Cython +np.import_array() + +# cdefine the signature of our c function +cdef extern from "mesh_core.h": + void _rasterize_triangles_core( + float* vertices, int* triangles, + float* depth_buffer, int* triangle_buffer, float* barycentric_weight, + int nver, int ntri, + int h, int w) + + void _render_colors_core( + float* image, float* vertices, int* triangles, + float* colors, + float* depth_buffer, + int nver, int ntri, + int h, int w, int c) + + void _render_texture_core( + float* image, float* vertices, int* triangles, + float* texture, float* tex_coords, int* tex_triangles, + float* depth_buffer, + int nver, int tex_nver, int ntri, + int h, int w, int c, + int tex_h, int tex_w, int tex_c, + int mapping_type) + + void _get_normal_core( + float* normal, float* tri_normal, int* triangles, + int ntri) + + void _write_obj_with_colors_texture(string filename, string mtl_name, + float* vertices, int* triangles, float* colors, float* uv_coords, + int nver, int ntri, int ntexver) + +def get_normal_core(np.ndarray[float, ndim=2, mode = "c"] normal not None, + np.ndarray[float, ndim=2, mode = "c"] tri_normal not None, + np.ndarray[int, ndim=2, mode="c"] triangles not None, + int ntri + ): + _get_normal_core( + np.PyArray_DATA(normal), np.PyArray_DATA(tri_normal), np.PyArray_DATA(triangles), + ntri) + +def rasterize_triangles_core( + np.ndarray[float, ndim=2, mode = "c"] vertices not None, + np.ndarray[int, ndim=2, mode="c"] triangles not None, + np.ndarray[float, ndim=2, mode = "c"] depth_buffer not None, + np.ndarray[int, ndim=2, mode = "c"] triangle_buffer not None, + np.ndarray[float, ndim=2, mode = "c"] barycentric_weight not None, + int nver, int ntri, + int h, int w + ): + _rasterize_triangles_core( + np.PyArray_DATA(vertices), np.PyArray_DATA(triangles), + np.PyArray_DATA(depth_buffer), np.PyArray_DATA(triangle_buffer), np.PyArray_DATA(barycentric_weight), + nver, ntri, + h, w) + +def render_colors_core(np.ndarray[float, ndim=3, mode = "c"] image not None, + np.ndarray[float, ndim=2, mode = "c"] vertices not None, + np.ndarray[int, ndim=2, mode="c"] triangles not None, + np.ndarray[float, ndim=2, mode = "c"] colors not None, + np.ndarray[float, ndim=2, mode = "c"] depth_buffer not None, + int nver, int ntri, + int h, int w, int c + ): + _render_colors_core( + np.PyArray_DATA(image), np.PyArray_DATA(vertices), np.PyArray_DATA(triangles), + np.PyArray_DATA(colors), + np.PyArray_DATA(depth_buffer), + nver, ntri, + h, w, c) + +def render_texture_core(np.ndarray[float, ndim=3, mode = "c"] image not None, + np.ndarray[float, ndim=2, mode = "c"] vertices not None, + np.ndarray[int, ndim=2, mode="c"] triangles not None, + np.ndarray[float, ndim=3, mode = "c"] texture not None, + np.ndarray[float, ndim=2, mode = "c"] tex_coords not None, + np.ndarray[int, ndim=2, mode="c"] tex_triangles not None, + np.ndarray[float, ndim=2, mode = "c"] depth_buffer not None, + int nver, int tex_nver, int ntri, + int h, int w, int c, + int tex_h, int tex_w, int tex_c, + int mapping_type + ): + _render_texture_core( + np.PyArray_DATA(image), np.PyArray_DATA(vertices), np.PyArray_DATA(triangles), + np.PyArray_DATA(texture), np.PyArray_DATA(tex_coords), np.PyArray_DATA(tex_triangles), + np.PyArray_DATA(depth_buffer), + nver, tex_nver, ntri, + h, w, c, + tex_h, tex_w, tex_c, + mapping_type) + +def write_obj_with_colors_texture_core(string filename, string mtl_name, + np.ndarray[float, ndim=2, mode = "c"] vertices not None, + np.ndarray[int, ndim=2, mode="c"] triangles not None, + np.ndarray[float, ndim=2, mode = "c"] colors not None, + np.ndarray[float, ndim=2, mode = "c"] uv_coords not None, + int nver, int ntri, int ntexver + ): + _write_obj_with_colors_texture(filename, mtl_name, + np.PyArray_DATA(vertices), np.PyArray_DATA(triangles), np.PyArray_DATA(colors), np.PyArray_DATA(uv_coords), + nver, ntri, ntexver) diff --git a/venv/insightface/thirdparty/face3d/mesh/cython/setup.py b/venv/insightface/thirdparty/face3d/mesh/cython/setup.py new file mode 100644 index 0000000000000000000000000000000000000000..fc1ede1e777b369b1bbd9c94f6fa85ce037de3f9 --- /dev/null +++ b/venv/insightface/thirdparty/face3d/mesh/cython/setup.py @@ -0,0 +1,20 @@ +''' +python setup.py build_ext -i +to compile +''' + +# setup.py +from distutils.core import setup, Extension +from Cython.Build import cythonize +from Cython.Distutils import build_ext +import numpy + +setup( + name = 'mesh_core_cython', + cmdclass={'build_ext': build_ext}, + ext_modules=[Extension("mesh_core_cython", + sources=["mesh_core_cython.pyx", "mesh_core.cpp"], + language='c++', + include_dirs=[numpy.get_include()])], +) + diff --git a/venv/lib/python3.10/site-packages/github/GistFile.py b/venv/lib/python3.10/site-packages/github/GistFile.py new file mode 100644 index 0000000000000000000000000000000000000000..732e4ea15dd31d0a8e410a6f632fd59b1c4c3ec4 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/GistFile.py @@ -0,0 +1,102 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from typing import Any, Dict + +from github.GithubObject import Attribute, NonCompletableGithubObject, NotSet + + +class GistFile(NonCompletableGithubObject): + """ + This class represents GistFiles. + + The OpenAPI schema can be found at + - /components/schemas/base-gist/properties/files + - /components/schemas/gist-simple/properties/files + - /components/schemas/gist-simple/properties/fork_of/properties/files + + """ + + def _initAttributes(self) -> None: + self._content: Attribute[str] = NotSet + self._filename: Attribute[str] = NotSet + self._language: Attribute[str] = NotSet + self._raw_url: Attribute[str] = NotSet + self._size: Attribute[int] = NotSet + self._type: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"filename": self._filename.value}) + + @property + def content(self) -> str: + return self._content.value + + @property + def filename(self) -> str: + return self._filename.value + + @property + def language(self) -> str: + return self._language.value + + @property + def raw_url(self) -> str: + return self._raw_url.value + + @property + def size(self) -> int: + return self._size.value + + @property + def type(self) -> str: + return self._type.value + + def _useAttributes(self, attributes: Dict[str, Any]) -> None: + if "content" in attributes: # pragma no branch + self._content = self._makeStringAttribute(attributes["content"]) + if "filename" in attributes: # pragma no branch + self._filename = self._makeStringAttribute(attributes["filename"]) + if "language" in attributes: # pragma no branch + self._language = self._makeStringAttribute(attributes["language"]) + if "raw_url" in attributes: # pragma no branch + self._raw_url = self._makeStringAttribute(attributes["raw_url"]) + if "size" in attributes: # pragma no branch + self._size = self._makeIntAttribute(attributes["size"]) + if "type" in attributes: # pragma no branch + self._type = self._makeStringAttribute(attributes["type"]) diff --git a/venv/lib/python3.10/site-packages/github/GistHistoryState.py b/venv/lib/python3.10/site-packages/github/GistHistoryState.py new file mode 100644 index 0000000000000000000000000000000000000000..20941f07d18f2c7968636b4d54533e0ff20b5025 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/GistHistoryState.py @@ -0,0 +1,231 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from datetime import datetime +from typing import Any + +import github.CommitStats +import github.Gist +import github.GithubObject +import github.NamedUser +from github.GistFile import GistFile +from github.GithubObject import Attribute, CompletableGithubObject, NotSet + + +class GistHistoryState(CompletableGithubObject): + """ + This class represents GistHistoryStates. + + The OpenAPI schema can be found at + - /components/schemas/gist-history + + """ + + def _initAttributes(self) -> None: + self._change_status: Attribute[github.CommitStats.CommitStats] = NotSet + self._comments: Attribute[int] = NotSet + self._comments_url: Attribute[str] = NotSet + self._commits_url: Attribute[str] = NotSet + self._committed_at: Attribute[datetime] = NotSet + self._created_at: Attribute[datetime] = NotSet + self._description: Attribute[str] = NotSet + self._files: Attribute[dict[str, GistFile]] = NotSet + self._forks: Attribute[list[github.Gist.Gist]] = NotSet + self._forks_url: Attribute[str] = NotSet + self._git_pull_url: Attribute[str] = NotSet + self._git_push_url: Attribute[str] = NotSet + self._history: Attribute[list[GistHistoryState]] = NotSet + self._html_url: Attribute[str] = NotSet + self._id: Attribute[str] = NotSet + self._owner: Attribute[github.NamedUser.NamedUser] = NotSet + self._public: Attribute[bool] = NotSet + self._updated_at: Attribute[datetime] = NotSet + self._url: Attribute[str] = NotSet + self._user: Attribute[github.NamedUser.NamedUser] = NotSet + self._version: Attribute[str] = NotSet + + @property + def change_status(self) -> github.CommitStats.CommitStats: + self._completeIfNotSet(self._change_status) + return self._change_status.value + + @property + def comments(self) -> int: + self._completeIfNotSet(self._comments) + return self._comments.value + + @property + def comments_url(self) -> str: + self._completeIfNotSet(self._comments_url) + return self._comments_url.value + + @property + def commits_url(self) -> str: + self._completeIfNotSet(self._commits_url) + return self._commits_url.value + + @property + def committed_at(self) -> datetime: + self._completeIfNotSet(self._committed_at) + return self._committed_at.value + + @property + def created_at(self) -> datetime: + self._completeIfNotSet(self._created_at) + return self._created_at.value + + @property + def description(self) -> str: + self._completeIfNotSet(self._description) + return self._description.value + + @property + def files(self) -> dict[str, GistFile]: + self._completeIfNotSet(self._files) + return self._files.value + + @property + def forks(self) -> list[github.Gist.Gist]: + self._completeIfNotSet(self._forks) + return self._forks.value + + @property + def forks_url(self) -> str: + self._completeIfNotSet(self._forks_url) + return self._forks_url.value + + @property + def git_pull_url(self) -> str: + self._completeIfNotSet(self._git_pull_url) + return self._git_pull_url.value + + @property + def git_push_url(self) -> str: + self._completeIfNotSet(self._git_push_url) + return self._git_push_url.value + + @property + def history(self) -> list[GistHistoryState]: + self._completeIfNotSet(self._history) + return self._history.value + + @property + def html_url(self) -> str: + self._completeIfNotSet(self._html_url) + return self._html_url.value + + @property + def id(self) -> str: + self._completeIfNotSet(self._id) + return self._id.value + + @property + def owner(self) -> github.NamedUser.NamedUser: + self._completeIfNotSet(self._owner) + return self._owner.value + + @property + def public(self) -> bool: + self._completeIfNotSet(self._public) + return self._public.value + + @property + def updated_at(self) -> datetime: + self._completeIfNotSet(self._updated_at) + return self._updated_at.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + @property + def user(self) -> github.NamedUser.NamedUser: + self._completeIfNotSet(self._user) + return self._user.value + + @property + def version(self) -> str: + self._completeIfNotSet(self._version) + return self._version.value + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "change_status" in attributes: # pragma no branch + self._change_status = self._makeClassAttribute(github.CommitStats.CommitStats, attributes["change_status"]) + if "comments" in attributes: # pragma no branch + self._comments = self._makeIntAttribute(attributes["comments"]) + if "comments_url" in attributes: # pragma no branch + self._comments_url = self._makeStringAttribute(attributes["comments_url"]) + if "commits_url" in attributes: # pragma no branch + self._commits_url = self._makeStringAttribute(attributes["commits_url"]) + if "committed_at" in attributes: # pragma no branch + self._committed_at = self._makeDatetimeAttribute(attributes["committed_at"]) + if "created_at" in attributes: # pragma no branch + self._created_at = self._makeDatetimeAttribute(attributes["created_at"]) + if "description" in attributes: # pragma no branch + self._description = self._makeStringAttribute(attributes["description"]) + if "files" in attributes: # pragma no branch + self._files = self._makeDictOfStringsToClassesAttribute(github.GistFile.GistFile, attributes["files"]) + if "forks" in attributes: # pragma no branch + self._forks = self._makeListOfClassesAttribute(github.Gist.Gist, attributes["forks"]) + if "forks_url" in attributes: # pragma no branch + self._forks_url = self._makeStringAttribute(attributes["forks_url"]) + if "git_pull_url" in attributes: # pragma no branch + self._git_pull_url = self._makeStringAttribute(attributes["git_pull_url"]) + if "git_push_url" in attributes: # pragma no branch + self._git_push_url = self._makeStringAttribute(attributes["git_push_url"]) + if "history" in attributes: # pragma no branch + self._history = self._makeListOfClassesAttribute(GistHistoryState, attributes["history"]) + if "html_url" in attributes: # pragma no branch + self._html_url = self._makeStringAttribute(attributes["html_url"]) + if "id" in attributes: # pragma no branch + self._id = self._makeStringAttribute(attributes["id"]) + if "owner" in attributes: # pragma no branch + self._owner = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["owner"]) + if "public" in attributes: # pragma no branch + self._public = self._makeBoolAttribute(attributes["public"]) + if "updated_at" in attributes: # pragma no branch + self._updated_at = self._makeDatetimeAttribute(attributes["updated_at"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) + if "user" in attributes: # pragma no branch + self._user = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["user"]) + if "version" in attributes: # pragma no branch + self._version = self._makeStringAttribute(attributes["version"]) diff --git a/venv/lib/python3.10/site-packages/github/GitAuthor.py b/venv/lib/python3.10/site-packages/github/GitAuthor.py new file mode 100644 index 0000000000000000000000000000000000000000..8a5c6aa7b89e280f409320b9bcd9e42e610d66b2 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/GitAuthor.py @@ -0,0 +1,90 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from datetime import datetime +from typing import Any, Dict + +from github.GithubObject import Attribute, NonCompletableGithubObject, NotSet + + +class GitAuthor(NonCompletableGithubObject): + """ + This class represents GitAuthors. + + The OpenAPI schema can be found at + - /components/schemas/commit-search-result-item/properties/commit/properties/author + - /components/schemas/file-commit/properties/commit/properties/author + - /components/schemas/file-commit/properties/commit/properties/committer + - /components/schemas/git-commit/properties/author + - /components/schemas/git-commit/properties/committer + - /components/schemas/git-tag/properties/tagger + - /components/schemas/nullable-git-user + - /components/schemas/nullable-simple-commit/properties/author + - /components/schemas/nullable-simple-commit/properties/committer + - /components/schemas/simple-commit/properties/author + - /components/schemas/simple-commit/properties/committer + + """ + + def _initAttributes(self) -> None: + self._date: Attribute[datetime] = NotSet + self._email: Attribute[str] = NotSet + self._name: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"name": self._name.value}) + + @property + def date(self) -> datetime: + return self._date.value + + @property + def email(self) -> str: + return self._email.value + + @property + def name(self) -> str: + return self._name.value + + def _useAttributes(self, attributes: Dict[str, Any]) -> None: + if "date" in attributes: # pragma no branch + self._date = self._makeDatetimeAttribute(attributes["date"]) + if "email" in attributes: # pragma no branch + self._email = self._makeStringAttribute(attributes["email"]) + if "name" in attributes: # pragma no branch + self._name = self._makeStringAttribute(attributes["name"]) diff --git a/venv/lib/python3.10/site-packages/github/GitBlob.py b/venv/lib/python3.10/site-packages/github/GitBlob.py new file mode 100644 index 0000000000000000000000000000000000000000..905688c2eff4508360b969a2ea15585fcedd270b --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/GitBlob.py @@ -0,0 +1,104 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from typing import Any + +from github.GithubObject import Attribute, CompletableGithubObject, NotSet + + +class GitBlob(CompletableGithubObject): + """ + This class represents GitBlobs. + + The reference can be found here + https://docs.github.com/en/rest/reference/git#blobs + + The OpenAPI schema can be found at + - /components/schemas/short-blob + + """ + + def _initAttributes(self) -> None: + self._content: Attribute[str] = NotSet + self._encoding: Attribute[str] = NotSet + self._sha: Attribute[str] = NotSet + self._size: Attribute[int] = NotSet + self._url: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"sha": self._sha.value}) + + @property + def content(self) -> str: + self._completeIfNotSet(self._content) + return self._content.value + + @property + def encoding(self) -> str: + self._completeIfNotSet(self._encoding) + return self._encoding.value + + @property + def sha(self) -> str: + self._completeIfNotSet(self._sha) + return self._sha.value + + @property + def size(self) -> int: + self._completeIfNotSet(self._size) + return self._size.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "content" in attributes: # pragma no branch + self._content = self._makeStringAttribute(attributes["content"]) + if "encoding" in attributes: # pragma no branch + self._encoding = self._makeStringAttribute(attributes["encoding"]) + if "sha" in attributes: # pragma no branch + self._sha = self._makeStringAttribute(attributes["sha"]) + if "size" in attributes: # pragma no branch + self._size = self._makeIntAttribute(attributes["size"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) diff --git a/venv/lib/python3.10/site-packages/github/GitCommit.py b/venv/lib/python3.10/site-packages/github/GitCommit.py new file mode 100644 index 0000000000000000000000000000000000000000..94a40349e5da28d3697d137ee27b1943b24e8096 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/GitCommit.py @@ -0,0 +1,206 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# Copyright 2025 Tim Gates # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from datetime import datetime +from typing import TYPE_CHECKING, Any + +import github.GitAuthor +import github.GitCommitVerification +import github.GitTree +from github.GithubObject import Attribute, CompletableGithubObject, NotSet, is_defined, is_undefined + +if TYPE_CHECKING: + from github.GitAuthor import GitAuthor + from github.GitCommitVerification import GitCommitVerification + from github.GitTree import GitTree + + +class GitCommit(CompletableGithubObject): + """ + This class represents GitCommits. + + The reference can be found here + https://docs.github.com/en/rest/reference/git#commits + + The OpenAPI schema can be found at + - /components/schemas/commit-search-result-item/properties/commit + - /components/schemas/commit/properties/commit + - /components/schemas/file-commit/properties/commit + - /components/schemas/file-commit/properties/commit/properties/parents/items + - /components/schemas/git-commit + - /components/schemas/git-commit/properties/parents/items + - /components/schemas/nullable-simple-commit + - /components/schemas/simple-commit + + """ + + def _initAttributes(self) -> None: + self._author: Attribute[GitAuthor] = NotSet + self._comment_count: Attribute[int] = NotSet + self._committer: Attribute[GitAuthor] = NotSet + self._html_url: Attribute[str] = NotSet + self._id: Attribute[str] = NotSet + self._message: Attribute[str] = NotSet + self._node_id: Attribute[str] = NotSet + self._parents: Attribute[list[GitCommit]] = NotSet + self._sha: Attribute[str] = NotSet + self._timestamp: Attribute[datetime] = NotSet + self._tree: Attribute[GitTree] = NotSet + self._tree_id: Attribute[str] = NotSet + self._url: Attribute[str] = NotSet + self._verification: Attribute[GitCommitVerification] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"sha": self._sha.value}) + + @property + def _identity(self) -> str: + return self.sha + + @property + def author(self) -> GitAuthor: + self._completeIfNotSet(self._author) + return self._author.value + + @property + def comment_count(self) -> int: + self._completeIfNotSet(self._comment_count) + return self._comment_count.value + + @property + def committer(self) -> GitAuthor: + self._completeIfNotSet(self._committer) + return self._committer.value + + @property + def html_url(self) -> str: + self._completeIfNotSet(self._html_url) + return self._html_url.value + + @property + def id(self) -> str: + self._completeIfNotSet(self._id) + return self._id.value + + @property + def message(self) -> str: + self._completeIfNotSet(self._message) + return self._message.value + + @property + def node_id(self) -> str: + self._completeIfNotSet(self._node_id) + return self._node_id.value + + @property + def parents(self) -> list[GitCommit]: + self._completeIfNotSet(self._parents) + return self._parents.value + + @property + def sha(self) -> str: + # if populated from a simple-commit, id actually holds the sha + if is_undefined(self._sha) and is_defined(self._id): + return self._id.value + self._completeIfNotSet(self._sha) + return self._sha.value + + @property + def timestamp(self) -> datetime: + self._completeIfNotSet(self._timestamp) + return self._timestamp.value + + @property + def tree(self) -> GitTree: + # if populated from a simple-commit, tree_id holds the sha + if is_undefined(self._tree) and is_defined(self._tree_id): + return github.GitTree.GitTree(self._requester, self._headers, {"sha": self._tree_id.value}) + self._completeIfNotSet(self._tree) + return self._tree.value + + @property + def tree_id(self) -> str: + self._completeIfNotSet(self._tree_id) + return self._tree_id.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + @property + def verification(self) -> GitCommitVerification: + self._completeIfNotSet(self._verification) + return self._verification.value + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "author" in attributes: # pragma no branch + self._author = self._makeClassAttribute(github.GitAuthor.GitAuthor, attributes["author"]) + if "comment_count" in attributes: # pragma no branch + self._comment_count = self._makeIntAttribute(attributes["comment_count"]) + if "committer" in attributes: # pragma no branch + self._committer = self._makeClassAttribute(github.GitAuthor.GitAuthor, attributes["committer"]) + if "html_url" in attributes: # pragma no branch + self._html_url = self._makeStringAttribute(attributes["html_url"]) + if "id" in attributes: # pragma no branch + self._id = self._makeStringAttribute(attributes["id"]) + if "message" in attributes: # pragma no branch + self._message = self._makeStringAttribute(attributes["message"]) + if "node_id" in attributes: # pragma no branch + self._node_id = self._makeStringAttribute(attributes["node_id"]) + if "parents" in attributes: # pragma no branch + self._parents = self._makeListOfClassesAttribute(GitCommit, attributes["parents"]) + if "sha" in attributes: # pragma no branch + self._sha = self._makeStringAttribute(attributes["sha"]) + if "timestamp" in attributes: # pragma no branch + self._timestamp = self._makeDatetimeAttribute(attributes["timestamp"]) + if "tree" in attributes: # pragma no branch + self._tree = self._makeClassAttribute(github.GitTree.GitTree, attributes["tree"]) + if "tree_id" in attributes: # pragma no branch + self._tree_id = self._makeStringAttribute(attributes["tree_id"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) + if "verification" in attributes: # pragma no branch + self._verification = self._makeClassAttribute( + github.GitCommitVerification.GitCommitVerification, attributes["verification"] + ) diff --git a/venv/lib/python3.10/site-packages/github/GitCommitVerification.py b/venv/lib/python3.10/site-packages/github/GitCommitVerification.py new file mode 100644 index 0000000000000000000000000000000000000000..24015bd8136ec8a69b1a8aca1365020c9506a520 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/GitCommitVerification.py @@ -0,0 +1,99 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Justin Kufro # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# Copyright 2025 Tim Gates # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from datetime import datetime +from typing import Any + +from github.GithubObject import Attribute, NonCompletableGithubObject, NotSet + + +class GitCommitVerification(NonCompletableGithubObject): + """ + This class represents commit verifications. + + The reference can be found here + https://docs.github.com/en/rest/commits/commits + + The OpenAPI schema can be found at + - /components/schemas/git-commit/properties/verification + + """ + + def _initAttributes(self) -> None: + self._verified: Attribute[bool] = NotSet + self._verified_at: Attribute[datetime] = NotSet + self._reason: Attribute[str] = NotSet + self._signature: Attribute[str] = NotSet + self._payload: Attribute[str] = NotSet + + @property + def verified(self) -> bool: + return self._verified.value + + @property + def verified_at(self) -> datetime: + return self._verified_at.value + + @property + def reason(self) -> str: + return self._reason.value + + @property + def signature(self) -> str: + return self._signature.value + + @property + def payload(self) -> str: + return self._payload.value + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "verified" in attributes: # pragma no branch + self._verified = self._makeBoolAttribute(attributes["verified"]) + if "verified_at" in attributes: # pragma no branch + self._verified_at = self._makeDatetimeAttribute(attributes["verified_at"]) + if "reason" in attributes: # pragma no branch + self._reason = self._makeStringAttribute(attributes["reason"]) + if "signature" in attributes: # pragma no branch + self._signature = self._makeStringAttribute(attributes["signature"]) + if "payload" in attributes: # pragma no branch + self._payload = self._makeStringAttribute(attributes["payload"]) diff --git a/venv/lib/python3.10/site-packages/github/GitObject.py b/venv/lib/python3.10/site-packages/github/GitObject.py new file mode 100644 index 0000000000000000000000000000000000000000..a02a11634c899f0598a50e00ade2fc8aafa7bf7f --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/GitObject.py @@ -0,0 +1,80 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from typing import Any, Dict + +from github.GithubObject import Attribute, NonCompletableGithubObject, NotSet + + +class GitObject(NonCompletableGithubObject): + """ + This class represents GitObjects. + + The OpenAPI schema can be found at + - /components/schemas/git-ref/properties/object + - /components/schemas/git-tag/properties/object + + """ + + def _initAttributes(self) -> None: + self._sha: Attribute[str] = NotSet + self._type: Attribute[str] = NotSet + self._url: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"sha": self._sha.value}) + + @property + def sha(self) -> str: + return self._sha.value + + @property + def type(self) -> str: + return self._type.value + + @property + def url(self) -> str: + return self._url.value + + def _useAttributes(self, attributes: Dict[str, Any]) -> None: + if "sha" in attributes: # pragma no branch + self._sha = self._makeStringAttribute(attributes["sha"]) + if "type" in attributes: # pragma no branch + self._type = self._makeStringAttribute(attributes["type"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) diff --git a/venv/lib/python3.10/site-packages/github/GitRef.py b/venv/lib/python3.10/site-packages/github/GitRef.py new file mode 100644 index 0000000000000000000000000000000000000000..0b24813cb9e0d6ce6cf4bcf73df59312e4d3a92f --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/GitRef.py @@ -0,0 +1,119 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Mark Walker # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from typing import TYPE_CHECKING, Any + +import github.GithubObject +import github.GitObject +from github.GithubObject import Attribute, CompletableGithubObject, NotSet, Opt, is_optional + +if TYPE_CHECKING: + from github.GitObject import GitObject + + +class GitRef(CompletableGithubObject): + """ + This class represents GitRefs. + + The reference can be found here + https://docs.github.com/en/rest/reference/git#references + + The OpenAPI schema can be found at + - /components/schemas/git-ref + + """ + + def _initAttributes(self) -> None: + self._node_id: Attribute[str] = NotSet + self._object: Attribute[GitObject] = NotSet + self._ref: Attribute[str] = NotSet + self._url: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"ref": self._ref.value}) + + @property + def node_id(self) -> str: + self._completeIfNotSet(self._node_id) + return self._node_id.value + + @property + def object(self) -> GitObject: + self._completeIfNotSet(self._object) + return self._object.value + + @property + def ref(self) -> str: + self._completeIfNotSet(self._ref) + return self._ref.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + def delete(self) -> None: + """ + :calls: `DELETE /repos/{owner}/{repo}/git/refs/{ref} `_ + """ + headers, data = self._requester.requestJsonAndCheck("DELETE", self.url) + + def edit(self, sha: str, force: Opt[bool] = NotSet) -> None: + """ + :calls: `PATCH /repos/{owner}/{repo}/git/refs/{ref} `_ + """ + assert isinstance(sha, str), sha + assert is_optional(force, bool), force + post_parameters = NotSet.remove_unset_items({"sha": sha, "force": force}) + headers, data = self._requester.requestJsonAndCheck("PATCH", self.url, input=post_parameters) + self._useAttributes(data) + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "node_id" in attributes: # pragma no branch + self._node_id = self._makeStringAttribute(attributes["node_id"]) + if "object" in attributes: # pragma no branch + self._object = self._makeClassAttribute(github.GitObject.GitObject, attributes["object"]) + if "ref" in attributes: # pragma no branch + self._ref = self._makeStringAttribute(attributes["ref"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) diff --git a/venv/lib/python3.10/site-packages/github/GitRelease.py b/venv/lib/python3.10/site-packages/github/GitRelease.py new file mode 100644 index 0000000000000000000000000000000000000000..11a930adc8dc7c38eafcd386af909643afca259d --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/GitRelease.py @@ -0,0 +1,432 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2013 martinqt # +# Copyright 2014 Vincent Jacques # +# Copyright 2015 Ed Holland # +# Copyright 2016 Benjamin Whitney # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2017 Chris McBride # +# Copyright 2017 Simon # +# Copyright 2018 Daniel Kesler # +# Copyright 2018 Ggicci # +# Copyright 2018 Kuba # +# Copyright 2018 Maarten Fonville # +# Copyright 2018 Shinichi TAMURA # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 edquist # +# Copyright 2018 nurupo # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Alice GIRARD # +# Copyright 2020 Jesse Li # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Mark Walker # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Mikhail f. Shiryaev # +# Copyright 2023 Trim21 # +# Copyright 2023 Wojciech Barczyński <104033489+WojciechBarczynski@users.noreply.github.com># +# Copyright 2024 Benjamin K <53038537+treee111@users.noreply.github.com> # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from datetime import datetime +from os.path import basename +from typing import Any, BinaryIO + +import github.GitReleaseAsset +import github.NamedUser +from github.GithubObject import Attribute, CompletableGithubObject, NotSet, Opt, is_optional +from github.PaginatedList import PaginatedList + +from . import Consts + + +class GitRelease(CompletableGithubObject): + """ + This class represents GitReleases. + + The reference can be found here + https://docs.github.com/en/rest/reference/repos#releases + + The OpenAPI schema can be found at + - /components/schemas/basic-error + - /components/schemas/release + + """ + + def _initAttributes(self) -> None: + self._assets: Attribute[list[github.GitReleaseAsset.GitReleaseAsset]] = NotSet + self._assets_url: Attribute[str] = NotSet + self._author: Attribute[github.NamedUser.NamedUser] = NotSet + self._body: Attribute[str] = NotSet + self._body_html: Attribute[str] = NotSet + self._body_text: Attribute[str] = NotSet + self._created_at: Attribute[datetime] = NotSet + self._discussion_url: Attribute[str] = NotSet + self._documentation_url: Attribute[str] = NotSet + self._draft: Attribute[bool] = NotSet + self._generate_release_notes: Attribute[bool] = NotSet + self._html_url: Attribute[str] = NotSet + self._id: Attribute[int] = NotSet + self._mentions_count: Attribute[int] = NotSet + self._message: Attribute[str] = NotSet + self._name: Attribute[str] = NotSet + self._node_id: Attribute[str] = NotSet + self._prerelease: Attribute[bool] = NotSet + self._published_at: Attribute[datetime] = NotSet + self._reactions: Attribute[dict[str, Any]] = NotSet + self._status: Attribute[str] = NotSet + self._tag_name: Attribute[str] = NotSet + self._tarball_url: Attribute[str] = NotSet + self._target_commitish: Attribute[str] = NotSet + self._title: Attribute[str] = NotSet + self._upload_url: Attribute[str] = NotSet + self._url: Attribute[str] = NotSet + self._zipball_url: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"title": self._title.value}) + + @property + def assets(self) -> list[github.GitReleaseAsset.GitReleaseAsset]: + self._completeIfNotSet(self._assets) + return self._assets.value + + @property + def assets_url(self) -> str: + self._completeIfNotSet(self._assets_url) + return self._assets_url.value + + @property + def author(self) -> github.NamedUser.NamedUser: + self._completeIfNotSet(self._author) + return self._author.value + + @property + def body(self) -> str: + self._completeIfNotSet(self._body) + return self._body.value + + @property + def body_html(self) -> str: + self._completeIfNotSet(self._body_html) + return self._body_html.value + + @property + def body_text(self) -> str: + self._completeIfNotSet(self._body_text) + return self._body_text.value + + @property + def created_at(self) -> datetime: + self._completeIfNotSet(self._created_at) + return self._created_at.value + + @property + def discussion_url(self) -> str: + self._completeIfNotSet(self._discussion_url) + return self._discussion_url.value + + @property + def documentation_url(self) -> str: + self._completeIfNotSet(self._documentation_url) + return self._documentation_url.value + + @property + def draft(self) -> bool: + self._completeIfNotSet(self._draft) + return self._draft.value + + @property + def html_url(self) -> str: + self._completeIfNotSet(self._html_url) + return self._html_url.value + + @property + def id(self) -> int: + self._completeIfNotSet(self._id) + return self._id.value + + @property + def mentions_count(self) -> int: + self._completeIfNotSet(self._mentions_count) + return self._mentions_count.value + + @property + def message(self) -> str: + self._completeIfNotSet(self._message) + return self._message.value + + @property + def name(self) -> str: + self._completeIfNotSet(self._name) + return self._name.value + + @property + def node_id(self) -> str: + self._completeIfNotSet(self._node_id) + return self._node_id.value + + @property + def prerelease(self) -> bool: + self._completeIfNotSet(self._prerelease) + return self._prerelease.value + + @property + def published_at(self) -> datetime: + self._completeIfNotSet(self._published_at) + return self._published_at.value + + @property + def reactions(self) -> dict[str, Any]: + self._completeIfNotSet(self._reactions) + return self._reactions.value + + @property + def status(self) -> str: + self._completeIfNotSet(self._status) + return self._status.value + + @property + def tag_name(self) -> str: + self._completeIfNotSet(self._tag_name) + return self._tag_name.value + + @property + def tarball_url(self) -> str: + self._completeIfNotSet(self._tarball_url) + return self._tarball_url.value + + @property + def target_commitish(self) -> str: + self._completeIfNotSet(self._target_commitish) + return self._target_commitish.value + + @property + def title(self) -> str: + self._completeIfNotSet(self._title) + return self._title.value + + @property + def upload_url(self) -> str: + self._completeIfNotSet(self._upload_url) + return self._upload_url.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + @property + def zipball_url(self) -> str: + self._completeIfNotSet(self._zipball_url) + return self._zipball_url.value + + def delete_release(self) -> None: + """ + :calls: `DELETE /repos/{owner}/{repo}/releases/{release_id} `_ + """ + headers, data = self._requester.requestJsonAndCheck("DELETE", self.url) + + def update_release( + self, + name: str, + message: str, + draft: bool = False, + prerelease: bool = False, + tag_name: Opt[str] = NotSet, + target_commitish: Opt[str] = NotSet, + make_latest: Opt[str] = NotSet, + discussion_category_name: Opt[str] = NotSet, + ) -> GitRelease: + """ + :calls: `PATCH /repos/{owner}/{repo}/releases/{release_id} `_ + """ + assert isinstance(name, str), name + assert isinstance(message, str), message + assert isinstance(draft, bool), draft + assert isinstance(prerelease, bool), prerelease + assert is_optional(tag_name, str), "tag_name must be a str/unicode object" + assert is_optional(target_commitish, str), "target_commitish must be a str/unicode object" + assert make_latest in ["true", "false", "legacy", NotSet], make_latest + assert is_optional(discussion_category_name, str), discussion_category_name + # default tag_name with instance attribute if not given to the method + if tag_name is NotSet: + tag_name = self.tag_name + post_parameters = { + "tag_name": tag_name, + "name": name, + "body": message, + "draft": draft, + "prerelease": prerelease, + } + # Do not set target_commitish to self.target_commitish when omitted, just don't send it + # altogether in that case, in order to match the Github API behaviour. Only send it when set. + if target_commitish is not NotSet: + post_parameters["target_commitish"] = target_commitish + if make_latest is not NotSet: + post_parameters["make_latest"] = make_latest + if discussion_category_name is not NotSet: + post_parameters["discussion_category_name"] = discussion_category_name + headers, data = self._requester.requestJsonAndCheck("PATCH", self.url, input=post_parameters) + return github.GitRelease.GitRelease(self._requester, headers, data, completed=True) + + def upload_asset( + self, path: str, label: str = "", content_type: Opt[str] = NotSet, name: Opt[str] = NotSet + ) -> github.GitReleaseAsset.GitReleaseAsset: + """ + :calls: `POST https:///repos/{owner}/{repo}/releases/{release_id}/assets `_ + """ + assert isinstance(path, str), path + assert isinstance(label, str), label + assert name is NotSet or isinstance(name, str), name + + post_parameters: dict[str, Any] = {"label": label} + if name is NotSet: + post_parameters["name"] = basename(path) + else: + post_parameters["name"] = name + headers: dict[str, Any] = {} + if content_type is not NotSet: + headers["Content-Type"] = content_type + resp_headers, data = self._requester.requestBlobAndCheck( + "POST", + self.upload_url.split("{?")[0], + parameters=post_parameters, + headers=headers, + input=path, + ) + return github.GitReleaseAsset.GitReleaseAsset(self._requester, resp_headers, data, completed=True) + + def upload_asset_from_memory( + self, + file_like: BinaryIO, + file_size: int, + name: str, + content_type: Opt[str] = NotSet, + label: str = "", + ) -> github.GitReleaseAsset.GitReleaseAsset: + """ + Uploads an asset. + + Unlike ``upload_asset()`` this method allows you to pass in a file-like object to upload. + Note that this method is more strict and requires you to specify the ``name``, since there's no file name to infer these from. + :calls: `POST https:///repos/{owner}/{repo}/releases/{release_id}/assets `_ + :param file_like: binary file-like object, such as those returned by ``open("file_name", "rb")``. At the very minimum, this object must implement ``read()``. + :param file_size: int, size in bytes of ``file_like`` + + """ + assert isinstance(name, str), name + assert isinstance(file_size, int), file_size + assert isinstance(label, str), label + + post_parameters = {"label": label, "name": name} + content_type = content_type if content_type is not NotSet else Consts.defaultMediaType + headers = {"Content-Type": content_type, "Content-Length": str(file_size)} + + resp_headers, data = self._requester.requestMemoryBlobAndCheck( + "POST", + self.upload_url.split("{?")[0], + parameters=post_parameters, + headers=headers, + file_like=file_like, + ) + return github.GitReleaseAsset.GitReleaseAsset(self._requester, resp_headers, data, completed=True) + + def get_assets(self) -> PaginatedList[github.GitReleaseAsset.GitReleaseAsset]: + """ + :calls: `GET /repos/{owner}/{repo}/releases/{release_id}/assets `_ + """ + return github.PaginatedList.PaginatedList( + github.GitReleaseAsset.GitReleaseAsset, + self._requester, + f"{self.url}/assets", + None, + ) + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "assets" in attributes: + self._assets = self._makeListOfClassesAttribute( + github.GitReleaseAsset.GitReleaseAsset, attributes["assets"] + ) + if "assets_url" in attributes: # pragma no branch + self._assets_url = self._makeStringAttribute(attributes["assets_url"]) + if "author" in attributes: + self._author = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["author"]) + if "body" in attributes: + self._body = self._makeStringAttribute(attributes["body"]) + if "body_html" in attributes: # pragma no branch + self._body_html = self._makeStringAttribute(attributes["body_html"]) + if "body_text" in attributes: # pragma no branch + self._body_text = self._makeStringAttribute(attributes["body_text"]) + if "created_at" in attributes: + self._created_at = self._makeDatetimeAttribute(attributes["created_at"]) + if "discussion_url" in attributes: # pragma no branch + self._discussion_url = self._makeStringAttribute(attributes["discussion_url"]) + if "documentation_url" in attributes: # pragma no branch + self._documentation_url = self._makeStringAttribute(attributes["documentation_url"]) + if "draft" in attributes: + self._draft = self._makeBoolAttribute(attributes["draft"]) + if "generate_release_notes" in attributes: + self._generate_release_notes = self._makeBoolAttribute(attributes["generate_release_notes"]) + if "html_url" in attributes: + self._html_url = self._makeStringAttribute(attributes["html_url"]) + if "id" in attributes: + self._id = self._makeIntAttribute(attributes["id"]) + if "mentions_count" in attributes: # pragma no branch + self._mentions_count = self._makeIntAttribute(attributes["mentions_count"]) + if "message" in attributes: # pragma no branch + self._message = self._makeStringAttribute(attributes["message"]) + if "name" in attributes: + self._title = self._makeStringAttribute(attributes["name"]) + if "node_id" in attributes: # pragma no branch + self._node_id = self._makeStringAttribute(attributes["node_id"]) + if "prerelease" in attributes: + self._prerelease = self._makeBoolAttribute(attributes["prerelease"]) + if "published_at" in attributes: + self._published_at = self._makeDatetimeAttribute(attributes["published_at"]) + if "reactions" in attributes: # pragma no branch + self._reactions = self._makeDictAttribute(attributes["reactions"]) + if "status" in attributes: # pragma no branch + self._status = self._makeStringAttribute(attributes["status"]) + if "tag_name" in attributes: + self._tag_name = self._makeStringAttribute(attributes["tag_name"]) + if "tarball_url" in attributes: + self._tarball_url = self._makeStringAttribute(attributes["tarball_url"]) + if "target_commitish" in attributes: + self._target_commitish = self._makeStringAttribute(attributes["target_commitish"]) + if "upload_url" in attributes: + self._upload_url = self._makeStringAttribute(attributes["upload_url"]) + if "url" in attributes: + self._url = self._makeStringAttribute(attributes["url"]) + if "zipball_url" in attributes: + self._zipball_url = self._makeStringAttribute(attributes["zipball_url"]) diff --git a/venv/lib/python3.10/site-packages/github/GitReleaseAsset.py b/venv/lib/python3.10/site-packages/github/GitReleaseAsset.py new file mode 100644 index 0000000000000000000000000000000000000000..c2a3f6e80f043bac33c6e721c9dbe31e6f01ac84 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/GitReleaseAsset.py @@ -0,0 +1,202 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2017 Chris McBride # +# Copyright 2017 Simon # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# Copyright 2025 Neel Malik <41765022+neel-m@users.noreply.github.com> # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from datetime import datetime +from typing import Any, Iterator + +import github.NamedUser +from github.GithubObject import Attribute, CompletableGithubObject, NotSet + + +class GitReleaseAsset(CompletableGithubObject): + """ + This class represents GitReleaseAssets. + + The reference can be found here + https://docs.github.com/en/rest/reference/repos#releases + + The OpenAPI schema can be found at + - /components/schemas/release-asset + + """ + + def _initAttributes(self) -> None: + self._browser_download_url: Attribute[str] = NotSet + self._content_type: Attribute[str] = NotSet + self._created_at: Attribute[datetime] = NotSet + self._download_count: Attribute[int] = NotSet + self._id: Attribute[int] = NotSet + self._label: Attribute[str] = NotSet + self._name: Attribute[str] = NotSet + self._node_id: Attribute[str] = NotSet + self._size: Attribute[int] = NotSet + self._state: Attribute[str] = NotSet + self._updated_at: Attribute[datetime] = NotSet + self._uploader: Attribute[github.NamedUser.NamedUser] = NotSet + self._url: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"url": self.url}) + + @property + def browser_download_url(self) -> str: + self._completeIfNotSet(self._browser_download_url) + return self._browser_download_url.value + + @property + def content_type(self) -> str: + self._completeIfNotSet(self._content_type) + return self._content_type.value + + @property + def created_at(self) -> datetime: + self._completeIfNotSet(self._created_at) + return self._created_at.value + + @property + def download_count(self) -> int: + self._completeIfNotSet(self._download_count) + return self._download_count.value + + @property + def id(self) -> int: + self._completeIfNotSet(self._id) + return self._id.value + + @property + def label(self) -> str: + self._completeIfNotSet(self._label) + return self._label.value + + @property + def name(self) -> str: + self._completeIfNotSet(self._name) + return self._name.value + + @property + def node_id(self) -> str: + self._completeIfNotSet(self._node_id) + return self._node_id.value + + @property + def size(self) -> int: + self._completeIfNotSet(self._size) + return self._size.value + + @property + def state(self) -> str: + self._completeIfNotSet(self._state) + return self._state.value + + @property + def updated_at(self) -> datetime: + self._completeIfNotSet(self._updated_at) + return self._updated_at.value + + @property + def uploader(self) -> github.NamedUser.NamedUser: + self._completeIfNotSet(self._uploader) + return self._uploader.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + def delete_asset(self) -> bool: + """ + Delete asset from the release. + """ + headers, data = self._requester.requestJsonAndCheck("DELETE", self.url) + return True + + def download_asset( + self, path: None | str = None, chunk_size: int | None = 1 + ) -> tuple[int, dict[str, Any], Iterator] | None: + """ + Download asset to the path or return an iterator for the stream. + """ + if path is None: + return self._requester.getStream(self.url, chunk_size=chunk_size) + self._requester.getFile(self.url, path=path, chunk_size=chunk_size) + return None + + def update_asset(self, name: str, label: str = "") -> GitReleaseAsset: + """ + Update asset metadata. + """ + assert isinstance(name, str), name + assert isinstance(label, str), label + post_parameters = {"name": name, "label": label} + headers, data = self._requester.requestJsonAndCheck("PATCH", self.url, input=post_parameters) + return GitReleaseAsset(self._requester, headers, data, completed=True) + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "browser_download_url" in attributes: # pragma no branch + self._browser_download_url = self._makeStringAttribute(attributes["browser_download_url"]) + if "content_type" in attributes: # pragma no branch + self._content_type = self._makeStringAttribute(attributes["content_type"]) + if "created_at" in attributes: # pragma no branch + self._created_at = self._makeDatetimeAttribute(attributes["created_at"]) + if "download_count" in attributes: # pragma no branch + self._download_count = self._makeIntAttribute(attributes["download_count"]) + if "id" in attributes: # pragma no branch + self._id = self._makeIntAttribute(attributes["id"]) + if "label" in attributes: # pragma no branch + self._label = self._makeStringAttribute(attributes["label"]) + if "name" in attributes: # pragma no branch + self._name = self._makeStringAttribute(attributes["name"]) + if "node_id" in attributes: # pragma no branch + self._node_id = self._makeStringAttribute(attributes["node_id"]) + if "size" in attributes: # pragma no branch + self._size = self._makeIntAttribute(attributes["size"]) + if "state" in attributes: # pragma no branch + self._state = self._makeStringAttribute(attributes["state"]) + if "updated_at" in attributes: # pragma no branch + self._updated_at = self._makeDatetimeAttribute(attributes["updated_at"]) + if "uploader" in attributes: # pragma no branch + self._uploader = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["uploader"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) diff --git a/venv/lib/python3.10/site-packages/github/GitTag.py b/venv/lib/python3.10/site-packages/github/GitTag.py new file mode 100644 index 0000000000000000000000000000000000000000..f70b655b77d9551f9657de74b9a51bb5f8e54f49 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/GitTag.py @@ -0,0 +1,141 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from typing import TYPE_CHECKING, Any + +import github.GitAuthor +import github.GitCommitVerification +import github.GithubObject +import github.GitObject +import github.GitTreeElement +from github.GithubObject import Attribute, CompletableGithubObject, NotSet + +if TYPE_CHECKING: + from github.GitAuthor import GitAuthor + from github.GitCommitVerification import GitCommitVerification + from github.GitObject import GitObject + + +class GitTag(CompletableGithubObject): + """ + This class represents GitTags. + + The reference can be found here + https://docs.github.com/en/rest/reference/git#tags + + The OpenAPI schema can be found at + - /components/schemas/git-tag + + """ + + def _initAttributes(self) -> None: + self._message: Attribute[str] = NotSet + self._node_id: Attribute[str] = NotSet + self._object: Attribute[GitObject] = NotSet + self._sha: Attribute[str] = NotSet + self._tag: Attribute[str] = NotSet + self._tagger: Attribute[GitAuthor] = NotSet + self._url: Attribute[str] = NotSet + self._verification: Attribute[GitCommitVerification] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"sha": self._sha.value, "tag": self._tag.value}) + + @property + def message(self) -> str: + self._completeIfNotSet(self._message) + return self._message.value + + @property + def node_id(self) -> str: + self._completeIfNotSet(self._node_id) + return self._node_id.value + + @property + def object(self) -> GitObject: + self._completeIfNotSet(self._object) + return self._object.value + + @property + def sha(self) -> str: + self._completeIfNotSet(self._sha) + return self._sha.value + + @property + def tag(self) -> str: + self._completeIfNotSet(self._tag) + return self._tag.value + + @property + def tagger(self) -> GitAuthor: + self._completeIfNotSet(self._tagger) + return self._tagger.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + @property + def verification(self) -> GitCommitVerification: + self._completeIfNotSet(self._verification) + return self._verification.value + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "message" in attributes: # pragma no branch + self._message = self._makeStringAttribute(attributes["message"]) + if "node_id" in attributes: # pragma no branch + self._node_id = self._makeStringAttribute(attributes["node_id"]) + if "object" in attributes: # pragma no branch + self._object = self._makeClassAttribute(github.GitObject.GitObject, attributes["object"]) + if "sha" in attributes: # pragma no branch + self._sha = self._makeStringAttribute(attributes["sha"]) + if "tag" in attributes: # pragma no branch + self._tag = self._makeStringAttribute(attributes["tag"]) + if "tagger" in attributes: # pragma no branch + self._tagger = self._makeClassAttribute(github.GitAuthor.GitAuthor, attributes["tagger"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) + if "verification" in attributes: # pragma no branch + self._verification = self._makeClassAttribute( + github.GitCommitVerification.GitCommitVerification, attributes["verification"] + ) diff --git a/venv/lib/python3.10/site-packages/github/GitTree.py b/venv/lib/python3.10/site-packages/github/GitTree.py new file mode 100644 index 0000000000000000000000000000000000000000..ccfed405c8dad9980f8b616d2f8ec31244e67714 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/GitTree.py @@ -0,0 +1,109 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from typing import TYPE_CHECKING, Any + +import github.GitTreeElement +from github.GithubObject import Attribute, CompletableGithubObject, NotSet + +if TYPE_CHECKING: + from github.GitTreeElement import GitTreeElement + + +class GitTree(CompletableGithubObject): + """ + This class represents GitTrees. + + The reference can be found here + https://docs.github.com/en/rest/reference/git#trees + + The OpenAPI schema can be found at + - /components/schemas/commit-search-result-item/properties/commit/properties/tree + - /components/schemas/commit/properties/commit/properties/tree + - /components/schemas/file-commit/properties/commit/properties/tree + - /components/schemas/git-commit/properties/tree + - /components/schemas/git-tree + + """ + + def _initAttributes(self) -> None: + self._sha: Attribute[str] = NotSet + self._tree: Attribute[list[GitTreeElement]] = NotSet + self._truncated: Attribute[bool] = NotSet + self._url: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"sha": self._sha.value}) + + @property + def _identity(self) -> str: + return self.sha + + @property + def sha(self) -> str: + self._completeIfNotSet(self._sha) + return self._sha.value + + @property + def tree(self) -> list[GitTreeElement]: + self._completeIfNotSet(self._tree) + return self._tree.value + + @property + def truncated(self) -> bool: + self._completeIfNotSet(self._truncated) + return self._truncated.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "sha" in attributes: # pragma no branch + self._sha = self._makeStringAttribute(attributes["sha"]) + if "tree" in attributes: # pragma no branch + self._tree = self._makeListOfClassesAttribute(github.GitTreeElement.GitTreeElement, attributes["tree"]) + if "truncated" in attributes: # pragma no branch + self._truncated = self._makeBoolAttribute(attributes["truncated"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) diff --git a/venv/lib/python3.10/site-packages/github/GitTreeElement.py b/venv/lib/python3.10/site-packages/github/GitTreeElement.py new file mode 100644 index 0000000000000000000000000000000000000000..b2df181f7cc3cee05d0d68b249bccaea60a34d2e --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/GitTreeElement.py @@ -0,0 +1,100 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from typing import Any, Dict + +from github.GithubObject import Attribute, NonCompletableGithubObject, NotSet + + +class GitTreeElement(NonCompletableGithubObject): + """ + This class represents GitTreeElements. + + The OpenAPI schema can be found at + - /components/schemas/git-tree/properties/tree/items + + """ + + def _initAttributes(self) -> None: + self._mode: Attribute[str] = NotSet + self._path: Attribute[str] = NotSet + self._sha: Attribute[str] = NotSet + self._size: Attribute[int] = NotSet + self._type: Attribute[str] = NotSet + self._url: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"sha": self._sha.value, "path": self._path.value}) + + @property + def mode(self) -> str: + return self._mode.value + + @property + def path(self) -> str: + return self._path.value + + @property + def sha(self) -> str: + return self._sha.value + + @property + def size(self) -> int: + return self._size.value + + @property + def type(self) -> str: + return self._type.value + + @property + def url(self) -> str: + return self._url.value + + def _useAttributes(self, attributes: Dict[str, Any]) -> None: + if "mode" in attributes: # pragma no branch + self._mode = self._makeStringAttribute(attributes["mode"]) + if "path" in attributes: # pragma no branch + self._path = self._makeStringAttribute(attributes["path"]) + if "sha" in attributes: # pragma no branch + self._sha = self._makeStringAttribute(attributes["sha"]) + if "size" in attributes: # pragma no branch + self._size = self._makeIntAttribute(attributes["size"]) + if "type" in attributes: # pragma no branch + self._type = self._makeStringAttribute(attributes["type"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) diff --git a/venv/lib/python3.10/site-packages/github/GithubApp.py b/venv/lib/python3.10/site-packages/github/GithubApp.py new file mode 100644 index 0000000000000000000000000000000000000000..5ce15ca17ac8c33e8f1a28d98db0b02c227ae3b3 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/GithubApp.py @@ -0,0 +1,217 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2015 Matt Babineau # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Martijn Koster # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Colby Gallup # +# Copyright 2020 Mahesh Raju # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from datetime import datetime +from typing import Any + +import github.GithubObject +import github.NamedUser +from github.GithubObject import Attribute, CompletableGithubObject, NotSet + + +class GithubApp(CompletableGithubObject): + """ + This class represents github apps. + + The reference can be found here + https://docs.github.com/en/rest/reference/apps + + The OpenAPI schema can be found at + - /components/schemas/integration + - /components/schemas/nullable-integration + + """ + + def _initAttributes(self) -> None: + self._client_id: Attribute[str] = NotSet + self._client_secret: Attribute[str] = NotSet + self._created_at: Attribute[datetime] = NotSet + self._description: Attribute[str] = NotSet + self._events: Attribute[list[str]] = NotSet + self._external_url: Attribute[str] = NotSet + self._html_url: Attribute[str] = NotSet + self._id: Attribute[int] = NotSet + self._installations_count: Attribute[int] = NotSet + self._name: Attribute[str] = NotSet + self._node_id: Attribute[str] = NotSet + self._owner: Attribute[github.NamedUser.NamedUser] = NotSet + self._pem: Attribute[str] = NotSet + self._permissions: Attribute[dict[str, str]] = NotSet + self._slug: Attribute[str] = NotSet + self._updated_at: Attribute[datetime] = NotSet + self._url: Attribute[str] = NotSet + self._webhook_secret: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"id": self._id.value, "url": self._url.value}) + + @property + def client_id(self) -> str: + self._completeIfNotSet(self._client_id) + return self._client_id.value + + @property + def client_secret(self) -> str: + self._completeIfNotSet(self._client_secret) + return self._client_secret.value + + @property + def created_at(self) -> datetime: + self._completeIfNotSet(self._created_at) + return self._created_at.value + + @property + def description(self) -> str: + self._completeIfNotSet(self._description) + return self._description.value + + @property + def events(self) -> list[str]: + self._completeIfNotSet(self._events) + return self._events.value + + @property + def external_url(self) -> str: + self._completeIfNotSet(self._external_url) + return self._external_url.value + + @property + def html_url(self) -> str: + self._completeIfNotSet(self._html_url) + return self._html_url.value + + @property + def id(self) -> int: + self._completeIfNotSet(self._id) + return self._id.value + + @property + def installations_count(self) -> int: + self._completeIfNotSet(self._installations_count) + return self._installations_count.value + + @property + def name(self) -> str: + self._completeIfNotSet(self._name) + return self._name.value + + @property + def node_id(self) -> str: + self._completeIfNotSet(self._node_id) + return self._node_id.value + + @property + def owner(self) -> github.NamedUser.NamedUser: + self._completeIfNotSet(self._owner) + return self._owner.value + + @property + def pem(self) -> str: + self._completeIfNotSet(self._pem) + return self._pem.value + + @property + def permissions(self) -> dict[str, str]: + self._completeIfNotSet(self._permissions) + return self._permissions.value + + @property + def slug(self) -> str: + self._completeIfNotSet(self._slug) + return self._slug.value + + @property + def updated_at(self) -> datetime: + self._completeIfNotSet(self._updated_at) + return self._updated_at.value + + @property + def url(self) -> str: + return self._url.value + + @property + def webhook_secret(self) -> str: + self._completeIfNotSet(self._webhook_secret) + return self._webhook_secret.value + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "client_id" in attributes: # pragma no branch + self._client_id = self._makeStringAttribute(attributes["client_id"]) + if "client_secret" in attributes: # pragma no branch + self._client_secret = self._makeStringAttribute(attributes["client_secret"]) + if "created_at" in attributes: # pragma no branch + self._created_at = self._makeDatetimeAttribute(attributes["created_at"]) + if "description" in attributes: # pragma no branch + self._description = self._makeStringAttribute(attributes["description"]) + if "events" in attributes: # pragma no branch + self._events = self._makeListOfStringsAttribute(attributes["events"]) + if "external_url" in attributes: # pragma no branch + self._external_url = self._makeStringAttribute(attributes["external_url"]) + if "html_url" in attributes: # pragma no branch + self._html_url = self._makeStringAttribute(attributes["html_url"]) + if "id" in attributes: # pragma no branch + self._id = self._makeIntAttribute(attributes["id"]) + if "installations_count" in attributes: # pragma no branch + self._installations_count = self._makeIntAttribute(attributes["installations_count"]) + if "name" in attributes: # pragma no branch + self._name = self._makeStringAttribute(attributes["name"]) + if "node_id" in attributes: # pragma no branch + self._node_id = self._makeStringAttribute(attributes["node_id"]) + if "owner" in attributes: # pragma no branch + self._owner = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["owner"]) + if "pem" in attributes: # pragma no branch + self._pem = self._makeStringAttribute(attributes["pem"]) + if "permissions" in attributes: # pragma no branch + self._permissions = self._makeDictAttribute(attributes["permissions"]) + if "slug" in attributes: # pragma no branch + self._slug = self._makeStringAttribute(attributes["slug"]) + self._url = self._makeStringAttribute(f"/apps/{attributes['slug']}") + if "updated_at" in attributes: # pragma no branch + self._updated_at = self._makeDatetimeAttribute(attributes["updated_at"]) + if "url" in attributes: + self._url = self._makeStringAttribute(attributes["url"]) + if "webhook_secret" in attributes: # pragma no branch + self._webhook_secret = self._makeStringAttribute(attributes["webhook_secret"]) diff --git a/venv/lib/python3.10/site-packages/github/GithubException.py b/venv/lib/python3.10/site-packages/github/GithubException.py new file mode 100644 index 0000000000000000000000000000000000000000..d01e2d64933ac802d5dc6fefdfd5f841173b0801 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/GithubException.py @@ -0,0 +1,191 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Cameron White # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Peter Buckley # +# Copyright 2016 humbug # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Steve Kowalik # +# Copyright 2022 Liuyang Wan # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +import json +from typing import Any, Dict, List, Optional, Tuple, Type, Union + + +class GithubException(Exception): + """ + Error handling in PyGithub is done with exceptions. This class is the base of all exceptions raised by PyGithub + (but :class:`github.GithubException.BadAttributeException`). + + Some other types of exceptions might be raised by underlying libraries, for example for network-related issues. + + """ + + def __init__( + self, + status: int, + data: Any = None, + headers: Optional[Dict[str, str]] = None, + message: Optional[str] = None, + ): + super().__init__() + self.__status = status + self.__data = data + self.__headers = headers + self.__message = message + self.args = (status, data, headers, message) + + @property + def message(self) -> Optional[str]: + return self.__message + + @property + def status(self) -> int: + """ + The status returned by the Github API. + """ + return self.__status + + @property + def data(self) -> Any: + """ + The (decoded) data returned by the Github API. + """ + return self.__data + + @property + def headers(self) -> Optional[Dict[str, str]]: + """ + The headers returned by the Github API. + """ + return self.__headers + + def __repr__(self) -> str: + return f"{self.__class__.__name__}({self.__str__()})" + + def __str__(self) -> str: + if self.__message: + msg = f"{self.__message}: {self.status}" + else: + msg = f"{self.status}" + + if self.data is not None: + msg += " " + json.dumps(self.data) + + return msg + + +class BadCredentialsException(GithubException): + """ + Exception raised in case of bad credentials (when Github API replies with a 401 or 403 HTML status) + """ + + +class UnknownObjectException(GithubException): + """ + Exception raised when a non-existing object is requested (when Github API replies with a 404 HTML status) + """ + + +class BadUserAgentException(GithubException): + """ + Exception raised when request is sent with a bad user agent header (when Github API replies with a 403 bad user + agent HTML status) + """ + + +class RateLimitExceededException(GithubException): + """ + Exception raised when the rate limit is exceeded (when Github API replies with a 403 rate limit exceeded HTML + status) + """ + + +class BadAttributeException(Exception): + """ + Exception raised when Github returns an attribute with the wrong type. + """ + + def __init__( + self, + actualValue: Any, + expectedType: Union[ + Dict[Tuple[Type[str], Type[str]], Type[dict]], + Tuple[Type[str], Type[str]], + List[Type[dict]], + List[Tuple[Type[str], Type[str]]], + ], + transformationException: Optional[Exception], + ): + self.__actualValue = actualValue + self.__expectedType = expectedType + self.__transformationException = transformationException + + @property + def actual_value(self) -> Any: + """ + The value returned by Github. + """ + return self.__actualValue + + @property + def expected_type( + self, + ) -> Union[ + List[Type[dict]], + Tuple[Type[str], Type[str]], + Dict[Tuple[Type[str], Type[str]], Type[dict]], + List[Tuple[Type[str], Type[str]]], + ]: + """ + The type PyGithub expected. + """ + return self.__expectedType + + @property + def transformation_exception(self) -> Optional[Exception]: + """ + The exception raised when PyGithub tried to parse the value. + """ + return self.__transformationException + + +class TwoFactorException(GithubException): + """ + Exception raised when Github requires a onetime password for two-factor authentication. + """ + + +class IncompletableObject(GithubException): + """ + Exception raised when we can not request an object from Github because the data returned did not include a URL. + """ diff --git a/venv/lib/python3.10/site-packages/github/GithubIntegration.py b/venv/lib/python3.10/site-packages/github/GithubIntegration.py new file mode 100644 index 0000000000000000000000000000000000000000..ca9091fed3912438ad39cabd9c7b4b129a166a8d --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/GithubIntegration.py @@ -0,0 +1,342 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2023 Denis Blanchette # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Hemslo Wang # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Mark Amery # +# Copyright 2023 Trim21 # +# Copyright 2023 chantra # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2024 Min RK # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +import urllib.parse +import warnings +from typing import Any + +import deprecated +import urllib3 +from urllib3 import Retry + +import github +from github import Consts +from github.Auth import AppAuth +from github.GithubApp import GithubApp +from github.GithubException import GithubException +from github.Installation import Installation +from github.InstallationAuthorization import InstallationAuthorization +from github.PaginatedList import PaginatedList +from github.Requester import Requester + + +class GithubIntegration: + """ + Main class to obtain tokens for a GitHub integration. + """ + + # keep non-deprecated arguments in-sync with Requester + # v3: remove integration_id, private_key, jwt_expiry, jwt_issued_at and jwt_algorithm + # v3: move auth to the front of arguments + # v3: move * before first argument so all arguments must be named, + # allows to reorder / add new arguments / remove deprecated arguments without breaking user code + # added here to force named parameters because new parameters have been added + auth: AppAuth + base_url: str + __requester: Requester + + def __init__( + self, + integration_id: int | str | None = None, + private_key: str | None = None, + base_url: str = Consts.DEFAULT_BASE_URL, + *, + timeout: int = Consts.DEFAULT_TIMEOUT, + user_agent: str = Consts.DEFAULT_USER_AGENT, + per_page: int = Consts.DEFAULT_PER_PAGE, + verify: bool | str = True, + retry: int | Retry | None = None, + pool_size: int | None = None, + seconds_between_requests: float | None = Consts.DEFAULT_SECONDS_BETWEEN_REQUESTS, + seconds_between_writes: float | None = Consts.DEFAULT_SECONDS_BETWEEN_WRITES, + jwt_expiry: int = Consts.DEFAULT_JWT_EXPIRY, + jwt_issued_at: int = Consts.DEFAULT_JWT_ISSUED_AT, + jwt_algorithm: str = Consts.DEFAULT_JWT_ALGORITHM, + auth: AppAuth | None = None, + # v3: set lazy = True as the default + lazy: bool = False, + ) -> None: + """ + :param integration_id: int deprecated, use auth=github.Auth.AppAuth(...) instead + :param private_key: string deprecated, use auth=github.Auth.AppAuth(...) instead + :param base_url: string + :param timeout: integer + :param user_agent: string + :param per_page: int + :param verify: boolean or string + :param retry: int or urllib3.util.retry.Retry object + :param pool_size: int + :param seconds_between_requests: float + :param seconds_between_writes: float + :param jwt_expiry: int deprecated, use auth=github.Auth.AppAuth(...) instead + :param jwt_issued_at: int deprecated, use auth=github.Auth.AppAuth(...) instead + :param jwt_algorithm: string deprecated, use auth=github.Auth.AppAuth(...) instead + :param auth: authentication method + :param lazy: completable objects created from this instance are lazy, + as well as completable objects created from those, and so on + """ + if integration_id is not None: + assert isinstance(integration_id, (int, str)), integration_id + if private_key is not None: + assert isinstance(private_key, str), "supplied private key should be a string" + assert isinstance(base_url, str), base_url + assert isinstance(timeout, int), timeout + assert user_agent is None or isinstance(user_agent, str), user_agent + assert isinstance(per_page, int), per_page + assert isinstance(verify, (bool, str)), verify + assert retry is None or isinstance(retry, int) or isinstance(retry, urllib3.util.Retry), retry + assert pool_size is None or isinstance(pool_size, int), pool_size + assert seconds_between_requests is None or seconds_between_requests >= 0 + assert seconds_between_writes is None or seconds_between_writes >= 0 + assert isinstance(jwt_expiry, int), jwt_expiry + assert Consts.MIN_JWT_EXPIRY <= jwt_expiry <= Consts.MAX_JWT_EXPIRY, jwt_expiry + assert isinstance(jwt_issued_at, int) + assert isinstance(lazy, bool), lazy + + self.base_url = base_url + + if ( + integration_id is not None + or private_key is not None + or jwt_expiry != Consts.DEFAULT_JWT_EXPIRY + or jwt_issued_at != Consts.DEFAULT_JWT_ISSUED_AT + or jwt_algorithm != Consts.DEFAULT_JWT_ALGORITHM + ): + warnings.warn( + "Arguments integration_id, private_key, jwt_expiry, jwt_issued_at and jwt_algorithm are deprecated, " + "please use auth=github.Auth.AppAuth(...) instead", + category=DeprecationWarning, + ) + if jwt_algorithm != Consts.DEFAULT_JWT_ALGORITHM: + auth = AppAuth( + integration_id, # type: ignore + private_key=None, # type: ignore + sign_func=AppAuth.create_jwt_sign(private_key, jwt_algorithm), # type: ignore + jwt_expiry=jwt_expiry, + jwt_issued_at=jwt_issued_at, + ) + else: + auth = AppAuth( + integration_id, # type: ignore + private_key, # type: ignore + jwt_expiry=jwt_expiry, + jwt_issued_at=jwt_issued_at, + ) + + assert isinstance( + auth, AppAuth + ), f"GithubIntegration requires github.Auth.AppAuth authentication, not {type(auth)}" + + self.auth = auth + + self.__requester = Requester( + auth=auth, + base_url=self.base_url, + timeout=timeout, + user_agent=user_agent, + per_page=per_page, + verify=verify, + retry=retry, + pool_size=pool_size, + seconds_between_requests=seconds_between_requests, + seconds_between_writes=seconds_between_writes, + lazy=lazy, + ) + + def withLazy(self, lazy: bool) -> GithubIntegration: + """ + Create a GithubIntegration instance with identical configuration but the given lazy setting. + + :param lazy: completable objects created from this instance are lazy, as well as completable objects created + from those, and so on + :return: new Github instance + + """ + kwargs = self.__requester.kwargs + kwargs.update(lazy=lazy) + return GithubIntegration(**kwargs) + + def close(self) -> None: + """Close connections to the server. Alternatively, use the + GithubIntegration object as a context manager: + + .. code-block:: python + + with github.GithubIntegration(...) as gi: + # do something + """ + self.__requester.close() + + def __enter__(self) -> GithubIntegration: + return self + + def __exit__(self, exc_type: Any, exc_val: Any, exc_tb: Any) -> None: + self.close() + + def get_github_for_installation( + self, installation_id: int, token_permissions: dict[str, str] | None = None + ) -> github.Github: + # The installation has to authenticate as an installation, not an app + auth = self.auth.get_installation_auth(installation_id, token_permissions, self.__requester) + return github.Github(**self.__requester.withAuth(auth).kwargs) + + @property + def requester(self) -> Requester: + """ + Return my Requester object. + + For example, to make requests to API endpoints not yet supported by PyGitHub. + + """ + return self.__requester + + def _get_headers(self) -> dict[str, str]: + """ + Get headers for the requests. + """ + return { + "Accept": Consts.mediaTypeIntegrationPreview, + } + + def _get_installed_app(self, url: str) -> Installation: + """ + Get installation for the given URL. + """ + headers, response = self.__requester.requestJsonAndCheck("GET", url, headers=self._get_headers()) + + return Installation( + requester=self.__requester, + headers=headers, + attributes=response, + ) + + @deprecated.deprecated( + "Use github.Github(auth=github.Auth.AppAuth), github.Auth.AppAuth.token or github.Auth.AppAuth.create_jwt(expiration) instead" + ) + def create_jwt(self, expiration: int | None = None) -> str: + """ + Create a signed JWT + https://docs.github.com/en/developers/apps/building-github-apps/authenticating-with-github-apps#authenticating-as-a-github-app + """ + return self.auth.create_jwt(expiration) + + def get_access_token( + self, installation_id: int, permissions: dict[str, str] | None = None + ) -> InstallationAuthorization: + """ + :calls: `POST /app/installations/{installation_id}/access_tokens ` + """ + if permissions is None: + permissions = {} + + if not isinstance(permissions, dict): + raise GithubException(status=400, data={"message": "Invalid permissions"}, headers=None) + + body = {"permissions": permissions} + headers, response = self.__requester.requestJsonAndCheck( + "POST", + f"/app/installations/{installation_id}/access_tokens", + headers=self._get_headers(), + input=body, + ) + + return InstallationAuthorization( + requester=self.__requester, + headers=headers, + attributes=response, + ) + + @deprecated.deprecated("Use get_repo_installation") + def get_installation(self, owner: str, repo: str) -> Installation: + """ + Deprecated by get_repo_installation. + + :calls:`GET /repos/{owner}/{repo}/installation ` + :calls:`GET /repos/{owner}/{repo}/installation ` + + """ + owner = urllib.parse.quote(owner) + repo = urllib.parse.quote(repo) + return self._get_installed_app(url=f"/repos/{owner}/{repo}/installation") + + def get_installations(self) -> PaginatedList[Installation]: + """ + :calls: GET /app/installations + """ + return PaginatedList( + contentClass=Installation, + requester=self.__requester, + firstUrl="/app/installations", + firstParams=None, + headers=self._get_headers(), + list_item="installations", + ) + + def get_org_installation(self, org: str) -> Installation: + """ + :calls: `GET /orgs/{org}/installation ` + """ + org = urllib.parse.quote(org) + return self._get_installed_app(url=f"/orgs/{org}/installation") + + def get_repo_installation(self, owner: str, repo: str) -> Installation: + """ + :calls: `GET /repos/{owner}/{repo}/installation ` + """ + owner = urllib.parse.quote(owner) + repo = urllib.parse.quote(repo) + return self._get_installed_app(url=f"/repos/{owner}/{repo}/installation") + + def get_user_installation(self, username: str) -> Installation: + """ + :calls: `GET /users/{username}/installation ` + """ + username = urllib.parse.quote(username) + return self._get_installed_app(url=f"/users/{username}/installation") + + def get_app_installation(self, installation_id: int) -> Installation: + """ + :calls: `GET /app/installations/{installation_id} ` + """ + return self._get_installed_app(url=f"/app/installations/{installation_id}") + + def get_app(self) -> GithubApp: + """ + :calls: `GET /app `_ + """ + + headers, data = self.__requester.requestJsonAndCheck("GET", "/app", headers=self._get_headers()) + return GithubApp(requester=self.__requester, headers=headers, attributes=data, completed=True) diff --git a/venv/lib/python3.10/site-packages/github/GithubObject.py b/venv/lib/python3.10/site-packages/github/GithubObject.py new file mode 100644 index 0000000000000000000000000000000000000000..1661594dfe8d082288381dd7e77a7f772bbc6eac --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/GithubObject.py @@ -0,0 +1,594 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Andrew Scheller # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jakub Wilk # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2016 Sam Corbett # +# Copyright 2018 Shubham Singh <41840111+singh811@users.noreply.github.com> # +# Copyright 2018 h.shi <10385628+AnYeMoWang@users.noreply.github.com> # +# Copyright 2018 sfdye # +# Copyright 2019 Adam Baratz # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Christoph Reiter # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Jonathan Greg <31892308+jmgreg31@users.noreply.github.com> # +# Copyright 2023 Jonathan Leitschuh # +# Copyright 2023 Joseph Henrich # +# Copyright 2023 Nicolas Schweitzer # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2024 Min RK # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +import email.utils +import re +import typing +from abc import ABC +from datetime import datetime, timezone +from decimal import Decimal +from operator import itemgetter +from typing import TYPE_CHECKING, Any, Callable, Union, overload + +from typing_extensions import Protocol, Self, TypeGuard + +from . import Consts +from .GithubException import BadAttributeException, IncompletableObject + +if TYPE_CHECKING: + from .Requester import Requester + +T = typing.TypeVar("T") +K = typing.TypeVar("K") +T_co = typing.TypeVar("T_co", covariant=True) +T_gh = typing.TypeVar("T_gh", bound="GithubObject") + + +class Attribute(Protocol[T_co]): + @property + def value(self) -> T_co: + raise NotImplementedError + + +def _datetime_from_http_date(value: str) -> datetime: + """ + Convert an HTTP date to a datetime object. + + Raises ValueError for invalid dates. + + """ + + dt = email.utils.parsedate_to_datetime(value) + if dt.tzinfo is None: + # RFC7231 states that UTC is assumed if no timezone info is present + return dt.replace(tzinfo=timezone.utc) + return dt + + +def _datetime_from_github_isoformat(value: str) -> datetime: + """ + Convert an GitHub API timestamps to a datetime object. + + Raises ValueError for invalid timestamps. + + """ + + # Github always returns YYYY-MM-DDTHH:MM:SSZ, so we can use the stdlib parser + # with some minor adjustments for Python < 3.11 which doesn't support "Z" + # https://docs.github.com/en/rest/overview/resources-in-the-rest-api#schema + if value.endswith("Z"): + value = value[:-1] + "+00:00" + return datetime.fromisoformat(value) + + +class _NotSetType(Attribute[Any]): + def __repr__(self) -> str: + return "NotSet" + + @property + def value(self) -> Any: + return None + + @staticmethod + def remove_unset_items(data: dict[str, Any]) -> dict[str, Any]: + return {key: value for key, value in data.items() if not isinstance(value, _NotSetType)} + + +NotSet = _NotSetType() + +Opt = Union[T, _NotSetType] + + +def is_defined(v: T | _NotSetType) -> TypeGuard[T]: + return not isinstance(v, _NotSetType) + + +def is_undefined(v: T | _NotSetType) -> TypeGuard[_NotSetType]: + return isinstance(v, _NotSetType) + + +def is_optional(v: Any, type: type | tuple[type, ...]) -> bool: + return isinstance(v, _NotSetType) or isinstance(v, type) + + +def is_optional_list(v: Any, type: type | tuple[type, ...]) -> bool: + return isinstance(v, _NotSetType) or isinstance(v, list) and all(isinstance(element, type) for element in v) + + +camel_to_snake_case_regexp = re.compile(r"(? dict[str, Any]: + ... + + +@overload +def as_rest_api_attributes(graphql_attributes: None) -> None: + ... + + +def as_rest_api_attributes(graphql_attributes: dict[str, Any] | None) -> dict[str, Any] | None: + """ + Converts attributes from GraphQL schema to REST API schema. + + The GraphQL API uses lower camel case (e.g. createdAt), whereas REST API uses snake case (created_at). Initializing + REST API GithubObjects from GraphQL API attributes requires transformation provided by this method. + + Further renames GraphQL attributes to REST API attributes where the case conversion is not sufficient. For example, + GraphQL attribute 'id' is equivalent to REST API attribute 'node_id'. + + """ + if graphql_attributes is None: + return None + + attribute_translation = { + "id": "node_id", + "databaseId": "id", # must be after 'id': 'node_id'! + "url": "html_url", + } + + def translate(attr: str) -> str: + def un_capitalize(match: re.Match) -> str: + return match.group(1) + match.group(2).lower() + + attr = attribute_translation.get(attr, attr) + attr = re.sub(r"([A-Z])([A-Z]+)", un_capitalize, attr) + attr = camel_to_snake_case_regexp.sub("_", attr) + attr = attr.lower() + + return attr + + return { + translate(k): as_rest_api_attributes(v) + if isinstance(v, dict) + else (as_rest_api_attributes_list(v) if isinstance(v, list) else v) + for k, v in graphql_attributes.items() + } + + +def as_rest_api_attributes_list(graphql_attributes: list[dict[str, Any] | None]) -> list[dict[str, Any] | None]: + return [as_rest_api_attributes(v) if isinstance(v, dict) else v for v in graphql_attributes] + + +class _ValuedAttribute(Attribute[T]): + def __init__(self, value: T): + self._value = value + + @property + def value(self) -> T: + return self._value + + +class _BadAttribute(Attribute[T]): + def __init__(self, value: Any, expectedType: Any, exception: Exception | None = None): + self.__value = value + self.__expectedType = expectedType + self.__exception = exception + + @property + def value(self) -> T: + raise BadAttributeException(self.__value, self.__expectedType, self.__exception) + + +# v3: add * to edit function of all GithubObject implementations, +# this allows to rename attributes and maintain the order of attributes +class GithubObject(ABC): + """ + Base class for all classes representing objects returned by the API. + """ + + """ + A global debug flag to enable header validation by requester for all objects + """ + CHECK_AFTER_INIT_FLAG = False + _url: Attribute[str] + + @classmethod + def is_rest(cls) -> bool: + return not cls.is_graphql() + + @classmethod + def is_graphql(cls) -> bool: + return False + + @classmethod + def setCheckAfterInitFlag(cls, flag: bool) -> None: + cls.CHECK_AFTER_INIT_FLAG = flag + + def __init__( + self, + requester: Requester, + headers: dict[str, str | int], + attributes: Any, + ): + self._requester = requester + self._initAttributes() + self._storeAndUseAttributes(headers, attributes) + + # Ask requester to do some checking, for debug and test purpose + # Since it's most handy to access and kinda all-knowing + if self.CHECK_AFTER_INIT_FLAG: # pragma no branch (Flag always set in tests) + requester.check_me(self) + + def _storeAndUseAttributes(self, headers: dict[str, str | int], attributes: Any) -> None: + # Make sure headers are assigned before calling _useAttributes + # (Some derived classes will use headers in _useAttributes) + self._headers = headers + self._rawData = attributes + self._useAttributes(attributes) + + @property + def requester(self) -> Requester: + """ + Return my Requester object. + + For example, to make requests to API endpoints not yet supported by PyGitHub. + + """ + return self._requester + + @property + def raw_data(self) -> dict[str, Any]: + """ + :type: dict + """ + return self._rawData + + @property + def raw_headers(self) -> dict[str, str | int]: + """ + :type: dict + """ + return self._headers + + @staticmethod + def _parentUrl(url: str) -> str: + return "/".join(url.split("/")[:-1]) + + @staticmethod + def __makeSimpleAttribute(value: Any, type: type[T]) -> Attribute[T]: + if value is None or isinstance(value, type): + return _ValuedAttribute(value) # type: ignore + else: + return _BadAttribute(value, type) # type: ignore + + @staticmethod + def __makeSimpleListAttribute(value: list, type: type[T]) -> Attribute[T]: + if isinstance(value, list) and all(isinstance(element, type) for element in value): + return _ValuedAttribute(value) # type: ignore + else: + return _BadAttribute(value, [type]) # type: ignore + + @staticmethod + def __makeTransformedAttribute(value: T, type: type[T], transform: Callable[[T], K]) -> Attribute[K]: + if value is None: + return _ValuedAttribute(None) # type: ignore + elif isinstance(value, type): + try: + return _ValuedAttribute(transform(value)) + except Exception as e: + return _BadAttribute(value, type, e) # type: ignore + else: + return _BadAttribute(value, type) # type: ignore + + @staticmethod + def _makeStringAttribute(value: int | str | None) -> Attribute[str]: + return GithubObject.__makeSimpleAttribute(value, str) + + @staticmethod + def _makeIntAttribute(value: int | str | None) -> Attribute[int]: + return GithubObject.__makeSimpleAttribute(value, int) + + @staticmethod + def _makeDecimalAttribute(value: Decimal | None) -> Attribute[Decimal]: + return GithubObject.__makeSimpleAttribute(value, Decimal) + + @staticmethod + def _makeFloatAttribute(value: float | None) -> Attribute[float]: + return GithubObject.__makeSimpleAttribute(value, float) + + @staticmethod + def _makeBoolAttribute(value: bool | None) -> Attribute[bool]: + return GithubObject.__makeSimpleAttribute(value, bool) + + @staticmethod + def _makeDictAttribute(value: dict[str, Any]) -> Attribute[dict[str, Any]]: + return GithubObject.__makeSimpleAttribute(value, dict) + + @staticmethod + def _makeTimestampAttribute(value: int) -> Attribute[datetime]: + return GithubObject.__makeTransformedAttribute( + value, + int, + lambda t: datetime.fromtimestamp(t, tz=timezone.utc), + ) + + @staticmethod + def _makeDatetimeAttribute(value: str | None) -> Attribute[datetime]: + return GithubObject.__makeTransformedAttribute(value, str, _datetime_from_github_isoformat) # type: ignore + + @staticmethod + def _makeHttpDatetimeAttribute(value: str | None) -> Attribute[datetime]: + return GithubObject.__makeTransformedAttribute(value, str, _datetime_from_http_date) # type: ignore + + def _makeClassAttribute(self, klass: type[T_gh], value: Any) -> Attribute[T_gh]: + return GithubObject.__makeTransformedAttribute( + value, + dict, + lambda value: klass(self._requester, self._headers, value), + ) + + @staticmethod + def _makeListOfStringsAttribute(value: list[list[str]] | list[str] | list[str | int]) -> Attribute: + return GithubObject.__makeSimpleListAttribute(value, str) + + @staticmethod + def _makeListOfIntsAttribute(value: list[int]) -> Attribute: + return GithubObject.__makeSimpleListAttribute(value, int) + + @staticmethod + def _makeListOfDictsAttribute(value: list[dict[str, str | list[dict[str, str | list[int]]]]]) -> Attribute: + return GithubObject.__makeSimpleListAttribute(value, dict) + + @staticmethod + def _makeListOfListOfStringsAttribute( + value: list[list[str]], + ) -> Attribute: + return GithubObject.__makeSimpleListAttribute(value, list) + + def _makeListOfClassesAttribute(self, klass: type[T_gh], value: Any) -> Attribute[list[T_gh]]: + if isinstance(value, list) and all(isinstance(element, dict) for element in value): + return _ValuedAttribute([klass(self._requester, self._headers, element) for element in value]) + else: + return _BadAttribute(value, [dict]) + + def _makeDictOfStringsToClassesAttribute( + self, + klass: type[T_gh], + value: dict[ + str, + int | dict[str, Any], + ], + ) -> Attribute[dict[str, T_gh]]: + if isinstance(value, dict) and all( + isinstance(key, str) and isinstance(element, dict) for key, element in value.items() + ): + return _ValuedAttribute( + {key: klass(self._requester, self._headers, element) for key, element in value.items()} + ) + else: + return _BadAttribute(value, {str: dict}) + + @property + def etag(self) -> str | None: + """ + :type: str + """ + return self._headers.get(Consts.RES_ETAG) # type: ignore + + @property + def last_modified(self) -> str | None: + """ + :type: str + """ + return self._headers.get(Consts.RES_LAST_MODIFIED) # type: ignore + + @property + def last_modified_datetime(self) -> datetime | None: + """ + :type: datetime + """ + return self._makeHttpDatetimeAttribute(self.last_modified).value # type: ignore + + def get__repr__(self, params: dict[str, Any]) -> str: + """ + Converts the object to a nicely printable string. + """ + + def format_params(params: dict[str, Any]) -> typing.Generator[str, None, None]: + items = list(params.items()) + for k, v in sorted(items, key=itemgetter(0), reverse=True): + if isinstance(v, bytes): + v = v.decode("utf-8") + if isinstance(v, str): + v = f'"{v}"' + yield f"{k}={v}" + + return "{class_name}({params})".format( + class_name=self.__class__.__name__, + params=", ".join(list(format_params(params))), + ) + + def _initAttributes(self) -> None: + raise NotImplementedError("BUG: Not Implemented _initAttributes") + + def _useAttributes(self, attributes: Any) -> None: + raise NotImplementedError("BUG: Not Implemented _useAttributes") + + +class GraphQlObject: + @classmethod + def is_graphql(cls) -> bool: + return True + + +class NonCompletableGithubObject(GithubObject, ABC): + def __init__( + self, + requester: Requester, + headers: dict[str, str | int], + attributes: dict[str, Any], + ): + super().__init__(requester, headers, attributes) + + +class CompletableGithubObject(GithubObject, ABC): + def __init__( + self, + requester: Requester, + headers: dict[str, str | int] | None = None, + attributes: dict[str, Any] | None = None, + completed: bool | None = None, + *, + url: str | None = None, + accept: str | None = None, + ): + """ + A CompletableGithubObject can be partially initialised (completed=False). Accessing attributes that are not + initialized will then trigger a request to complete all attributes. + + A partially initialized CompletableGithubObject (completed=False) can be completed + via complete(). This requires the url to be given via parameter `url` or `attributes`. + + With a requester where `Requester.is_lazy == True`, this CompletableGithubObjects is + partially initialized. This requires the url to be given via parameter `url` or `attributes`. + Any CompletableGithubObject created from this lazy object will be lazy itself if created with + parameter `url` or `attributes`. + + :param requester: requester + :param headers: response headers + :param attributes: attributes to initialize + :param completed: do not update non-initialized attributes when True + :param url: url of this instance, overrides attributes['url'] + :param accept: use this accept header when completing this instance + + """ + response_given = headers is not None or attributes is not None + + if headers is None: + headers = {} + if attributes is None: + attributes = {} + if url is not None: + attributes["url"] = url + super().__init__(requester, headers, attributes) + self.__completed = completed if isinstance(completed, bool) else False + self.__completeHeaders = {"Accept": accept} if accept else None + + # complete this completable object when requester indicates non-laziness and + # neither of complete, headers and attributes are given + if requester.is_not_lazy and completed is None and not response_given: + self.complete() + + def __eq__(self, other: Any) -> bool: + return other.__class__ is self.__class__ and other._url.value == self._url.value + + def __hash__(self) -> int: + return hash(self._url.value) + + def __ne__(self, other: Any) -> bool: + return not self == other + + @property + def completed(self) -> bool: + return self.__completed + + def complete(self) -> Self: + self._completeIfNeeded() + return self + + def _completeIfNotSet(self, value: Attribute) -> None: + if isinstance(value, _NotSetType): + self._completeIfNeeded() + + def _completeIfNeeded(self) -> None: + if not self.__completed: + self.__complete() + + def __complete(self) -> None: + if self._url.value is None: + raise IncompletableObject(400, message="Cannot complete object as it contains no URL") + headers, data = self._requester.requestJsonAndCheck("GET", self._url.value, headers=self.__completeHeaders) + self._storeAndUseAttributes(headers, data) + self.__completed = True + + @property + def raw_data(self) -> dict[str, Any]: + """ + :type: dict + """ + self._completeIfNeeded() + return super().raw_data + + @property + def raw_headers(self) -> dict[str, str | int]: + """ + :type: dict + """ + self._completeIfNeeded() + return super().raw_headers + + def update(self, additional_headers: dict[str, Any] | None = None) -> bool: + """ + Check and update the object with conditional request :rtype: Boolean value indicating whether the object is + changed. + """ + conditionalRequestHeader = dict() + if self.etag is not None: + conditionalRequestHeader[Consts.REQ_IF_NONE_MATCH] = self.etag + if self.last_modified is not None: + conditionalRequestHeader[Consts.REQ_IF_MODIFIED_SINCE] = self.last_modified + if additional_headers is not None: + conditionalRequestHeader.update(additional_headers) + + status, responseHeaders, output = self._requester.requestJson( + "GET", self._url.value, headers=conditionalRequestHeader + ) + if status == 304: + return False + else: + headers, data = self._requester._Requester__check(status, responseHeaders, output) # type: ignore + self._storeAndUseAttributes(headers, data) + self.__completed = True + return True diff --git a/venv/lib/python3.10/site-packages/github/GithubRetry.py b/venv/lib/python3.10/site-packages/github/GithubRetry.py new file mode 100644 index 0000000000000000000000000000000000000000..ae1f6101681273ced29155752fb85368e0adc913 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/GithubRetry.py @@ -0,0 +1,231 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Patryk Szulczyk # +# Copyright 2023 Trim21 # +# Copyright 2024 Austin Sasko # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +import json +import logging +from datetime import datetime, timezone +from logging import Logger +from types import TracebackType +from typing import Any, Optional + +from requests import Response +from requests.models import CaseInsensitiveDict +from requests.utils import get_encoding_from_headers +from typing_extensions import Self +from urllib3 import Retry +from urllib3.connectionpool import ConnectionPool +from urllib3.exceptions import MaxRetryError +from urllib3.response import HTTPResponse + +from github.GithubException import GithubException +from github.Requester import Requester + +DEFAULT_SECONDARY_RATE_WAIT: int = 60 + + +class GithubRetry(Retry): + """ + A Github-specific implementation of `urllib3.Retry` + + This retries 403 responses if they are retry-able. Github requests are retry-able when + the response provides a `"Retry-After"` header, or the content indicates a rate limit error. + + By default, response codes 403, and 500 up to 599 are retried. This can be configured + via the `status_forcelist` argument. + + By default, all methods defined in `Retry.DEFAULT_ALLOWED_METHODS` are retried, plus GET and POST. + This can be configured via the `allowed_methods` argument. + + """ + + __logger: Optional[Logger] = None + + # used to mock datetime, mock.patch("github.GithubRetry.date") does not work as this + # references the class, not the module (due to re-exporting in github/__init__.py) + __datetime = datetime + + def __init__(self, secondary_rate_wait: float = DEFAULT_SECONDARY_RATE_WAIT, **kwargs: Any) -> None: + """ + :param secondary_rate_wait: seconds to wait before retrying secondary rate limit errors + :param kwargs: see urllib3.Retry for more arguments + """ + self.secondary_rate_wait = secondary_rate_wait + # 403 is too broad to be retried, but GitHub API signals rate limits via 403 + # we retry 403 and look into the response header via Retry.increment + # to determine if we really retry that 403 + kwargs["status_forcelist"] = kwargs.get("status_forcelist", list(range(500, 600))) + [403] + kwargs["allowed_methods"] = kwargs.get("allowed_methods", Retry.DEFAULT_ALLOWED_METHODS.union({"GET", "POST"})) + super().__init__(**kwargs) + + def new(self, **kw: Any) -> Self: + kw.update(dict(secondary_rate_wait=self.secondary_rate_wait)) + return super().new(**kw) # type: ignore + + def increment( # type: ignore[override] + self, + method: Optional[str] = None, + url: Optional[str] = None, + response: Optional[HTTPResponse] = None, # type: ignore[override] + error: Optional[Exception] = None, + _pool: Optional[ConnectionPool] = None, + _stacktrace: Optional[TracebackType] = None, + ) -> Retry: + if response: + # we retry 403 only when there is a Retry-After header (indicating it is retry-able) + # or the body message does imply a rate limit error + if response.status == 403: + self.__log( + logging.INFO, + f"Request {method} {url} failed with {response.status}: {response.reason}", + ) + if "Retry-After" in response.headers: + # Sleeping 'Retry-After' seconds is implemented in urllib3.Retry.sleep() and called by urllib3 + self.__log( + logging.INFO, + f'Retrying after {response.headers.get("Retry-After")} seconds', + ) + else: + content = response.reason + + # to identify retry-able methods, we inspect the response body + try: + content = self.get_content(response, url) # type: ignore + content = json.loads(content) # type: ignore + message = content.get("message") # type: ignore + except Exception as e: + # we want to fall back to the actual github exception (probably a rate limit error) + # but provide some context why we could not deal with it without another exception + try: + raise RuntimeError("Failed to inspect response message") from e + except RuntimeError as e: + raise GithubException(response.status, content, response.headers) from e # type: ignore + + try: + if Requester.isRateLimitError(message): + rate_type = "primary" if Requester.isPrimaryRateLimitError(message) else "secondary" + self.__log( + logging.DEBUG, + f"Response body indicates retry-able {rate_type} rate limit error: {message}", + ) + + # check early that we are retrying at all + retry = super().increment(method, url, response, error, _pool, _stacktrace) + + # we backoff primary rate limit at least until X-RateLimit-Reset, + # we backoff secondary rate limit at for secondary_rate_wait seconds + backoff = 0.0 + + if Requester.isPrimaryRateLimitError(message): + if "X-RateLimit-Reset" in response.headers: + value = response.headers.get("X-RateLimit-Reset") + if value and value.isdigit(): + reset = self.__datetime.fromtimestamp(int(value), timezone.utc) + delta = reset - self.__datetime.now(timezone.utc) + resetBackoff = delta.total_seconds() + + if resetBackoff > 0: + self.__log( + logging.DEBUG, + f"Reset occurs in {str(delta)} ({value} / {reset})", + ) + + # plus 1s as it is not clear when in that second the reset occurs + backoff = resetBackoff + 1 + else: + backoff = self.secondary_rate_wait + + # we backoff at least retry's next backoff + retry_backoff = retry.get_backoff_time() + if retry_backoff > backoff: + if backoff > 0: + self.__log( + logging.DEBUG, + f"Retry backoff of {retry_backoff}s exceeds " + f"required rate limit backoff of {backoff}s".replace(".0s", "s"), + ) + backoff = retry_backoff + + def get_backoff_time() -> float: + return backoff + + self.__log( + logging.INFO, + f"Setting next backoff to {backoff}s".replace(".0s", "s"), + ) + retry.get_backoff_time = get_backoff_time # type: ignore + return retry + + self.__log( + logging.DEBUG, + "Response message does not indicate retry-able error", + ) + raise Requester.createException(response.status, response.headers, content) # type: ignore + except (MaxRetryError, GithubException): + raise + except Exception as e: + # we want to fall back to the actual github exception (probably a rate limit error) + # but provide some context why we could not deal with it without another exception + try: + raise RuntimeError("Failed to determine retry backoff") from e + except RuntimeError as e: + raise GithubException(response.status, content, response.headers) from e # type: ignore + + raise GithubException( + response.status, # type: ignore + content, # type: ignore + response.headers, # type: ignore + ) # type: ignore + + # retry the request as usual + return super().increment(method, url, response, error, _pool, _stacktrace) + + @staticmethod + def get_content(resp: HTTPResponse, url: str) -> bytes: # type: ignore[override] + # logic taken from HTTPAdapter.build_response (requests.adapters) + response = Response() + + # Fallback to None if there's no status_code, for whatever reason. + response.status_code = getattr(resp, "status", None) # type: ignore + + # Make headers case-insensitive. + response.headers = CaseInsensitiveDict(getattr(resp, "headers", {})) + + # Set encoding. + response.encoding = get_encoding_from_headers(response.headers) + response.raw = resp + response.reason = response.raw.reason # type: ignore + + response.url = url + + return response.content + + def __log(self, level: int, message: str, **kwargs: Any) -> None: + if self.__logger is None: + self.__logger = logging.getLogger(__name__) + if self.__logger.isEnabledFor(level): + self.__logger.log(level, message, **kwargs) diff --git a/venv/lib/python3.10/site-packages/github/GitignoreTemplate.py b/venv/lib/python3.10/site-packages/github/GitignoreTemplate.py new file mode 100644 index 0000000000000000000000000000000000000000..8d11b569ba2e7236fe85f25017db227ff23f2ff9 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/GitignoreTemplate.py @@ -0,0 +1,76 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from typing import Any, Dict + +from github.GithubObject import Attribute, NonCompletableGithubObject, NotSet + + +class GitignoreTemplate(NonCompletableGithubObject): + """ + This class represents GitignoreTemplates. + + The reference can be found here + https://docs.github.com/en/rest/reference/gitignore + + The OpenAPI schema can be found at + - /components/schemas/gitignore-template + + """ + + def _initAttributes(self) -> None: + self._name: Attribute[str] = NotSet + self._source: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"name": self._name.value}) + + @property + def name(self) -> str: + return self._name.value + + @property + def source(self) -> str: + return self._source.value + + def _useAttributes(self, attributes: Dict[str, Any]) -> None: + if "name" in attributes: # pragma no branch + self._name = self._makeStringAttribute(attributes["name"]) + if "source" in attributes: # pragma no branch + self._source = self._makeStringAttribute(attributes["source"]) diff --git a/venv/lib/python3.10/site-packages/github/GlobalAdvisory.py b/venv/lib/python3.10/site-packages/github/GlobalAdvisory.py new file mode 100644 index 0000000000000000000000000000000000000000..3f7b1504ecba5879cb535a1cb930ce13a3f858ea --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/GlobalAdvisory.py @@ -0,0 +1,139 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Joseph Henrich # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2024 Thomas Cooper # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from datetime import datetime +from typing import TYPE_CHECKING, Any + +import github.AdvisoryBase +import github.AdvisoryCreditDetailed +import github.AdvisoryVulnerability +from github.AdvisoryBase import AdvisoryBase +from github.GithubObject import Attribute, NotSet + +if TYPE_CHECKING: + from github.AdvisoryCreditDetailed import AdvisoryCreditDetailed + from github.AdvisoryVulnerability import AdvisoryVulnerability + + +class GlobalAdvisory(AdvisoryBase): + """ + This class represents a GlobalAdvisory. + + https://docs.github.com/en/rest/security-advisories/global-advisories + + The OpenAPI schema can be found at + - /components/schemas/global-advisory + + """ + + def _initAttributes(self) -> None: + super()._initAttributes() + self._credits: Attribute[list[AdvisoryCreditDetailed]] = NotSet + self._epss: Attribute[dict[str, Any]] = NotSet + self._github_reviewed_at: Attribute[datetime] = NotSet + self._nvd_published_at: Attribute[datetime] = NotSet + self._references: Attribute[list[str]] = NotSet + self._repository_advisory_url: Attribute[str] = NotSet + self._source_code_location: Attribute[str] = NotSet + self._type: Attribute[str] = NotSet + self._vulnerabilities: Attribute[list[AdvisoryVulnerability]] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"ghsa_id": self.ghsa_id, "summary": self.summary}) + + @property + def credits( + self, + ) -> list[AdvisoryCreditDetailed]: + return self._credits.value + + @property + def epss(self) -> dict[str, Any]: + return self._epss.value + + @property + def github_reviewed_at(self) -> datetime: + return self._github_reviewed_at.value + + @property + def nvd_published_at(self) -> datetime: + return self._nvd_published_at.value + + @property + def references(self) -> list[str]: + return self._references.value + + @property + def repository_advisory_url(self) -> str: + return self._repository_advisory_url.value + + @property + def source_code_location(self) -> str: + return self._source_code_location.value + + @property + def type(self) -> str: + return self._type.value + + @property + def vulnerabilities(self) -> list[AdvisoryVulnerability]: + return self._vulnerabilities.value + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "credits" in attributes: # pragma no branch + self._credits = self._makeListOfClassesAttribute( + github.AdvisoryCreditDetailed.AdvisoryCreditDetailed, + attributes["credits"], + ) + if "epss" in attributes: # pragma no branch + self._epss = self._makeDictAttribute(attributes["epss"]) + if "github_reviewed_at" in attributes: # pragma no branch + assert attributes["github_reviewed_at"] is None or isinstance( + attributes["github_reviewed_at"], str + ), attributes["github_reviewed_at"] + self._github_reviewed_at = self._makeDatetimeAttribute(attributes["github_reviewed_at"]) + if "nvd_published_at" in attributes: # pragma no branch + assert attributes["nvd_published_at"] is None or isinstance( + attributes["nvd_published_at"], str + ), attributes["nvd_published_at"] + self._nvd_published_at = self._makeDatetimeAttribute(attributes["nvd_published_at"]) + if "references" in attributes: # pragma no branch + self._references = self._makeListOfStringsAttribute(attributes["references"]) + if "repository_advisory_url" in attributes: # pragma no branch + self._repository_advisory_url = self._makeStringAttribute(attributes["repository_advisory_url"]) + if "source_code_location" in attributes: # pragma no branch + self._source_code_location = self._makeStringAttribute(attributes["source_code_location"]) + if "type" in attributes: # pragma no branch + self._type = self._makeStringAttribute(attributes["type"]) + if "vulnerabilities" in attributes: + self._vulnerabilities = self._makeListOfClassesAttribute( + github.AdvisoryVulnerability.AdvisoryVulnerability, + attributes["vulnerabilities"], + ) + super()._useAttributes(attributes) diff --git a/venv/lib/python3.10/site-packages/github/Hook.py b/venv/lib/python3.10/site-packages/github/Hook.py new file mode 100644 index 0000000000000000000000000000000000000000..289eec0825f695fca981bad8f94600975a19cc81 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/Hook.py @@ -0,0 +1,226 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2017 Wan Liuyang # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Mark Walker # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from datetime import datetime +from typing import Any + +import github.GithubObject +import github.HookResponse +from github.GithubObject import Attribute, CompletableGithubObject, NotSet, Opt, is_optional, is_optional_list + + +class Hook(CompletableGithubObject): + """ + This class represents Hooks. + + The reference can be found here + https://docs.github.com/en/rest/reference/repos#webhooks + + The OpenAPI schema can be found at + - /components/schemas/hook + + """ + + def _initAttributes(self) -> None: + self._active: Attribute[bool] = NotSet + self._config: Attribute[dict] = NotSet + self._created_at: Attribute[datetime] = NotSet + self._deliveries_url: Attribute[str] = NotSet + self._events: Attribute[list[str]] = NotSet + self._id: Attribute[int] = NotSet + self._last_response: Attribute[github.HookResponse.HookResponse] = NotSet + self._name: Attribute[str] = NotSet + self._ping_url: Attribute[str] = NotSet + self._test_url: Attribute[str] = NotSet + self._type: Attribute[str] = NotSet + self._updated_at: Attribute[datetime] = NotSet + self._url: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"id": self._id.value, "url": self._url.value}) + + @property + def active(self) -> bool: + self._completeIfNotSet(self._active) + return self._active.value + + @property + def config(self) -> dict: + self._completeIfNotSet(self._config) + return self._config.value + + @property + def created_at(self) -> datetime: + self._completeIfNotSet(self._created_at) + return self._created_at.value + + @property + def deliveries_url(self) -> str: + self._completeIfNotSet(self._deliveries_url) + return self._deliveries_url.value + + @property + def events(self) -> list[str]: + self._completeIfNotSet(self._events) + return self._events.value + + @property + def id(self) -> int: + self._completeIfNotSet(self._id) + return self._id.value + + @property + def last_response(self) -> github.HookResponse.HookResponse: + self._completeIfNotSet(self._last_response) + return self._last_response.value + + @property + def name(self) -> str: + self._completeIfNotSet(self._name) + return self._name.value + + @property + def ping_url(self) -> str: + self._completeIfNotSet(self._ping_url) + return self._ping_url.value + + @property + def test_url(self) -> str: + self._completeIfNotSet(self._test_url) + return self._test_url.value + + @property + def type(self) -> str: + self._completeIfNotSet(self._type) + return self._type.value + + @property + def updated_at(self) -> datetime: + self._completeIfNotSet(self._updated_at) + return self._updated_at.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + def delete(self) -> None: + """ + :calls: `DELETE /repos/{owner}/{repo}/hooks/{id} `_ + """ + headers, data = self._requester.requestJsonAndCheck("DELETE", self.url) + + def edit( + self, + name: str, + config: dict, + events: Opt[list[str]] = NotSet, + add_events: Opt[list[str]] = NotSet, + remove_events: Opt[list[str]] = NotSet, + active: Opt[bool] = NotSet, + ) -> None: + """ + :calls: `PATCH /repos/{owner}/{repo}/hooks/{id} `_ + """ + assert isinstance(name, str), name + assert isinstance(config, dict), config + assert is_optional_list(events, str), events + assert is_optional_list(add_events, str), add_events + assert is_optional_list(remove_events, str), remove_events + assert is_optional(active, bool), active + post_parameters = NotSet.remove_unset_items( + { + "name": name, + "config": config, + "events": events, + "add_events": add_events, + "remove_events": remove_events, + "active": active, + } + ) + + headers, data = self._requester.requestJsonAndCheck("PATCH", self.url, input=post_parameters) + self._useAttributes(data) + + def test(self) -> None: + """ + :calls: `POST /repos/{owner}/{repo}/hooks/{id}/tests `_ + """ + headers, data = self._requester.requestJsonAndCheck("POST", f"{self.url}/tests") + + def ping(self) -> None: + """ + :calls: `POST /repos/{owner}/{repo}/hooks/{id}/pings `_ + """ + headers, data = self._requester.requestJsonAndCheck("POST", f"{self.url}/pings") + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "active" in attributes: # pragma no branch + self._active = self._makeBoolAttribute(attributes["active"]) + if "config" in attributes: # pragma no branch + self._config = self._makeDictAttribute(attributes["config"]) + if "created_at" in attributes: # pragma no branch + self._created_at = self._makeDatetimeAttribute(attributes["created_at"]) + if "deliveries_url" in attributes: # pragma no branch + self._deliveries_url = self._makeStringAttribute(attributes["deliveries_url"]) + if "events" in attributes: # pragma no branch + self._events = self._makeListOfStringsAttribute(attributes["events"]) + if "id" in attributes: # pragma no branch + self._id = self._makeIntAttribute(attributes["id"]) + if "last_response" in attributes: # pragma no branch + self._last_response = self._makeClassAttribute( + github.HookResponse.HookResponse, attributes["last_response"] + ) + if "name" in attributes: # pragma no branch + self._name = self._makeStringAttribute(attributes["name"]) + if "ping_url" in attributes: # pragma no branch + self._ping_url = self._makeStringAttribute(attributes["ping_url"]) + if "test_url" in attributes: # pragma no branch + self._test_url = self._makeStringAttribute(attributes["test_url"]) + if "type" in attributes: # pragma no branch + self._type = self._makeStringAttribute(attributes["type"]) + if "updated_at" in attributes: # pragma no branch + self._updated_at = self._makeDatetimeAttribute(attributes["updated_at"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) diff --git a/venv/lib/python3.10/site-packages/github/HookDelivery.py b/venv/lib/python3.10/site-packages/github/HookDelivery.py new file mode 100644 index 0000000000000000000000000000000000000000..2e94d0966e1ddde722b3127d6bb87ee118986610 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/HookDelivery.py @@ -0,0 +1,239 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Jonathan Greg <31892308+jmgreg31@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from datetime import datetime +from typing import Any + +import github.GithubObject +from github.GithubObject import Attribute, NotSet + + +class HookDeliverySummary(github.GithubObject.NonCompletableGithubObject): + """ + This class represents a Summary of HookDeliveries. + + The OpenAPI schema can be found at + - /components/schemas/hook-delivery-item + + """ + + def _initAttributes(self) -> None: + self._action: Attribute[str] = NotSet + self._delivered_at: Attribute[datetime] = NotSet + self._duration: Attribute[float] = NotSet + self._event: Attribute[str] = NotSet + self._guid: Attribute[str] = NotSet + self._id: Attribute[int] = NotSet + self._installation_id: Attribute[int] = NotSet + self._redelivery: Attribute[bool] = NotSet + self._repository_id: Attribute[int] = NotSet + self._status: Attribute[str] = NotSet + self._status_code: Attribute[int] = NotSet + self._url: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"id": self._id.value}) + + @property + def action(self) -> str | None: + return self._action.value + + @property + def delivered_at(self) -> datetime | None: + return self._delivered_at.value + + @property + def duration(self) -> float | None: + return self._duration.value + + @property + def event(self) -> str | None: + return self._event.value + + @property + def guid(self) -> str | None: + return self._guid.value + + @property + def id(self) -> int | None: + return self._id.value + + @property + def installation_id(self) -> int | None: + return self._installation_id.value + + @property + def redelivery(self) -> bool | None: + return self._redelivery.value + + @property + def repository_id(self) -> int | None: + return self._repository_id.value + + @property + def status(self) -> str | None: + return self._status.value + + @property + def status_code(self) -> int | None: + return self._status_code.value + + @property + def url(self) -> str | None: + return self._url.value + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "action" in attributes: # pragma no branch + self._action = self._makeStringAttribute(attributes["action"]) + if "delivered_at" in attributes: # pragma no branch + self._delivered_at = self._makeDatetimeAttribute(attributes["delivered_at"]) + if "duration" in attributes: # pragma no branch + self._duration = self._makeFloatAttribute(attributes["duration"]) + if "event" in attributes: # pragma no branch + self._event = self._makeStringAttribute(attributes["event"]) + if "guid" in attributes: # pragma no branch + self._guid = self._makeStringAttribute(attributes["guid"]) + if "id" in attributes: # pragma no branch + self._id = self._makeIntAttribute(attributes["id"]) + if "installation_id" in attributes: # pragma no branch + self._installation_id = self._makeIntAttribute(attributes["installation_id"]) + if "redelivery" in attributes: # pragma no branch + self._redelivery = self._makeBoolAttribute(attributes["redelivery"]) + if "repository_id" in attributes: # pragma no branch + self._repository_id = self._makeIntAttribute(attributes["repository_id"]) + if "status" in attributes: # pragma no branch + self._status = self._makeStringAttribute(attributes["status"]) + if "status_code" in attributes: # pragma no branch + self._status_code = self._makeIntAttribute(attributes["status_code"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) + + +class HookDeliveryRequest(github.GithubObject.NonCompletableGithubObject): + """ + This class represents a HookDeliveryRequest. + + The OpenAPI schema can be found at + - /components/schemas/hook-delivery/properties/request + + """ + + def _initAttributes(self) -> None: + self._payload: Attribute[dict] = NotSet + self._request_headers: Attribute[dict] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"payload": self._payload.value}) + + @property + def headers(self) -> dict | None: + return self._request_headers.value + + @property + def payload(self) -> dict | None: + return self._payload.value + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "headers" in attributes: # pragma no branch + self._request_headers = self._makeDictAttribute(attributes["headers"]) + if "payload" in attributes: # pragma no branch + self._payload = self._makeDictAttribute(attributes["payload"]) + + +class HookDeliveryResponse(github.GithubObject.NonCompletableGithubObject): + """ + This class represents a HookDeliveryResponse. + + The OpenAPI schema can be found at + - /components/schemas/hook-delivery/properties/response + + """ + + def _initAttributes(self) -> None: + self._payload: Attribute[str] = NotSet + self._response_headers: Attribute[dict] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"payload": self._payload.value}) + + @property + def headers(self) -> dict | None: + return self._response_headers.value + + @property + def payload(self) -> str | None: + return self._payload.value + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "headers" in attributes: # pragma no branch + self._response_headers = self._makeDictAttribute(attributes["headers"]) + if "payload" in attributes: # pragma no branch + self._payload = self._makeStringAttribute(attributes["payload"]) + + +class HookDelivery(HookDeliverySummary): + """ + This class represents a HookDelivery. + + The OpenAPI schema can be found at + - /components/schemas/hook-delivery + + """ + + def _initAttributes(self) -> None: + super()._initAttributes() + self._request: Attribute[HookDeliveryRequest] = NotSet + self._response: Attribute[HookDeliveryResponse] = NotSet + self._throttled_at: Attribute[datetime] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"id": self._id.value}) + + @property + def request(self) -> HookDeliveryRequest | None: + return self._request.value + + @property + def response(self) -> HookDeliveryResponse | None: + return self._response.value + + @property + def throttled_at(self) -> datetime: + return self._throttled_at.value + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + super()._useAttributes(attributes) + if "request" in attributes: # pragma no branch + self._request = self._makeClassAttribute(HookDeliveryRequest, attributes["request"]) + if "response" in attributes: # pragma no branch + self._response = self._makeClassAttribute(HookDeliveryResponse, attributes["response"]) + # self._response = self._makeDictAttribute(attributes["response"]) + if "throttled_at" in attributes: # pragma no branch + self._throttled_at = self._makeDatetimeAttribute(attributes["throttled_at"]) diff --git a/venv/lib/python3.10/site-packages/github/HookDescription.py b/venv/lib/python3.10/site-packages/github/HookDescription.py new file mode 100644 index 0000000000000000000000000000000000000000..1412b664018c1c069f66156fe3336e28217391b3 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/HookDescription.py @@ -0,0 +1,84 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from typing import Any + +from github.GithubObject import Attribute, NonCompletableGithubObject, NotSet + + +class HookDescription(NonCompletableGithubObject): + """ + This class represents HookDescriptions. + """ + + def _initAttributes(self) -> None: + self._events: Attribute[list[str]] = NotSet + self._name: Attribute[str] = NotSet + self._schema: Attribute[list[list[str]]] = NotSet + self._supported_events: Attribute[list[str]] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"name": self._name.value}) + + @property + def events(self) -> list[str]: + return self._events.value + + @property + def name(self) -> str: + return self._name.value + + @property + def schema(self) -> list[list[str]]: + return self._schema.value + + @property + def supported_events(self) -> list[str]: + return self._supported_events.value + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "events" in attributes: # pragma no branch + self._events = self._makeListOfStringsAttribute(attributes["events"]) + if "name" in attributes: # pragma no branch + self._name = self._makeStringAttribute(attributes["name"]) + if "schema" in attributes: # pragma no branch + self._schema = self._makeListOfListOfStringsAttribute(attributes["schema"]) + if "supported_events" in attributes: # pragma no branch + self._supported_events = self._makeListOfStringsAttribute(attributes["supported_events"]) diff --git a/venv/lib/python3.10/site-packages/github/HookResponse.py b/venv/lib/python3.10/site-packages/github/HookResponse.py new file mode 100644 index 0000000000000000000000000000000000000000..4c117477d24b16fcbffc15ab94959c93b9b17c1c --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/HookResponse.py @@ -0,0 +1,79 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from typing import Any, Dict + +from github.GithubObject import Attribute, NonCompletableGithubObject, NotSet + + +class HookResponse(NonCompletableGithubObject): + """ + This class represents HookResponses. + + The OpenAPI schema can be found at + - /components/schemas/hook-response + + """ + + def _initAttributes(self) -> None: + self._code: Attribute[int] = NotSet + self._message: Attribute[str] = NotSet + self._status: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"status": self._status.value}) + + @property + def code(self) -> int: + return self._code.value + + @property + def message(self) -> str: + return self._message.value + + @property + def status(self) -> str: + return self._status.value + + def _useAttributes(self, attributes: Dict[str, Any]) -> None: + if "code" in attributes: # pragma no branch + self._code = self._makeIntAttribute(attributes["code"]) + if "message" in attributes: # pragma no branch + self._message = self._makeStringAttribute(attributes["message"]) + if "status" in attributes: # pragma no branch + self._status = self._makeStringAttribute(attributes["status"]) diff --git a/venv/lib/python3.10/site-packages/github/InputFileContent.py b/venv/lib/python3.10/site-packages/github/InputFileContent.py new file mode 100644 index 0000000000000000000000000000000000000000..d2d3692340ed188af64ac15ee9a07bca93ed2014 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/InputFileContent.py @@ -0,0 +1,62 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + + +from __future__ import annotations + +from typing import Any + +from github.GithubObject import NotSet, Opt, is_defined, is_optional + + +class InputFileContent: + """ + This class represents InputFileContents. + """ + + def __init__(self, content: str, new_name: Opt[str] = NotSet): + assert isinstance(content, str), content + assert is_optional(new_name, str), new_name + self.__newName: Opt[str] = new_name + self.__content: str = content + + @property + def _identity(self) -> dict[str, str]: + identity: dict[str, Any] = { + "content": self.__content, + } + if is_defined(self.__newName): + identity["filename"] = self.__newName + return identity diff --git a/venv/lib/python3.10/site-packages/github/InputGitAuthor.py b/venv/lib/python3.10/site-packages/github/InputGitAuthor.py new file mode 100644 index 0000000000000000000000000000000000000000..9b9da24d3c82b51a9ebbbb1178b56c567eff684a --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/InputGitAuthor.py @@ -0,0 +1,70 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Nic Dahlquist # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from typing import Any + +from github.GithubObject import NotSet, Opt, is_defined, is_optional + + +class InputGitAuthor: + """ + This class represents InputGitAuthors. + """ + + def __init__(self, name: str, email: str, date: Opt[str] = NotSet): + assert isinstance(name, str), name + assert isinstance(email, str), email + assert is_optional(date, str), date # @todo Datetime? + + self.__name: str = name + self.__email: str = email + self.__date: Opt[str] = date + + def __repr__(self) -> str: + return f'InputGitAuthor(name="{self.__name}")' + + @property + def _identity(self) -> dict[str, str]: + identity: dict[str, Any] = { + "name": self.__name, + "email": self.__email, + } + if is_defined(self.__date): + identity["date"] = self.__date + return identity diff --git a/venv/lib/python3.10/site-packages/github/InputGitTreeElement.py b/venv/lib/python3.10/site-packages/github/InputGitTreeElement.py new file mode 100644 index 0000000000000000000000000000000000000000..8a05b5bf7c775a44555115c7258841ddc977c053 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/InputGitTreeElement.py @@ -0,0 +1,78 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from typing import Any + +from github.GithubObject import NotSet, Opt, is_defined, is_optional + + +class InputGitTreeElement: + """ + This class represents InputGitTreeElements. + """ + + def __init__( + self, + path: str, + mode: str, + type: str, + content: Opt[str] = NotSet, + sha: Opt[str | None] = NotSet, + ): + assert isinstance(path, str), path + assert isinstance(mode, str), mode + assert isinstance(type, str), type + assert is_optional(content, str), content + assert sha is None or is_optional(sha, str), sha + self.__path = path + self.__mode = mode + self.__type = type + self.__content = content + self.__sha: Opt[str] | None = sha + + @property + def _identity(self) -> dict[str, Any]: + identity: dict[str, Any] = { + "path": self.__path, + "mode": self.__mode, + "type": self.__type, + } + if is_defined(self.__sha): + identity["sha"] = self.__sha + if is_defined(self.__content): + identity["content"] = self.__content + return identity diff --git a/venv/lib/python3.10/site-packages/github/Installation.py b/venv/lib/python3.10/site-packages/github/Installation.py new file mode 100644 index 0000000000000000000000000000000000000000..caafbc2bace54d5251065a8761b5e19fd576d17c --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/Installation.py @@ -0,0 +1,280 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2017 Jannis Gebauer # +# Copyright 2017 Simon # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Adam Baratz # +# Copyright 2019 Rigas Papathanasopoulos # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2024 Min RK # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from datetime import datetime +from typing import TYPE_CHECKING, Any + +import github.Authorization +import github.Event +import github.Gist +import github.GithubObject +import github.Issue +import github.NamedUser +import github.Notification +import github.Organization +import github.PaginatedList +import github.Plan +import github.Repository +import github.UserKey +from github import Consts +from github.Auth import AppAuth +from github.GithubObject import Attribute, NonCompletableGithubObject, NotSet +from github.PaginatedList import PaginatedList +from github.Requester import Requester + +if TYPE_CHECKING: + from github.MainClass import Github + from github.NamedUser import NamedUser + from github.Organization import Organization + +INTEGRATION_PREVIEW_HEADERS = {"Accept": Consts.mediaTypeIntegrationPreview} + + +class Installation(NonCompletableGithubObject): + """ + This class represents Installations. + + The reference can be found here + https://docs.github.com/en/rest/reference/apps#installations + + The OpenAPI schema can be found at + - /components/schemas/installation + + """ + + def _initAttributes(self) -> None: + self._access_tokens_url: Attribute[str] = NotSet + self._account: Attribute[NamedUser | Organization] = NotSet + self._app_id: Attribute[int] = NotSet + self._app_slug: Attribute[str] = NotSet + self._contact_email: Attribute[str] = NotSet + self._created_at: Attribute[datetime] = NotSet + self._events: Attribute[list[str]] = NotSet + self._has_multiple_single_files: Attribute[bool] = NotSet + self._html_url: Attribute[str] = NotSet + self._id: Attribute[int] = NotSet + self._permissions: Attribute[dict[str, Any]] = NotSet + self._repositories_url: Attribute[str] = NotSet + self._repository_selection: Attribute[str] = NotSet + self._single_file_name: Attribute[str] = NotSet + self._single_file_paths: Attribute[list[str]] = NotSet + self._suspended_at: Attribute[datetime] = NotSet + self._suspended_by: Attribute[NamedUser] = NotSet + self._target_id: Attribute[int] = NotSet + self._target_type: Attribute[str] = NotSet + self._updated_at: Attribute[datetime] = NotSet + + def __init__( + self, + requester: Requester, + headers: dict[str, str | int], + attributes: Any, + ) -> None: + super().__init__(requester, headers, attributes) + + auth = self._requester.auth if self._requester is not None else None + # Usually, an Installation is created from a Requester with App authentication + if isinstance(auth, AppAuth): + # But the installation has to authenticate as an installation (e.g. for get_repos()) + auth = auth.get_installation_auth(self.id, requester=self._requester) + self._requester = self._requester.withAuth(auth) + + def __repr__(self) -> str: + return self.get__repr__({"id": self._id.value}) + + @property + def access_tokens_url(self) -> str: + return self._access_tokens_url.value + + @property + def account(self) -> NamedUser | Organization: + return self._account.value + + @property + def app_id(self) -> int: + return self._app_id.value + + @property + def app_slug(self) -> str: + return self._app_slug.value + + @property + def contact_email(self) -> str: + return self._contact_email.value + + @property + def created_at(self) -> datetime: + return self._created_at.value + + @property + def events(self) -> list[str]: + return self._events.value + + @property + def has_multiple_single_files(self) -> bool: + return self._has_multiple_single_files.value + + @property + def html_url(self) -> str: + return self._html_url.value + + @property + def id(self) -> int: + return self._id.value + + @property + def permissions(self) -> dict[str, Any]: + return self._permissions.value + + @property + def repositories_url(self) -> str: + return self._repositories_url.value + + @property + def repository_selection(self) -> str: + return self._repository_selection.value + + @property + def requester(self) -> Requester: + """ + Return my Requester object. + + For example, to make requests to API endpoints not yet supported by PyGitHub. + + """ + return self._requester + + @property + def single_file_name(self) -> str: + return self._single_file_name.value + + @property + def single_file_paths(self) -> list[str]: + return self._single_file_paths.value + + @property + def suspended_at(self) -> datetime: + return self._suspended_at.value + + @property + def suspended_by(self) -> NamedUser: + return self._suspended_by.value + + @property + def target_id(self) -> int: + return self._target_id.value + + @property + def target_type(self) -> str: + return self._target_type.value + + @property + def updated_at(self) -> datetime: + return self._updated_at.value + + def get_github_for_installation(self) -> Github: + return github.Github(**self._requester.kwargs) + + def get_repos(self) -> PaginatedList[github.Repository.Repository]: + """ + :calls: `GET /installation/repositories `_ + """ + url_parameters: dict[str, Any] = {} + + return PaginatedList( + contentClass=github.Repository.Repository, + requester=self._requester, + firstUrl="/installation/repositories", + firstParams=url_parameters, + headers=INTEGRATION_PREVIEW_HEADERS, + list_item="repositories", + ) + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "access_tokens_url" in attributes: # pragma no branch + self._access_tokens_url = self._makeStringAttribute(attributes["access_tokens_url"]) + if "account" in attributes and "target_type" in attributes: # pragma no branch + target_type = attributes["target_type"] + if target_type == "User": + self._account = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["account"]) + if target_type == "Organization": + self._account = self._makeClassAttribute(github.Organization.Organization, attributes["account"]) + if "app_id" in attributes: # pragma no branch + self._app_id = self._makeIntAttribute(attributes["app_id"]) + if "app_slug" in attributes: # pragma no branch + self._app_slug = self._makeStringAttribute(attributes["app_slug"]) + if "contact_email" in attributes: # pragma no branch + self._contact_email = self._makeStringAttribute(attributes["contact_email"]) + if "created_at" in attributes: # pragma no branch + self._created_at = self._makeDatetimeAttribute(attributes["created_at"]) + if "events" in attributes: # pragma no branch + self._events = self._makeListOfStringsAttribute(attributes["events"]) + if "has_multiple_single_files" in attributes: # pragma no branch + self._has_multiple_single_files = self._makeBoolAttribute(attributes["has_multiple_single_files"]) + if "html_url" in attributes: # pragma no branch + self._html_url = self._makeStringAttribute(attributes["html_url"]) + if "id" in attributes: # pragma no branch + self._id = self._makeIntAttribute(attributes["id"]) + if "permissions" in attributes: # pragma no branch + self._permissions = self._makeDictAttribute(attributes["permissions"]) + if "repositories_url" in attributes: # pragma no branch + self._repositories_url = self._makeStringAttribute(attributes["repositories_url"]) + if "repository_selection" in attributes: # pragma no branch + self._repository_selection = self._makeStringAttribute(attributes["repository_selection"]) + if "single_file_name" in attributes: # pragma no branch + self._single_file_name = self._makeStringAttribute(attributes["single_file_name"]) + if "single_file_paths" in attributes: # pragma no branch + self._single_file_paths = self._makeListOfStringsAttribute(attributes["single_file_paths"]) + if "suspended_at" in attributes: # pragma no branch + self._suspended_at = self._makeDatetimeAttribute(attributes["suspended_at"]) + if "suspended_by" in attributes: # pragma no branch + self._suspended_by = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["suspended_by"]) + if "target_id" in attributes: # pragma no branch + self._target_id = self._makeIntAttribute(attributes["target_id"]) + if "target_type" in attributes: # pragma no branch + self._target_type = self._makeStringAttribute(attributes["target_type"]) + if "updated_at" in attributes: # pragma no branch + self._updated_at = self._makeDatetimeAttribute(attributes["updated_at"]) diff --git a/venv/lib/python3.10/site-packages/github/InstallationAuthorization.py b/venv/lib/python3.10/site-packages/github/InstallationAuthorization.py new file mode 100644 index 0000000000000000000000000000000000000000..9b7e1a0ea21ffa67a46250fa70753f6de1e2597e --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/InstallationAuthorization.py @@ -0,0 +1,136 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2017 Simon # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2023 Denis Blanchette # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from datetime import datetime +from typing import TYPE_CHECKING, Any + +import github.NamedUser +import github.PaginatedList +import github.Repository +from github.GithubObject import Attribute, NonCompletableGithubObject, NotSet + +if TYPE_CHECKING: + from github.NamedUser import NamedUser + from github.Repository import Repository + + +class InstallationAuthorization(NonCompletableGithubObject): + """ + This class represents InstallationAuthorizations. + + The OpenAPI schema can be found at + - /components/schemas/installation-token + + """ + + def _initAttributes(self) -> None: + self._expires_at: Attribute[datetime] = NotSet + self._has_multiple_single_files: Attribute[bool] = NotSet + self._on_behalf_of: Attribute[NamedUser] = NotSet + self._permissions: Attribute[dict] = NotSet + self._repositories: Attribute[list[Repository]] = NotSet + self._repository_selection: Attribute[str] = NotSet + self._single_file: Attribute[str] = NotSet + self._single_file_paths: Attribute[list[str]] = NotSet + self._token: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"expires_at": self._expires_at.value}) + + @property + def expires_at(self) -> datetime: + return self._expires_at.value + + @property + def has_multiple_single_files(self) -> bool: + return self._has_multiple_single_files.value + + @property + def on_behalf_of(self) -> NamedUser: + return self._on_behalf_of.value + + @property + def permissions(self) -> dict: + return self._permissions.value + + @property + def repositories(self) -> list[Repository]: + return self._repositories.value + + @property + def repository_selection(self) -> str: + return self._repository_selection.value + + @property + def single_file(self) -> str: + return self._single_file.value + + @property + def single_file_paths(self) -> list[str]: + return self._single_file_paths.value + + @property + def token(self) -> str: + return self._token.value + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "expires_at" in attributes: # pragma no branch + self._expires_at = self._makeDatetimeAttribute(attributes["expires_at"]) + if "has_multiple_single_files" in attributes: # pragma no branch + self._has_multiple_single_files = self._makeBoolAttribute(attributes["has_multiple_single_files"]) + if "on_behalf_of" in attributes: # pragma no branch + self._on_behalf_of = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["on_behalf_of"]) + if "permissions" in attributes: # pragma no branch + self._permissions = self._makeDictAttribute(attributes["permissions"]) + if "repositories" in attributes: # pragma no branch + self._repositories = self._makeListOfClassesAttribute( + github.Repository.Repository, attributes["repositories"] + ) + if "repository_selection" in attributes: # pragma no branch + self._repository_selection = self._makeStringAttribute(attributes["repository_selection"]) + if "single_file" in attributes: # pragma no branch + self._single_file = self._makeStringAttribute(attributes["single_file"]) + if "single_file_paths" in attributes: # pragma no branch + self._single_file_paths = self._makeListOfStringsAttribute(attributes["single_file_paths"]) + if "token" in attributes: # pragma no branch + self._token = self._makeStringAttribute(attributes["token"]) diff --git a/venv/lib/python3.10/site-packages/github/Invitation.py b/venv/lib/python3.10/site-packages/github/Invitation.py new file mode 100644 index 0000000000000000000000000000000000000000..824670e7292c7e7672d775b8b4bc6882994c7767 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/Invitation.py @@ -0,0 +1,155 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2017 Jannis Gebauer # +# Copyright 2017 Simon # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from datetime import datetime +from typing import TYPE_CHECKING, Any + +import github.GithubObject +import github.NamedUser +import github.Repository +from github.GithubObject import Attribute, CompletableGithubObject, NotSet + +if TYPE_CHECKING: + from github.NamedUser import NamedUser + from github.Repository import Repository + + +class Invitation(CompletableGithubObject): + """ + This class represents repository invitations. + + The reference can be found here + https://docs.github.com/en/rest/reference/repos#invitations + + The OpenAPI schema can be found at + - /components/schemas/repository-invitation + + """ + + def _initAttributes(self) -> None: + self._created_at: Attribute[datetime] = NotSet + self._expired: Attribute[bool] = NotSet + self._html_url: Attribute[str] = NotSet + self._id: Attribute[int] = NotSet + self._invitee: Attribute[NamedUser] = NotSet + self._inviter: Attribute[NamedUser] = NotSet + self._node_id: Attribute[str] = NotSet + self._permissions: Attribute[str] = NotSet + self._repository: Attribute[Repository] = NotSet + self._url: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"id": self._id.value}) + + @property + def created_at(self) -> datetime: + self._completeIfNotSet(self._created_at) + return self._created_at.value + + @property + def expired(self) -> bool: + self._completeIfNotSet(self._expired) + return self._expired.value + + @property + def html_url(self) -> str: + self._completeIfNotSet(self._html_url) + return self._html_url.value + + @property + def id(self) -> int: + self._completeIfNotSet(self._id) + return self._id.value + + @property + def invitee(self) -> NamedUser: + self._completeIfNotSet(self._invitee) + return self._invitee.value + + @property + def inviter(self) -> NamedUser: + self._completeIfNotSet(self._inviter) + return self._inviter.value + + @property + def node_id(self) -> str: + self._completeIfNotSet(self._node_id) + return self._node_id.value + + @property + def permissions(self) -> str: + self._completeIfNotSet(self._permissions) + return self._permissions.value + + @property + def repository(self) -> Repository: + self._completeIfNotSet(self._repository) + return self._repository.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "created_at" in attributes: # pragma no branch + self._created_at = self._makeDatetimeAttribute(attributes["created_at"]) + if "expired" in attributes: # pragma no branch + self._expired = self._makeBoolAttribute(attributes["expired"]) + if "html_url" in attributes: # pragma no branch + self._html_url = self._makeStringAttribute(attributes["html_url"]) + if "id" in attributes: # pragma no branch + self._id = self._makeIntAttribute(attributes["id"]) + if "invitee" in attributes: # pragma no branch + self._invitee = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["invitee"]) + if "inviter" in attributes: # pragma no branch + self._inviter = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["inviter"]) + if "node_id" in attributes: # pragma no branch + self._node_id = self._makeStringAttribute(attributes["node_id"]) + + if "permissions" in attributes: # pragma no branch + self._permissions = self._makeStringAttribute(attributes["permissions"]) + if "repository" in attributes: # pragma no branch + self._repository = self._makeClassAttribute(github.Repository.Repository, attributes["repository"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) diff --git a/venv/lib/python3.10/site-packages/github/Issue.py b/venv/lib/python3.10/site-packages/github/Issue.py new file mode 100644 index 0000000000000000000000000000000000000000..e6a8f21845d72412641b2c0fdb42e60edcd9740e --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/Issue.py @@ -0,0 +1,673 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Andrew Bettison # +# Copyright 2012 Philip Kimmey # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 David Farr # +# Copyright 2013 Stuart Glaser # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2015 Raja Reddy Karri # +# Copyright 2016 @tmshn # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Matt Babineau # +# Copyright 2016 Peter Buckley # +# Copyright 2017 Nicolas Agustín Torres # +# Copyright 2017 Simon # +# Copyright 2018 Aaron L. Levine # +# Copyright 2018 Shinichi TAMURA # +# Copyright 2018 Steve Kowalik # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 per1234 # +# Copyright 2018 sfdye # +# Copyright 2019 Filipe Laíns # +# Copyright 2019 Nick Campbell # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Huan-Cheng Chang # +# Copyright 2020 Huw Jones # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Mark Walker # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Nicolas Schweitzer # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2024 Malik Shahzad Muzaffar # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +import urllib.parse +from datetime import datetime +from typing import TYPE_CHECKING, Any + +import github.GithubApp +import github.GithubObject +import github.IssueComment +import github.IssueEvent +import github.IssuePullRequest +import github.Label +import github.Milestone +import github.NamedUser +import github.PullRequest +import github.Reaction +import github.Repository +import github.TimelineEvent +from github import Consts +from github.GithubObject import ( + Attribute, + CompletableGithubObject, + NotSet, + Opt, + is_defined, + is_optional, + is_optional_list, + is_undefined, +) +from github.PaginatedList import PaginatedList + +if TYPE_CHECKING: + from github.GithubApp import GithubApp + from github.IssueComment import IssueComment + from github.IssueEvent import IssueEvent + from github.IssuePullRequest import IssuePullRequest + from github.Label import Label + from github.Milestone import Milestone + from github.NamedUser import NamedUser + from github.PullRequest import PullRequest + from github.Reaction import Reaction + from github.Repository import Repository + from github.TimelineEvent import TimelineEvent + + +class Issue(CompletableGithubObject): + """ + This class represents Issues. + + The reference can be found here + https://docs.github.com/en/rest/reference/issues + + The OpenAPI schema can be found at + - /components/schemas/issue + - /components/schemas/issue-search-result-item + - /components/schemas/nullable-issue + + """ + + def _initAttributes(self) -> None: + self._active_lock_reason: Attribute[str | None] = NotSet + self._assignee: Attribute[NamedUser | None] = NotSet + self._assignees: Attribute[list[NamedUser]] = NotSet + self._author_association: Attribute[str] = NotSet + self._body: Attribute[str] = NotSet + self._body_html: Attribute[str] = NotSet + self._body_text: Attribute[str] = NotSet + self._closed_at: Attribute[datetime] = NotSet + self._closed_by: Attribute[NamedUser] = NotSet + self._comments: Attribute[int] = NotSet + self._comments_url: Attribute[str] = NotSet + self._created_at: Attribute[datetime] = NotSet + self._draft: Attribute[bool] = NotSet + self._events_url: Attribute[str] = NotSet + self._html_url: Attribute[str] = NotSet + self._id: Attribute[int] = NotSet + self._labels: Attribute[list[Label]] = NotSet + self._labels_url: Attribute[str] = NotSet + self._locked: Attribute[bool] = NotSet + self._milestone: Attribute[Milestone] = NotSet + self._node_id: Attribute[str] = NotSet + self._number: Attribute[int] = NotSet + self._performed_via_github_app: Attribute[GithubApp] = NotSet + self._pull_request: Attribute[IssuePullRequest] = NotSet + self._reactions: Attribute[dict] = NotSet + self._repository: Attribute[Repository] = NotSet + self._repository_url: Attribute[str] = NotSet + self._score: Attribute[float] = NotSet + self._state: Attribute[str] = NotSet + self._state_reason: Attribute[str | None] = NotSet + self._text_matches: Attribute[dict[str, Any]] = NotSet + self._timeline_url: Attribute[str] = NotSet + self._title: Attribute[str] = NotSet + self._updated_at: Attribute[datetime] = NotSet + self._url: Attribute[str] = NotSet + self._user: Attribute[NamedUser] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"number": self._number.value, "title": self._title.value}) + + @property + def _identity(self) -> int: + return self.number + + @property + def active_lock_reason(self) -> str | None: + self._completeIfNotSet(self._active_lock_reason) + return self._active_lock_reason.value + + @property + def assignee(self) -> NamedUser | None: + self._completeIfNotSet(self._assignee) + return self._assignee.value + + @property + def assignees(self) -> list[NamedUser]: + self._completeIfNotSet(self._assignees) + return self._assignees.value + + @property + def author_association(self) -> str: + self._completeIfNotSet(self._author_association) + return self._author_association.value + + @property + def body(self) -> str: + self._completeIfNotSet(self._body) + return self._body.value + + @property + def body_html(self) -> str: + self._completeIfNotSet(self._body_html) + return self._body_html.value + + @property + def body_text(self) -> str: + self._completeIfNotSet(self._body_text) + return self._body_text.value + + @property + def closed_at(self) -> datetime: + self._completeIfNotSet(self._closed_at) + return self._closed_at.value + + @property + def closed_by(self) -> NamedUser | None: + self._completeIfNotSet(self._closed_by) + return self._closed_by.value + + @property + def comments(self) -> int: + self._completeIfNotSet(self._comments) + return self._comments.value + + @property + def comments_url(self) -> str: + self._completeIfNotSet(self._comments_url) + return self._comments_url.value + + @property + def created_at(self) -> datetime: + self._completeIfNotSet(self._created_at) + return self._created_at.value + + @property + def draft(self) -> bool: + self._completeIfNotSet(self._draft) + return self._draft.value + + @property + def events_url(self) -> str: + self._completeIfNotSet(self._events_url) + return self._events_url.value + + @property + def html_url(self) -> str: + self._completeIfNotSet(self._html_url) + return self._html_url.value + + @property + def id(self) -> int: + self._completeIfNotSet(self._id) + return self._id.value + + @property + def labels(self) -> list[Label]: + self._completeIfNotSet(self._labels) + return self._labels.value + + @property + def labels_url(self) -> str: + self._completeIfNotSet(self._labels_url) + return self._labels_url.value + + @property + def locked(self) -> bool: + self._completeIfNotSet(self._locked) + return self._locked.value + + @property + def milestone(self) -> Milestone: + self._completeIfNotSet(self._milestone) + return self._milestone.value + + @property + def node_id(self) -> str: + self._completeIfNotSet(self._node_id) + return self._node_id.value + + @property + def number(self) -> int: + self._completeIfNotSet(self._number) + return self._number.value + + @property + def performed_via_github_app(self) -> GithubApp: + self._completeIfNotSet(self._performed_via_github_app) + return self._performed_via_github_app.value + + @property + def pull_request(self) -> IssuePullRequest | None: + self._completeIfNotSet(self._pull_request) + return self._pull_request.value + + @property + def reactions(self) -> dict: + self._completeIfNotSet(self._reactions) + return self._reactions.value + + @property + def repository(self) -> Repository: + self._completeIfNotSet(self._repository) + if is_undefined(self._repository): + # The repository was not set automatically, so it must be looked up by url. + repo_url = "/".join(self.url.split("/")[:-2]) + self._repository = github.GithubObject._ValuedAttribute( + github.Repository.Repository(self._requester, self._headers, {"url": repo_url}, completed=False) + ) + return self._repository.value + + @property + def repository_url(self) -> str: + self._completeIfNotSet(self._repository_url) + return self._repository_url.value + + @property + def score(self) -> float: + self._completeIfNotSet(self._score) + return self._score.value + + @property + def state(self) -> str: + self._completeIfNotSet(self._state) + return self._state.value + + @property + def state_reason(self) -> str | None: + self._completeIfNotSet(self._state_reason) + return self._state_reason.value + + @property + def text_matches(self) -> dict[str, Any]: + self._completeIfNotSet(self._text_matches) + return self._text_matches.value + + @property + def timeline_url(self) -> str: + self._completeIfNotSet(self._timeline_url) + return self._timeline_url.value + + @property + def title(self) -> str: + self._completeIfNotSet(self._title) + return self._title.value + + @property + def updated_at(self) -> datetime: + self._completeIfNotSet(self._updated_at) + return self._updated_at.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + @property + def user(self) -> NamedUser: + self._completeIfNotSet(self._user) + return self._user.value + + def as_pull_request(self) -> PullRequest: + """ + :calls: `GET /repos/{owner}/{repo}/pulls/{number} `_ + """ + headers, data = self._requester.requestJsonAndCheck("GET", "/pulls/".join(self.url.rsplit("/issues/", 1))) + return github.PullRequest.PullRequest(self._requester, headers, data, completed=True) + + def add_to_assignees(self, *assignees: NamedUser | str) -> None: + """ + :calls: `POST /repos/{owner}/{repo}/issues/{number}/assignees `_ + """ + assert all(isinstance(element, (github.NamedUser.NamedUser, str)) for element in assignees), assignees + post_parameters = { + "assignees": [ + assignee.login if isinstance(assignee, github.NamedUser.NamedUser) else assignee + for assignee in assignees + ] + } + headers, data = self._requester.requestJsonAndCheck("POST", f"{self.url}/assignees", input=post_parameters) + self._useAttributes(data) + + def add_to_labels(self, *labels: Label | str) -> None: + """ + :calls: `POST /repos/{owner}/{repo}/issues/{number}/labels `_ + """ + assert all(isinstance(element, (github.Label.Label, str)) for element in labels), labels + post_parameters = [label.name if isinstance(label, github.Label.Label) else label for label in labels] + headers, data = self._requester.requestJsonAndCheck("POST", f"{self.url}/labels", input=post_parameters) + + def create_comment(self, body: str) -> IssueComment: + """ + :calls: `POST /repos/{owner}/{repo}/issues/{number}/comments `_ + """ + assert isinstance(body, str), body + post_parameters = { + "body": body, + } + headers, data = self._requester.requestJsonAndCheck("POST", f"{self.url}/comments", input=post_parameters) + return github.IssueComment.IssueComment(self._requester, headers, data, completed=True) + + def delete_labels(self) -> None: + """ + :calls: `DELETE /repos/{owner}/{repo}/issues/{number}/labels `_ + """ + headers, data = self._requester.requestJsonAndCheck("DELETE", f"{self.url}/labels") + + def edit( + self, + title: Opt[str] = NotSet, + body: Opt[str] = NotSet, + assignee: Opt[str | NamedUser | None] = NotSet, + state: Opt[str] = NotSet, + milestone: Opt[Milestone | None] = NotSet, + labels: Opt[list[str]] = NotSet, + assignees: Opt[list[NamedUser | str]] = NotSet, + state_reason: Opt[str] = NotSet, + ) -> None: + """ + :calls: `PATCH /repos/{owner}/{repo}/issues/{number} `_ + :param assignee: deprecated, use `assignees` instead. `assignee=None` means to remove current assignee. + :param milestone: `milestone=None` means to remove current milestone. + """ + assert is_optional(title, str), title + assert is_optional(body, str), body + assert assignee is None or is_optional(assignee, (github.NamedUser.NamedUser, str)), assignee + assert is_optional_list(assignees, (github.NamedUser.NamedUser, str)), assignees + assert is_optional(state, str), state + assert milestone is None or is_optional(milestone, github.Milestone.Milestone), milestone + assert is_optional_list(labels, str), labels + + post_parameters = NotSet.remove_unset_items( + { + "title": title, + "body": body, + "state": state, + "state_reason": state_reason, + "labels": labels, + "assignee": assignee._identity + if isinstance(assignee, github.NamedUser.NamedUser) + else (assignee or ""), + "milestone": milestone._identity + if isinstance(milestone, github.Milestone.Milestone) + else (milestone or ""), + } + ) + + if is_defined(assignees): + post_parameters["assignees"] = [ + element._identity if isinstance(element, github.NamedUser.NamedUser) else element + for element in assignees + ] + + headers, data = self._requester.requestJsonAndCheck("PATCH", self.url, input=post_parameters) + self._useAttributes(data) + + def lock(self, lock_reason: str) -> None: + """ + :calls: `PUT /repos/{owner}/{repo}/issues/{issue_number}/lock `_ + """ + assert isinstance(lock_reason, str), lock_reason + put_parameters = {"lock_reason": lock_reason} + headers, data = self._requester.requestJsonAndCheck( + "PUT", + f"{self.url}/lock", + input=put_parameters, + headers={"Accept": Consts.mediaTypeLockReasonPreview}, + ) + + def unlock(self) -> None: + """ + :calls: `DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock `_ + """ + headers, data = self._requester.requestJsonAndCheck("DELETE", f"{self.url}/lock") + + def get_comment(self, id: int) -> IssueComment: + """ + :calls: `GET /repos/{owner}/{repo}/issues/comments/{id} `_ + """ + assert isinstance(id, int), id + headers, data = self._requester.requestJsonAndCheck("GET", f"{self._parentUrl(self.url)}/comments/{id}") + return github.IssueComment.IssueComment(self._requester, headers, data, completed=True) + + def get_comments(self, since: Opt[datetime] = NotSet) -> PaginatedList[IssueComment]: + """ + :calls: `GET /repos/{owner}/{repo}/issues/{number}/comments `_ + """ + url_parameters = {} + if is_defined(since): + assert isinstance(since, datetime), since + url_parameters["since"] = since.strftime("%Y-%m-%dT%H:%M:%SZ") + + return PaginatedList( + github.IssueComment.IssueComment, + self._requester, + f"{self.url}/comments", + url_parameters, + ) + + def get_events(self) -> PaginatedList[IssueEvent]: + """ + :calls: `GET /repos/{owner}/{repo}/issues/{issue_number}/events `_ + """ + return PaginatedList( + github.IssueEvent.IssueEvent, + self._requester, + f"{self.url}/events", + None, + headers={"Accept": Consts.mediaTypeLockReasonPreview}, + ) + + def get_labels(self) -> PaginatedList[Label]: + """ + :calls: `GET /repos/{owner}/{repo}/issues/{number}/labels `_ + """ + return PaginatedList(github.Label.Label, self._requester, f"{self.url}/labels", None) + + def remove_from_assignees(self, *assignees: NamedUser | str) -> None: + """ + :calls: `DELETE /repos/{owner}/{repo}/issues/{number}/assignees `_ + """ + assert all(isinstance(element, (github.NamedUser.NamedUser, str)) for element in assignees), assignees + post_parameters = { + "assignees": [ + assignee.login if isinstance(assignee, github.NamedUser.NamedUser) else assignee + for assignee in assignees + ] + } + headers, data = self._requester.requestJsonAndCheck("DELETE", f"{self.url}/assignees", input=post_parameters) + self._useAttributes(data) + + def remove_from_labels(self, label: Label | str) -> None: + """ + :calls: `DELETE /repos/{owner}/{repo}/issues/{number}/labels/{name} `_ + """ + assert isinstance(label, (github.Label.Label, str)), label + if isinstance(label, github.Label.Label): + label = label._identity + else: + label = urllib.parse.quote(label) + headers, data = self._requester.requestJsonAndCheck("DELETE", f"{self.url}/labels/{label}") + + def set_labels(self, *labels: Label | str) -> None: + """ + :calls: `PUT /repos/{owner}/{repo}/issues/{number}/labels `_ + """ + assert all(isinstance(element, (github.Label.Label, str)) for element in labels), labels + post_parameters = [label.name if isinstance(label, github.Label.Label) else label for label in labels] + headers, data = self._requester.requestJsonAndCheck("PUT", f"{self.url}/labels", input=post_parameters) + + def get_reactions(self) -> PaginatedList[Reaction]: + """ + :calls: `GET /repos/{owner}/{repo}/issues/{number}/reactions `_ + """ + return PaginatedList( + github.Reaction.Reaction, + self._requester, + f"{self.url}/reactions", + None, + headers={"Accept": Consts.mediaTypeReactionsPreview}, + ) + + def create_reaction(self, reaction_type: str) -> Reaction: + """ + :calls: `POST /repos/{owner}/{repo}/issues/{number}/reactions `_ + """ + assert isinstance(reaction_type, str), reaction_type + post_parameters = { + "content": reaction_type, + } + headers, data = self._requester.requestJsonAndCheck( + "POST", + f"{self.url}/reactions", + input=post_parameters, + headers={"Accept": Consts.mediaTypeReactionsPreview}, + ) + return github.Reaction.Reaction(self._requester, headers, data, completed=True) + + def delete_reaction(self, reaction_id: int) -> bool: + """ + :calls: `DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id} `_ + """ + assert isinstance(reaction_id, int), reaction_id + status, _, _ = self._requester.requestJson( + "DELETE", + f"{self.url}/reactions/{reaction_id}", + headers={"Accept": Consts.mediaTypeReactionsPreview}, + ) + return status == 204 + + def get_timeline(self) -> PaginatedList[TimelineEvent]: + """ + :calls: `GET /repos/{owner}/{repo}/issues/{number}/timeline `_ + """ + return PaginatedList( + github.TimelineEvent.TimelineEvent, + self._requester, + f"{self.url}/timeline", + None, + headers={"Accept": Consts.issueTimelineEventsPreview}, + ) + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "active_lock_reason" in attributes: # pragma no branch + self._active_lock_reason = self._makeStringAttribute(attributes["active_lock_reason"]) + if "assignee" in attributes: # pragma no branch + self._assignee = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["assignee"]) + if "assignees" in attributes: # pragma no branch + self._assignees = self._makeListOfClassesAttribute(github.NamedUser.NamedUser, attributes["assignees"]) + elif "assignee" in attributes: + if attributes["assignee"] is not None: + self._assignees = self._makeListOfClassesAttribute(github.NamedUser.NamedUser, [attributes["assignee"]]) + else: + self._assignees = self._makeListOfClassesAttribute(github.NamedUser.NamedUser, []) + if "author_association" in attributes: # pragma no branch + self._author_association = self._makeStringAttribute(attributes["author_association"]) + if "body" in attributes: # pragma no branch + self._body = self._makeStringAttribute(attributes["body"]) + if "body_html" in attributes: # pragma no branch + self._body_html = self._makeStringAttribute(attributes["body_html"]) + if "body_text" in attributes: # pragma no branch + self._body_text = self._makeStringAttribute(attributes["body_text"]) + if "closed_at" in attributes: # pragma no branch + self._closed_at = self._makeDatetimeAttribute(attributes["closed_at"]) + if "closed_by" in attributes: # pragma no branch + self._closed_by = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["closed_by"]) + if "comments" in attributes: # pragma no branch + self._comments = self._makeIntAttribute(attributes["comments"]) + if "comments_url" in attributes: # pragma no branch + self._comments_url = self._makeStringAttribute(attributes["comments_url"]) + if "created_at" in attributes: # pragma no branch + self._created_at = self._makeDatetimeAttribute(attributes["created_at"]) + if "draft" in attributes: # pragma no branch + self._draft = self._makeBoolAttribute(attributes["draft"]) + if "events_url" in attributes: # pragma no branch + self._events_url = self._makeStringAttribute(attributes["events_url"]) + if "html_url" in attributes: # pragma no branch + self._html_url = self._makeStringAttribute(attributes["html_url"]) + if "id" in attributes: # pragma no branch + self._id = self._makeIntAttribute(attributes["id"]) + if "labels" in attributes: # pragma no branch + self._labels = self._makeListOfClassesAttribute(github.Label.Label, attributes["labels"]) + if "labels_url" in attributes: # pragma no branch + self._labels_url = self._makeStringAttribute(attributes["labels_url"]) + if "locked" in attributes: # pragma no branch + self._locked = self._makeBoolAttribute(attributes["locked"]) + if "milestone" in attributes: # pragma no branch + self._milestone = self._makeClassAttribute(github.Milestone.Milestone, attributes["milestone"]) + if "node_id" in attributes: # pragma no branch + self._node_id = self._makeStringAttribute(attributes["node_id"]) + if "number" in attributes: # pragma no branch + self._number = self._makeIntAttribute(attributes["number"]) + if "performed_via_github_app" in attributes: # pragma no branch + self._performed_via_github_app = self._makeClassAttribute( + github.GithubApp.GithubApp, attributes["performed_via_github_app"] + ) + if "pull_request" in attributes: # pragma no branch + self._pull_request = self._makeClassAttribute( + github.IssuePullRequest.IssuePullRequest, attributes["pull_request"] + ) + if "reactions" in attributes: + self._reactions = self._makeDictAttribute(attributes["reactions"]) + if "repository" in attributes: # pragma no branch + self._repository = self._makeClassAttribute(github.Repository.Repository, attributes["repository"]) + if "repository_url" in attributes: # pragma no branch + self._repository_url = self._makeStringAttribute(attributes["repository_url"]) + if "score" in attributes: # pragma no branch + self._score = self._makeFloatAttribute(attributes["score"]) + if "state" in attributes: # pragma no branch + self._state = self._makeStringAttribute(attributes["state"]) + if "state_reason" in attributes: # pragma no branch + self._state_reason = self._makeStringAttribute(attributes["state_reason"]) + if "text_matches" in attributes: # pragma no branch + self._text_matches = self._makeDictAttribute(attributes["text_matches"]) + if "timeline_url" in attributes: # pragma no branch + self._timeline_url = self._makeStringAttribute(attributes["timeline_url"]) + if "title" in attributes: # pragma no branch + self._title = self._makeStringAttribute(attributes["title"]) + if "updated_at" in attributes: # pragma no branch + self._updated_at = self._makeDatetimeAttribute(attributes["updated_at"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) + if "user" in attributes: # pragma no branch + self._user = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["user"]) diff --git a/venv/lib/python3.10/site-packages/github/IssueComment.py b/venv/lib/python3.10/site-packages/github/IssueComment.py new file mode 100644 index 0000000000000000000000000000000000000000..018d97b8c0fceae395c25dd1ac9d1845757951cf --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/IssueComment.py @@ -0,0 +1,289 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Michael Stead # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2017 Nicolas Agustín Torres # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 per1234 # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Huan-Cheng Chang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Mark Walker # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Malik Shahzad Muzaffar # +# Copyright 2023 Trim21 # +# Copyright 2024 Arash Kadkhodaei # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from datetime import datetime +from typing import TYPE_CHECKING, Any + +import github.GithubApp +import github.GithubObject +import github.NamedUser +from github import Consts +from github.GithubObject import Attribute, CompletableGithubObject, NotSet +from github.PaginatedList import PaginatedList + +if TYPE_CHECKING: + from github.GithubApp import GithubApp + from github.NamedUser import NamedUser + from github.Reaction import Reaction + + +class IssueComment(CompletableGithubObject): + """ + This class represents IssueComments. + + The reference can be found here + https://docs.github.com/en/rest/reference/issues#comments + + The OpenAPI schema can be found at + - /components/schemas/issue-comment + + """ + + def _initAttributes(self) -> None: + self._author_association: Attribute[str] = NotSet + self._body: Attribute[str] = NotSet + self._body_html: Attribute[str] = NotSet + self._body_text: Attribute[str] = NotSet + self._created_at: Attribute[datetime] = NotSet + self._html_url: Attribute[str] = NotSet + self._id: Attribute[int] = NotSet + self._issue_url: Attribute[str] = NotSet + self._node_id: Attribute[str] = NotSet + self._performed_via_github_app: Attribute[GithubApp] = NotSet + self._reactions: Attribute[dict] = NotSet + self._updated_at: Attribute[datetime] = NotSet + self._url: Attribute[str] = NotSet + self._user: Attribute[NamedUser] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"id": self._id.value, "user": self._user.value}) + + @property + def author_association(self) -> str: + self._completeIfNotSet(self._author_association) + return self._author_association.value + + @property + def body(self) -> str: + self._completeIfNotSet(self._body) + return self._body.value + + @property + def body_html(self) -> str: + self._completeIfNotSet(self._body_html) + return self._body_html.value + + @property + def body_text(self) -> str: + self._completeIfNotSet(self._body_text) + return self._body_text.value + + @property + def created_at(self) -> datetime: + self._completeIfNotSet(self._created_at) + return self._created_at.value + + @property + def html_url(self) -> str: + self._completeIfNotSet(self._html_url) + return self._html_url.value + + @property + def id(self) -> int: + self._completeIfNotSet(self._id) + return self._id.value + + @property + def issue_url(self) -> str: + self._completeIfNotSet(self._issue_url) + return self._issue_url.value + + @property + def node_id(self) -> str: + self._completeIfNotSet(self._node_id) + return self._node_id.value + + @property + def performed_via_github_app(self) -> GithubApp: + self._completeIfNotSet(self._performed_via_github_app) + return self._performed_via_github_app.value + + @property + def reactions(self) -> dict: + self._completeIfNotSet(self._reactions) + return self._reactions.value + + @property + def updated_at(self) -> datetime: + self._completeIfNotSet(self._updated_at) + return self._updated_at.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + @property + def user(self) -> NamedUser: + self._completeIfNotSet(self._user) + return self._user.value + + def delete(self) -> None: + """ + :calls: `DELETE /repos/{owner}/{repo}/issues/comments/{id} `_ + """ + headers, data = self._requester.requestJsonAndCheck("DELETE", self.url) + + def edit(self, body: str) -> None: + """ + :calls: `PATCH /repos/{owner}/{repo}/issues/comments/{id} `_ + """ + assert isinstance(body, str), body + post_parameters = { + "body": body, + } + headers, data = self._requester.requestJsonAndCheck("PATCH", self.url, input=post_parameters) + self._useAttributes(data) + + def get_reactions(self) -> PaginatedList[Reaction]: + """ + :calls: `GET /repos/{owner}/{repo}/issues/comments/{id}/reactions + `_ + """ + return PaginatedList( + github.Reaction.Reaction, + self._requester, + f"{self.url}/reactions", + None, + headers={"Accept": Consts.mediaTypeReactionsPreview}, + ) + + def create_reaction(self, reaction_type: str) -> Reaction: + """ + :calls: `POST /repos/{owner}/{repo}/issues/comments/{id}/reactions + `_ + """ + assert isinstance(reaction_type, str), reaction_type + post_parameters = { + "content": reaction_type, + } + headers, data = self._requester.requestJsonAndCheck( + "POST", + f"{self.url}/reactions", + input=post_parameters, + headers={"Accept": Consts.mediaTypeReactionsPreview}, + ) + return github.Reaction.Reaction(self._requester, headers, data, completed=True) + + def delete_reaction(self, reaction_id: int) -> bool: + """ + :calls: `DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id} + `_ + """ + assert isinstance(reaction_id, int), reaction_id + status, _, _ = self._requester.requestJson( + "DELETE", + f"{self.url}/reactions/{reaction_id}", + headers={"Accept": Consts.mediaTypeReactionsPreview}, + ) + return status == 204 + + def minimize(self, reason: str = "OUTDATED") -> bool: + """ + :calls: `POST /graphql `_ with a mutation to minimize comment + + """ + assert isinstance(reason, str), reason + variables = { + "subjectId": self.node_id, + "classifier": reason, + } + _, data = self._requester.graphql_named_mutation( + mutation_name="minimizeComment", + mutation_input=NotSet.remove_unset_items(variables), + output_schema="minimizedComment { isMinimized }", + ) + return data["minimizedComment"]["isMinimized"] is True + + def unminimize(self) -> bool: + """ + :calls: `POST /graphql `_ with a mutation to unminimize comment + + """ + variables = { + "subjectId": self.node_id, + } + _, data = self._requester.graphql_named_mutation( + mutation_name="unminimizeComment", + mutation_input=NotSet.remove_unset_items(variables), + output_schema="unminimizedComment { isMinimized }", + ) + return data["unminimizedComment"]["isMinimized"] is False + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "author_association" in attributes: # pragma no branch + self._author_association = self._makeStringAttribute(attributes["author_association"]) + if "body" in attributes: # pragma no branch + self._body = self._makeStringAttribute(attributes["body"]) + if "body_html" in attributes: # pragma no branch + self._body_html = self._makeStringAttribute(attributes["body_html"]) + if "body_text" in attributes: # pragma no branch + self._body_text = self._makeStringAttribute(attributes["body_text"]) + if "created_at" in attributes: # pragma no branch + self._created_at = self._makeDatetimeAttribute(attributes["created_at"]) + if "html_url" in attributes: # pragma no branch + self._html_url = self._makeStringAttribute(attributes["html_url"]) + if "id" in attributes: # pragma no branch + self._id = self._makeIntAttribute(attributes["id"]) + if "issue_url" in attributes: # pragma no branch + self._issue_url = self._makeStringAttribute(attributes["issue_url"]) + if "node_id" in attributes: # pragma no branch + self._node_id = self._makeStringAttribute(attributes["node_id"]) + if "performed_via_github_app" in attributes: # pragma no branch + self._performed_via_github_app = self._makeClassAttribute( + github.GithubApp.GithubApp, attributes["performed_via_github_app"] + ) + if "reactions" in attributes: + self._reactions = self._makeDictAttribute(attributes["reactions"]) + if "updated_at" in attributes: # pragma no branch + self._updated_at = self._makeDatetimeAttribute(attributes["updated_at"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) + if "user" in attributes: # pragma no branch + self._user = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["user"]) diff --git a/venv/lib/python3.10/site-packages/github/IssueEvent.py b/venv/lib/python3.10/site-packages/github/IssueEvent.py new file mode 100644 index 0000000000000000000000000000000000000000..0ea4bb2aace98b986224005f37a9b8dfb29d8b01 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/IssueEvent.py @@ -0,0 +1,266 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2017 Simon # +# Copyright 2018 Aaron L. Levine # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from datetime import datetime +from typing import TYPE_CHECKING, Any + +import github.GithubApp +import github.GithubObject +import github.Issue +import github.Label +import github.Milestone +import github.NamedUser +import github.Team +from github.GithubObject import Attribute, CompletableGithubObject, NotSet + +if TYPE_CHECKING: + from github.GithubApp import GithubApp + from github.Issue import Issue + from github.Label import Label + from github.Milestone import Milestone + from github.NamedUser import NamedUser + from github.Team import Team + + +class IssueEvent(CompletableGithubObject): + """ + This class represents IssueEvents. + + The reference can be found here + https://docs.github.com/en/rest/reference/issues#events + + The OpenAPI schema can be found at + - /components/schemas/issue-event + - /components/schemas/issue-event-for-issue + + """ + + def _initAttributes(self) -> None: + self._actor: Attribute[NamedUser] = NotSet + self._assignee: Attribute[NamedUser] = NotSet + self._assigner: Attribute[NamedUser] = NotSet + self._author_association: Attribute[dict[str, Any]] = NotSet + self._commit_id: Attribute[str] = NotSet + self._commit_url: Attribute[str] = NotSet + self._created_at: Attribute[datetime] = NotSet + self._dismissed_review: Attribute[dict] = NotSet + self._event: Attribute[str] = NotSet + self._id: Attribute[int] = NotSet + self._issue: Attribute[Issue] = NotSet + self._label: Attribute[Label] = NotSet + self._lock_reason: Attribute[str] = NotSet + self._milestone: Attribute[Milestone] = NotSet + self._node_id: Attribute[str] = NotSet + self._performed_via_github_app: Attribute[GithubApp] = NotSet + self._project_card: Attribute[dict[str, Any]] = NotSet + self._rename: Attribute[dict] = NotSet + self._requested_reviewer: Attribute[NamedUser] = NotSet + self._requested_team: Attribute[Team] = NotSet + self._review_requester: Attribute[NamedUser] = NotSet + self._url: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"id": self._id.value}) + + @property + def actor(self) -> NamedUser: + self._completeIfNotSet(self._actor) + return self._actor.value + + @property + def assignee(self) -> NamedUser: + self._completeIfNotSet(self._assignee) + return self._assignee.value + + @property + def assigner(self) -> NamedUser: + self._completeIfNotSet(self._assigner) + return self._assigner.value + + @property + def author_association(self) -> dict[str, Any]: + self._completeIfNotSet(self._author_association) + return self._author_association.value + + @property + def commit_id(self) -> str: + self._completeIfNotSet(self._commit_id) + return self._commit_id.value + + @property + def commit_url(self) -> str: + self._completeIfNotSet(self._commit_url) + return self._commit_url.value + + @property + def created_at(self) -> datetime: + self._completeIfNotSet(self._created_at) + return self._created_at.value + + @property + def dismissed_review(self) -> dict: + self._completeIfNotSet(self._dismissed_review) + return self._dismissed_review.value + + @property + def event(self) -> str: + self._completeIfNotSet(self._event) + return self._event.value + + @property + def id(self) -> int: + self._completeIfNotSet(self._id) + return self._id.value + + @property + def issue(self) -> Issue: + self._completeIfNotSet(self._issue) + return self._issue.value + + @property + def label(self) -> Label: + self._completeIfNotSet(self._label) + return self._label.value + + @property + def lock_reason(self) -> str: + self._completeIfNotSet(self._lock_reason) + return self._lock_reason.value + + @property + def milestone(self) -> Milestone: + self._completeIfNotSet(self._milestone) + return self._milestone.value + + @property + def node_id(self) -> str: + self._completeIfNotSet(self._node_id) + return self._node_id.value + + @property + def performed_via_github_app(self) -> GithubApp: + self._completeIfNotSet(self._performed_via_github_app) + return self._performed_via_github_app.value + + @property + def project_card(self) -> dict[str, Any]: + self._completeIfNotSet(self._project_card) + return self._project_card.value + + @property + def rename(self) -> dict: + self._completeIfNotSet(self._rename) + return self._rename.value + + @property + def requested_reviewer(self) -> NamedUser: + self._completeIfNotSet(self._requested_reviewer) + return self._requested_reviewer.value + + @property + def requested_team(self) -> Team: + self._completeIfNotSet(self._requested_team) + return self._requested_team.value + + @property + def review_requester(self) -> NamedUser: + self._completeIfNotSet(self._review_requester) + return self._review_requester.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "actor" in attributes: # pragma no branch + self._actor = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["actor"]) + if "assignee" in attributes: # pragma no branch + self._assignee = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["assignee"]) + if "assigner" in attributes: # pragma no branch + self._assigner = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["assigner"]) + if "author_association" in attributes: # pragma no branch + self._author_association = self._makeDictAttribute(attributes["author_association"]) + if "commit_id" in attributes: # pragma no branch + self._commit_id = self._makeStringAttribute(attributes["commit_id"]) + if "commit_url" in attributes: # pragma no branch + self._commit_url = self._makeStringAttribute(attributes["commit_url"]) + if "created_at" in attributes: # pragma no branch + self._created_at = self._makeDatetimeAttribute(attributes["created_at"]) + if "dismissed_review" in attributes: # pragma no branch + self._dismissed_review = self._makeDictAttribute(attributes["dismissed_review"]) + if "event" in attributes: # pragma no branch + self._event = self._makeStringAttribute(attributes["event"]) + if "id" in attributes: # pragma no branch + self._id = self._makeIntAttribute(attributes["id"]) + if "issue" in attributes: # pragma no branch + self._issue = self._makeClassAttribute(github.Issue.Issue, attributes["issue"]) + if "label" in attributes: # pragma no branch + self._label = self._makeClassAttribute(github.Label.Label, attributes["label"]) + if "lock_reason" in attributes: # pragma no branch + self._lock_reason = self._makeStringAttribute(attributes["lock_reason"]) + if "milestone" in attributes: # pragma no branch + self._milestone = self._makeClassAttribute(github.Milestone.Milestone, attributes["milestone"]) + if "node_id" in attributes: # pragma no branch + self._node_id = self._makeStringAttribute(attributes["node_id"]) + if "performed_via_github_app" in attributes: # pragma no branch + self._performed_via_github_app = self._makeClassAttribute( + github.GithubApp.GithubApp, attributes["performed_via_github_app"] + ) + if "project_card" in attributes: # pragma no branch + self._project_card = self._makeDictAttribute(attributes["project_card"]) + if "rename" in attributes: # pragma no branch + self._rename = self._makeDictAttribute(attributes["rename"]) + if "requested_reviewer" in attributes: # pragma no branch + self._requested_reviewer = self._makeClassAttribute( + github.NamedUser.NamedUser, attributes["requested_reviewer"] + ) + if "requested_team" in attributes: # pragma no branch + self._requested_team = self._makeClassAttribute(github.Team.Team, attributes["requested_team"]) + if "review_requester" in attributes: # pragma no branch + self._review_requester = self._makeClassAttribute( + github.NamedUser.NamedUser, attributes["review_requester"] + ) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) diff --git a/venv/lib/python3.10/site-packages/github/IssuePullRequest.py b/venv/lib/python3.10/site-packages/github/IssuePullRequest.py new file mode 100644 index 0000000000000000000000000000000000000000..5cd4f8c31c64aee471a684861ef79b39217bb22f --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/IssuePullRequest.py @@ -0,0 +1,95 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + + +from __future__ import annotations + +from datetime import datetime +from typing import Any + +from github.GithubObject import Attribute, NonCompletableGithubObject, NotSet + + +class IssuePullRequest(NonCompletableGithubObject): + """ + This class represents IssuePullRequests. + + The OpenAPI schema can be found at + - /components/schemas/issue-search-result-item/properties/pull_request + - /components/schemas/issue/properties/pull_request + - /components/schemas/nullable-issue/properties/pull_request + + """ + + def _initAttributes(self) -> None: + self._diff_url: Attribute[str] = NotSet + self._html_url: Attribute[str] = NotSet + self._merged_at: Attribute[datetime] = NotSet + self._patch_url: Attribute[str] = NotSet + self._url: Attribute[str] = NotSet + + @property + def diff_url(self) -> str: + return self._diff_url.value + + @property + def html_url(self) -> str: + return self._html_url.value + + @property + def merged_at(self) -> datetime: + return self._merged_at.value + + @property + def patch_url(self) -> str: + return self._patch_url.value + + @property + def url(self) -> str: + return self._url.value + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "diff_url" in attributes: # pragma no branch + self._diff_url = self._makeStringAttribute(attributes["diff_url"]) + if "html_url" in attributes: # pragma no branch + self._html_url = self._makeStringAttribute(attributes["html_url"]) + if "merged_at" in attributes: # pragma no branch + self._merged_at = self._makeDatetimeAttribute(attributes["merged_at"]) + if "patch_url" in attributes: # pragma no branch + self._patch_url = self._makeStringAttribute(attributes["patch_url"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) diff --git a/venv/lib/python3.10/site-packages/github/Label.py b/venv/lib/python3.10/site-packages/github/Label.py new file mode 100644 index 0000000000000000000000000000000000000000..02aec3539d41089c6659b31374fb0580cd7f0d9b --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/Label.py @@ -0,0 +1,158 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2013 martinqt # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Mateusz Loskot # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Mark Walker # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +import urllib.parse +from typing import Any + +from github import Consts +from github.GithubObject import Attribute, CompletableGithubObject, NotSet, Opt, is_optional + + +class Label(CompletableGithubObject): + """ + This class represents Labels. + + The reference can be found here + https://docs.github.com/en/rest/reference/issues#labels + + The OpenAPI schema can be found at + - /components/schemas/issue-event-label + - /components/schemas/issue-search-result-item/properties/labels/items + - /components/schemas/issue/properties/labels/items/oneOf/1 + - /components/schemas/label + - /components/schemas/nullable-issue/properties/labels/items/oneOf/1 + - /components/schemas/pull-request-simple/properties/labels/items + - /components/schemas/pull-request/properties/labels/items + + """ + + def _initAttributes(self) -> None: + self._color: Attribute[str] = NotSet + self._default: Attribute[bool] = NotSet + self._description: Attribute[str] = NotSet + self._id: Attribute[int] = NotSet + self._name: Attribute[str] = NotSet + self._node_id: Attribute[str] = NotSet + self._url: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"name": self._name.value}) + + @property + def _identity(self) -> str: + return urllib.parse.quote(self.name) + + @property + def color(self) -> str: + self._completeIfNotSet(self._color) + return self._color.value + + @property + def default(self) -> bool: + self._completeIfNotSet(self._default) + return self._default.value + + @property + def description(self) -> str: + self._completeIfNotSet(self._description) + return self._description.value + + @property + def id(self) -> int: + self._completeIfNotSet(self._id) + return self._id.value + + @property + def name(self) -> str: + self._completeIfNotSet(self._name) + return self._name.value + + @property + def node_id(self) -> str: + self._completeIfNotSet(self._node_id) + return self._node_id.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + def delete(self) -> None: + """ + :calls: `DELETE /repos/{owner}/{repo}/labels/{name} `_ + """ + headers, data = self._requester.requestJsonAndCheck("DELETE", self.url) + + def edit(self, name: str, color: str, description: Opt[str] = NotSet) -> None: + """ + :calls: `PATCH /repos/{owner}/{repo}/labels/{name} `_ + """ + assert isinstance(name, str), name + assert isinstance(color, str), color + assert is_optional(description, str), description + post_parameters = NotSet.remove_unset_items({"new_name": name, "color": color, "description": description}) + headers, data = self._requester.requestJsonAndCheck( + "PATCH", + self.url, + input=post_parameters, + headers={"Accept": Consts.mediaTypeLabelDescriptionSearchPreview}, + ) + self._useAttributes(data) + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "color" in attributes: # pragma no branch + self._color = self._makeStringAttribute(attributes["color"]) + if "default" in attributes: # pragma no branch + self._default = self._makeBoolAttribute(attributes["default"]) + if "description" in attributes: # pragma no branch + self._description = self._makeStringAttribute(attributes["description"]) + if "id" in attributes: # pragma no branch + self._id = self._makeIntAttribute(attributes["id"]) + if "name" in attributes: # pragma no branch + self._name = self._makeStringAttribute(attributes["name"]) + if "node_id" in attributes: # pragma no branch + self._node_id = self._makeStringAttribute(attributes["node_id"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) diff --git a/venv/lib/python3.10/site-packages/github/License.py b/venv/lib/python3.10/site-packages/github/License.py new file mode 100644 index 0000000000000000000000000000000000000000..f1a1c2257e8e7c67258d22c72925fb47e9f68ebb --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/License.py @@ -0,0 +1,167 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2017 Aaron Levine # +# Copyright 2017 Mike Miller # +# Copyright 2018 Darragh Bailey # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Adam Baratz # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from typing import Any + +from github.GithubObject import Attribute, CompletableGithubObject, NotSet + + +class License(CompletableGithubObject): + """ + This class represents Licenses. + + The reference can be found here + https://docs.github.com/en/rest/reference/licenses + + The OpenAPI schema can be found at + - /components/schemas/license-simple + - /components/schemas/minimal-repository/properties/license + - /components/schemas/nullable-license-simple + + """ + + def _initAttributes(self) -> None: + self._body: Attribute[str] = NotSet + self._conditions: Attribute[list[str]] = NotSet + self._description: Attribute[str] = NotSet + self._html_url: Attribute[str] = NotSet + self._implementation: Attribute[str] = NotSet + self._key: Attribute[str] = NotSet + self._limitations: Attribute[list[str]] = NotSet + self._name: Attribute[str] = NotSet + self._node_id: Attribute[str] = NotSet + self._permissions: Attribute[list[str]] = NotSet + self._spdx_id: Attribute[str] = NotSet + self._url: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"name": self._name.value}) + + @property + def body(self) -> str: + self._completeIfNotSet(self._body) + return self._body.value + + @property + def conditions(self) -> list[str]: + self._completeIfNotSet(self._conditions) + return self._conditions.value + + @property + def description(self) -> str: + self._completeIfNotSet(self._description) + return self._description.value + + @property + def html_url(self) -> str: + self._completeIfNotSet(self._html_url) + return self._html_url.value + + @property + def implementation(self) -> str: + self._completeIfNotSet(self._implementation) + return self._implementation.value + + @property + def key(self) -> str: + self._completeIfNotSet(self._key) + return self._key.value + + @property + def limitations(self) -> list[str]: + self._completeIfNotSet(self._limitations) + return self._limitations.value + + @property + def name(self) -> str: + self._completeIfNotSet(self._name) + return self._name.value + + @property + def node_id(self) -> str: + self._completeIfNotSet(self._node_id) + return self._node_id.value + + @property + def permissions(self) -> list[str]: + self._completeIfNotSet(self._permissions) + return self._permissions.value + + @property + def spdx_id(self) -> str: + self._completeIfNotSet(self._spdx_id) + return self._spdx_id.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "body" in attributes: # pragma no branch + self._body = self._makeStringAttribute(attributes["body"]) + if "conditions" in attributes: # pragma no branch + self._conditions = self._makeListOfStringsAttribute(attributes["conditions"]) + if "description" in attributes: # pragma no branch + self._description = self._makeStringAttribute(attributes["description"]) + if "html_url" in attributes: # pragma no branch + self._html_url = self._makeStringAttribute(attributes["html_url"]) + if "implementation" in attributes: # pragma no branch + self._implementation = self._makeStringAttribute(attributes["implementation"]) + if "key" in attributes: # pragma no branch + self._key = self._makeStringAttribute(attributes["key"]) + if "limitations" in attributes: # pragma no branch + self._limitations = self._makeListOfStringsAttribute(attributes["limitations"]) + if "name" in attributes: # pragma no branch + self._name = self._makeStringAttribute(attributes["name"]) + if "node_id" in attributes: # pragma no branch + self._node_id = self._makeStringAttribute(attributes["node_id"]) + if "permissions" in attributes: # pragma no branch + self._permissions = self._makeListOfStringsAttribute(attributes["permissions"]) + if "spdx_id" in attributes: # pragma no branch + self._spdx_id = self._makeStringAttribute(attributes["spdx_id"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) diff --git a/venv/lib/python3.10/site-packages/github/MainClass.py b/venv/lib/python3.10/site-packages/github/MainClass.py new file mode 100644 index 0000000000000000000000000000000000000000..19838573664f5b95c8bac0ce0d6a9a769429fb29 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/MainClass.py @@ -0,0 +1,1058 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Dima Kukushkin # +# Copyright 2012 Luke Cawood # +# Copyright 2012 Michael Woodworth # +# Copyright 2012 Steve English # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Ed Jackson # +# Copyright 2013 Jonathan J Hunt # +# Copyright 2013 Steve Brown # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 C. R. Oldham # +# Copyright 2014 Thialfihar # +# Copyright 2014 Tyler Treat # +# Copyright 2014 Vincent Jacques # +# Copyright 2015 Daniel Pocock # +# Copyright 2015 Joseph Rawson # +# Copyright 2015 Uriel Corfa # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2017 Colin Hoglund # +# Copyright 2017 Jannis Gebauer # +# Copyright 2018 Agor Maxime # +# Copyright 2018 Arda Kuyumcu # +# Copyright 2018 Benoit Latinier # +# Copyright 2018 Bruce Richardson # +# Copyright 2018 Joshua Hoblitt # +# Copyright 2018 Maarten Fonville # +# Copyright 2018 Mike Miller # +# Copyright 2018 Shubham Singh <41840111+singh811@users.noreply.github.com> # +# Copyright 2018 Steve Kowalik # +# Copyright 2018 Svend Sorensen # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 Yossarian King # +# Copyright 2018 h.shi <10385628+AnYeMoWang@users.noreply.github.com> # +# Copyright 2018 sfdye # +# Copyright 2019 Adam Baratz # +# Copyright 2019 Caleb Sweeney # +# Copyright 2019 Hamel Husain # +# Copyright 2019 Isac Souza # +# Copyright 2019 Jake Klingensmith # +# Copyright 2019 Jake Wilkins # +# Copyright 2019 Rigas Papathanasopoulos # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Tomas Tomecek # +# Copyright 2019 Wan Liuyang # +# Copyright 2019 chillipeper # +# Copyright 2019 秋葉 # +# Copyright 2020 Alice GIRARD # +# Copyright 2020 Denis Blanchette # +# Copyright 2020 Florent Clarret # +# Copyright 2020 Mahesh Raju # +# Copyright 2020 Nikolay Edigaryev # +# Copyright 2020 Omar Brikaa # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Amador Pahim # +# Copyright 2021 Mark Walker # +# Copyright 2021 Sachi King # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Denis Blanchette # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Hemslo Wang # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Jonathan Greg <31892308+jmgreg31@users.noreply.github.com> # +# Copyright 2023 Joseph Henrich # +# Copyright 2023 Mark Amery # +# Copyright 2023 Trim21 # +# Copyright 2023 YugoHino # +# Copyright 2023 chantra # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2024 Min RK # +# Copyright 2025 Enrico Minack # +# Copyright 2025 blyedev <63808441+blyedev@users.noreply.github.com> # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +import pickle +import urllib.parse +import warnings +from datetime import datetime +from typing import TYPE_CHECKING, Any, BinaryIO, TypeVar + +import urllib3 +from urllib3.util import Retry + +import github.ApplicationOAuth +import github.Auth +import github.AuthenticatedUser +import github.Enterprise +import github.Event +import github.Gist +import github.GithubApp +import github.GithubIntegration +import github.GithubRetry +import github.GitignoreTemplate +import github.GlobalAdvisory +import github.License +import github.NamedUser +import github.Topic +from github import Consts +from github.GithubIntegration import GithubIntegration +from github.GithubObject import CompletableGithubObject, GithubObject, NotSet, Opt, is_defined +from github.GithubRetry import GithubRetry +from github.HookDelivery import HookDelivery, HookDeliverySummary +from github.HookDescription import HookDescription +from github.PaginatedList import PaginatedList +from github.RateLimit import RateLimit +from github.Requester import Requester + +if TYPE_CHECKING: + from github.AppAuthentication import AppAuthentication + from github.ApplicationOAuth import ApplicationOAuth + from github.AuthenticatedUser import AuthenticatedUser + from github.Commit import Commit + from github.ContentFile import ContentFile + from github.Event import Event + from github.Gist import Gist + from github.GithubApp import GithubApp + from github.GitignoreTemplate import GitignoreTemplate + from github.GlobalAdvisory import GlobalAdvisory + from github.Issue import Issue + from github.License import License + from github.NamedUser import NamedUser + from github.Organization import Organization + from github.Project import Project + from github.ProjectColumn import ProjectColumn + from github.Repository import Repository + from github.RepositoryDiscussion import RepositoryDiscussion + from github.Topic import Topic + +TGithubObject = TypeVar("TGithubObject", bound=GithubObject) + + +class Github: + """ + This is the main class you instantiate to access the Github API v3. + + Optional parameters allow different authentication methods. + + """ + + __requester: Requester + + default_retry = GithubRetry() + + # keep non-deprecated arguments in-sync with Requester + # v3: remove login_or_token, password, jwt and app_auth + # v3: move auth to the front of arguments + # v3: add * before first argument so all arguments must be named, + # allows to reorder / add new arguments / remove deprecated arguments without breaking user code + def __init__( + self, + login_or_token: str | None = None, + password: str | None = None, + jwt: str | None = None, + app_auth: AppAuthentication | None = None, + base_url: str = Consts.DEFAULT_BASE_URL, + timeout: int = Consts.DEFAULT_TIMEOUT, + user_agent: str = Consts.DEFAULT_USER_AGENT, + per_page: int = Consts.DEFAULT_PER_PAGE, + verify: bool | str = True, + retry: int | Retry | None = default_retry, + pool_size: int | None = None, + seconds_between_requests: float | None = Consts.DEFAULT_SECONDS_BETWEEN_REQUESTS, + seconds_between_writes: float | None = Consts.DEFAULT_SECONDS_BETWEEN_WRITES, + auth: github.Auth.Auth | None = None, + # v3: set lazy = True as the default + lazy: bool = False, + ) -> None: + """ + :param login_or_token: string deprecated, use auth=github.Auth.Login(...) or auth=github.Auth.Token(...) instead + :param password: string deprecated, use auth=github.Auth.Login(...) instead + :param jwt: string deprecated, use auth=github.Auth.AppAuth(...) or auth=github.Auth.AppAuthToken(...) instead + :param app_auth: github.AppAuthentication deprecated, use auth=github.Auth.AppInstallationAuth(...) instead + :param base_url: string + :param timeout: integer + :param user_agent: string + :param per_page: int + :param verify: boolean or string + :param retry: int or urllib3.util.retry.Retry object, + defaults to github.Github.default_retry, + set to None to disable retries + :param pool_size: int + :param seconds_between_requests: float + :param seconds_between_writes: float + :param auth: authentication method + :param lazy: completable objects created from this instance are lazy, + as well as completable objects created from those, and so on + """ + + assert login_or_token is None or isinstance(login_or_token, str), login_or_token + assert password is None or isinstance(password, str), password + assert jwt is None or isinstance(jwt, str), jwt + assert isinstance(base_url, str), base_url + assert isinstance(timeout, int), timeout + assert user_agent is None or isinstance(user_agent, str), user_agent + assert isinstance(per_page, int), per_page + assert isinstance(verify, (bool, str)), verify + assert retry is None or isinstance(retry, int) or isinstance(retry, urllib3.util.Retry), retry + assert pool_size is None or isinstance(pool_size, int), pool_size + assert seconds_between_requests is None or seconds_between_requests >= 0 + assert seconds_between_writes is None or seconds_between_writes >= 0 + assert auth is None or isinstance(auth, github.Auth.Auth), auth + assert isinstance(lazy, bool), lazy + + if password is not None: + warnings.warn( + "Arguments login_or_token and password are deprecated, please use " + "auth=github.Auth.Login(...) instead", + category=DeprecationWarning, + ) + auth = github.Auth.Login(login_or_token, password) # type: ignore + elif login_or_token is not None: + warnings.warn( + "Argument login_or_token is deprecated, please use " "auth=github.Auth.Token(...) instead", + category=DeprecationWarning, + ) + auth = github.Auth.Token(login_or_token) + elif jwt is not None: + warnings.warn( + "Argument jwt is deprecated, please use " + "auth=github.Auth.AppAuth(...) or " + "auth=github.Auth.AppAuthToken(...) instead", + category=DeprecationWarning, + ) + auth = github.Auth.AppAuthToken(jwt) + elif app_auth is not None: + warnings.warn( + "Argument app_auth is deprecated, please use " "auth=github.Auth.AppInstallationAuth(...) instead", + category=DeprecationWarning, + ) + auth = app_auth + + self.__requester = Requester( + auth, + base_url, + timeout, + user_agent, + per_page, + verify, + retry, + pool_size, + seconds_between_requests, + seconds_between_writes, + lazy, + ) + + def withLazy(self, lazy: bool) -> Github: + """ + Create a Github instance with identical configuration but the given lazy setting. + + :param lazy: completable objects created from this instance are lazy, as well as completable objects created + from those, and so on + :return: new Github instance + + """ + kwargs = self.__requester.kwargs + kwargs.update(lazy=lazy) + return Github(**kwargs) + + def close(self) -> None: + """Close connections to the server. Alternatively, use the Github + object as a context manager: + + .. code-block:: python + + with github.Github(...) as gh: + # do something + """ + self.__requester.close() + + def __enter__(self) -> Github: + return self + + def __exit__(self, exc_type: Any, exc_val: Any, exc_tb: Any) -> None: + self.close() + + @property + def requester(self) -> Requester: + """ + Return my Requester object. + + For example, to make requests to API endpoints not yet supported by PyGitHub. + + """ + return self.__requester + + @property + def FIX_REPO_GET_GIT_REF(self) -> bool: + return self.__requester.FIX_REPO_GET_GIT_REF + + @FIX_REPO_GET_GIT_REF.setter + def FIX_REPO_GET_GIT_REF(self, value: bool) -> None: + self.__requester.FIX_REPO_GET_GIT_REF = value + + # v3: Remove this property? Why should it be necessary to read/modify it after construction + @property + def per_page(self) -> int: + return self.__requester.per_page + + @per_page.setter + def per_page(self, value: int) -> None: + self.__requester.per_page = value + + # v3: Provide a unified way to access values of headers of last response + # v3: (and add/keep ad hoc properties for specific useful headers like rate limiting, oauth scopes, etc.) + # v3: Return an instance of a class: using a tuple did not allow to add a field "resettime" + @property + def rate_limiting(self) -> tuple[int, int]: + """ + First value is requests remaining, second value is request limit. + """ + remaining, limit = self.__requester.rate_limiting + if limit < 0: + self.get_rate_limit() + return self.__requester.rate_limiting + + @property + def rate_limiting_resettime(self) -> int: + """ + Unix timestamp indicating when rate limiting will reset. + """ + if self.__requester.rate_limiting_resettime == 0: + self.get_rate_limit() + return self.__requester.rate_limiting_resettime + + def get_rate_limit(self) -> RateLimit: + """ + Rate limit status for different resources (core/search/graphql). + + :calls:`GET /rate_limit `_ + + """ + headers, data = self.__requester.requestJsonAndCheck("GET", "/rate_limit") + return RateLimit(self.__requester, headers, data["resources"]) + + @property + def oauth_scopes(self) -> list[str] | None: + """ + :type: list of string + """ + return self.__requester.oauth_scopes + + def get_license(self, key: Opt[str] = NotSet) -> License: + """ + :calls: `GET /license/{license} `_ + """ + + assert isinstance(key, str), key + key = urllib.parse.quote(key) + headers, data = self.__requester.requestJsonAndCheck("GET", f"/licenses/{key}") + return github.License.License(self.__requester, headers, data, completed=True) + + def get_licenses(self) -> PaginatedList[License]: + """ + :calls: `GET /licenses `_ + """ + + url_parameters: dict[str, Any] = {} + + return PaginatedList(github.License.License, self.__requester, "/licenses", url_parameters) + + def get_events(self) -> PaginatedList[Event]: + """ + :calls: `GET /events `_ + """ + + return PaginatedList(github.Event.Event, self.__requester, "/events", None) + + def get_user(self, login: Opt[str] = NotSet) -> NamedUser | AuthenticatedUser: + """ + :calls: `GET /users/{user} `_ or `GET /user `_ + """ + if login is NotSet: + url = "/user" + # always return a lazy completable AuthenticatedUser + # v3: given github.Github(lazy=True) is now default, remove completed=False here + return github.AuthenticatedUser.AuthenticatedUser(self.__requester, url=url, completed=False) + else: + assert isinstance(login, str), login + login = urllib.parse.quote(login) + url = f"/users/{login}" + # always return a completed NamedUser + # v3: remove complete() here and make this as lazy as github.Github is + return github.NamedUser.NamedUser(self.__requester, url=url).complete() + + def get_user_by_id(self, user_id: int) -> NamedUser: + """ + :calls: `GET /user/{id} `_ + :param user_id: int + :rtype: :class:`github.NamedUser.NamedUser` + """ + assert isinstance(user_id, int), user_id + headers, data = self.__requester.requestJsonAndCheck("GET", f"/user/{user_id}") + return github.NamedUser.NamedUser(self.__requester, headers, data, completed=True) + + def get_users(self, since: Opt[int] = NotSet) -> PaginatedList[NamedUser]: + """ + :calls: `GET /users `_ + """ + assert since is NotSet or isinstance(since, int), since + url_parameters = dict() + if since is not NotSet: + url_parameters["since"] = since + return PaginatedList(github.NamedUser.NamedUser, self.__requester, "/users", url_parameters) + + def get_organization(self, org: str) -> Organization: + """ + :calls: `GET /orgs/{org} `_ + """ + assert isinstance(org, str), org + org = urllib.parse.quote(org) + headers, data = self.__requester.requestJsonAndCheck("GET", f"/orgs/{org}") + return github.Organization.Organization(self.__requester, headers, data, completed=True) + + def get_organizations(self, since: Opt[int] = NotSet) -> PaginatedList[Organization]: + """ + :calls: `GET /organizations `_ + """ + assert since is NotSet or isinstance(since, int), since + url_parameters = dict() + if since is not NotSet: + url_parameters["since"] = since + return PaginatedList( + github.Organization.Organization, + self.__requester, + "/organizations", + url_parameters, + ) + + def get_enterprise(self, enterprise: str) -> github.Enterprise.Enterprise: + """ + :calls: `GET /enterprises/{enterprise} `_ + :param enterprise: string + :rtype: :class:`Enterprise` + """ + assert isinstance(enterprise, str), enterprise + # There is no native "/enterprises/{enterprise}" api, so this function is a hub for apis that start with "/enterprise/{enterprise}". + return github.Enterprise.Enterprise(self.__requester, enterprise) + + def get_repo(self, full_name_or_id: int | str, lazy: bool = False) -> Repository: + """ + :calls: `GET /repos/{owner}/{repo} `_ or `GET /repositories/{id} `_ + """ + assert isinstance(full_name_or_id, (str, int)), full_name_or_id + url_base = "/repositories/" if isinstance(full_name_or_id, int) else "/repos/" + url = f"{url_base}{full_name_or_id}" + if lazy: + return github.Repository.Repository(self.__requester, {}, {"url": url}, completed=False) + headers, data = self.__requester.requestJsonAndCheck("GET", url) + return github.Repository.Repository(self.__requester, headers, data, completed=True) + + def get_repos( + self, + since: Opt[int] = NotSet, + visibility: Opt[str] = NotSet, + ) -> PaginatedList[Repository]: + """ + :calls: `GET /repositories `_ + :param since: integer + :param visibility: string ('all','public') + """ + assert since is NotSet or isinstance(since, int), since + url_parameters: dict[str, Any] = {} + if since is not NotSet: + url_parameters["since"] = since + if visibility is not NotSet: + assert visibility in ("public", "all"), visibility + url_parameters["visibility"] = visibility + return PaginatedList( + github.Repository.Repository, + self.__requester, + "/repositories", + url_parameters, + ) + + def get_repository_discussion(self, node_id: str, discussion_graphql_schema: str) -> RepositoryDiscussion: + return self.__requester.graphql_node_class( + node_id, discussion_graphql_schema, github.RepositoryDiscussion.RepositoryDiscussion, "Discussion" + ) + + def get_project(self, id: int) -> Project: + """ + :calls: `GET /projects/{project_id} `_ + """ + headers, data = self.__requester.requestJsonAndCheck( + "GET", + f"/projects/{id:d}", + headers={"Accept": Consts.mediaTypeProjectsPreview}, + ) + return github.Project.Project(self.__requester, headers, data, completed=True) + + def get_project_column(self, id: int) -> ProjectColumn: + """ + :calls: `GET /projects/columns/{column_id} `_ + """ + headers, data = self.__requester.requestJsonAndCheck( + "GET", + "/projects/columns/%d" % id, + headers={"Accept": Consts.mediaTypeProjectsPreview}, + ) + return github.ProjectColumn.ProjectColumn(self.__requester, headers, data, completed=True) + + def get_gist(self, id: str) -> Gist: + """ + :calls: `GET /gists/{id} `_ + """ + assert isinstance(id, str), id + headers, data = self.__requester.requestJsonAndCheck("GET", f"/gists/{id}") + return github.Gist.Gist(self.__requester, headers, data, completed=True) + + def get_gists(self, since: Opt[datetime] = NotSet) -> PaginatedList[Gist]: + """ + :calls: `GET /gists/public `_ + """ + assert since is NotSet or isinstance(since, datetime), since + url_parameters = dict() + if is_defined(since): + url_parameters["since"] = since.strftime("%Y-%m-%dT%H:%M:%SZ") + return PaginatedList(github.Gist.Gist, self.__requester, "/gists/public", url_parameters) + + def get_global_advisory(self, ghsa_id: str) -> GlobalAdvisory: + """ + :calls: `GET /advisories/{ghsa_id} `_ + :param ghsa_id: string + :rtype: :class:`github.GlobalAdvisory.GlobalAdvisory` + """ + assert isinstance(ghsa_id, str), ghsa_id + ghsa_id = urllib.parse.quote(ghsa_id) + headers, data = self.__requester.requestJsonAndCheck("GET", f"/advisories/{ghsa_id}") + return github.GlobalAdvisory.GlobalAdvisory(self.__requester, headers, data) + + def get_global_advisories( + self, + type: Opt[str] = NotSet, + ghsa_id: Opt[str] = NotSet, + cve_id: Opt[str] = NotSet, + ecosystem: Opt[str] = NotSet, + severity: Opt[str] = NotSet, + cwes: list[Opt[str]] | Opt[str] = NotSet, + is_withdrawn: Opt[bool] = NotSet, + affects: list[str] | Opt[str] = NotSet, + published: Opt[str] = NotSet, + updated: Opt[str] = NotSet, + modified: Opt[str] = NotSet, + keywords: Opt[str] = NotSet, + before: Opt[str] = NotSet, + after: Opt[str] = NotSet, + per_page: Opt[str] = NotSet, + sort: Opt[str] = NotSet, + direction: Opt[str] = NotSet, + ) -> PaginatedList[GlobalAdvisory]: + """ + :calls: `GET /advisories ` + :param type: Optional string + :param ghsa_id: Optional string + :param cve_id: Optional string + :param ecosystem: Optional string + :param severity: Optional string + :param cwes: Optional comma separated string or list of integer or string + :param is_withdrawn: Optional bool + :param affects: Optional comma separated string or list of string + :param published: Optional string + :param updated: Optional string + :param modified: Optional string + :param before: Optional string + :param after: Optional string + :param sort: Optional string + :param direction: Optional string + :rtype: :class:`github.PaginatedList.PaginatedList` of :class:`github.GlobalAdvisory.GlobalAdvisory` + """ + assert type is github.GithubObject.NotSet or isinstance(type, str), type + assert ghsa_id is github.GithubObject.NotSet or isinstance(ghsa_id, str) + assert cve_id is github.GithubObject.NotSet or isinstance(cve_id, str), cve_id + assert ecosystem is github.GithubObject.NotSet or isinstance(ecosystem, str), ecosystem + assert severity is github.GithubObject.NotSet or isinstance(severity, str), severity + assert cwes is github.GithubObject.NotSet or isinstance(cwes, list) or isinstance(cwes, str), cwes + assert is_withdrawn is github.GithubObject.NotSet or isinstance(is_withdrawn, bool), is_withdrawn + assert affects is github.GithubObject.NotSet or isinstance(affects, list) or isinstance(affects, str), affects + assert published is github.GithubObject.NotSet or isinstance(published, str), published + assert updated is github.GithubObject.NotSet or isinstance(updated, str), updated + assert modified is github.GithubObject.NotSet or isinstance(modified, str), modified + assert before is github.GithubObject.NotSet or isinstance(before, str), before + assert after is github.GithubObject.NotSet or isinstance(after, str), after + assert sort is github.GithubObject.NotSet or isinstance(sort, str), sort + assert direction is github.GithubObject.NotSet or isinstance(direction, str), direction + + url_parameters: dict[str, Opt[str | bool]] = dict() + if type is not github.GithubObject.NotSet: # pragma no branch (Should be covered) + assert type in ("reviewed", "unreviewed", "malware"), type + url_parameters["type"] = type + if ghsa_id is not github.GithubObject.NotSet: + url_parameters["ghsa_id"] = ghsa_id + if cve_id is not github.GithubObject.NotSet: + url_parameters["cve_id"] = cve_id + # Can be one of: actions, composer, erlang, go, maven, npm, nuget, other, pip, pub, rubygems, rust + # Not asserting in that list so that the package doesn't need to be updated when a new ecosystem is added + if ecosystem is not github.GithubObject.NotSet: + url_parameters["ecosystem"] = ecosystem + if severity is not github.GithubObject.NotSet: + assert severity in ("null", "low", "medium", "high", "critical"), severity + url_parameters["severity"] = severity + if cwes is not github.GithubObject.NotSet: + if isinstance(cwes, list): + cwes = ",".join([str(cwe) for cwe in cwes]) + url_parameters["cwes"] = cwes + if is_withdrawn is not github.GithubObject.NotSet: + url_parameters["is_withdrawn"] = is_withdrawn + if affects is not github.GithubObject.NotSet: + if isinstance(affects, list): + affects = ",".join(affects) + url_parameters["affects"] = affects + if published is not github.GithubObject.NotSet: + url_parameters["published"] = published + if updated is not github.GithubObject.NotSet: + url_parameters["updated"] = updated + if modified is not github.GithubObject.NotSet: + url_parameters["modified"] = modified + if before is not github.GithubObject.NotSet: + url_parameters["before"] = before + if after is not github.GithubObject.NotSet: + url_parameters["after"] = after + if sort is not github.GithubObject.NotSet: + assert sort in ("published", "updated"), sort + url_parameters["sort"] = sort + if direction is not github.GithubObject.NotSet: + assert direction in ("asc", "desc"), direction + url_parameters["direction"] = direction + return github.PaginatedList.PaginatedList( + github.GlobalAdvisory.GlobalAdvisory, + self.__requester, + "/advisories", + url_parameters, + ) + + def search_repositories( + self, + query: str, + sort: Opt[str] = NotSet, + order: Opt[str] = NotSet, + **qualifiers: Any, + ) -> PaginatedList[Repository]: + """ + :calls: `GET /search/repositories `_ + :param query: string + :param sort: string ('stars', 'forks', 'updated') + :param order: string ('asc', 'desc') + :param qualifiers: keyword dict query qualifiers + """ + assert isinstance(query, str), query + url_parameters = dict() + if sort is not NotSet: # pragma no branch (Should be covered) + assert sort in ("stars", "forks", "updated"), sort + url_parameters["sort"] = sort + if order is not NotSet: # pragma no branch (Should be covered) + assert order in ("asc", "desc"), order + url_parameters["order"] = order + + query_chunks = [] + if query: # pragma no branch (Should be covered) + query_chunks.append(query) + + for qualifier, value in qualifiers.items(): + query_chunks.append(f"{qualifier}:{value}") + + url_parameters["q"] = " ".join(query_chunks) + assert url_parameters["q"], "need at least one qualifier" + + return PaginatedList( + github.Repository.Repository, + self.__requester, + "/search/repositories", + url_parameters, + ) + + def search_users( + self, + query: str, + sort: Opt[str] = NotSet, + order: Opt[str] = NotSet, + **qualifiers: Any, + ) -> PaginatedList[NamedUser]: + """ + :calls: `GET /search/users `_ + :param query: string + :param sort: string ('followers', 'repositories', 'joined') + :param order: string ('asc', 'desc') + :param qualifiers: keyword dict query qualifiers + :rtype: :class:`PaginatedList` of :class:`github.NamedUser.NamedUser` + """ + assert isinstance(query, str), query + url_parameters = dict() + if sort is not NotSet: + assert sort in ("followers", "repositories", "joined"), sort + url_parameters["sort"] = sort + if order is not NotSet: + assert order in ("asc", "desc"), order + url_parameters["order"] = order + + query_chunks = [] + if query: + query_chunks.append(query) + + for qualifier, value in qualifiers.items(): + query_chunks.append(f"{qualifier}:{value}") + + url_parameters["q"] = " ".join(query_chunks) + assert url_parameters["q"], "need at least one qualifier" + + return PaginatedList( + github.NamedUser.NamedUser, + self.__requester, + "/search/users", + url_parameters, + ) + + def search_issues( + self, + query: str, + sort: Opt[str] = NotSet, + order: Opt[str] = NotSet, + **qualifiers: Any, + ) -> PaginatedList[Issue]: + """ + :calls: `GET /search/issues `_ + :param query: string + :param sort: string ('comments', 'created', 'updated') + :param order: string ('asc', 'desc') + :param qualifiers: keyword dict query qualifiers + :rtype: :class:`PaginatedList` of :class:`github.Issue.Issue` + """ + assert isinstance(query, str), query + url_parameters = dict() + if sort is not NotSet: + assert sort in ("comments", "created", "updated"), sort + url_parameters["sort"] = sort + if order is not NotSet: + assert order in ("asc", "desc"), order + url_parameters["order"] = order + + query_chunks = [] + if query: # pragma no branch (Should be covered) + query_chunks.append(query) + + for qualifier, value in qualifiers.items(): + query_chunks.append(f"{qualifier}:{value}") + + url_parameters["q"] = " ".join(query_chunks) + assert url_parameters["q"], "need at least one qualifier" + + return PaginatedList(github.Issue.Issue, self.__requester, "/search/issues", url_parameters) + + def search_code( + self, + query: str, + sort: Opt[str] = NotSet, + order: Opt[str] = NotSet, + highlight: bool = False, + **qualifiers: Any, + ) -> PaginatedList[ContentFile]: + """ + :calls: `GET /search/code `_ + :param query: string + :param sort: string ('indexed') + :param order: string ('asc', 'desc') + :param highlight: boolean (True, False) + :param qualifiers: keyword dict query qualifiers + :rtype: :class:`PaginatedList` of :class:`github.ContentFile.ContentFile` + """ + assert isinstance(query, str), query + url_parameters = dict() + if sort is not NotSet: # pragma no branch (Should be covered) + assert sort in ("indexed",), sort + url_parameters["sort"] = sort + if order is not NotSet: # pragma no branch (Should be covered) + assert order in ("asc", "desc"), order + url_parameters["order"] = order + + query_chunks = [] + if query: # pragma no branch (Should be covered) + query_chunks.append(query) + + for qualifier, value in qualifiers.items(): + query_chunks.append(f"{qualifier}:{value}") + + url_parameters["q"] = " ".join(query_chunks) + assert url_parameters["q"], "need at least one qualifier" + + headers = {"Accept": Consts.highLightSearchPreview} if highlight else None + + return PaginatedList( + github.ContentFile.ContentFile, + self.__requester, + "/search/code", + url_parameters, + headers=headers, + ) + + def search_commits( + self, + query: str, + sort: Opt[str] = NotSet, + order: Opt[str] = NotSet, + **qualifiers: Any, + ) -> PaginatedList[Commit]: + """ + :calls: `GET /search/commits `_ + :param query: string + :param sort: string ('author-date', 'committer-date') + :param order: string ('asc', 'desc') + :param qualifiers: keyword dict query qualifiers + :rtype: :class:`PaginatedList` of :class:`github.Commit.Commit` + """ + assert isinstance(query, str), query + url_parameters = dict() + if sort is not NotSet: + assert sort in ("author-date", "committer-date"), sort + url_parameters["sort"] = sort + if order is not NotSet: + assert order in ("asc", "desc"), order + url_parameters["order"] = order + + query_chunks = [] + if query: + query_chunks.append(query) + + for qualifier, value in qualifiers.items(): + query_chunks.append(f"{qualifier}:{value}") + + url_parameters["q"] = " ".join(query_chunks) + assert url_parameters["q"], "need at least one qualifier" + + return PaginatedList( + github.Commit.Commit, + self.__requester, + "/search/commits", + url_parameters, + headers={"Accept": Consts.mediaTypeCommitSearchPreview}, + ) + + def search_topics(self, query: str, **qualifiers: Any) -> PaginatedList[Topic]: + """ + :calls: `GET /search/topics `_ + :param query: string + :param qualifiers: keyword dict query qualifiers + :rtype: :class:`PaginatedList` of :class:`github.Topic.Topic` + """ + assert isinstance(query, str), query + url_parameters = dict() + + query_chunks = [] + if query: # pragma no branch (Should be covered) + query_chunks.append(query) + + for qualifier, value in qualifiers.items(): + query_chunks.append(f"{qualifier}:{value}") + + url_parameters["q"] = " ".join(query_chunks) + assert url_parameters["q"], "need at least one qualifier" + + return PaginatedList( + github.Topic.Topic, + self.__requester, + "/search/topics", + url_parameters, + headers={"Accept": Consts.mediaTypeTopicsPreview}, + ) + + def render_markdown(self, text: str, context: Opt[Repository] = NotSet) -> str: + """ + :calls: `POST /markdown `_ + :param text: string + :param context: :class:`github.Repository.Repository` + :rtype: string + """ + assert isinstance(text, str), text + assert context is NotSet or isinstance(context, github.Repository.Repository), context + post_parameters = {"text": text} + if is_defined(context): + post_parameters["mode"] = "gfm" + post_parameters["context"] = context._identity + status, headers, data = self.__requester.requestJson("POST", "/markdown", input=post_parameters) + return data + + def get_hook(self, name: str) -> HookDescription: + """ + :calls: `GET /hooks/{name} `_ + """ + assert isinstance(name, str), name + name = urllib.parse.quote(name) + headers, attributes = self.__requester.requestJsonAndCheck("GET", f"/hooks/{name}") + return HookDescription(self.__requester, headers, attributes) + + def get_hooks(self) -> list[HookDescription]: + """ + :calls: `GET /hooks `_ + :rtype: list of :class:`github.HookDescription.HookDescription` + """ + headers, data = self.__requester.requestJsonAndCheck("GET", "/hooks") + return [HookDescription(self.__requester, headers, attributes) for attributes in data] + + def get_hook_delivery(self, hook_id: int, delivery_id: int) -> HookDelivery: + """ + :calls: `GET /hooks/{hook_id}/deliveries/{delivery_id} `_ + :param hook_id: integer + :param delivery_id: integer + :rtype: :class:`HookDelivery` + """ + assert isinstance(hook_id, int), hook_id + assert isinstance(delivery_id, int), delivery_id + headers, attributes = self.__requester.requestJsonAndCheck("GET", f"/hooks/{hook_id}/deliveries/{delivery_id}") + return HookDelivery(self.__requester, headers, attributes) + + def get_hook_deliveries(self, hook_id: int) -> list[HookDeliverySummary]: + """ + :calls: `GET /hooks/{hook_id}/deliveries `_ + :param hook_id: integer + :rtype: list of :class:`HookDeliverySummary` + """ + assert isinstance(hook_id, int), hook_id + headers, data = self.__requester.requestJsonAndCheck("GET", f"/hooks/{hook_id}/deliveries") + return [HookDeliverySummary(self.__requester, headers, attributes) for attributes in data] + + def get_gitignore_templates(self) -> list[str]: + """ + :calls: `GET /gitignore/templates `_ + """ + headers, data = self.__requester.requestJsonAndCheck("GET", "/gitignore/templates") + return data + + def get_gitignore_template(self, name: str) -> GitignoreTemplate: + """ + :calls: `GET /gitignore/templates/{name} `_ + """ + assert isinstance(name, str), name + name = urllib.parse.quote(name) + headers, attributes = self.__requester.requestJsonAndCheck("GET", f"/gitignore/templates/{name}") + return github.GitignoreTemplate.GitignoreTemplate(self.__requester, headers, attributes) + + def get_emojis(self) -> dict[str, str]: + """ + :calls: `GET /emojis `_ + :rtype: dictionary of type => url for emoji` + """ + headers, attributes = self.__requester.requestJsonAndCheck("GET", "/emojis") + return attributes + + def create_from_raw_data( + self, klass: type[TGithubObject], raw_data: dict[str, Any], headers: dict[str, str | int] | None = None + ) -> TGithubObject: + """ + Creates an object from raw_data previously obtained by :attr:`GithubObject.raw_data`, and optionally headers + previously obtained by :attr:`GithubObject.raw_headers`. + + :param klass: the class of the object to create + :param raw_data: dict + :param headers: dict + :rtype: instance of class ``klass`` + + """ + if headers is None: + headers = {} + + if issubclass(klass, CompletableGithubObject): + return klass(self.__requester, headers, raw_data, completed=True) # type: ignore + return klass(self.__requester, headers, raw_data) + + def dump(self, obj: GithubObject, file: BinaryIO, protocol: int = 0) -> None: + """ + Dumps (pickles) a PyGithub object to a file-like object. Some effort is made to not pickle sensitive + information like the Github credentials used in the :class:`Github` instance. But NO EFFORT is made to remove + sensitive information from the object's attributes. + + :param obj: the object to pickle :param file: the file-like object to pickle to :param protocol: the + `pickling protocol `_ + :param obj: the object to pickle :param file: the file-like object to pickle to :param protocol: the + `pickling protocol `_ :param obj: the object to pickle :param file: the file-like object to pickle to :param + protocol: the + `pickling protocol `_ + :param obj: the object to pickle + :param file: the file-like object to pickle to + :param protocol: the `pickling protocol `_ + :param obj: the object to pickle + :param file: the file-like object to pickle to + :param protocol: the `pickling protocol `_ + + """ + pickle.dump((obj.__class__, obj.raw_data, obj.raw_headers), file, protocol) + + def load(self, f: BinaryIO) -> Any: + """ + Loads (unpickles) a PyGithub object from a file-like object. + + :param f: the file-like object to unpickle from + :return: the unpickled object + + """ + return self.create_from_raw_data(*pickle.load(f)) + + def get_oauth_application(self, client_id: str, client_secret: str) -> ApplicationOAuth: + return github.ApplicationOAuth.ApplicationOAuth( + self.__requester, + headers={}, + attributes={"client_id": client_id, "client_secret": client_secret}, + ) + + def get_app(self, slug: Opt[str] = NotSet) -> GithubApp: + """ + :calls: `GET /apps/{slug} `_ or `GET /app `_ + """ + + if slug is NotSet: + # with no slug given, calling /app returns the authenticated app, + # including the actual /apps/{slug} + warnings.warn( + "Argument slug is mandatory, calling this method without the slug argument is deprecated, please use " + "github.GithubIntegration(auth=github.Auth.AppAuth(...)).get_app() instead", + category=DeprecationWarning, + ) + return GithubIntegration(**self.__requester.kwargs).get_app() + else: + assert isinstance(slug, str), slug + # with a slug given, we can lazily load the GithubApp + slug = urllib.parse.quote(slug) + return github.GithubApp.GithubApp(self.__requester, {}, {"url": f"/apps/{slug}"}, completed=False) diff --git a/venv/lib/python3.10/site-packages/github/Membership.py b/venv/lib/python3.10/site-packages/github/Membership.py new file mode 100644 index 0000000000000000000000000000000000000000..900fd94db7c132fd81391fd84ce9f56d584de55c --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/Membership.py @@ -0,0 +1,131 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2015 Matt Babineau # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Martijn Koster # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Pavan Kunisetty # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Mark Walker # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from typing import TYPE_CHECKING, Any + +import github.NamedUser +import github.Organization +from github.GithubObject import Attribute, CompletableGithubObject, NotSet + +if TYPE_CHECKING: + from github.NamedUser import NamedUser + from github.Organization import Organization + + +class Membership(CompletableGithubObject): + """ + This class represents Membership of an organization. + + The reference can be found here + https://docs.github.com/en/rest/reference/orgs + + The OpenAPI schema can be found at + - /components/schemas/org-membership + + """ + + def _initAttributes(self) -> None: + self._organization: Attribute[Organization] = NotSet + self._organization_url: Attribute[str] = NotSet + self._permissions: Attribute[dict[str, Any]] = NotSet + self._role: Attribute[str] = NotSet + self._state: Attribute[str] = NotSet + self._url: Attribute[str] = NotSet + self._user: Attribute[NamedUser] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"url": self._url.value}) + + @property + def organization(self) -> Organization: + self._completeIfNotSet(self._organization) + return self._organization.value + + @property + def organization_url(self) -> str: + self._completeIfNotSet(self._organization_url) + return self._organization_url.value + + @property + def permissions(self) -> dict[str, Any]: + self._completeIfNotSet(self._permissions) + return self._permissions.value + + @property + def role(self) -> str: + self._completeIfNotSet(self._role) + return self._role.value + + @property + def state(self) -> str: + self._completeIfNotSet(self._state) + return self._state.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + @property + def user(self) -> NamedUser: + self._completeIfNotSet(self._user) + return self._user.value + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "organization" in attributes: # pragma no branch + self._organization = self._makeClassAttribute(github.Organization.Organization, attributes["organization"]) + if "organization_url" in attributes: # pragma no branch + self._organization_url = self._makeStringAttribute(attributes["organization_url"]) + if "permissions" in attributes: # pragma no branch + self._permissions = self._makeDictAttribute(attributes["permissions"]) + if "role" in attributes: # pragma no branch + self._role = self._makeStringAttribute(attributes["role"]) + if "state" in attributes: # pragma no branch + self._state = self._makeStringAttribute(attributes["state"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) + if "user" in attributes: # pragma no branch + self._user = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["user"]) diff --git a/venv/lib/python3.10/site-packages/github/MergedUpstream.py b/venv/lib/python3.10/site-packages/github/MergedUpstream.py new file mode 100644 index 0000000000000000000000000000000000000000..fbb0390432ae2559bf15cfbb5cce415f69ec63db --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/MergedUpstream.py @@ -0,0 +1,68 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2024 Thomas Cooper # +# Copyright 2025 Enrico Minack # +# Copyright 2025 Mikhail f. Shiryaev # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + + +from typing import Any, Dict + +from github.GithubObject import Attribute, NonCompletableGithubObject, NotSet + + +class MergedUpstream(NonCompletableGithubObject): + """ + This class represents a result of merge-upstream call. + + The OpenAPI schema can be found at + - /components/schemas/merged-upstream + + """ + + def _initAttributes(self) -> None: + self._merge_type: Attribute[str] = NotSet + self._base_branch: Attribute[str] = NotSet + self._message: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"message": self._message.value}) + + @property + def merge_type(self) -> str: + return self._merge_type.value + + @property + def base_branch(self) -> str: + return self._base_branch.value + + @property + def message(self) -> str: + return self._message.value + + def _useAttributes(self, attributes: Dict[str, Any]) -> None: + if "merge_type" in attributes: # pragma no branch + self._merge_type = self._makeStringAttribute(attributes["merge_type"]) + if "base_branch" in attributes: # pragma no branch + self._base_branch = self._makeStringAttribute(attributes["base_branch"]) + if "message" in attributes: # pragma no branch + self._message = self._makeStringAttribute(attributes["message"]) diff --git a/venv/lib/python3.10/site-packages/github/Migration.py b/venv/lib/python3.10/site-packages/github/Migration.py new file mode 100644 index 0000000000000000000000000000000000000000..f5de8e692330b2fffec68721b20f101ae33f585a --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/Migration.py @@ -0,0 +1,266 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Michael Stead # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2017 Nicolas Agustín Torres # +# Copyright 2018 Shubham Singh <41840111+singh811@users.noreply.github.com> # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 per1234 # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Mark Walker # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Mark Amery # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +import urllib.parse +from datetime import datetime +from typing import Any + +import github.GithubObject +import github.NamedUser +import github.PaginatedList +import github.Repository +from github import Consts +from github.GithubObject import Attribute, CompletableGithubObject, NotSet + + +class Migration(CompletableGithubObject): + """ + This class represents Migrations. + + The reference can be found here + https://docs.github.com/en/rest/reference/migrations + + The OpenAPI schema can be found at + - /components/schemas/migration + + """ + + def _initAttributes(self) -> None: + self._archive_url: Attribute[str] = NotSet + self._created_at: Attribute[datetime] = NotSet + self._exclude: Attribute[list[str]] = NotSet + self._exclude_attachments: Attribute[bool] = NotSet + self._exclude_git_data: Attribute[bool] = NotSet + self._exclude_metadata: Attribute[bool] = NotSet + self._exclude_owner_projects: Attribute[bool] = NotSet + self._exclude_releases: Attribute[bool] = NotSet + self._guid: Attribute[str] = NotSet + self._id: Attribute[int] = NotSet + self._lock_repositories: Attribute[bool] = NotSet + self._node_id: Attribute[str] = NotSet + self._org_metadata_only: Attribute[bool] = NotSet + self._owner: Attribute[github.NamedUser.NamedUser] = NotSet + self._repositories: Attribute[list[github.Repository.Repository]] = NotSet + self._state: Attribute[str] = NotSet + self._updated_at: Attribute[datetime] = NotSet + self._url: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"state": self._state.value, "url": self._url.value}) + + @property + def archive_url(self) -> str: + self._completeIfNotSet(self._archive_url) + return self._archive_url.value + + @property + def created_at(self) -> datetime: + self._completeIfNotSet(self._created_at) + return self._created_at.value + + @property + def exclude(self) -> list[str]: + self._completeIfNotSet(self._exclude) + return self._exclude.value + + @property + def exclude_attachments(self) -> bool: + self._completeIfNotSet(self._exclude_attachments) + return self._exclude_attachments.value + + @property + def exclude_git_data(self) -> bool: + self._completeIfNotSet(self._exclude_git_data) + return self._exclude_git_data.value + + @property + def exclude_metadata(self) -> bool: + self._completeIfNotSet(self._exclude_metadata) + return self._exclude_metadata.value + + @property + def exclude_owner_projects(self) -> bool: + self._completeIfNotSet(self._exclude_owner_projects) + return self._exclude_owner_projects.value + + @property + def exclude_releases(self) -> bool: + self._completeIfNotSet(self._exclude_releases) + return self._exclude_releases.value + + @property + def guid(self) -> str: + self._completeIfNotSet(self._guid) + return self._guid.value + + @property + def id(self) -> int: + return self._id.value + + @property + def lock_repositories(self) -> bool: + self._completeIfNotSet(self._repositories) + return self._lock_repositories.value + + @property + def node_id(self) -> str: + self._completeIfNotSet(self._node_id) + return self._node_id.value + + @property + def org_metadata_only(self) -> bool: + self._completeIfNotSet(self._org_metadata_only) + return self._org_metadata_only.value + + @property + def owner(self) -> github.NamedUser.NamedUser: + self._completeIfNotSet(self._owner) + return self._owner.value + + @property + def repositories(self) -> list[github.Repository.Repository]: + self._completeIfNotSet(self._repositories) + return self._repositories.value + + @property + def state(self) -> str: + self._completeIfNotSet(self._guid) + return self._state.value + + @property + def updated_at(self) -> datetime: + self._completeIfNotSet(self._updated_at) + return self._updated_at.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + def get_status(self) -> str: + """ + :calls: `GET /user/migrations/{migration_id} `_ + """ + headers, data = self._requester.requestJsonAndCheck( + "GET", self.url, headers={"Accept": Consts.mediaTypeMigrationPreview} + ) + self._useAttributes(data) + return self.state + + def get_archive_url(self) -> str: + """ + :calls: `GET /user/migrations/{migration_id}/archive `_ + """ + headers, data = self._requester.requestJsonAndCheck( + "GET", + f"{self.url}/archive", + headers={"Accept": Consts.mediaTypeMigrationPreview}, + ) + return data["data"] + + def delete(self) -> None: + """ + :calls: `DELETE /user/migrations/{migration_id}/archive `_ + """ + headers, data = self._requester.requestJsonAndCheck( + "DELETE", + f"{self.url}/archive", + headers={"Accept": Consts.mediaTypeMigrationPreview}, + ) + + def unlock_repo(self, repo_name: str) -> None: + """ + :calls: `DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock `_ + """ + assert isinstance(repo_name, str), repo_name + repo_name = urllib.parse.quote(repo_name) + headers, data = self._requester.requestJsonAndCheck( + "DELETE", + f"{self.url}/repos/{repo_name}/lock", + headers={"Accept": Consts.mediaTypeMigrationPreview}, + ) + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "archive_url" in attributes: # pragma no branch + self._archive_url = self._makeStringAttribute(attributes["archive_url"]) + if "created_at" in attributes: + self._created_at = self._makeDatetimeAttribute(attributes["created_at"]) + if "exclude" in attributes: # pragma no branch + self._exclude = self._makeListOfStringsAttribute(attributes["exclude"]) + if "exclude_attachments" in attributes: + self._exclude_attachments = self._makeBoolAttribute(attributes["exclude_attachments"]) + if "exclude_git_data" in attributes: # pragma no branch + self._exclude_git_data = self._makeBoolAttribute(attributes["exclude_git_data"]) + if "exclude_metadata" in attributes: # pragma no branch + self._exclude_metadata = self._makeBoolAttribute(attributes["exclude_metadata"]) + if "exclude_owner_projects" in attributes: # pragma no branch + self._exclude_owner_projects = self._makeBoolAttribute(attributes["exclude_owner_projects"]) + if "exclude_releases" in attributes: # pragma no branch + self._exclude_releases = self._makeBoolAttribute(attributes["exclude_releases"]) + if "guid" in attributes: + self._guid = self._makeStringAttribute(attributes["guid"]) + if "id" in attributes: + self._id = self._makeIntAttribute(attributes["id"]) + if "lock_repositories" in attributes: + self._lock_repositories = self._makeBoolAttribute(attributes["lock_repositories"]) + if "node_id" in attributes: # pragma no branch + self._node_id = self._makeStringAttribute(attributes["node_id"]) + if "org_metadata_only" in attributes: # pragma no branch + self._org_metadata_only = self._makeBoolAttribute(attributes["org_metadata_only"]) + if "owner" in attributes: + self._owner = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["owner"]) + if "repositories" in attributes: + self._repositories = self._makeListOfClassesAttribute( + github.Repository.Repository, attributes["repositories"] + ) + if "state" in attributes: + self._state = self._makeStringAttribute(attributes["state"]) + if "updated_at" in attributes: + self._updated_at = self._makeDatetimeAttribute(attributes["updated_at"]) + if "url" in attributes: + self._url = self._makeStringAttribute(attributes["url"]) diff --git a/venv/lib/python3.10/site-packages/github/Milestone.py b/venv/lib/python3.10/site-packages/github/Milestone.py new file mode 100644 index 0000000000000000000000000000000000000000..844f8e35b09d6c9ee9e9e25f7eeb78f904ad0a9b --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/Milestone.py @@ -0,0 +1,243 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2013 martinqt # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Michell Stuttgart # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Mark Walker # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from datetime import date, datetime +from typing import Any + +import github.GithubObject +import github.Label +import github.NamedUser +import github.PaginatedList +from github.GithubObject import Attribute, CompletableGithubObject, NotSet, Opt, is_defined +from github.PaginatedList import PaginatedList + + +class Milestone(CompletableGithubObject): + """ + This class represents Milestones. + + The reference can be found here + https://docs.github.com/en/rest/reference/issues#milestones + + The OpenAPI schema can be found at + - /components/schemas/issue-event-milestone + - /components/schemas/milestone + - /components/schemas/nullable-milestone + + """ + + def _initAttributes(self) -> None: + self._closed_at: Attribute[datetime] = NotSet + self._closed_issues: Attribute[int] = NotSet + self._created_at: Attribute[datetime] = NotSet + self._creator: Attribute[github.NamedUser.NamedUser] = NotSet + self._description: Attribute[str] = NotSet + self._due_on: Attribute[datetime] = NotSet + self._html_url: Attribute[str] = NotSet + self._id: Attribute[int] = NotSet + self._labels_url: Attribute[str] = NotSet + self._node_id: Attribute[str] = NotSet + self._number: Attribute[int] = NotSet + self._open_issues: Attribute[int] = NotSet + self._state: Attribute[str] = NotSet + self._title: Attribute[str] = NotSet + self._updated_at: Attribute[datetime] = NotSet + self._url: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"number": self._number.value, "title": self._title.value}) + + @property + def _identity(self) -> int: + return self.number + + @property + def closed_at(self) -> datetime: + self._completeIfNotSet(self._closed_at) + return self._closed_at.value + + @property + def closed_issues(self) -> int: + self._completeIfNotSet(self._closed_issues) + return self._closed_issues.value + + @property + def created_at(self) -> datetime: + self._completeIfNotSet(self._created_at) + return self._created_at.value + + @property + def creator(self) -> github.NamedUser.NamedUser: + self._completeIfNotSet(self._creator) + return self._creator.value + + @property + def description(self) -> str: + self._completeIfNotSet(self._description) + return self._description.value + + @property + def due_on(self) -> datetime | None: + self._completeIfNotSet(self._due_on) + return self._due_on.value + + @property + def html_url(self) -> str: + self._completeIfNotSet(self._html_url) + return self._html_url.value + + @property + def id(self) -> int: + self._completeIfNotSet(self._id) + return self._id.value + + @property + def labels_url(self) -> str: + self._completeIfNotSet(self._labels_url) + return self._labels_url.value + + @property + def node_id(self) -> str: + self._completeIfNotSet(self._node_id) + return self._node_id.value + + @property + def number(self) -> int: + self._completeIfNotSet(self._number) + return self._number.value + + @property + def open_issues(self) -> int: + self._completeIfNotSet(self._open_issues) + return self._open_issues.value + + @property + def state(self) -> str: + self._completeIfNotSet(self._state) + return self._state.value + + @property + def title(self) -> str: + self._completeIfNotSet(self._title) + return self._title.value + + @property + def updated_at(self) -> datetime: + self._completeIfNotSet(self._updated_at) + return self._updated_at.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + def delete(self) -> None: + """ + :calls: `DELETE /repos/{owner}/{repo}/milestones/{number} `_ + """ + headers, data = self._requester.requestJsonAndCheck("DELETE", self.url) + + def edit( + self, title: str, state: Opt[str] = NotSet, description: Opt[str] = NotSet, due_on: Opt[date] = NotSet + ) -> None: + """ + :calls: `PATCH /repos/{owner}/{repo}/milestones/{number} `_ + """ + assert isinstance(title, str), title + assert state is NotSet or isinstance(state, str), state + assert description is NotSet or isinstance(description, str), description + assert due_on is NotSet or isinstance(due_on, date), due_on + post_parameters = NotSet.remove_unset_items( + { + "title": title, + "state": state, + "description": description, + } + ) + + if is_defined(due_on): + post_parameters["due_on"] = due_on.strftime("%Y-%m-%d") + + headers, data = self._requester.requestJsonAndCheck("PATCH", self.url, input=post_parameters) + self._useAttributes(data) + + def get_labels(self) -> PaginatedList[github.Label.Label]: + """ + :calls: `GET /repos/{owner}/{repo}/milestones/{number}/labels `_ + """ + return PaginatedList(github.Label.Label, self._requester, f"{self.url}/labels", None) + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "closed_at" in attributes: # pragma no branch + self._closed_at = self._makeDatetimeAttribute(attributes["closed_at"]) + if "closed_issues" in attributes: # pragma no branch + self._closed_issues = self._makeIntAttribute(attributes["closed_issues"]) + if "created_at" in attributes: # pragma no branch + self._created_at = self._makeDatetimeAttribute(attributes["created_at"]) + if "creator" in attributes: # pragma no branch + self._creator = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["creator"]) + if "description" in attributes: # pragma no branch + self._description = self._makeStringAttribute(attributes["description"]) + if "due_on" in attributes: # pragma no branch + self._due_on = self._makeDatetimeAttribute(attributes["due_on"]) + if "html_url" in attributes: # pragma no branch + self._html_url = self._makeStringAttribute(attributes["html_url"]) + if "id" in attributes: # pragma no branch + self._id = self._makeIntAttribute(attributes["id"]) + if "labels_url" in attributes: # pragma no branch + self._labels_url = self._makeStringAttribute(attributes["labels_url"]) + if "node_id" in attributes: # pragma no branch + self._node_id = self._makeStringAttribute(attributes["node_id"]) + if "number" in attributes: # pragma no branch + self._number = self._makeIntAttribute(attributes["number"]) + if "open_issues" in attributes: # pragma no branch + self._open_issues = self._makeIntAttribute(attributes["open_issues"]) + if "state" in attributes: # pragma no branch + self._state = self._makeStringAttribute(attributes["state"]) + if "title" in attributes: # pragma no branch + self._title = self._makeStringAttribute(attributes["title"]) + if "updated_at" in attributes: # pragma no branch + self._updated_at = self._makeDatetimeAttribute(attributes["updated_at"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) diff --git a/venv/lib/python3.10/site-packages/github/NamedEnterpriseUser.py b/venv/lib/python3.10/site-packages/github/NamedEnterpriseUser.py new file mode 100644 index 0000000000000000000000000000000000000000..f0f1100eba49a8e83983ebfdc17bd378acbadc82 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/NamedEnterpriseUser.py @@ -0,0 +1,204 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2023 Enrico Minack # +# Copyright 2023 YugoHino # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from typing import Any, Dict + +from github.GithubObject import Attribute, CompletableGithubObject, NotSet + + +class NamedEnterpriseUser(CompletableGithubObject): + """ + This class represents NamedEnterpriseUsers. + + The reference can be found here + https://docs.github.com/en/enterprise-cloud@latest/rest/enterprise-admin/license#list-enterprise-consumed-licenses + + """ + + def _initAttributes(self) -> None: + self._enterprise_server_primary_emails: Attribute[list] = NotSet + self._enterprise_server_user: Attribute[bool] = NotSet + self._enterprise_server_user_ids: Attribute[list] = NotSet + self._github_com_enterprise_roles: Attribute[list] = NotSet + self._github_com_login: Attribute[str] = NotSet + self._github_com_member_roles: Attribute[list] = NotSet + self._github_com_name: Attribute[str] = NotSet + self._github_com_orgs_with_pending_invites: Attribute[list] = NotSet + self._github_com_profile: Attribute[str] = NotSet + self._github_com_saml_name_id: Attribute[str] = NotSet + self._github_com_two_factor_auth: Attribute[bool] = NotSet + self._github_com_user: Attribute[bool] = NotSet + self._github_com_verified_domain_emails: Attribute[list] = NotSet + self._license_type: Attribute[str] = NotSet + self._total_user_accounts: Attribute[int] = NotSet + self._visual_studio_license_status: Attribute[str] = NotSet + self._visual_studio_subscription_email: Attribute[str] = NotSet + self._visual_studio_subscription_user: Attribute[bool] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"login": self._github_com_login.value}) + + @property + def enterprise_server_primary_emails(self) -> list: + self._completeIfNotSet(self._enterprise_server_primary_emails) + return self._enterprise_server_primary_emails.value + + @property + def enterprise_server_user(self) -> bool: + self._completeIfNotSet(self._enterprise_server_user) + return self._enterprise_server_user.value + + @property + def enterprise_server_user_ids(self) -> list: + self._completeIfNotSet(self._enterprise_server_user_ids) + return self._enterprise_server_user_ids.value + + @property + def github_com_enterprise_roles(self) -> list: + self._completeIfNotSet(self._github_com_enterprise_roles) + return self._github_com_enterprise_roles.value + + @property + def github_com_login(self) -> str: + self._completeIfNotSet(self._github_com_login) + return self._github_com_login.value + + @property + def github_com_member_roles(self) -> list: + self._completeIfNotSet(self._github_com_member_roles) + return self._github_com_member_roles.value + + @property + def github_com_name(self) -> str: + self._completeIfNotSet(self._github_com_name) + return self._github_com_name.value + + @property + def github_com_orgs_with_pending_invites(self) -> list: + self._completeIfNotSet(self._github_com_orgs_with_pending_invites) + return self._github_com_orgs_with_pending_invites.value + + @property + def github_com_profile(self) -> str: + self._completeIfNotSet(self._github_com_profile) + return self._github_com_profile.value + + @property + def github_com_saml_name_id(self) -> str: + self._completeIfNotSet(self._github_com_saml_name_id) + return self._github_com_saml_name_id.value + + @property + def github_com_two_factor_auth(self) -> bool: + self._completeIfNotSet(self._github_com_two_factor_auth) + return self._github_com_two_factor_auth.value + + @property + def github_com_user(self) -> bool: + self._completeIfNotSet(self._github_com_user) + return self._github_com_user.value + + @property + def github_com_verified_domain_emails(self) -> list: + self._completeIfNotSet(self._github_com_verified_domain_emails) + return self._github_com_verified_domain_emails.value + + @property + def license_type(self) -> str: + self._completeIfNotSet(self._license_type) + return self._license_type.value + + @property + def total_user_accounts(self) -> int: + self._completeIfNotSet(self._total_user_accounts) + return self._total_user_accounts.value + + @property + def visual_studio_license_status(self) -> str: + self._completeIfNotSet(self._visual_studio_license_status) + return self._visual_studio_license_status.value + + @property + def visual_studio_subscription_email(self) -> str: + self._completeIfNotSet(self._visual_studio_subscription_email) + return self._visual_studio_subscription_email.value + + @property + def visual_studio_subscription_user(self) -> bool: + self._completeIfNotSet(self._visual_studio_subscription_user) + return self._visual_studio_subscription_user.value + + def _useAttributes(self, attributes: Dict[str, Any]) -> None: + if "enterprise_server_primary_emails" in attributes: # pragma no branch + self._enterprise_server_primary_emails = self._makeListOfStringsAttribute( + attributes["enterprise_server_primary_emails"] + ) + if "enterprise_server_user" in attributes: # pragma no branch + self._enterprise_server_user = self._makeBoolAttribute(attributes["enterprise_server_user"]) + if "enterprise_server_user_ids" in attributes: # pragma no branch + self._enterprise_server_user_ids = self._makeListOfStringsAttribute( + attributes["enterprise_server_user_ids"] + ) + if "github_com_enterprise_roles" in attributes: # pragma no branch + self._github_com_enterprise_roles = self._makeListOfStringsAttribute( + attributes["github_com_enterprise_roles"] + ) + if "github_com_login" in attributes: # pragma no branch + self._github_com_login = self._makeStringAttribute(attributes["github_com_login"]) + if "github_com_member_roles" in attributes: # pragma no branch + self._github_com_member_roles = self._makeListOfStringsAttribute(attributes["github_com_member_roles"]) + if "github_com_name" in attributes: # pragma no branch + self._github_com_name = self._makeStringAttribute(attributes["github_com_name"]) + if "github_com_orgs_with_pending_invites" in attributes: # pragma no branch + self._github_com_orgs_with_pending_invites = self._makeListOfStringsAttribute( + attributes["github_com_orgs_with_pending_invites"] + ) + if "github_com_profile" in attributes: # pragma no branch + self._github_com_profile = self._makeStringAttribute(attributes["github_com_profile"]) + if "github_com_saml_name_id" in attributes: # pragma no branch + self._github_com_saml_name_id = self._makeStringAttribute(attributes["github_com_saml_name_id"]) + if "github_com_two_factor_auth" in attributes: # pragma no branch + self._github_com_two_factor_auth = self._makeBoolAttribute(attributes["github_com_two_factor_auth"]) + if "github_com_user" in attributes: # pragma no branch + self._github_com_user = self._makeBoolAttribute(attributes["github_com_user"]) + if "github_com_verified_domain_emails" in attributes: # pragma no branch + self._github_com_verified_domain_emails = self._makeListOfStringsAttribute( + attributes["github_com_verified_domain_emails"] + ) + if "license_type" in attributes: # pragma no branch + self._license_type = self._makeStringAttribute(attributes["license_type"]) + if "total_user_accounts" in attributes: # pragma no branch + self._total_user_accounts = self._makeIntAttribute(attributes["total_user_accounts"]) + if "visual_studio_license_status" in attributes: # pragma no branch + self._visual_studio_license_status = self._makeStringAttribute(attributes["visual_studio_license_status"]) + if "visual_studio_subscription_email" in attributes: # pragma no branch + self._visual_studio_subscription_email = self._makeStringAttribute( + attributes["visual_studio_subscription_email"] + ) + if "visual_studio_subscription_user" in attributes: # pragma no branch + self._visual_studio_subscription_user = self._makeBoolAttribute( + attributes["visual_studio_subscription_user"] + ) diff --git a/venv/lib/python3.10/site-packages/github/NamedUser.py b/venv/lib/python3.10/site-packages/github/NamedUser.py new file mode 100644 index 0000000000000000000000000000000000000000..d79229c2bebed9bbd7f06edde620ccde84196bbc --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/NamedUser.py @@ -0,0 +1,693 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Steve English # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2017 Simon # +# Copyright 2018 Bruce Richardson # +# Copyright 2018 Iraquitan Cordeiro Filho # +# Copyright 2018 Riccardo Pittau # +# Copyright 2018 Steve Kowalik # +# Copyright 2018 Victor Granic # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 namc # +# Copyright 2018 sfdye # +# Copyright 2019 Pavan Kunisetty # +# Copyright 2019 Shibasis Patel # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Surya Teja <94suryateja@gmail.com> # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Anuj Bansal # +# Copyright 2020 Daniel Haas # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Mark Walker # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Mark Amery # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +import urllib.parse +from datetime import datetime +from typing import TYPE_CHECKING, Any + +import github.Event +import github.Gist +import github.GithubObject +import github.Organization +import github.PaginatedList +import github.Permissions +import github.Plan +import github.Repository +from github import Consts +from github.GithubObject import Attribute, NotSet, Opt, is_defined +from github.PaginatedList import PaginatedList + +if TYPE_CHECKING: + from github.Event import Event + from github.Gist import Gist + from github.Membership import Membership + from github.Organization import Organization + from github.Permissions import Permissions + from github.Plan import Plan + from github.Project import Project + from github.Repository import Repository + from github.UserKey import UserKey + + +class NamedUser(github.GithubObject.CompletableGithubObject): + """ + This class represents NamedUsers. + + The reference can be found here + https://docs.github.com/en/rest/reference/users#get-a-user + + The OpenAPI schema can be found at + - /components/schemas/actor + - /components/schemas/collaborator + - /components/schemas/contributor + - /components/schemas/nullable-simple-user + - /components/schemas/public-user + - /components/schemas/simple-user + - /components/schemas/user-search-result-item + + """ + + def _initAttributes(self) -> None: + self._avatar_url: Attribute[str] = NotSet + self._bio: Attribute[str | None] = NotSet + self._blog: Attribute[str | None] = NotSet + self._collaborators: Attribute[int] = NotSet + self._company: Attribute[str | None] = NotSet + self._contributions: Attribute[int] = NotSet + self._created_at: Attribute[datetime] = NotSet + self._disk_usage: Attribute[int] = NotSet + self._display_login: Attribute[str] = NotSet + self._email: Attribute[str | None] = NotSet + self._events_url: Attribute[str] = NotSet + self._followers: Attribute[int] = NotSet + self._followers_url: Attribute[str] = NotSet + self._following: Attribute[int] = NotSet + self._following_url: Attribute[str] = NotSet + self._gists_url: Attribute[str] = NotSet + self._gravatar_id: Attribute[str | None] = NotSet + self._hireable: Attribute[bool | None] = NotSet + self._html_url: Attribute[str] = NotSet + self._id: Attribute[int] = NotSet + self._invitation_teams_url: Attribute[str] = NotSet + self._inviter: Attribute[NamedUser] = NotSet + self._location: Attribute[str | None] = NotSet + self._login: Attribute[str] = NotSet + self._name: Attribute[str] = NotSet + self._node_id: Attribute[str] = NotSet + self._notification_email: Attribute[str] = NotSet + self._organizations_url: Attribute[str] = NotSet + self._owned_private_repos: Attribute[int] = NotSet + self._permissions: Attribute[Permissions] = NotSet + self._plan: Attribute[Plan] = NotSet + self._private_gists: Attribute[int] = NotSet + self._public_gists: Attribute[int] = NotSet + self._public_repos: Attribute[int] = NotSet + self._received_events_url: Attribute[str] = NotSet + self._repos_url: Attribute[str] = NotSet + self._role: Attribute[str] = NotSet + self._role_name: Attribute[str] = NotSet + self._score: Attribute[float] = NotSet + self._site_admin: Attribute[bool] = NotSet + self._starred_at: Attribute[str] = NotSet + self._starred_url: Attribute[str] = NotSet + self._subscriptions_url: Attribute[str] = NotSet + self._suspended_at: Attribute[datetime | None] = NotSet + self._team_count: Attribute[int] = NotSet + self._text_matches: Attribute[dict[str, Any]] = NotSet + self._total_private_repos: Attribute[int] = NotSet + self._twitter_username: Attribute[str | None] = NotSet + self._type: Attribute[str] = NotSet + self._updated_at: Attribute[datetime] = NotSet + self._url: Attribute[str] = NotSet + self._user_view_type: Attribute[str] = NotSet + + def __eq__(self, other: Any) -> bool: + return isinstance(other, type(self)) and self.login == other.login and self.id == other.id + + def __hash__(self) -> int: + return hash((self.id, self.login)) + + def __repr__(self) -> str: + return self.get__repr__({"login": self._login.value}) + + @property + def _identity(self) -> str: + return self.login + + @property + def avatar_url(self) -> str: + self._completeIfNotSet(self._avatar_url) + return self._avatar_url.value + + @property + def bio(self) -> str | None: + self._completeIfNotSet(self._bio) + return self._bio.value + + @property + def blog(self) -> str | None: + self._completeIfNotSet(self._blog) + return self._blog.value + + @property + def collaborators(self) -> int | None: + self._completeIfNotSet(self._collaborators) + return self._collaborators.value + + @property + def company(self) -> str | None: + self._completeIfNotSet(self._company) + return self._company.value + + @property + def contributions(self) -> int: + self._completeIfNotSet(self._contributions) + return self._contributions.value + + @property + def created_at(self) -> datetime: + self._completeIfNotSet(self._created_at) + return self._created_at.value + + @property + def disk_usage(self) -> int: + self._completeIfNotSet(self._disk_usage) + return self._disk_usage.value + + @property + def display_login(self) -> str: + return self._display_login.value + + @property + def email(self) -> str | None: + self._completeIfNotSet(self._email) + return self._email.value + + @property + def events_url(self) -> str: + self._completeIfNotSet(self._events_url) + return self._events_url.value + + @property + def followers(self) -> int: + self._completeIfNotSet(self._followers) + return self._followers.value + + @property + def followers_url(self) -> str: + self._completeIfNotSet(self._followers_url) + return self._followers_url.value + + @property + def following(self) -> int: + self._completeIfNotSet(self._following) + return self._following.value + + @property + def following_url(self) -> str: + self._completeIfNotSet(self._following_url) + return self._following_url.value + + @property + def gists_url(self) -> str: + self._completeIfNotSet(self._gists_url) + return self._gists_url.value + + @property + def gravatar_id(self) -> str | None: + self._completeIfNotSet(self._gravatar_id) + return self._gravatar_id.value + + @property + def hireable(self) -> bool | None: + self._completeIfNotSet(self._hireable) + return self._hireable.value + + @property + def html_url(self) -> str: + self._completeIfNotSet(self._html_url) + return self._html_url.value + + @property + def id(self) -> int: + self._completeIfNotSet(self._id) + return self._id.value + + @property + def invitation_teams_url(self) -> str: + self._completeIfNotSet(self._invitation_teams_url) + return self._invitation_teams_url.value + + @property + def inviter(self) -> NamedUser: + self._completeIfNotSet(self._inviter) + return self._inviter.value + + @property + def location(self) -> str | None: + self._completeIfNotSet(self._location) + return self._location.value + + @property + def login(self) -> str: + self._completeIfNotSet(self._login) + return self._login.value + + @property + def name(self) -> str | None: + self._completeIfNotSet(self._name) + return self._name.value + + @property + def node_id(self) -> str: + self._completeIfNotSet(self._node_id) + return self._node_id.value + + @property + def notification_email(self) -> str: + return self._notification_email.value + + @property + def organizations_url(self) -> str: + self._completeIfNotSet(self._organizations_url) + return self._organizations_url.value + + @property + def owned_private_repos(self) -> int | None: + self._completeIfNotSet(self._owned_private_repos) + return self._owned_private_repos.value + + @property + def permissions(self) -> Permissions: + self._completeIfNotSet(self._permissions) + return self._permissions.value + + @property + def plan(self) -> Plan | None: + self._completeIfNotSet(self._plan) + return self._plan.value + + @property + def private_gists(self) -> int | None: + self._completeIfNotSet(self._private_gists) + return self._private_gists.value + + @property + def public_gists(self) -> int: + self._completeIfNotSet(self._public_gists) + return self._public_gists.value + + @property + def public_repos(self) -> int: + self._completeIfNotSet(self._public_repos) + return self._public_repos.value + + @property + def received_events_url(self) -> str: + self._completeIfNotSet(self._received_events_url) + return self._received_events_url.value + + @property + def repos_url(self) -> str: + self._completeIfNotSet(self._repos_url) + return self._repos_url.value + + @property + def role(self) -> str: + self._completeIfNotSet(self._role) + return self._role.value + + @property + def role_name(self) -> str: + return self._role_name.value + + @property + def score(self) -> float: + return self._score.value + + @property + def site_admin(self) -> bool: + self._completeIfNotSet(self._site_admin) + return self._site_admin.value + + @property + def starred_at(self) -> str: + return self._starred_at.value + + @property + def starred_url(self) -> str: + self._completeIfNotSet(self._starred_url) + return self._starred_url.value + + @property + def subscriptions_url(self) -> str: + self._completeIfNotSet(self._subscriptions_url) + return self._subscriptions_url.value + + @property + def suspended_at(self) -> datetime | None: + self._completeIfNotSet(self._suspended_at) + return self._suspended_at.value + + @property + def team_count(self) -> int: + self._completeIfNotSet(self._team_count) + return self._team_count.value + + @property + def text_matches(self) -> dict[str, Any]: + return self._text_matches.value + + @property + def total_private_repos(self) -> int | None: + self._completeIfNotSet(self._total_private_repos) + return self._total_private_repos.value + + @property + def twitter_username(self) -> str | None: + self._completeIfNotSet(self._twitter_username) + return self._twitter_username.value + + @property + def type(self) -> str: + self._completeIfNotSet(self._type) + return self._type.value + + @property + def updated_at(self) -> datetime: + self._completeIfNotSet(self._updated_at) + return self._updated_at.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + @property + def user_view_type(self) -> str: + return self._user_view_type.value + + def get_events(self) -> PaginatedList[Event]: + """ + :calls: `GET /users/{user}/events `_ + """ + return github.PaginatedList.PaginatedList(github.Event.Event, self._requester, f"{self.url}/events", None) + + def get_followers(self) -> PaginatedList[NamedUser]: + """ + :calls: `GET /users/{user}/followers `_ + """ + return github.PaginatedList.PaginatedList(NamedUser, self._requester, f"{self.url}/followers", None) + + def get_following(self) -> PaginatedList[NamedUser]: + """ + :calls: `GET /users/{user}/following `_ + """ + return github.PaginatedList.PaginatedList(NamedUser, self._requester, f"{self.url}/following", None) + + def get_gists(self, since: Opt[datetime] = NotSet) -> PaginatedList[Gist]: + """ + :calls: `GET /users/{user}/gists `_ + """ + assert since is NotSet or isinstance(since, datetime), since + url_parameters = dict() + if is_defined(since): + url_parameters["since"] = since.strftime("%Y-%m-%dT%H:%M:%SZ") + return github.PaginatedList.PaginatedList( + github.Gist.Gist, self._requester, f"{self.url}/gists", url_parameters + ) + + def get_keys(self) -> PaginatedList[UserKey]: + """ + :calls: `GET /users/{user}/keys `_ + """ + return github.PaginatedList.PaginatedList(github.UserKey.UserKey, self._requester, f"{self.url}/keys", None) + + def get_orgs(self) -> PaginatedList[Organization]: + """ + :calls: `GET /users/{user}/orgs `_ + """ + return github.PaginatedList.PaginatedList( + github.Organization.Organization, self._requester, f"{self.url}/orgs", None + ) + + def get_projects(self, state: str = "open") -> PaginatedList[Project]: + """ + :calls: `GET /users/{user}/projects `_ + """ + assert isinstance(state, str), state + url_parameters = {"state": state} + return github.PaginatedList.PaginatedList( + github.Project.Project, + self._requester, + f"{self.url}/projects", + url_parameters, + headers={"Accept": Consts.mediaTypeProjectsPreview}, + ) + + def get_public_events(self) -> PaginatedList[Event]: + """ + :calls: `GET /users/{user}/events/public `_ + """ + return github.PaginatedList.PaginatedList( + github.Event.Event, self._requester, f"{self.url}/events/public", None + ) + + def get_public_received_events(self) -> PaginatedList[Event]: + """ + :calls: `GET /users/{user}/received_events/public `_ + """ + return github.PaginatedList.PaginatedList( + github.Event.Event, + self._requester, + f"{self.url}/received_events/public", + None, + ) + + def get_received_events(self) -> PaginatedList[Event]: + """ + :calls: `GET /users/{user}/received_events `_ + """ + return github.PaginatedList.PaginatedList( + github.Event.Event, self._requester, f"{self.url}/received_events", None + ) + + def get_repo(self, name: str) -> Repository: + """ + :calls: `GET /repos/{owner}/{repo} `_ + """ + assert isinstance(name, str), name + headers, data = self._requester.requestJsonAndCheck("GET", f"/repos/{self.login}/{name}") + return github.Repository.Repository(self._requester, headers, data, completed=True) + + def get_repos( + self, + type: Opt[str] = NotSet, + sort: Opt[str] = NotSet, + direction: Opt[str] = NotSet, + ) -> PaginatedList[Repository]: + """ + :calls: `GET /users/{user}/repos `_ + """ + assert type is NotSet or isinstance(type, str), type + assert sort is NotSet or isinstance(sort, str), sort + assert direction is NotSet or isinstance(direction, str), direction + url_parameters = dict() + if type is not NotSet: + url_parameters["type"] = type + if sort is not NotSet: + url_parameters["sort"] = sort + if direction is not NotSet: + url_parameters["direction"] = direction + return github.PaginatedList.PaginatedList( + github.Repository.Repository, + self._requester, + f"{self.url}/repos", + url_parameters, + ) + + def get_starred(self) -> PaginatedList[Repository]: + """ + :calls: `GET /users/{user}/starred `_ + """ + return github.PaginatedList.PaginatedList( + github.Repository.Repository, self._requester, f"{self.url}/starred", None + ) + + def get_subscriptions(self) -> PaginatedList[Repository]: + """ + :calls: `GET /users/{user}/subscriptions `_ + """ + return github.PaginatedList.PaginatedList( + github.Repository.Repository, + self._requester, + f"{self.url}/subscriptions", + None, + ) + + def get_watched(self) -> PaginatedList[Repository]: + """ + :calls: `GET /users/{user}/watched `_ + """ + return github.PaginatedList.PaginatedList( + github.Repository.Repository, self._requester, f"{self.url}/watched", None + ) + + def has_in_following(self, following: NamedUser) -> bool: + """ + :calls: `GET /users/{user}/following/{target_user} `_ + """ + assert isinstance(following, github.NamedUser.NamedUser), following + status, headers, data = self._requester.requestJson("GET", f"{self.url}/following/{following._identity}") + return status == 204 + + def get_organization_membership(self, org: str | Organization) -> Membership: + """ + :calls: `GET /orgs/{org}/memberships/{username} `_ + """ + assert isinstance(org, str) or isinstance(org, github.Organization.Organization), org + if isinstance(org, github.Organization.Organization): + org = org.login # type: ignore + org = urllib.parse.quote(org) + headers, data = self._requester.requestJsonAndCheck("GET", f"/orgs/{org}/memberships/{self.login}") + return github.Membership.Membership(self._requester, headers, data, completed=True) + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "avatar_url" in attributes: # pragma no branch + self._avatar_url = self._makeStringAttribute(attributes["avatar_url"]) + if "bio" in attributes: # pragma no branch + self._bio = self._makeStringAttribute(attributes["bio"]) + if "blog" in attributes: # pragma no branch + self._blog = self._makeStringAttribute(attributes["blog"]) + if "collaborators" in attributes: # pragma no branch + self._collaborators = self._makeIntAttribute(attributes["collaborators"]) + if "company" in attributes: # pragma no branch + self._company = self._makeStringAttribute(attributes["company"]) + if "contributions" in attributes: # pragma no branch + self._contributions = self._makeIntAttribute(attributes["contributions"]) + if "created_at" in attributes: # pragma no branch + self._created_at = self._makeDatetimeAttribute(attributes["created_at"]) + if "disk_usage" in attributes: # pragma no branch + self._disk_usage = self._makeIntAttribute(attributes["disk_usage"]) + if "display_login" in attributes: # pragma no branch + self._display_login = self._makeStringAttribute(attributes["display_login"]) + if "email" in attributes: # pragma no branch + self._email = self._makeStringAttribute(attributes["email"]) + if "events_url" in attributes: # pragma no branch + self._events_url = self._makeStringAttribute(attributes["events_url"]) + if "followers" in attributes: # pragma no branch + self._followers = self._makeIntAttribute(attributes["followers"]) + if "followers_url" in attributes: # pragma no branch + self._followers_url = self._makeStringAttribute(attributes["followers_url"]) + if "following" in attributes: # pragma no branch + self._following = self._makeIntAttribute(attributes["following"]) + if "following_url" in attributes: # pragma no branch + self._following_url = self._makeStringAttribute(attributes["following_url"]) + if "gists_url" in attributes: # pragma no branch + self._gists_url = self._makeStringAttribute(attributes["gists_url"]) + if "gravatar_id" in attributes: # pragma no branch + self._gravatar_id = self._makeStringAttribute(attributes["gravatar_id"]) + if "hireable" in attributes: # pragma no branch + self._hireable = self._makeBoolAttribute(attributes["hireable"]) + if "html_url" in attributes: # pragma no branch + self._html_url = self._makeStringAttribute(attributes["html_url"]) + if "id" in attributes: # pragma no branch + self._id = self._makeIntAttribute(attributes["id"]) + if "invitation_teams_url" in attributes: # pragma no branch + self._invitation_teams_url = self._makeStringAttribute(attributes["invitation_teams_url"]) + if "inviter" in attributes: # pragma no branch + self._inviter = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["inviter"]) + if "location" in attributes: # pragma no branch + self._location = self._makeStringAttribute(attributes["location"]) + if "login" in attributes: # pragma no branch + self._login = self._makeStringAttribute(attributes["login"]) + if "name" in attributes: # pragma no branch + self._name = self._makeStringAttribute(attributes["name"]) + if "node_id" in attributes: # pragma no branch + self._node_id = self._makeStringAttribute(attributes["node_id"]) + if "notification_email" in attributes: # pragma no branch + self._notification_email = self._makeStringAttribute(attributes["notification_email"]) + if "organizations_url" in attributes: # pragma no branch + self._organizations_url = self._makeStringAttribute(attributes["organizations_url"]) + if "owned_private_repos" in attributes: # pragma no branch + self._owned_private_repos = self._makeIntAttribute(attributes["owned_private_repos"]) + if "permissions" in attributes: # pragma no branch + self._permissions = self._makeClassAttribute(github.Permissions.Permissions, attributes["permissions"]) + if "plan" in attributes: # pragma no branch + self._plan = self._makeClassAttribute(github.Plan.Plan, attributes["plan"]) + if "private_gists" in attributes: # pragma no branch + self._private_gists = self._makeIntAttribute(attributes["private_gists"]) + if "public_gists" in attributes: # pragma no branch + self._public_gists = self._makeIntAttribute(attributes["public_gists"]) + if "public_repos" in attributes: # pragma no branch + self._public_repos = self._makeIntAttribute(attributes["public_repos"]) + if "received_events_url" in attributes: # pragma no branch + self._received_events_url = self._makeStringAttribute(attributes["received_events_url"]) + if "repos_url" in attributes: # pragma no branch + self._repos_url = self._makeStringAttribute(attributes["repos_url"]) + if "role" in attributes: # pragma no branch + self._role = self._makeStringAttribute(attributes["role"]) + if "role_name" in attributes: # pragma no branch + self._role_name = self._makeStringAttribute(attributes["role_name"]) + if "score" in attributes: # pragma no branch + self._score = self._makeFloatAttribute(attributes["score"]) + if "site_admin" in attributes: # pragma no branch + self._site_admin = self._makeBoolAttribute(attributes["site_admin"]) + if "starred_at" in attributes: # pragma no branch + self._starred_at = self._makeStringAttribute(attributes["starred_at"]) + if "starred_url" in attributes: # pragma no branch + self._starred_url = self._makeStringAttribute(attributes["starred_url"]) + if "subscriptions_url" in attributes: # pragma no branch + self._subscriptions_url = self._makeStringAttribute(attributes["subscriptions_url"]) + if "suspended_at" in attributes: # pragma no branch + self._suspended_at = self._makeDatetimeAttribute(attributes["suspended_at"]) + if "team_count" in attributes: + self._team_count = self._makeIntAttribute(attributes["team_count"]) + if "text_matches" in attributes: # pragma no branch + self._text_matches = self._makeDictAttribute(attributes["text_matches"]) + if "total_private_repos" in attributes: # pragma no branch + self._total_private_repos = self._makeIntAttribute(attributes["total_private_repos"]) + if "twitter_username" in attributes: # pragma no branch + self._twitter_username = self._makeStringAttribute(attributes["twitter_username"]) + if "type" in attributes: # pragma no branch + self._type = self._makeStringAttribute(attributes["type"]) + if "updated_at" in attributes: # pragma no branch + self._updated_at = self._makeDatetimeAttribute(attributes["updated_at"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) + if "user_view_type" in attributes: # pragma no branch + self._user_view_type = self._makeStringAttribute(attributes["user_view_type"]) diff --git a/venv/lib/python3.10/site-packages/github/Notification.py b/venv/lib/python3.10/site-packages/github/Notification.py new file mode 100644 index 0000000000000000000000000000000000000000..24333b818826296b83972e74e2284adfb9b05f7e --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/Notification.py @@ -0,0 +1,175 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2013 AKFish # +# Copyright 2013 Peter Golm # +# Copyright 2013 Vincent Jacques # +# Copyright 2013 martinqt # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Alice GIRARD # +# Copyright 2018 sfdye # +# Copyright 2019 Olof-Joachim Frahm (欧雅福) # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Alice GIRARD # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Mark Walker # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2024 Matthias Bilger # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from datetime import datetime +from typing import Any + +import github.GithubObject +import github.Issue +import github.NotificationSubject +import github.PullRequest +import github.Repository +from github.GithubObject import Attribute, CompletableGithubObject, NotSet + + +class Notification(CompletableGithubObject): + """ + This class represents Notifications. + + The reference can be found here + https://docs.github.com/en/rest/reference/activity#notifications + + The OpenAPI schema can be found at + - /components/schemas/thread + + """ + + def _initAttributes(self) -> None: + self._id: Attribute[str] = NotSet + self._last_read_at: Attribute[datetime] = NotSet + self._reason: Attribute[str] = NotSet + self._repository: Attribute[github.Repository.Repository] = NotSet + self._subject: Attribute[github.NotificationSubject.NotificationSubject] = NotSet + self._subscription_url: Attribute[str] = NotSet + self._unread: Attribute[bool] = NotSet + self._updated_at: Attribute[datetime] = NotSet + self._url: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"id": self._id.value, "subject": self._subject.value}) + + @property + def id(self) -> str: + self._completeIfNotSet(self._id) + return self._id.value + + @property + def last_read_at(self) -> datetime: + self._completeIfNotSet(self._last_read_at) + return self._last_read_at.value + + @property + def reason(self) -> str: + self._completeIfNotSet(self._reason) + return self._reason.value + + @property + def repository(self) -> github.Repository.Repository: + self._completeIfNotSet(self._repository) + return self._repository.value + + @property + def subject(self) -> github.NotificationSubject.NotificationSubject: + self._completeIfNotSet(self._subject) + return self._subject.value + + @property + def subscription_url(self) -> str: + self._completeIfNotSet(self._subscription_url) + return self._subscription_url.value + + @property + def unread(self) -> bool: + self._completeIfNotSet(self._unread) + return self._unread.value + + @property + def updated_at(self) -> datetime: + self._completeIfNotSet(self._updated_at) + return self._updated_at.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + def mark_as_read(self) -> None: + """ + :calls: `PATCH /notifications/threads/{id} `_ + """ + headers, data = self._requester.requestJsonAndCheck( + "PATCH", + self.url, + ) + + def mark_as_done(self) -> None: + """ + :calls: `DELETE /notifications/threads/{id} `_ + """ + headers, data = self._requester.requestJsonAndCheck( + "DELETE", + self.url, + ) + + def get_pull_request(self) -> github.PullRequest.PullRequest: + headers, data = self._requester.requestJsonAndCheck("GET", self.subject.url) + return github.PullRequest.PullRequest(self._requester, headers, data, completed=True) + + def get_issue(self) -> github.Issue.Issue: + headers, data = self._requester.requestJsonAndCheck("GET", self.subject.url) + return github.Issue.Issue(self._requester, headers, data, completed=True) + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "id" in attributes: # pragma no branch + self._id = self._makeStringAttribute(attributes["id"]) + if "last_read_at" in attributes: # pragma no branch + self._last_read_at = self._makeDatetimeAttribute(attributes["last_read_at"]) + if "reason" in attributes: # pragma no branch + self._reason = self._makeStringAttribute(attributes["reason"]) + if "repository" in attributes: # pragma no branch + self._repository = self._makeClassAttribute(github.Repository.Repository, attributes["repository"]) + if "subject" in attributes: # pragma no branch + self._subject = self._makeClassAttribute( + github.NotificationSubject.NotificationSubject, attributes["subject"] + ) + if "subscription_url" in attributes: # pragma no branch + self._subscription_url = self._makeStringAttribute(attributes["subscription_url"]) + if "unread" in attributes: # pragma no branch + self._unread = self._makeBoolAttribute(attributes["unread"]) + if "updated_at" in attributes: # pragma no branch + self._updated_at = self._makeDatetimeAttribute(attributes["updated_at"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) diff --git a/venv/lib/python3.10/site-packages/github/NotificationSubject.py b/venv/lib/python3.10/site-packages/github/NotificationSubject.py new file mode 100644 index 0000000000000000000000000000000000000000..38ab68bd93d289bfa3b3d21ae9ee341ddf471692 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/NotificationSubject.py @@ -0,0 +1,93 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Mark Walker # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + + +from typing import Any, Dict + +from github.GithubObject import Attribute, NonCompletableGithubObject, NotSet + + +class NotificationSubject(NonCompletableGithubObject): + """ + This class represents Subjects of Notifications. + + The reference can be found here + https://docs.github.com/en/rest/reference/activity#list-notifications-for-the-authenticated-user + + The OpenAPI schema can be found at + - /components/schemas/thread/properties/subject + + """ + + def _initAttributes(self) -> None: + self._latest_comment_url: Attribute[str] = NotSet + self._title: Attribute[str] = NotSet + self._type: Attribute[str] = NotSet + self._url: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"title": self._title.value}) + + @property + def latest_comment_url(self) -> str: + return self._latest_comment_url.value + + @property + def title(self) -> str: + return self._title.value + + @property + def type(self) -> str: + return self._type.value + + @property + def url(self) -> str: + return self._url.value + + def _useAttributes(self, attributes: Dict[str, Any]) -> None: + if "latest_comment_url" in attributes: # pragma no branch + self._latest_comment_url = self._makeStringAttribute(attributes["latest_comment_url"]) + if "title" in attributes: # pragma no branch + self._title = self._makeStringAttribute(attributes["title"]) + if "type" in attributes: # pragma no branch + self._type = self._makeStringAttribute(attributes["type"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) diff --git a/venv/lib/python3.10/site-packages/github/Organization.py b/venv/lib/python3.10/site-packages/github/Organization.py new file mode 100644 index 0000000000000000000000000000000000000000..105597548c563103880dbabc3ed8e18f1ad7e057 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/Organization.py @@ -0,0 +1,1997 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Steve English # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2013 martinqt # +# Copyright 2014 Vincent Jacques # +# Copyright 2015 Sebastien Besson # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Matthew Neal # +# Copyright 2016 Michael Pereira # +# Copyright 2016 Peter Buckley # +# Copyright 2017 Balázs Rostás # +# Copyright 2018 Anton Nguyen # +# Copyright 2018 Jacopo Notarstefano # +# Copyright 2018 Jasper van Wanrooy # +# Copyright 2018 Raihaan <31362124+res0nance@users.noreply.github.com> # +# Copyright 2018 Shubham Singh <41840111+singh811@users.noreply.github.com> # +# Copyright 2018 Steve Kowalik # +# Copyright 2018 Tim Boring # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 Yossarian King # +# Copyright 2018 sfdye # +# Copyright 2019 Brian Choy # +# Copyright 2019 Geoffroy Jabouley # +# Copyright 2019 Pascal Bach # +# Copyright 2019 Raihaan <31362124+res0nance@users.noreply.github.com> # +# Copyright 2019 Shibasis Patel # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2019 ebrown # +# Copyright 2020 Anuj Bansal # +# Copyright 2020 Glenn McDonald # +# Copyright 2020 Steve Kowalik # +# Copyright 2020 latacora-daniel <71085674+latacora-daniel@users.noreply.github.com># +# Copyright 2020 ton-katsu # +# Copyright 2021 James Simpson # +# Copyright 2021 Marina Peresypkina # +# Copyright 2021 Mark Walker # +# Copyright 2021 Steve Kowalik # +# Copyright 2021 Tanner <51724788+lightningboltemoji@users.noreply.github.com> # +# Copyright 2022 KimSia Sim <245021+simkimsia@users.noreply.github.com> # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Felipe Peter # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Jonathan Greg <31892308+jmgreg31@users.noreply.github.com> # +# Copyright 2023 Jonathan Leitschuh # +# Copyright 2023 Mark Amery # +# Copyright 2023 Mauricio Alejandro Martínez Pacheco # +# Copyright 2023 Mauricio Alejandro Martínez Pacheco # +# Copyright 2023 Oliver Mannion <125105+tekumara@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Andrii Kezikov # +# Copyright 2024 Bill Napier # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jacky Lam # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2024 Mohamed Mostafa <112487260+mohy01@users.noreply.github.com> # +# Copyright 2024 Oskar Jansson <56458534+janssonoskar@users.noreply.github.com># +# Copyright 2024 Pasha Fateev # +# Copyright 2024 Thomas Cooper # +# Copyright 2024 Thomas Crowley <15927917+thomascrowley@users.noreply.github.com># +# Copyright 2025 Bill Napier # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +import urllib.parse +from datetime import datetime +from typing import TYPE_CHECKING, Any + +import github.CodeSecurityConfig +import github.CodeSecurityConfigRepository +import github.Copilot +import github.DefaultCodeSecurityConfig +import github.Event +import github.GithubObject +import github.HookDelivery +import github.NamedUser +import github.OrganizationCustomProperty +import github.OrganizationDependabotAlert +import github.OrganizationSecret +import github.OrganizationVariable +import github.Plan +import github.Project +import github.Repository +import github.Team +from github import Consts +from github.GithubObject import ( + Attribute, + CompletableGithubObject, + NotSet, + Opt, + is_defined, + is_optional, + is_optional_list, + is_undefined, +) +from github.PaginatedList import PaginatedList + +if TYPE_CHECKING: + from github.CodeSecurityConfig import CodeSecurityConfig + from github.CodeSecurityConfigRepository import CodeSecurityConfigRepository + from github.Copilot import Copilot + from github.DefaultCodeSecurityConfig import DefaultCodeSecurityConfig + from github.Event import Event + from github.Hook import Hook + from github.Installation import Installation + from github.Issue import Issue + from github.Label import Label + from github.Migration import Migration + from github.NamedUser import NamedUser + from github.OrganizationCustomProperty import ( + CustomProperty, + OrganizationCustomProperty, + RepositoryCustomPropertyValues, + ) + from github.OrganizationDependabotAlert import OrganizationDependabotAlert + from github.OrganizationSecret import OrganizationSecret + from github.OrganizationVariable import OrganizationVariable + from github.Plan import Plan + from github.Project import Project + from github.PublicKey import PublicKey + from github.Repository import Repository + from github.Team import Team + + +class Organization(CompletableGithubObject): + """ + This class represents Organizations. + + The reference can be found here + https://docs.github.com/en/rest/reference/orgs + + The OpenAPI schema can be found at + - /components/schemas/actor + - /components/schemas/organization-full + - /components/schemas/organization-simple + - /components/schemas/team-organization + + """ + + def _initAttributes(self) -> None: + self._advanced_security_enabled_for_new_repositories: Attribute[bool] = NotSet + self._archived_at: Attribute[datetime] = NotSet + self._avatar_url: Attribute[str] = NotSet + self._billing_email: Attribute[str] = NotSet + self._blog: Attribute[str | None] = NotSet + self._collaborators: Attribute[int] = NotSet + self._company: Attribute[str] = NotSet + self._created_at: Attribute[datetime] = NotSet + self._default_repository_permission: Attribute[str] = NotSet + self._dependabot_alerts_enabled_for_new_repositories: Attribute[bool] = NotSet + self._dependabot_security_updates_enabled_for_new_repositories: Attribute[bool] = NotSet + self._dependency_graph_enabled_for_new_repositories: Attribute[bool] = NotSet + self._description: Attribute[str] = NotSet + self._disk_usage: Attribute[int] = NotSet + self._display_login: Attribute[str] = NotSet + self._email: Attribute[str] = NotSet + self._events_url: Attribute[str] = NotSet + self._followers: Attribute[int] = NotSet + self._following: Attribute[int] = NotSet + self._gravatar_id: Attribute[str] = NotSet + self._has_organization_projects: Attribute[bool] = NotSet + self._has_repository_projects: Attribute[bool] = NotSet + self._hooks_url: Attribute[str] = NotSet + self._html_url: Attribute[str] = NotSet + self._id: Attribute[int] = NotSet + self._is_verified: Attribute[bool] = NotSet + self._issues_url: Attribute[str] = NotSet + self._location: Attribute[str] = NotSet + self._login: Attribute[str] = NotSet + self._members_allowed_repository_creation_type: Attribute[str] = NotSet + self._members_can_create_internal_repositories: Attribute[bool] = NotSet + self._members_can_create_pages: Attribute[bool] = NotSet + self._members_can_create_private_pages: Attribute[bool] = NotSet + self._members_can_create_private_repositories: Attribute[bool] = NotSet + self._members_can_create_public_pages: Attribute[bool] = NotSet + self._members_can_create_public_repositories: Attribute[bool] = NotSet + self._members_can_create_repositories: Attribute[bool] = NotSet + self._members_can_fork_private_repositories: Attribute[bool] = NotSet + self._members_url: Attribute[str] = NotSet + self._name: Attribute[str] = NotSet + self._node_id: Attribute[str] = NotSet + self._owned_private_repos: Attribute[int] = NotSet + self._plan: Attribute[Plan] = NotSet + self._private_gists: Attribute[int] = NotSet + self._public_gists: Attribute[int] = NotSet + self._public_members_url: Attribute[str] = NotSet + self._public_repos: Attribute[int] = NotSet + self._repos_url: Attribute[str] = NotSet + self._secret_scanning_enabled_for_new_repositories: Attribute[bool] = NotSet + self._secret_scanning_push_protection_custom_link: Attribute[str] = NotSet + self._secret_scanning_push_protection_custom_link_enabled: Attribute[bool] = NotSet + self._secret_scanning_push_protection_enabled_for_new_repositories: Attribute[bool] = NotSet + self._total_private_repos: Attribute[int] = NotSet + self._twitter_username: Attribute[str] = NotSet + self._two_factor_requirement_enabled: Attribute[bool] = NotSet + self._type: Attribute[str] = NotSet + self._updated_at: Attribute[datetime] = NotSet + self._url: Attribute[str] = NotSet + self._web_commit_signoff_required: Attribute[bool] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"login": self._login.value}) + + @property + def advanced_security_enabled_for_new_repositories(self) -> bool: + self._completeIfNotSet(self._advanced_security_enabled_for_new_repositories) + return self._advanced_security_enabled_for_new_repositories.value + + @property + def archived_at(self) -> datetime: + self._completeIfNotSet(self._archived_at) + return self._archived_at.value + + @property + def avatar_url(self) -> str: + self._completeIfNotSet(self._avatar_url) + return self._avatar_url.value + + @property + def billing_email(self) -> str: + self._completeIfNotSet(self._billing_email) + return self._billing_email.value + + @property + def blog(self) -> str | None: + self._completeIfNotSet(self._blog) + return self._blog.value + + @property + def collaborators(self) -> int: + self._completeIfNotSet(self._collaborators) + return self._collaborators.value + + @property + def company(self) -> str | None: + self._completeIfNotSet(self._company) + return self._company.value + + @property + def created_at(self) -> datetime: + self._completeIfNotSet(self._created_at) + return self._created_at.value + + @property + def default_repository_permission(self) -> str: + self._completeIfNotSet(self._default_repository_permission) + return self._default_repository_permission.value + + @property + def dependabot_alerts_enabled_for_new_repositories(self) -> bool: + self._completeIfNotSet(self._dependabot_alerts_enabled_for_new_repositories) + return self._dependabot_alerts_enabled_for_new_repositories.value + + @property + def dependabot_security_updates_enabled_for_new_repositories(self) -> bool: + self._completeIfNotSet(self._dependabot_security_updates_enabled_for_new_repositories) + return self._dependabot_security_updates_enabled_for_new_repositories.value + + @property + def dependency_graph_enabled_for_new_repositories(self) -> bool: + self._completeIfNotSet(self._dependency_graph_enabled_for_new_repositories) + return self._dependency_graph_enabled_for_new_repositories.value + + @property + def description(self) -> str: + self._completeIfNotSet(self._description) + return self._description.value + + @property + def disk_usage(self) -> int: + self._completeIfNotSet(self._disk_usage) + return self._disk_usage.value + + @property + def display_login(self) -> str: + self._completeIfNotSet(self._display_login) + return self._display_login.value + + @property + def email(self) -> str | None: + self._completeIfNotSet(self._email) + return self._email.value + + @property + def events_url(self) -> str: + self._completeIfNotSet(self._events_url) + return self._events_url.value + + @property + def followers(self) -> int: + self._completeIfNotSet(self._followers) + return self._followers.value + + @property + def following(self) -> int: + self._completeIfNotSet(self._following) + return self._following.value + + @property + def gravatar_id(self) -> str: + self._completeIfNotSet(self._gravatar_id) + return self._gravatar_id.value + + @property + def has_organization_projects(self) -> bool: + self._completeIfNotSet(self._has_organization_projects) + return self._has_organization_projects.value + + @property + def has_repository_projects(self) -> bool: + self._completeIfNotSet(self._has_repository_projects) + return self._has_repository_projects.value + + @property + def hooks_url(self) -> str: + self._completeIfNotSet(self._hooks_url) + return self._hooks_url.value + + @property + def html_url(self) -> str: + self._completeIfNotSet(self._html_url) + return self._html_url.value + + @property + def id(self) -> int: + self._completeIfNotSet(self._id) + return self._id.value + + @property + def is_verified(self) -> bool: + self._completeIfNotSet(self._is_verified) + return self._is_verified.value + + @property + def issues_url(self) -> str: + self._completeIfNotSet(self._issues_url) + return self._issues_url.value + + @property + def location(self) -> str: + self._completeIfNotSet(self._location) + return self._location.value + + @property + def login(self) -> str: + self._completeIfNotSet(self._login) + return self._login.value + + @property + def members_allowed_repository_creation_type(self) -> str: + self._completeIfNotSet(self._members_allowed_repository_creation_type) + return self._members_allowed_repository_creation_type.value + + @property + def members_can_create_internal_repositories(self) -> bool: + self._completeIfNotSet(self._members_can_create_internal_repositories) + return self._members_can_create_internal_repositories.value + + @property + def members_can_create_pages(self) -> bool: + self._completeIfNotSet(self._members_can_create_pages) + return self._members_can_create_pages.value + + @property + def members_can_create_private_pages(self) -> bool: + self._completeIfNotSet(self._members_can_create_private_pages) + return self._members_can_create_private_pages.value + + @property + def members_can_create_private_repositories(self) -> bool: + self._completeIfNotSet(self._members_can_create_private_repositories) + return self._members_can_create_private_repositories.value + + @property + def members_can_create_public_pages(self) -> bool: + self._completeIfNotSet(self._members_can_create_public_pages) + return self._members_can_create_public_pages.value + + @property + def members_can_create_public_repositories(self) -> bool: + self._completeIfNotSet(self._members_can_create_public_repositories) + return self._members_can_create_public_repositories.value + + @property + def members_can_create_repositories(self) -> bool: + self._completeIfNotSet(self._members_can_create_repositories) + return self._members_can_create_repositories.value + + @property + def members_can_fork_private_repositories(self) -> bool: + self._completeIfNotSet(self._members_can_fork_private_repositories) + return self._members_can_fork_private_repositories.value + + @property + def members_url(self) -> str: + self._completeIfNotSet(self._members_url) + return self._members_url.value + + @property + def name(self) -> str | None: + self._completeIfNotSet(self._name) + return self._name.value + + @property + def node_id(self) -> str: + self._completeIfNotSet(self._node_id) + return self._node_id.value + + @property + def owned_private_repos(self) -> int: + self._completeIfNotSet(self._owned_private_repos) + return self._owned_private_repos.value + + @property + def plan(self) -> Plan: + self._completeIfNotSet(self._plan) + return self._plan.value + + @property + def private_gists(self) -> int: + self._completeIfNotSet(self._private_gists) + return self._private_gists.value + + @property + def public_gists(self) -> int: + self._completeIfNotSet(self._public_gists) + return self._public_gists.value + + @property + def public_members_url(self) -> str: + self._completeIfNotSet(self._public_members_url) + return self._public_members_url.value + + @property + def public_repos(self) -> int: + self._completeIfNotSet(self._public_repos) + return self._public_repos.value + + @property + def repos_url(self) -> str: + self._completeIfNotSet(self._repos_url) + return self._repos_url.value + + @property + def secret_scanning_enabled_for_new_repositories(self) -> bool: + self._completeIfNotSet(self._secret_scanning_enabled_for_new_repositories) + return self._secret_scanning_enabled_for_new_repositories.value + + @property + def secret_scanning_push_protection_custom_link(self) -> str: + self._completeIfNotSet(self._secret_scanning_push_protection_custom_link) + return self._secret_scanning_push_protection_custom_link.value + + @property + def secret_scanning_push_protection_custom_link_enabled(self) -> bool: + self._completeIfNotSet(self._secret_scanning_push_protection_custom_link_enabled) + return self._secret_scanning_push_protection_custom_link_enabled.value + + @property + def secret_scanning_push_protection_enabled_for_new_repositories(self) -> bool: + self._completeIfNotSet(self._secret_scanning_push_protection_enabled_for_new_repositories) + return self._secret_scanning_push_protection_enabled_for_new_repositories.value + + @property + def total_private_repos(self) -> int: + self._completeIfNotSet(self._total_private_repos) + return self._total_private_repos.value + + @property + def twitter_username(self) -> str: + self._completeIfNotSet(self._twitter_username) + return self._twitter_username.value + + @property + def two_factor_requirement_enabled(self) -> bool: + self._completeIfNotSet(self._two_factor_requirement_enabled) + return self._two_factor_requirement_enabled.value + + @property + def type(self) -> str: + self._completeIfNotSet(self._type) + return self._type.value + + @property + def updated_at(self) -> datetime: + self._completeIfNotSet(self._updated_at) + return self._updated_at.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + @property + def web_commit_signoff_required(self) -> bool: + self._completeIfNotSet(self._web_commit_signoff_required) + return self._web_commit_signoff_required.value + + def add_to_members(self, member: NamedUser, role: Opt[str] = NotSet) -> None: + """ + :calls: `PUT /orgs/{org}/memberships/{user} `_ + """ + assert is_optional(role, str), role + assert isinstance(member, github.NamedUser.NamedUser), member + put_parameters = NotSet.remove_unset_items({"role": role}) + headers, data = self._requester.requestJsonAndCheck( + "PUT", f"{self.url}/memberships/{member._identity}", input=put_parameters + ) + + def add_to_public_members(self, public_member: NamedUser) -> None: + """ + :calls: `PUT /orgs/{org}/public_members/{user} `_ + """ + assert isinstance(public_member, github.NamedUser.NamedUser), public_member + headers, data = self._requester.requestJsonAndCheck( + "PUT", f"{self.url}/public_members/{public_member._identity}" + ) + + def create_fork( + self, + repo: Repository, + name: Opt[str] = NotSet, + default_branch_only: Opt[bool] = NotSet, + ) -> Repository: + """ + :calls: `POST /repos/{owner}/{repo}/forks `_ + """ + assert isinstance(repo, github.Repository.Repository), repo + return repo.create_fork( + self, + name=name, + default_branch_only=default_branch_only, + ) + + def create_repo_from_template( + self, + name: str, + repo: Repository, + description: Opt[str] = NotSet, + include_all_branches: Opt[bool] = NotSet, + private: Opt[bool] = NotSet, + ) -> Repository: + """self.name + :calls: `POST /repos/{template_owner}/{template_repo}/generate `_ + """ + assert isinstance(name, str), name + assert isinstance(repo, github.Repository.Repository), repo + assert is_optional(description, str), description + assert is_optional(include_all_branches, bool), include_all_branches + assert is_optional(private, bool), private + post_parameters: dict[str, Any] = NotSet.remove_unset_items( + { + "name": name, + "owner": self.login, + "description": description, + "include_all_branches": include_all_branches, + "private": private, + } + ) + + headers, data = self._requester.requestJsonAndCheck( + "POST", + f"/repos/{repo.owner.login}/{repo.name}/generate", + input=post_parameters, + headers={"Accept": "application/vnd.github.v3+json"}, + ) + return github.Repository.Repository(self._requester, headers, data, completed=True) + + def create_hook( + self, + name: str, + config: dict[str, str], + events: Opt[list[str]] = NotSet, + active: Opt[bool] = NotSet, + ) -> Hook: + """ + :calls: `POST /orgs/{owner}/hooks `_ + :param name: string + :param config: dict + :param events: list of string + :param active: bool + :rtype: :class:`github.Hook.Hook` + """ + assert isinstance(name, str), name + assert isinstance(config, dict), config + assert is_optional_list(events, str), events + assert is_optional(active, bool), active + post_parameters: dict[str, Any] = NotSet.remove_unset_items( + { + "name": name, + "config": config, + "events": events, + "active": active, + } + ) + headers, data = self._requester.requestJsonAndCheck("POST", f"{self.url}/hooks", input=post_parameters) + return github.Hook.Hook(self._requester, headers, data, completed=True) + + def create_project(self, name: str, body: Opt[str] = NotSet) -> github.Project.Project: + """ + :calls: `POST /orgs/{org}/projects `_ + """ + assert isinstance(name, str), name + assert is_optional(body, str), body + post_parameters: dict[str, Any] = NotSet.remove_unset_items({"name": name, "body": body}) + + headers, data = self._requester.requestJsonAndCheck( + "POST", + f"{self.url}/projects", + input=post_parameters, + headers={"Accept": Consts.mediaTypeProjectsPreview}, + ) + return github.Project.Project(self._requester, headers, data, completed=True) + + def create_repo( + self, + name: str, + description: Opt[str] = NotSet, + homepage: Opt[str] = NotSet, + private: Opt[bool] = NotSet, + visibility: Opt[str] = NotSet, + has_issues: Opt[bool] = NotSet, + has_wiki: Opt[bool] = NotSet, + has_downloads: Opt[bool] = NotSet, + has_projects: Opt[bool] = NotSet, + team_id: Opt[int] = NotSet, + auto_init: Opt[bool] = NotSet, + license_template: Opt[str] = NotSet, + gitignore_template: Opt[str] = NotSet, + allow_squash_merge: Opt[bool] = NotSet, + allow_merge_commit: Opt[bool] = NotSet, + allow_rebase_merge: Opt[bool] = NotSet, + delete_branch_on_merge: Opt[bool] = NotSet, + allow_update_branch: Opt[bool] = NotSet, + is_template: Opt[bool] = NotSet, + allow_auto_merge: Opt[bool] = NotSet, + use_squash_pr_title_as_default: Opt[bool] = NotSet, + squash_merge_commit_title: Opt[str] = NotSet, + squash_merge_commit_message: Opt[str] = NotSet, + merge_commit_title: Opt[str] = NotSet, + merge_commit_message: Opt[str] = NotSet, + custom_properties: Opt[dict[str, Any]] = NotSet, + ) -> github.Repository.Repository: + """ + :calls: `POST /orgs/{org}/repos `_ + """ + assert isinstance(name, str), name + assert is_optional(description, str), description + assert is_optional(homepage, str), homepage + assert is_optional(private, bool), private + assert is_optional(visibility, str), visibility + assert is_optional(has_issues, bool), has_issues + assert is_optional(has_wiki, bool), has_wiki + assert is_optional(has_downloads, bool), has_downloads + assert is_optional(has_projects, bool), has_projects + assert is_optional(team_id, int), team_id + assert is_optional(auto_init, bool), auto_init + assert is_optional(license_template, str), license_template + assert is_optional(gitignore_template, str), gitignore_template + assert is_optional(allow_squash_merge, bool), allow_squash_merge + assert is_optional(allow_merge_commit, bool), allow_merge_commit + assert is_optional(allow_rebase_merge, bool), allow_rebase_merge + assert is_optional(delete_branch_on_merge, bool), delete_branch_on_merge + assert is_optional(allow_update_branch, bool), allow_update_branch + assert is_optional(is_template, bool), is_template + assert is_optional(allow_auto_merge, bool), allow_auto_merge + assert is_optional(use_squash_pr_title_as_default, bool), use_squash_pr_title_as_default + assert squash_merge_commit_title in ["PR_TITLE", "COMMIT_OR_PR_TITLE", NotSet], squash_merge_commit_title + assert squash_merge_commit_message in [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK", + NotSet, + ], squash_merge_commit_message + assert merge_commit_title in ["PR_TITLE", "MERGE_MESSAGE", NotSet], merge_commit_title + assert merge_commit_message in ["PR_TITLE", "PR_BODY", "BLANK", NotSet], merge_commit_message + assert is_optional(custom_properties, dict), custom_properties + post_parameters = NotSet.remove_unset_items( + { + "name": name, + "description": description, + "homepage": homepage, + "private": private, + "visibility": visibility, + "has_issues": has_issues, + "has_wiki": has_wiki, + "has_downloads": has_downloads, + "has_projects": has_projects, + "team_id": team_id, + "auto_init": auto_init, + "license_template": license_template, + "gitignore_template": gitignore_template, + "allow_squash_merge": allow_squash_merge, + "allow_merge_commit": allow_merge_commit, + "allow_rebase_merge": allow_rebase_merge, + "delete_branch_on_merge": delete_branch_on_merge, + "allow_update_branch": allow_update_branch, + "is_template": is_template, + "allow_auto_merge": allow_auto_merge, + "use_squash_pr_title_as_default": use_squash_pr_title_as_default, + "squash_merge_commit_title": squash_merge_commit_title, + "squash_merge_commit_message": squash_merge_commit_message, + "merge_commit_title": merge_commit_title, + "merge_commit_message": merge_commit_message, + "custom_properties": custom_properties, + } + ) + + headers, data = self._requester.requestJsonAndCheck( + "POST", + f"{self.url}/repos", + input=post_parameters, + headers={"Accept": Consts.repoVisibilityPreview}, + ) + return github.Repository.Repository(self._requester, headers, data, completed=True) + + def create_secret( + self, + secret_name: str, + unencrypted_value: str, + visibility: str = "all", + selected_repositories: Opt[list[github.Repository.Repository]] = NotSet, + secret_type: str = "actions", + ) -> github.OrganizationSecret.OrganizationSecret: + """ + :param secret_name: string name of the secret + :param unencrypted_value: string plain text value of the secret + :param visibility: string options all or selected + :param selected_repositories: list of repositrories that the secret will be available in + :param secret_type: string options actions or dependabot + + :calls: `PUT /orgs/{org}/{secret_type}/secrets/{secret_name} `_ + """ + assert isinstance(secret_name, str), secret_name + assert isinstance(unencrypted_value, str), unencrypted_value + assert isinstance(visibility, str), visibility + assert is_optional_list(selected_repositories, github.Repository.Repository), selected_repositories + assert secret_type in ["actions", "dependabot"], "secret_type should be actions or dependabot" + + if visibility == "selected": + assert isinstance(selected_repositories, list) and all( + isinstance(element, github.Repository.Repository) for element in selected_repositories + ), selected_repositories + else: + assert selected_repositories is NotSet + + public_key = self.get_public_key(secret_type=secret_type) + payload = public_key.encrypt(unencrypted_value) + put_parameters: dict[str, Any] = { + "key_id": public_key.key_id, + "encrypted_value": payload, + "visibility": visibility, + } + if is_defined(selected_repositories): + # Dependbot and Actions endpoint expects different types + # https://docs.github.com/en/rest/dependabot/secrets?apiVersion=2022-11-28#create-or-update-an-organization-secret + # https://docs.github.com/en/rest/actions/secrets?apiVersion=2022-11-28#create-or-update-an-organization-secret + if secret_type == "actions": + put_parameters["selected_repository_ids"] = [element.id for element in selected_repositories] + if secret_type == "dependabot": + put_parameters["selected_repository_ids"] = [str(element.id) for element in selected_repositories] + + self._requester.requestJsonAndCheck( + "PUT", f"{self.url}/{secret_type}/secrets/{urllib.parse.quote(secret_name)}", input=put_parameters + ) + + return github.OrganizationSecret.OrganizationSecret( + requester=self._requester, + headers={}, + attributes={ + "name": secret_name, + "visibility": visibility, + "selected_repositories_url": f"{self.url}/{secret_type}/secrets/{urllib.parse.quote(secret_name)}/repositories", + "url": f"{self.url}/{secret_type}/secrets/{urllib.parse.quote(secret_name)}", + }, + completed=False, + ) + + def get_secrets(self, secret_type: str = "actions") -> PaginatedList[OrganizationSecret]: + """ + Gets all organization secrets :param secret_type: string options actions or dependabot :rtype: + + :class:`PaginatedList` of :class:`github.OrganizationSecret.OrganizationSecret` + + """ + assert secret_type in ["actions", "dependabot"], "secret_type should be actions or dependabot" + return PaginatedList( + github.OrganizationSecret.OrganizationSecret, + self._requester, + f"{self.url}/{secret_type}/secrets", + None, + list_item="secrets", + ) + + def get_secret(self, secret_name: str, secret_type: str = "actions") -> OrganizationSecret: + """ + :calls: 'GET /orgs/{org}/{secret_type}/secrets/{secret_name} `_ + :param secret_name: string + :param secret_type: string options actions or dependabot + :rtype: github.OrganizationSecret.OrganizationSecret + """ + assert isinstance(secret_name, str), secret_name + assert secret_type in ["actions", "dependabot"], "secret_type should be actions or dependabot" + return github.OrganizationSecret.OrganizationSecret( + requester=self._requester, + headers={}, + attributes={"url": f"{self.url}/{secret_type}/secrets/{urllib.parse.quote(secret_name)}"}, + completed=False, + ) + + def create_team( + self, + name: str, + repo_names: Opt[list[Repository]] = NotSet, + permission: Opt[str] = NotSet, + privacy: Opt[str] = NotSet, + description: Opt[str] = NotSet, + parent_team_id: Opt[int] = NotSet, + maintainers: Opt[list[int]] = NotSet, + notification_setting: Opt[str] = NotSet, + ) -> Team: + """ + :calls: `POST /orgs/{org}/teams `_ + :param name: string + :param repo_names: list of :class:`github.Repository.Repository` + :param permission: string + :param privacy: string + :param description: string + :param parent_team_id: integer + :param maintainers: list of: integer + :param notification_setting: string + :rtype: :class:`github.Team.Team` + """ + assert isinstance(name, str), name + assert is_optional_list(repo_names, github.Repository.Repository), repo_names + assert is_optional_list(maintainers, int), maintainers + assert is_optional(parent_team_id, int), parent_team_id + assert is_optional(permission, str), permission + assert is_optional(privacy, str), privacy + assert is_optional(description, str), description + assert notification_setting in ["notifications_enabled", "notifications_disabled", NotSet], notification_setting + post_parameters: dict[str, Any] = NotSet.remove_unset_items( + { + "name": name, + "permission": permission, + "privacy": privacy, + "description": description, + "parent_team_id": parent_team_id, + "maintainers": maintainers, + "notification_setting": notification_setting, + } + ) + if is_defined(repo_names): + post_parameters["repo_names"] = [element._identity for element in repo_names] + headers, data = self._requester.requestJsonAndCheck("POST", f"{self.url}/teams", input=post_parameters) + return github.Team.Team(self._requester, headers, data, completed=True) + + def create_variable( + self, + variable_name: str, + value: str, + visibility: str = "all", + selected_repositories: github.GithubObject.Opt[list[github.Repository.Repository]] = NotSet, + ) -> github.OrganizationVariable.OrganizationVariable: + """ + :calls: `POST /orgs/{org}/actions/variables/ `_ + :param variable_name: string + :param value: string + :param visibility: string + :param selected_repositories: list of :class:`github.Repository.Repository` + :rtype: github.OrganizationVariable.OrganizationVariable + """ + assert isinstance(variable_name, str), variable_name + assert isinstance(value, str), value + assert isinstance(visibility, str), visibility + if visibility == "selected": + assert isinstance(selected_repositories, list) and all( + isinstance(element, github.Repository.Repository) for element in selected_repositories + ), selected_repositories + else: + assert selected_repositories is NotSet + + post_parameters: dict[str, Any] = { + "name": variable_name, + "value": value, + "visibility": visibility, + } + if is_defined(selected_repositories): + post_parameters["selected_repository_ids"] = [element.id for element in selected_repositories] + + self._requester.requestJsonAndCheck("POST", f"{self.url}/actions/variables", input=post_parameters) + + return github.OrganizationVariable.OrganizationVariable( + requester=self._requester, + headers={}, + attributes={ + "name": variable_name, + "visibility": visibility, + "value": value, + "selected_repositories_url": f"{self.url}/actions/variables/{urllib.parse.quote(variable_name)}/repositories", + "url": self.url, + }, + completed=False, + ) + + def get_variables(self) -> PaginatedList[OrganizationVariable]: + """ + Gets all organization variables :rtype: :class:`PaginatedList` of + :class:`github.OrganizationVariable.OrganizationVariable` + """ + return PaginatedList( + github.OrganizationVariable.OrganizationVariable, + self._requester, + f"{self.url}/actions/variables", + None, + list_item="variables", + ) + + def get_variable(self, variable_name: str) -> OrganizationVariable: + """ + :calls: 'GET /orgs/{org}/actions/variables/{variable_name} `_ + :param variable_name: string + :rtype: github.OrganizationVariable.OrganizationVariable + """ + assert isinstance(variable_name, str), variable_name + return github.OrganizationVariable.OrganizationVariable( + requester=self._requester, + headers={}, + attributes={"url": f"{self.url}/actions/variables/{urllib.parse.quote(variable_name)}"}, + completed=False, + ) + + def delete_hook(self, id: int) -> None: + """ + :calls: `DELETE /orgs/{owner}/hooks/{id} `_ + :param id: integer + :rtype: None` + """ + assert isinstance(id, int), id + headers, data = self._requester.requestJsonAndCheck("DELETE", f"{self.url}/hooks/{id}") + + def edit( + self, + billing_email: Opt[str] = NotSet, + blog: Opt[str] = NotSet, + company: Opt[str] = NotSet, + description: Opt[str] = NotSet, + email: Opt[str] = NotSet, + location: Opt[str] = NotSet, + name: Opt[str] = NotSet, + ) -> None: + """ + :calls: `PATCH /orgs/{org} `_ + """ + assert is_optional(billing_email, str), billing_email + assert is_optional(blog, str), blog + assert is_optional(company, str), company + assert is_optional(description, str), description + assert is_optional(email, str), email + assert is_optional(location, str), location + assert is_optional(name, str), name + post_parameters = NotSet.remove_unset_items( + { + "billing_email": billing_email, + "blog": blog, + "company": company, + "description": description, + "email": email, + "location": location, + "name": name, + } + ) + + headers, data = self._requester.requestJsonAndCheck("PATCH", self.url, input=post_parameters) + self._useAttributes(data) + + def edit_hook( + self, + id: int, + name: str, + config: dict[str, str], + events: Opt[list[str]] = NotSet, + active: Opt[bool] = NotSet, + ) -> Hook: + """ + :calls: `PATCH /orgs/{owner}/hooks/{id} `_ + """ + assert isinstance(id, int), id + assert isinstance(name, str), name + assert isinstance(config, dict), config + assert is_optional_list(events, str), events + assert is_optional(active, bool), active + post_parameters: dict[str, Any] = NotSet.remove_unset_items( + {"name": name, "config": config, "events": events, "active": active} + ) + + headers, data = self._requester.requestJsonAndCheck("PATCH", f"{self.url}/hooks/{id}", input=post_parameters) + return github.Hook.Hook(self._requester, headers, data, completed=True) + + def get_events(self) -> PaginatedList[Event]: + """ + :calls: `GET /orgs/{org}/events `_ + :rtype: :class:`PaginatedList` of :class:`github.Event.Event` + """ + return PaginatedList(github.Event.Event, self._requester, f"{self.url}/events", None) + + def get_hook(self, id: int) -> github.Hook.Hook: + """ + :calls: `GET /orgs/{owner}/hooks/{id} `_ + """ + assert isinstance(id, int), id + headers, data = self._requester.requestJsonAndCheck("GET", f"{self.url}/hooks/{id}") + return github.Hook.Hook(self._requester, headers, data, completed=True) + + def get_hooks(self) -> PaginatedList[Hook]: + """ + :calls: `GET /orgs/{owner}/hooks `_ + """ + return PaginatedList(github.Hook.Hook, self._requester, f"{self.url}/hooks", None) + + def get_hook_delivery(self, hook_id: int, delivery_id: int) -> github.HookDelivery.HookDelivery: + """ + :calls: `GET /orgs/{owner}/hooks/{hook_id}/deliveries/{delivery_id} `_ + :param hook_id: integer + :param delivery_id: integer + :rtype: :class:`github.HookDelivery.HookDelivery` + """ + assert isinstance(hook_id, int), hook_id + assert isinstance(delivery_id, int), delivery_id + headers, data = self._requester.requestJsonAndCheck( + "GET", f"{self.url}/hooks/{hook_id}/deliveries/{delivery_id}" + ) + return github.HookDelivery.HookDelivery(self._requester, headers, data) + + def get_hook_deliveries(self, hook_id: int) -> PaginatedList[github.HookDelivery.HookDeliverySummary]: + """ + :calls: `GET /orgs/{owner}/hooks/{hook_id}/deliveries `_ + :param hook_id: integer + :rtype: :class:`PaginatedList` of :class:`github.HookDelivery.HookDeliverySummary` + """ + assert isinstance(hook_id, int), hook_id + return PaginatedList( + github.HookDelivery.HookDeliverySummary, + self._requester, + f"{self.url}/hooks/{hook_id}/deliveries", + None, + ) + + def get_issues( + self, + filter: Opt[str] = NotSet, + state: Opt[str] = NotSet, + labels: Opt[list[Label]] = NotSet, + sort: Opt[str] = NotSet, + direction: Opt[str] = NotSet, + since: Opt[datetime] = NotSet, + ) -> PaginatedList[Issue]: + """ + :calls: `GET /orgs/{org}/issues `_ + :rtype: :class:`PaginatedList` of :class:`github.Issue.Issue` + :param filter: string + :param state: string + :param labels: list of :class:`github.Label.Label` + :param sort: string + :param direction: string + :param since: datetime + :rtype: :class:`PaginatedList` of :class:`github.Issue.Issue` + """ + assert is_optional(filter, str), filter + assert is_optional(state, str), state + assert is_optional_list(labels, github.Label.Label), labels + assert is_optional(sort, str), sort + assert is_optional(direction, str), direction + assert is_optional(since, datetime), since + url_parameters: dict[str, Any] = NotSet.remove_unset_items( + {"filter": filter, "state": state, "sort": sort, "direction": direction} + ) + if is_defined(labels): + url_parameters["labels"] = ",".join(label.name for label in labels) + if is_defined(since): + url_parameters["since"] = since.strftime("%Y-%m-%dT%H:%M:%SZ") + return PaginatedList(github.Issue.Issue, self._requester, f"{self.url}/issues", url_parameters) + + def get_members( + self, + filter_: Opt[str] = NotSet, + role: Opt[str] = NotSet, + ) -> PaginatedList[NamedUser]: + """ + :calls: `GET /orgs/{org}/members `_ + """ + assert is_optional(filter_, str), filter_ + assert is_optional(role, str), role + + url_parameters = NotSet.remove_unset_items({"filter": filter_, "role": role}) + + return PaginatedList( + github.NamedUser.NamedUser, + self._requester, + f"{self.url}/members", + url_parameters, + ) + + def get_projects(self, state: Opt[str] = NotSet) -> PaginatedList[Project]: + """ + :calls: `GET /orgs/{org}/projects `_ + """ + + url_parameters = NotSet.remove_unset_items({"state": state}) + + return PaginatedList( + github.Project.Project, + self._requester, + f"{self.url}/projects", + url_parameters, + headers={"Accept": Consts.mediaTypeProjectsPreview}, + ) + + def get_public_members(self) -> PaginatedList[NamedUser]: + """ + :calls: `GET /orgs/{org}/public_members `_ + :rtype: :class:`PaginatedList` of :class:`github.NamedUser.NamedUser` + """ + return PaginatedList( + github.NamedUser.NamedUser, + self._requester, + f"{self.url}/public_members", + None, + ) + + def get_outside_collaborators(self, filter_: Opt[str] = NotSet) -> PaginatedList[NamedUser]: + """ + :calls: `GET /orgs/{org}/outside_collaborators `_ + """ + assert is_optional(filter_, str), filter_ + + url_parameters = NotSet.remove_unset_items({"filter": filter_}) + return PaginatedList( + github.NamedUser.NamedUser, + self._requester, + f"{self.url}/outside_collaborators", + url_parameters, + ) + + def remove_outside_collaborator(self, collaborator: NamedUser) -> None: + """ + :calls: `DELETE /orgs/{org}/outside_collaborators/{username} `_ + :param collaborator: :class:`github.NamedUser.NamedUser` + :rtype: None + """ + assert isinstance(collaborator, github.NamedUser.NamedUser), collaborator + headers, data = self._requester.requestJsonAndCheck( + "DELETE", f"{self.url}/outside_collaborators/{collaborator._identity}" + ) + + def convert_to_outside_collaborator(self, member: NamedUser) -> None: + """ + :calls: `PUT /orgs/{org}/outside_collaborators/{username} `_ + :param member: :class:`github.NamedUser.NamedUser` + :rtype: None + """ + assert isinstance(member, github.NamedUser.NamedUser), member + headers, data = self._requester.requestJsonAndCheck( + "PUT", f"{self.url}/outside_collaborators/{member._identity}" + ) + + def get_public_key(self, secret_type: str = "actions") -> PublicKey: + """ + :calls: `GET /orgs/{org}/{secret_type}/secrets/public-key `_ + :param secret_type: string options actions or dependabot + :rtype: :class:`github.PublicKey.PublicKey` + """ + headers, data = self._requester.requestJsonAndCheck("GET", f"{self.url}/{secret_type}/secrets/public-key") + return github.PublicKey.PublicKey(self._requester, headers, data, completed=True) + + def get_copilot(self) -> Copilot: + """ + :calls: Various Copilot-related endpoints for this organization :rtype: :class:`github.Copilot.Copilot` + """ + return github.Copilot.Copilot(self._requester, self.login) + + def get_repo(self, name: str) -> Repository: + """ + :calls: `GET /repos/{owner}/{repo} `_ + :param name: string + :rtype: :class:`github.Repository.Repository` + """ + assert isinstance(name, str), name + name = urllib.parse.quote(name) + headers, data = self._requester.requestJsonAndCheck( + "GET", + f"/repos/{self.login}/{name}", + headers={"Accept": Consts.repoVisibilityPreview}, + ) + return github.Repository.Repository(self._requester, headers, data, completed=True) + + def get_repos( + self, + type: Opt[str] = NotSet, + sort: Opt[str] = NotSet, + direction: Opt[str] = NotSet, + ) -> PaginatedList[Repository]: + """ + :calls: `GET /orgs/{org}/repos `_ + :param type: string ('all', 'public', 'private', 'forks', 'sources', 'member') + :param sort: string ('created', 'updated', 'pushed', 'full_name') + :param direction: string ('asc', desc') + """ + assert is_optional(type, str), type + assert is_optional(sort, str), sort + assert is_optional(direction, str), direction + + url_parameters = NotSet.remove_unset_items({"type": type, "sort": sort, "direction": direction}) + + return PaginatedList( + github.Repository.Repository, + self._requester, + f"{self.url}/repos", + url_parameters, + headers={"Accept": Consts.repoVisibilityPreview}, + ) + + def get_team(self, id: int) -> Team: + """ + :calls: `GET /teams/{id} `_ + """ + assert isinstance(id, int), id + headers, data = self._requester.requestJsonAndCheck("GET", f"/teams/{id}") + return github.Team.Team(self._requester, headers, data, completed=True) + + def get_team_by_slug(self, slug: str) -> Team: + """ + :calls: `GET /orgs/{org}/teams/{team_slug} `_ + """ + assert isinstance(slug, str), slug + slug = urllib.parse.quote(slug) + headers, data = self._requester.requestJsonAndCheck("GET", f"{self.url}/teams/{slug}") + return github.Team.Team(self._requester, headers, data, completed=True) + + def get_teams(self) -> PaginatedList[Team]: + """ + :calls: `GET /orgs/{org}/teams `_ + """ + return PaginatedList(github.Team.Team, self._requester, f"{self.url}/teams", None) + + def invitations(self) -> PaginatedList[NamedUser]: + """ + :calls: `GET /orgs/{org}/invitations `_ + """ + return PaginatedList( + github.NamedUser.NamedUser, + self._requester, + f"{self.url}/invitations", + None, + headers={"Accept": Consts.mediaTypeOrganizationInvitationPreview}, + ) + + def invite_user( + self, + user: Opt[NamedUser] = NotSet, + email: Opt[str] = NotSet, + role: Opt[str] = NotSet, + teams: Opt[list[Team]] = NotSet, + ) -> None: + """ + :calls: `POST /orgs/{org}/invitations `_ + :param user: :class:`github.NamedUser.NamedUser` + :param email: string + :param role: string + :param teams: array of :class:`github.Team.Team` + :rtype: None + """ + assert is_optional(user, github.NamedUser.NamedUser), user + assert is_optional(email, str), email + assert is_defined(email) != is_defined(user), "specify only one of email or user" + + assert is_undefined(role) or role in ["admin", "direct_member", "billing_manager"], role + assert is_optional_list(teams, github.Team.Team), teams + + parameters: dict[str, Any] = NotSet.remove_unset_items({"email": email, "role": role}) + + if is_defined(user): + parameters["invitee_id"] = user.id + if is_defined(teams): + parameters["team_ids"] = [t.id for t in teams] + + headers, data = self._requester.requestJsonAndCheck( + "POST", + f"{self.url}/invitations", + headers={"Accept": Consts.mediaTypeOrganizationInvitationPreview}, + input=parameters, + ) + + def cancel_invitation(self, invitee: NamedUser) -> bool: + """ + :calls: `DELETE /orgs/{org}/invitations/{invitation_id} `_ + :param invitee: :class:`github.NamedUser.NamedUser` + :rtype: None + """ + assert isinstance(invitee, github.NamedUser.NamedUser), invitee + status, headers, data = self._requester.requestJson("DELETE", f"{self.url}/invitations/{invitee.id}") + return status == 204 + + def has_in_members(self, member: NamedUser) -> bool: + """ + :calls: `GET /orgs/{org}/members/{user} `_ + :param member: :class:`github.NamedUser.NamedUser` + :rtype: bool + """ + assert isinstance(member, github.NamedUser.NamedUser), member + status, headers, data = self._requester.requestJson("GET", f"{self.url}/members/{member._identity}") + if status == 302: + status, headers, data = self._requester.requestJson("GET", headers["location"]) + return status == 204 + + def has_in_public_members(self, public_member: NamedUser) -> bool: + """ + :calls: `GET /orgs/{org}/public_members/{user} `_ + :param public_member: :class:`github.NamedUser.NamedUser` + :rtype: bool + """ + assert isinstance(public_member, github.NamedUser.NamedUser), public_member + status, headers, data = self._requester.requestJson( + "GET", f"{self.url}/public_members/{public_member._identity}" + ) + return status == 204 + + def remove_from_membership(self, member: NamedUser) -> None: + """ + :calls: `DELETE /orgs/{org}/memberships/{user} `_ + :param member: :class:`github.NamedUser.NamedUser` + :rtype: None + """ + assert isinstance(member, github.NamedUser.NamedUser), member + headers, data = self._requester.requestJsonAndCheck("DELETE", f"{self.url}/memberships/{member._identity}") + + def remove_from_members(self, member: NamedUser) -> None: + """ + :calls: `DELETE /orgs/{org}/members/{user} `_ + :param member: :class:`github.NamedUser.NamedUser` + :rtype: None + """ + assert isinstance(member, github.NamedUser.NamedUser), member + headers, data = self._requester.requestJsonAndCheck("DELETE", f"{self.url}/members/{member._identity}") + + def remove_from_public_members(self, public_member: NamedUser) -> None: + """ + :calls: `DELETE /orgs/{org}/public_members/{user} `_ + :param public_member: :class:`github.NamedUser.NamedUser` + :rtype: None + """ + assert isinstance(public_member, github.NamedUser.NamedUser), public_member + headers, data = self._requester.requestJsonAndCheck( + "DELETE", f"{self.url}/public_members/{public_member._identity}" + ) + + def create_migration( + self, + repos: list[str], + lock_repositories: Opt[bool] = NotSet, + exclude_attachments: Opt[bool] = NotSet, + ) -> Migration: + """ + :calls: `POST /orgs/{org}/migrations `_ + :param repos: list or tuple of str + :param lock_repositories: bool + :param exclude_attachments: bool + :rtype: :class:`github.Migration.Migration` + """ + assert isinstance(repos, (list, tuple)), repos + assert all(isinstance(repo, str) for repo in repos), repos + assert is_optional(lock_repositories, bool), lock_repositories + assert is_optional(exclude_attachments, bool), exclude_attachments + post_parameters = NotSet.remove_unset_items( + { + "repositories": repos, + "lock_repositories": lock_repositories, + "exclude_attachments": exclude_attachments, + } + ) + + headers, data = self._requester.requestJsonAndCheck( + "POST", + f"/orgs/{self.login}/migrations", + input=post_parameters, + headers={"Accept": Consts.mediaTypeMigrationPreview}, + ) + return github.Migration.Migration(self._requester, headers, data, completed=True) + + def get_migrations(self) -> PaginatedList[Migration]: + """ + :calls: `GET /orgs/{org}/migrations `_ + :rtype: :class:`PaginatedList` of :class:`github.Migration.Migration` + """ + return PaginatedList( + github.Migration.Migration, + self._requester, + f"/orgs/{self.login}/migrations", + None, + headers={"Accept": Consts.mediaTypeMigrationPreview}, + ) + + def get_installations(self) -> PaginatedList[Installation]: + """ + :calls: `GET /orgs/{org}/installations `_ + :rtype: :class:`PaginatedList` of :class:`github.Installation.Installation` + """ + + return PaginatedList( + github.Installation.Installation, + self._requester, + f"{self.url}/installations", + None, + headers=None, + list_item="installations", + ) + + def get_dependabot_alerts( + self, + state: Opt[str] = NotSet, + severity: Opt[str] = NotSet, + ecosystem: Opt[str] = NotSet, + package: Opt[str] = NotSet, + scope: Opt[str] = NotSet, + sort: Opt[str] = NotSet, + direction: Opt[str] = NotSet, + ) -> PaginatedList[OrganizationDependabotAlert]: + """ + :calls: `GET /orgs/{org}/dependabot/alerts `_ + :param state: Optional string + :param severity: Optional string + :param ecosystem: Optional string + :param package: Optional string + :param scope: Optional string + :param sort: Optional string + :param direction: Optional string + :rtype: :class:`PaginatedList` of :class:`github.DependabotAlert.DependabotAlert` + """ + allowed_states = ["auto_dismissed", "dismissed", "fixed", "open"] + allowed_severities = ["low", "medium", "high", "critical"] + allowed_ecosystems = ["composer", "go", "maven", "npm", "nuget", "pip", "pub", "rubygems", "rust"] + allowed_scopes = ["development", "runtime"] + allowed_sorts = ["created", "updated"] + allowed_directions = ["asc", "desc"] + assert state in allowed_states + [NotSet], f"State can be one of {', '.join(allowed_states)}" + assert severity in allowed_severities + [NotSet], f"Severity can be one of {', '.join(allowed_severities)}" + assert ecosystem in allowed_ecosystems + [NotSet], f"Ecosystem can be one of {', '.join(allowed_ecosystems)}" + assert scope in allowed_scopes + [NotSet], f"Scope can be one of {', '.join(allowed_scopes)}" + assert sort in allowed_sorts + [NotSet], f"Sort can be one of {', '.join(allowed_sorts)}" + assert direction in allowed_directions + [NotSet], f"Direction can be one of {', '.join(allowed_directions)}" + url_parameters = NotSet.remove_unset_items( + { + "state": state, + "severity": severity, + "ecosystem": ecosystem, + "package": package, + "scope": scope, + "sort": sort, + "direction": direction, + } + ) + return PaginatedList( + github.OrganizationDependabotAlert.OrganizationDependabotAlert, + self._requester, + f"{self.url}/dependabot/alerts", + url_parameters, + ) + + def get_custom_properties(self) -> PaginatedList[OrganizationCustomProperty]: + """ + :calls: `GET /orgs/{org}/properties/schema `_ + :rtype: :class:`PaginatedList` of :class:`github.OrganizationCustomProperty.OrganizationCustomProperty` + """ + return PaginatedList( + contentClass=github.OrganizationCustomProperty.OrganizationCustomProperty, + requester=self._requester, + firstUrl=f"{self.url}/properties/schema", + firstParams=None, + ) + + def get_custom_property(self, property_name: str) -> OrganizationCustomProperty: + """ + :calls: `GET /orgs/{org}/properties/schema/{property_name} `_ + :param property_name: string + :rtype: :class:`github.OrganizationCustomProperty.OrganizationCustomProperty` + """ + assert isinstance(property_name, str), property_name + headers, data = self._requester.requestJsonAndCheck( + "GET", f"{self.url}/properties/schema/{urllib.parse.quote(property_name)}" + ) + return github.OrganizationCustomProperty.OrganizationCustomProperty( + requester=self._requester, + headers=headers, + attributes=data, + ) + + def create_custom_properties(self, properties: list[CustomProperty]) -> list[OrganizationCustomProperty]: + """ + Create or update custom properties for an organization + :calls: `PATCH /orgs/{org}/properties/schema `_ + :param properties: list of :class:`github.OrganizationCustomProperty.CustomProperty` + :rtype: list of :class:`github.OrganizationCustomProperty.OrganizationCustomProperty` + """ + assert isinstance(properties, list), properties + assert all(isinstance(p, github.OrganizationCustomProperty.CustomProperty) for p in properties), properties + patch_parameters = {"properties": [p.to_dict() for p in properties]} + headers, data = self._requester.requestJsonAndCheck( + "PATCH", f"{self.url}/properties/schema", input=patch_parameters + ) + return [ + github.OrganizationCustomProperty.OrganizationCustomProperty( + requester=self._requester, headers=headers, attributes=property + ) + for property in data + ] + + def create_custom_property(self, property: CustomProperty) -> OrganizationCustomProperty: + """ + Create or update a custom property for an organization + :calls: `PUT /orgs/{org}/properties/schema/{property_name} `_ + :param property: :class:`github.OrganizationCustomProperty.CustomProperty` + :rtype: :class:`github.OrganizationCustomProperty.OrganizationCustomProperty` + """ + assert isinstance(property, github.OrganizationCustomProperty.CustomProperty), property + assert property.values_editable_by is NotSet + + post_parameters = property.to_dict() + property_name = post_parameters.pop("property_name") + headers, data = self._requester.requestJsonAndCheck( + "PUT", f"{self.url}/properties/schema/{property_name}", input=post_parameters + ) + return github.OrganizationCustomProperty.OrganizationCustomProperty( + requester=self._requester, headers=headers, attributes=data + ) + + def remove_custom_property(self, property_name: str) -> None: + """ + :calls: `DELETE /orgs/{org}/properties/schema/{property_name} `_ + :param property_name: string + :rtype: None + """ + assert isinstance(property_name, str), property_name + self._requester.requestJsonAndCheck("DELETE", f"{self.url}/properties/schema/{property_name}") + + def list_custom_property_values( + self, repository_query: Opt[str] = NotSet + ) -> PaginatedList[RepositoryCustomPropertyValues]: + """ + :calls: `GET /orgs/{org}/properties `_ + :rtype: :class:`PaginatedList` of dict + """ + return PaginatedList( + contentClass=github.OrganizationCustomProperty.RepositoryCustomPropertyValues, + requester=self._requester, + firstUrl=f"{self.url}/properties/values", + firstParams=NotSet.remove_unset_items({"repository_query": repository_query}), + ) + + def create_custom_property_values( + self, repository_names: list[str], properties: dict[str, str | list | None] + ) -> None: + """ + Create or update custom property values for organization repositories + :calls: `PATCH /orgs/{org}/properties `_ + :param repository_names: list of strings + :param properties: dict of string to string, list or None + :rtype: None + """ + assert isinstance(repository_names, list), repository_names + assert all(isinstance(repo, str) for repo in repository_names), repository_names + assert isinstance(properties, dict), properties + assert all(isinstance(value, (str, list, type(None))) for value in properties.values()), properties + patch_parameters = { + "repository_names": repository_names, + "properties": [{"property_name": k, "value": v} for k, v in properties.items()], + } + self._requester.requestJsonAndCheck("PATCH", f"{self.url}/properties/values", input=patch_parameters) + + def get_code_security_configs(self, target_type: Opt[str] = NotSet) -> PaginatedList[CodeSecurityConfig]: + """ + :calls: `GET /orgs/{org}/code-security/configurations `_ + :rtype: :class:`CodeSecurityConfig` + """ + return PaginatedList( + contentClass=github.CodeSecurityConfig.CodeSecurityConfig, + requester=self._requester, + firstUrl=f"{self.url}/code-security/configurations", + firstParams=NotSet.remove_unset_items({"target_type": target_type}), + ) + + def create_code_security_config( + self, + name: str, + description: str, + advanced_security: Opt[str] = NotSet, + dependency_graph: Opt[str] = NotSet, + dependency_graph_autosubmit_action: Opt[str] = NotSet, + dependabot_alerts: Opt[str] = NotSet, + dependabot_security_updates: Opt[str] = NotSet, + code_scanning_default_setup: Opt[str] = NotSet, + secret_scanning: Opt[str] = NotSet, + secret_scanning_push_protection: Opt[str] = NotSet, + secret_scanning_delegated_bypass: Opt[str] = NotSet, + secret_scanning_validity_checks: Opt[str] = NotSet, + secret_scanning_non_provider_patterns: Opt[str] = NotSet, + private_vulnerability_reporting: Opt[str] = NotSet, + enforcement: Opt[str] = NotSet, + ) -> CodeSecurityConfig: + """ + :calls: `POST /orgs/{org}/code-security/configurations `_ + :rtype: :class:`PaginatedList` of dict + """ + assert isinstance(name, str), name + assert isinstance(description, str), description + assert is_optional(advanced_security, str), advanced_security + assert is_optional(dependency_graph, str), dependency_graph + assert is_optional(dependency_graph_autosubmit_action, str), dependency_graph_autosubmit_action + assert is_optional(dependabot_alerts, str), dependabot_alerts + assert is_optional(dependabot_security_updates, str), dependabot_security_updates + assert is_optional(code_scanning_default_setup, str), code_scanning_default_setup + assert is_optional(secret_scanning, str), secret_scanning + assert is_optional(secret_scanning_push_protection, str), secret_scanning_push_protection + assert is_optional(secret_scanning_delegated_bypass, str), secret_scanning_delegated_bypass + assert is_optional(secret_scanning_validity_checks, str), secret_scanning_validity_checks + assert is_optional(secret_scanning_non_provider_patterns, str), secret_scanning_non_provider_patterns + assert is_optional(private_vulnerability_reporting, str), private_vulnerability_reporting + assert is_optional(enforcement, str), enforcement + post_parameters = NotSet.remove_unset_items( + { + "name": name, + "description": description, + "advanced_security": advanced_security, + "dependency_graph": dependency_graph, + "dependency_graph_autosubmit_action": dependency_graph_autosubmit_action, + "dependabot_alerts": dependabot_alerts, + "dependabot_security_updates": dependabot_security_updates, + "code_scanning_default_setup": code_scanning_default_setup, + "secret_scanning": secret_scanning, + "secret_scanning_push_protection": secret_scanning_push_protection, + "secret_scanning_delegated_bypass": secret_scanning_delegated_bypass, + "secret_scanning_validity_checks": secret_scanning_validity_checks, + "secret_scanning_non_provider_patterns": secret_scanning_non_provider_patterns, + "private_vulnerability_reporting": private_vulnerability_reporting, + "enforcement": enforcement, + } + ) + + headers, data = self._requester.requestJsonAndCheck( + "POST", + f"{self.url}/code-security/configurations", + input=post_parameters, + headers={"Accept": Consts.repoVisibilityPreview}, + ) + return github.CodeSecurityConfig.CodeSecurityConfig(self._requester, headers, data) + + def edit_code_security_config( + self, + id: int, + name: Opt[str] = NotSet, + description: Opt[str] = NotSet, + advanced_security: Opt[str] = NotSet, + dependency_graph: Opt[str] = NotSet, + dependency_graph_autosubmit_action: Opt[str] = NotSet, + dependabot_alerts: Opt[str] = NotSet, + dependabot_security_updates: Opt[str] = NotSet, + code_scanning_default_setup: Opt[str] = NotSet, + secret_scanning: Opt[str] = NotSet, + secret_scanning_push_protection: Opt[str] = NotSet, + secret_scanning_delegated_bypass: Opt[str] = NotSet, + secret_scanning_validity_checks: Opt[str] = NotSet, + secret_scanning_non_provider_patterns: Opt[str] = NotSet, + private_vulnerability_reporting: Opt[str] = NotSet, + enforcement: Opt[str] = NotSet, + ) -> CodeSecurityConfig: + """ + :calls: `PATCH /orgs/{org}/code-security/configurations/{configuration_id} `_ + """ + assert isinstance(id, int), id + assert is_optional(name, str), name + assert is_optional(description, str), description + assert is_optional(advanced_security, str), advanced_security + assert is_optional(dependency_graph, str), dependency_graph + assert is_optional(dependency_graph_autosubmit_action, str), dependency_graph_autosubmit_action + assert is_optional(dependabot_alerts, str), dependabot_alerts + assert is_optional(dependabot_security_updates, str), dependabot_security_updates + assert is_optional(code_scanning_default_setup, str), code_scanning_default_setup + assert is_optional(secret_scanning, str), secret_scanning + assert is_optional(secret_scanning_push_protection, str), secret_scanning_push_protection + assert is_optional(secret_scanning_delegated_bypass, str), secret_scanning_delegated_bypass + assert is_optional(secret_scanning_validity_checks, str), secret_scanning_validity_checks + assert is_optional(secret_scanning_non_provider_patterns, str), secret_scanning_non_provider_patterns + assert is_optional(private_vulnerability_reporting, str), private_vulnerability_reporting + assert is_optional(enforcement, str), enforcement + post_parameters = NotSet.remove_unset_items( + { + "name": name, + "description": description, + "advanced_security": advanced_security, + "dependency_graph": dependency_graph, + "dependency_graph_autosubmit_action": dependency_graph_autosubmit_action, + "dependabot_alerts": dependabot_alerts, + "dependabot_security_updates": dependabot_security_updates, + "code_scanning_default_setup": code_scanning_default_setup, + "secret_scanning": secret_scanning, + "secret_scanning_push_protection": secret_scanning_push_protection, + "secret_scanning_delegated_bypass": secret_scanning_delegated_bypass, + "secret_scanning_validity_checks": secret_scanning_validity_checks, + "secret_scanning_non_provider_patterns": secret_scanning_non_provider_patterns, + "private_vulnerability_reporting": private_vulnerability_reporting, + "enforcement": enforcement, + } + ) + + headers, data = self._requester.requestJsonAndCheck( + "PATCH", f"{self.url}/code-security/configurations/{id}", input=post_parameters + ) + return github.CodeSecurityConfig.CodeSecurityConfig(self._requester, headers, data) + + def delete_code_security_config(self, id: int) -> None: + """ + :calls: `DELETE /orgs/{org}/code-security/configurations/{configuration_id} `_ + :param id: integer + :rtype: None` + """ + assert isinstance(id, int), id + headers, data = self._requester.requestJsonAndCheck("DELETE", f"{self.url}/code-security/configurations/{id}") + + def get_code_security_config(self, id: int) -> CodeSecurityConfig: + """ + :calls: `GET /orgs/{org}/code-security/configurations/{configuration_id} `_ + :param id: configuration_id + :rtype: CodeSecurityConfig + """ + assert isinstance(id, int), id + + headers, data = self._requester.requestJsonAndCheck("GET", f"{self.url}/code-security/configurations/{id}") + return github.CodeSecurityConfig.CodeSecurityConfig(self._requester, headers, data) + + def set_default_code_security_config(self, id: int, default_for_new_repos: Opt[str] = NotSet) -> None: + """ + :calls: `PUT /orgs/{org}/code-security/configurations/{configuration_id}/defaults `_ + """ + assert isinstance(id, int), id + assert is_optional(default_for_new_repos, str), default_for_new_repos + put_parameters = NotSet.remove_unset_items({"default_for_new_repos": default_for_new_repos}) + headers, data = self._requester.requestJsonAndCheck( + "PUT", f"{self.url}/code-security/configurations/{id}/defaults", input=put_parameters + ) + + def get_default_code_security_configs(self) -> PaginatedList[DefaultCodeSecurityConfig]: + """ + :calls: `GET /orgs/{org}/code-security/configurations/defaults `_ + :rtype: :class:`github.DefaultCodeSecurityConfig.DefaultCodeSecurityConfig` + """ + return PaginatedList( + contentClass=github.DefaultCodeSecurityConfig.DefaultCodeSecurityConfig, + requester=self._requester, + firstUrl=f"{self.url}/code-security/configurations/defaults", + firstParams=None, + ) + + def attach_security_config_to_repositories( + self, id: int, scope: str, selected_repository_ids: Opt[list[int]] = NotSet + ) -> None: + """ + :calls: `POST /orgs/{org}/code-security/configurations/{configuration_id}/attach `_ + """ + assert isinstance(id, int), id + assert isinstance(scope, str), scope + assert is_optional(selected_repository_ids, list), selected_repository_ids + post_parameters: dict[str, Any] = NotSet.remove_unset_items( + { + "scope": scope, + "selected_repository_ids": selected_repository_ids, + } + ) + + headers, data = self._requester.requestJsonAndCheck( + "POST", + f"/orgs/{self.login}/code-security/configurations/{id}/attach", + input=post_parameters, + headers={"Accept": Consts.repoVisibilityPreview}, + ) + + def detach_security_config_from_repositories(self, selected_repository_ids: list[int]) -> None: + """ + :calls: `DELETE /orgs/{org}/code-security/configurations/detach `_ + """ + assert isinstance(selected_repository_ids, list), selected_repository_ids + delete_parameters: dict[str, Any] = NotSet.remove_unset_items( + { + "selected_repository_ids": selected_repository_ids, + } + ) + headers, data = self._requester.requestJsonAndCheck( + "DELETE", + f"/orgs/{self.login}/code-security/configurations/detach", + input=delete_parameters, + headers={"Accept": Consts.repoVisibilityPreview}, + ) + + def get_repos_for_code_security_config( + self, id: int, status: Opt[str] = NotSet + ) -> PaginatedList[CodeSecurityConfigRepository]: + """ + :calls: `GET /orgs/{org}/code-security/configurations/{configuration_id}/repositories `_ + """ + assert isinstance(id, int), id + assert is_optional(status, str), status + + url_parameters = NotSet.remove_unset_items({"status": status}) + + return PaginatedList( + github.CodeSecurityConfigRepository.CodeSecurityConfigRepository, + self._requester, + f"{self.url}/code-security/configurations/{id}/repositories", + url_parameters, + headers={"Accept": Consts.repoVisibilityPreview}, + ) + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "advanced_security_enabled_for_new_repositories" in attributes: # pragma no branch + self._advanced_security_enabled_for_new_repositories = self._makeBoolAttribute( + attributes["advanced_security_enabled_for_new_repositories"] + ) + if "archived_at" in attributes: # pragma no branch + assert attributes["archived_at"] is None or isinstance(attributes["archived_at"], str), attributes[ + "archived_at" + ] + self._archived_at = self._makeDatetimeAttribute(attributes["archived_at"]) + if "avatar_url" in attributes: # pragma no branch + self._avatar_url = self._makeStringAttribute(attributes["avatar_url"]) + if "billing_email" in attributes: # pragma no branch + self._billing_email = self._makeStringAttribute(attributes["billing_email"]) + if "blog" in attributes: # pragma no branch + self._blog = self._makeStringAttribute(attributes["blog"]) + if "collaborators" in attributes: # pragma no branch + self._collaborators = self._makeIntAttribute(attributes["collaborators"]) + if "company" in attributes: # pragma no branch + self._company = self._makeStringAttribute(attributes["company"]) + if "created_at" in attributes: # pragma no branch + self._created_at = self._makeDatetimeAttribute(attributes["created_at"]) + if "default_repository_permission" in attributes: # pragma no branch + self._default_repository_permission = self._makeStringAttribute(attributes["default_repository_permission"]) + if "dependabot_alerts_enabled_for_new_repositories" in attributes: # pragma no branch + self._dependabot_alerts_enabled_for_new_repositories = self._makeBoolAttribute( + attributes["dependabot_alerts_enabled_for_new_repositories"] + ) + if "dependabot_security_updates_enabled_for_new_repositories" in attributes: # pragma no branch + self._dependabot_security_updates_enabled_for_new_repositories = self._makeBoolAttribute( + attributes["dependabot_security_updates_enabled_for_new_repositories"] + ) + if "dependency_graph_enabled_for_new_repositories" in attributes: # pragma no branch + self._dependency_graph_enabled_for_new_repositories = self._makeBoolAttribute( + attributes["dependency_graph_enabled_for_new_repositories"] + ) + if "description" in attributes: # pragma no branch + self._description = self._makeStringAttribute(attributes["description"]) + if "disk_usage" in attributes: # pragma no branch + self._disk_usage = self._makeIntAttribute(attributes["disk_usage"]) + if "display_login" in attributes: # pragma no branch + self._display_login = self._makeStringAttribute(attributes["display_login"]) + if "email" in attributes: # pragma no branch + self._email = self._makeStringAttribute(attributes["email"]) + if "events_url" in attributes: # pragma no branch + self._events_url = self._makeStringAttribute(attributes["events_url"]) + if "followers" in attributes: # pragma no branch + self._followers = self._makeIntAttribute(attributes["followers"]) + if "following" in attributes: # pragma no branch + self._following = self._makeIntAttribute(attributes["following"]) + if "gravatar_id" in attributes: # pragma no branch + self._gravatar_id = self._makeStringAttribute(attributes["gravatar_id"]) + if "has_organization_projects" in attributes: # pragma no branch + self._has_organization_projects = self._makeBoolAttribute(attributes["has_organization_projects"]) + if "has_repository_projects" in attributes: # pragma no branch + self._has_repository_projects = self._makeBoolAttribute(attributes["has_repository_projects"]) + if "hooks_url" in attributes: # pragma no branch + self._hooks_url = self._makeStringAttribute(attributes["hooks_url"]) + if "html_url" in attributes: # pragma no branch + self._html_url = self._makeStringAttribute(attributes["html_url"]) + if "id" in attributes: # pragma no branch + self._id = self._makeIntAttribute(attributes["id"]) + if "is_verified" in attributes: # pragma no branch + self._is_verified = self._makeBoolAttribute(attributes["is_verified"]) + if "issues_url" in attributes: # pragma no branch + self._issues_url = self._makeStringAttribute(attributes["issues_url"]) + if "location" in attributes: # pragma no branch + self._location = self._makeStringAttribute(attributes["location"]) + if "login" in attributes: # pragma no branch + self._login = self._makeStringAttribute(attributes["login"]) + if "members_allowed_repository_creation_type" in attributes: # pragma no branch + self._members_allowed_repository_creation_type = self._makeStringAttribute( + attributes["members_allowed_repository_creation_type"] + ) + if "members_can_create_internal_repositories" in attributes: # pragma no branch + self._members_can_create_internal_repositories = self._makeBoolAttribute( + attributes["members_can_create_internal_repositories"] + ) + if "members_can_create_pages" in attributes: # pragma no branch + self._members_can_create_pages = self._makeBoolAttribute(attributes["members_can_create_pages"]) + if "members_can_create_private_pages" in attributes: # pragma no branch + self._members_can_create_private_pages = self._makeBoolAttribute( + attributes["members_can_create_private_pages"] + ) + if "members_can_create_private_repositories" in attributes: # pragma no branch + self._members_can_create_private_repositories = self._makeBoolAttribute( + attributes["members_can_create_private_repositories"] + ) + if "members_can_create_public_pages" in attributes: # pragma no branch + self._members_can_create_public_pages = self._makeBoolAttribute( + attributes["members_can_create_public_pages"] + ) + if "members_can_create_public_repositories" in attributes: # pragma no branch + self._members_can_create_public_repositories = self._makeBoolAttribute( + attributes["members_can_create_public_repositories"] + ) + if "members_can_create_repositories" in attributes: # pragma no branch + self._members_can_create_repositories = self._makeBoolAttribute( + attributes["members_can_create_repositories"] + ) + if "members_can_fork_private_repositories" in attributes: # pragma no branch + self._members_can_fork_private_repositories = self._makeBoolAttribute( + attributes["members_can_fork_private_repositories"] + ) + if "members_url" in attributes: # pragma no branch + self._members_url = self._makeStringAttribute(attributes["members_url"]) + if "name" in attributes: # pragma no branch + self._name = self._makeStringAttribute(attributes["name"]) + if "node_id" in attributes: # pragma no branch + self._node_id = self._makeStringAttribute(attributes["node_id"]) + if "owned_private_repos" in attributes: # pragma no branch + self._owned_private_repos = self._makeIntAttribute(attributes["owned_private_repos"]) + if "plan" in attributes: # pragma no branch + self._plan = self._makeClassAttribute(github.Plan.Plan, attributes["plan"]) + if "private_gists" in attributes: # pragma no branch + self._private_gists = self._makeIntAttribute(attributes["private_gists"]) + if "public_gists" in attributes: # pragma no branch + self._public_gists = self._makeIntAttribute(attributes["public_gists"]) + if "public_members_url" in attributes: # pragma no branch + self._public_members_url = self._makeStringAttribute(attributes["public_members_url"]) + if "public_repos" in attributes: # pragma no branch + self._public_repos = self._makeIntAttribute(attributes["public_repos"]) + if "repos_url" in attributes: # pragma no branch + self._repos_url = self._makeStringAttribute(attributes["repos_url"]) + if "secret_scanning_enabled_for_new_repositories" in attributes: # pragma no branch + self._secret_scanning_enabled_for_new_repositories = self._makeBoolAttribute( + attributes["secret_scanning_enabled_for_new_repositories"] + ) + if "secret_scanning_push_protection_custom_link" in attributes: # pragma no branch + self._secret_scanning_push_protection_custom_link = self._makeStringAttribute( + attributes["secret_scanning_push_protection_custom_link"] + ) + if "secret_scanning_push_protection_custom_link_enabled" in attributes: # pragma no branch + self._secret_scanning_push_protection_custom_link_enabled = self._makeBoolAttribute( + attributes["secret_scanning_push_protection_custom_link_enabled"] + ) + if "secret_scanning_push_protection_enabled_for_new_repositories" in attributes: # pragma no branch + self._secret_scanning_push_protection_enabled_for_new_repositories = self._makeBoolAttribute( + attributes["secret_scanning_push_protection_enabled_for_new_repositories"] + ) + if "total_private_repos" in attributes: # pragma no branch + self._total_private_repos = self._makeIntAttribute(attributes["total_private_repos"]) + if "twitter_username" in attributes: # pragma no branch + self._twitter_username = self._makeStringAttribute(attributes["twitter_username"]) + if "two_factor_requirement_enabled" in attributes: # pragma no branch + self._two_factor_requirement_enabled = self._makeBoolAttribute(attributes["two_factor_requirement_enabled"]) + if "type" in attributes: # pragma no branch + self._type = self._makeStringAttribute(attributes["type"]) + if "updated_at" in attributes: # pragma no branch + self._updated_at = self._makeDatetimeAttribute(attributes["updated_at"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) + if "web_commit_signoff_required" in attributes: # pragma no branch + self._web_commit_signoff_required = self._makeBoolAttribute(attributes["web_commit_signoff_required"]) diff --git a/venv/lib/python3.10/site-packages/github/OrganizationCustomProperty.py b/venv/lib/python3.10/site-packages/github/OrganizationCustomProperty.py new file mode 100644 index 0000000000000000000000000000000000000000..53f935ba1fd2929bd0641b77e2a0e36aa45ebfab --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/OrganizationCustomProperty.py @@ -0,0 +1,183 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2024 Jacky Lam # +# Copyright 2024 Kian-Meng Ang # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from typing import Any + +from github.GithubObject import Attribute, NonCompletableGithubObject, NotSet, Opt, is_optional + + +class CustomProperty: + """ + This class represents a CustomProperty for an Organization. Use this class to create a new post parameter object. + + The reference can be found here + https://docs.github.com/en/rest/orgs/custom-properties#create-or-update-custom-properties-for-an-organization + + """ + + def __init__( + self, + property_name: str, + value_type: str, + required: Opt[bool] = NotSet, + default_value: Opt[None | str | list[str]] = NotSet, + description: Opt[str | None] = NotSet, + allowed_values: Opt[list[str] | None] = NotSet, + values_editable_by: Opt[str | None] = NotSet, + ): + assert isinstance(property_name, str), property_name + assert isinstance(value_type, str), value_type + assert value_type in ["string", "single_select"], value_type + assert is_optional(required, bool), required + assert is_optional(default_value, (type(None), str, list)), default_value + assert is_optional(description, (str, type(None))), description + assert is_optional(allowed_values, (list, type(None))), allowed_values + assert is_optional(values_editable_by, (str, type(None))), values_editable_by + if values_editable_by is not NotSet: + assert values_editable_by in ["org_actors", "org_and_repo_actors"], values_editable_by + + self.property_name = property_name + self.value_type = value_type + self.required = required + self.default_value = default_value + self.description = description + self.allowed_values = allowed_values + self.values_editable_by = values_editable_by + + def to_dict(self) -> dict[str, Any]: + return NotSet.remove_unset_items(self.__dict__) + + +class OrganizationCustomProperty(NonCompletableGithubObject): + """ + This class represents a CustomProperty for an Organization. + + The reference can be found here + https://docs.github.com/en/rest/orgs/custom-properties + + The OpenAPI schema can be found at + - /components/schemas/custom-property + + """ + + def _initAttributes(self) -> None: + self._allowed_values: Attribute[list[str]] = NotSet + self._default_value: Attribute[str | list[str]] = NotSet + self._description: Attribute[str] = NotSet + self._property_name: Attribute[str] = NotSet + self._required: Attribute[bool] = NotSet + self._url: Attribute[str] = NotSet + self._value_type: Attribute[str] = NotSet + self._values_editable_by: Attribute[str] = NotSet + + @property + def allowed_values(self) -> Opt[list[str] | None]: + return self._allowed_values.value + + @property + def default_value(self) -> Opt[str | list[str] | None]: + return self._default_value.value + + @property + def description(self) -> Opt[str | None]: + return self._description.value + + @property + def property_name(self) -> str: + return self._property_name.value + + @property + def required(self) -> Opt[bool | None]: + return self._required.value + + @property + def url(self) -> str: + return self._url.value + + @property + def value_type(self) -> str: + return self._value_type.value + + @property + def values_editable_by(self) -> Opt[str | None]: + return self._values_editable_by.value + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "allowed_values" in attributes: + self._allowed_values = self._makeListOfStringsAttribute(attributes["allowed_values"]) + if "default_value" in attributes: + self._default_value = self._makeStringAttribute(attributes["default_value"]) + if "description" in attributes: + self._description = self._makeStringAttribute(attributes["description"]) + if "property_name" in attributes: # pragma no branch + self._property_name = self._makeStringAttribute(attributes["property_name"]) + if "required" in attributes: + self._required = self._makeBoolAttribute(attributes["required"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) + if "value_type" in attributes: # pragma no branch + self._value_type = self._makeStringAttribute(attributes["value_type"]) + if "values_editable_by" in attributes: + self._values_editable_by = self._makeStringAttribute(attributes["values_editable_by"]) + + +class RepositoryCustomPropertyValues(NonCompletableGithubObject): + """ + This class represents CustomPropertyValues for a Repository. + + The reference can be found here + https://docs.github.com/en/rest/orgs/custom-properties#list-custom-property-values-for-organization-repositories + + """ + + def _initAttributes(self) -> None: + self._properties: Attribute[dict[str, str]] = NotSet + self._repository_full_name: Attribute[str] = NotSet + self._repository_id: Attribute[int] = NotSet + self._repository_name: Attribute[str] = NotSet + + @property + def properties(self) -> dict[str, str]: + return self._properties.value + + @property + def repository_full_name(self) -> str: + return self._repository_full_name.value + + @property + def repository_name(self) -> str: + return self._repository_name.value + + @property + def repository_id(self) -> int: + return self._repository_id.value + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + self._repository_id = self._makeIntAttribute(attributes["repository_id"]) + self._repository_name = self._makeStringAttribute(attributes["repository_name"]) + self._repository_full_name = self._makeStringAttribute(attributes["repository_full_name"]) + properties = {p["property_name"]: p["value"] for p in attributes["properties"]} + self._properties = self._makeDictAttribute(properties) diff --git a/venv/lib/python3.10/site-packages/github/OrganizationDependabotAlert.py b/venv/lib/python3.10/site-packages/github/OrganizationDependabotAlert.py new file mode 100644 index 0000000000000000000000000000000000000000..ec1fcb1486704224667d14e968a015bb1c57a1c7 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/OrganizationDependabotAlert.py @@ -0,0 +1,58 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2024 Thomas Cooper # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from typing import Any + +from github.DependabotAlert import DependabotAlert +from github.GithubObject import Attribute, NotSet +from github.Repository import Repository + + +class OrganizationDependabotAlert(DependabotAlert): + """ + This class represents a Dependabot alert on an organization. + + The reference can be found here + https://docs.github.com/en/rest/dependabot/alerts#list-dependabot-alerts-for-an-organization + + The OpenAPI schema can be found at + - /components/schemas/dependabot-alert-with-repository + + """ + + def _initAttributes(self) -> None: + super()._initAttributes() + self._repository: Attribute[Repository] = NotSet + + @property + def repository(self) -> Repository: + return self._repository.value + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + super()._useAttributes(attributes) + if "repository" in attributes: + self._repository = self._makeClassAttribute(Repository, attributes["repository"]) diff --git a/venv/lib/python3.10/site-packages/github/OrganizationSecret.py b/venv/lib/python3.10/site-packages/github/OrganizationSecret.py new file mode 100644 index 0000000000000000000000000000000000000000..1a0cbd1d398268896091ce7447a7c1f6d16bbf16 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/OrganizationSecret.py @@ -0,0 +1,138 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Mauricio Alejandro Martínez Pacheco # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2024 Thomas Crowley <15927917+thomascrowley@users.noreply.github.com># +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from datetime import datetime +from typing import Any, Dict + +from github.GithubObject import Attribute, NotSet +from github.PaginatedList import PaginatedList +from github.Repository import Repository +from github.Secret import Secret + + +class OrganizationSecret(Secret): + """ + This class represents a org level GitHub secret. + + The reference can be found here + https://docs.github.com/en/rest/actions/secrets + + """ + + def _initAttributes(self) -> None: + self._created_at: Attribute[datetime] = NotSet + self._name: Attribute[str] = NotSet + self._selected_repositories: Attribute[PaginatedList[Repository]] = NotSet + self._selected_repositories_url: Attribute[str] = NotSet + self._updated_at: Attribute[datetime] = NotSet + self._url: Attribute[str] = NotSet + self._visibility: Attribute[str] = NotSet + + @property + def visibility(self) -> str: + """ + :type: string + """ + self._completeIfNotSet(self._visibility) + return self._visibility.value + + @property + def selected_repositories(self) -> PaginatedList[Repository]: + return PaginatedList( + Repository, + self._requester, + self._selected_repositories_url.value, + None, + list_item="repositories", + ) + + def edit( + self, + value: str, + visibility: str = "all", + secret_type: str = "actions", + ) -> bool: + """ + :calls: `PATCH /orgs/{org}/{secret_type}/secrets/{variable_name} `_ + :param variable_name: string + :param value: string + :param visibility: string + :param secret_type: string options actions or dependabot + :rtype: bool + """ + assert isinstance(value, str), value + assert isinstance(visibility, str), visibility + assert secret_type in ["actions", "dependabot"], "secret_type should be actions or dependabot" + + patch_parameters: Dict[str, Any] = { + "name": self.name, + "value": value, + "visibility": visibility, + } + + status, _, _ = self._requester.requestJson( + "PATCH", + f"{self.url}/{secret_type}/secrets/{self.name}", + input=patch_parameters, + ) + return status == 204 + + def add_repo(self, repo: Repository) -> bool: + """ + :calls: 'PUT {org_url}/actions/secrets/{secret_name} `_ + :param repo: github.Repository.Repository + :rtype: bool + """ + if self.visibility != "selected": + return False + self._requester.requestJsonAndCheck("PUT", f"{self._selected_repositories_url.value}/{repo.id}") + return True + + def remove_repo(self, repo: Repository) -> bool: + """ + :calls: 'DELETE {org_url}/actions/secrets/{secret_name} `_ + :param repo: github.Repository.Repository + :rtype: bool + """ + if self.visibility != "selected": + return False + self._requester.requestJsonAndCheck("DELETE", f"{self._selected_repositories_url.value}/{repo.id}") + return True + + def _useAttributes(self, attributes: Dict[str, Any]) -> None: + if "created_at" in attributes: + self._created_at = self._makeDatetimeAttribute(attributes["created_at"]) + if "name" in attributes: + self._name = self._makeStringAttribute(attributes["name"]) + if "selected_repositories_url" in attributes: + self._selected_repositories_url = self._makeStringAttribute(attributes["selected_repositories_url"]) + if "updated_at" in attributes: + self._updated_at = self._makeDatetimeAttribute(attributes["updated_at"]) + if "url" in attributes: + self._url = self._makeStringAttribute(attributes["url"]) + if "visibility" in attributes: + self._visibility = self._makeStringAttribute(attributes["visibility"]) diff --git a/venv/lib/python3.10/site-packages/github/OrganizationVariable.py b/venv/lib/python3.10/site-packages/github/OrganizationVariable.py new file mode 100644 index 0000000000000000000000000000000000000000..8abd430868e30ad2b4bd8820fa8869bedbbe3f1a --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/OrganizationVariable.py @@ -0,0 +1,134 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Mauricio Alejandro Martínez Pacheco # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from datetime import datetime +from typing import Any, Dict + +from github.GithubObject import Attribute, NotSet +from github.PaginatedList import PaginatedList +from github.Repository import Repository +from github.Variable import Variable + + +class OrganizationVariable(Variable): + """ + This class represents a org level GitHub variable. + + The reference can be found here + https://docs.github.com/en/rest/actions/variables + + """ + + def _initAttributes(self) -> None: + self._created_at: Attribute[datetime] = NotSet + self._name: Attribute[str] = NotSet + self._selected_repositories: Attribute[PaginatedList[Repository]] = NotSet + self._selected_repositories_url: Attribute[str] = NotSet + self._updated_at: Attribute[datetime] = NotSet + self._url: Attribute[str] = NotSet + self._visibility: Attribute[str] = NotSet + + @property + def visibility(self) -> str: + """ + :type: string + """ + self._completeIfNotSet(self._visibility) + return self._visibility.value + + @property + def selected_repositories(self) -> PaginatedList[Repository]: + return PaginatedList( + Repository, + self._requester, + self._selected_repositories_url.value, + None, + list_item="repositories", + ) + + def edit( + self, + value: str, + visibility: str = "all", + ) -> bool: + """ + :calls: `PATCH /orgs/{org}/actions/variables/{variable_name} `_ + :param variable_name: string + :param value: string + :param visibility: string + :rtype: bool + """ + assert isinstance(value, str), value + assert isinstance(visibility, str), visibility + + patch_parameters: Dict[str, Any] = { + "name": self.name, + "value": value, + "visibility": visibility, + } + + status, _, _ = self._requester.requestJson( + "PATCH", + f"{self.url}/actions/variables/{self.name}", + input=patch_parameters, + ) + return status == 204 + + def add_repo(self, repo: Repository) -> bool: + """ + :calls: 'PUT {org_url}/actions/variables/{variable_name} `_ + :param repo: github.Repository.Repository + :rtype: bool + """ + if self.visibility != "selected": + return False + self._requester.requestJsonAndCheck("PUT", f"{self._selected_repositories_url.value}/{repo.id}") + return True + + def remove_repo(self, repo: Repository) -> bool: + """ + :calls: 'DELETE {org_url}/actions/variables/{variable_name} `_ + :param repo: github.Repository.Repository + :rtype: bool + """ + if self.visibility != "selected": + return False + self._requester.requestJsonAndCheck("DELETE", f"{self._selected_repositories_url.value}/{repo.id}") + return True + + def _useAttributes(self, attributes: Dict[str, Any]) -> None: + if "created_at" in attributes: + self._created_at = self._makeDatetimeAttribute(attributes["created_at"]) + if "name" in attributes: + self._name = self._makeStringAttribute(attributes["name"]) + if "selected_repositories_url" in attributes: + self._selected_repositories_url = self._makeStringAttribute(attributes["selected_repositories_url"]) + if "updated_at" in attributes: + self._updated_at = self._makeDatetimeAttribute(attributes["updated_at"]) + if "url" in attributes: + self._url = self._makeStringAttribute(attributes["url"]) + if "visibility" in attributes: + self._visibility = self._makeStringAttribute(attributes["visibility"]) diff --git a/venv/lib/python3.10/site-packages/github/PaginatedList.py b/venv/lib/python3.10/site-packages/github/PaginatedList.py new file mode 100644 index 0000000000000000000000000000000000000000..cbbe4caae3d09b5d0e93000e2724a9fdaa31197f --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/PaginatedList.py @@ -0,0 +1,441 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Bill Mill # +# Copyright 2013 Vincent Jacques # +# Copyright 2013 davidbrai # +# Copyright 2014 Thialfihar # +# Copyright 2014 Vincent Jacques # +# Copyright 2015 Dan Vanderkam # +# Copyright 2015 Eliot Walker # +# Copyright 2016 Peter Buckley # +# Copyright 2017 Jannis Gebauer # +# Copyright 2018 Gilad Shefer # +# Copyright 2018 Joel Koglin # +# Copyright 2018 Steve Kowalik # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 netsgnut <284779+netsgnut@users.noreply.github.com> # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Emir Hodzic # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Mark Walker # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Andrew Dawes <53574062+AndrewJDawes@users.noreply.github.com> # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2023 YugoHino # +# Copyright 2024 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from typing import Any, Callable, Dict, Generic, Iterator, List, Optional, Type, TypeVar, Union +from urllib.parse import parse_qs + +from github.GithubObject import GithubObject +from github.Requester import Requester + +T = TypeVar("T", bound=GithubObject) + + +class PaginatedListBase(Generic[T]): + __elements: List[T] + + def _couldGrow(self) -> bool: + raise NotImplementedError + + def _fetchNextPage(self) -> List[T]: + raise NotImplementedError + + def __init__(self, elements: Optional[List[T]] = None) -> None: + self.__elements = [] if elements is None else elements + + def __getitem__(self, index: Union[int, slice]) -> Any: + assert isinstance(index, (int, slice)) + if isinstance(index, int): + self.__fetchToIndex(index) + return self.__elements[index] + else: + return self._Slice(self, index) + + def __iter__(self) -> Iterator[T]: + yield from self.__elements + while self._couldGrow(): + newElements = self._grow() + yield from newElements + + def _isBiggerThan(self, index: int) -> bool: + return len(self.__elements) > index or self._couldGrow() + + def __fetchToIndex(self, index: int) -> None: + while len(self.__elements) <= index and self._couldGrow(): + self._grow() + + def _grow(self) -> List[T]: + newElements = self._fetchNextPage() + self.__elements += newElements + return newElements + + class _Slice: + def __init__(self, theList: "PaginatedListBase[T]", theSlice: slice): + self.__list = theList + self.__start = theSlice.start or 0 + self.__stop = theSlice.stop + self.__step = theSlice.step or 1 + + def __iter__(self) -> Iterator[T]: + index = self.__start + while not self.__finished(index): + if self.__list._isBiggerThan(index): + yield self.__list[index] + index += self.__step + else: + return + + def __finished(self, index: int) -> bool: + return self.__stop is not None and index >= self.__stop + + +class PaginatedList(PaginatedListBase[T]): + """ + This class abstracts the `pagination of the REST API `_ + and the GraphQl API `_. + + You can simply enumerate through instances of this class:: + + for repo in user.get_repos(): + print(repo.name) + + If you want to know the total number of items in the list:: + + print(user.get_repos().totalCount) + + You can also index them or take slices:: + + second_repo = user.get_repos()[1] + first_repos = user.get_repos()[:10] + + If you want to iterate in reversed order, just do:: + + for repo in user.get_repos().reversed: + print(repo.name) + + And if you really need it, you can explicitly access a specific page:: + + repos = user.get_repos() + assert repos.is_rest, "get_page not supported by the GraphQL API" + + some_repos = repos.get_page(0) + some_other_repos = repos.get_page(3) + """ + + # v3: move * before firstUrl and fix call sites + def __init__( + self, + contentClass: Type[T], + requester: Requester, + firstUrl: Optional[str] = None, + firstParams: Optional[Dict[str, Any]] = None, + *, + headers: Optional[Dict[str, str]] = None, + list_item: Union[str, List[str]] = "items", + total_count_item: str = "total_count", + firstData: Optional[Any] = None, + firstHeaders: Optional[Dict[str, Union[str, int]]] = None, + attributesTransformer: Optional[Callable[[Dict[str, Any]], Dict[str, Any]]] = None, + graphql_query: Optional[str] = None, + graphql_variables: Optional[Dict[str, Any]] = None, + ): + if firstUrl is None and firstData is None and graphql_query is None: + raise ValueError("Either firstUrl or graphql_query must be given") + if firstUrl is not None and graphql_query is not None: + raise ValueError("Only one of firstUrl or graphql_query can be given") + if graphql_query is not None: + if not (isinstance(list_item, list) and all(isinstance(item, str) for item in list_item)): + raise ValueError("With graphql_query given, item_list must be a list of strings") + + self.__requester = requester + self.__contentClass = contentClass + + self.__is_rest = firstUrl is not None or firstData is not None + self.__firstUrl = firstUrl + self.__firstParams: Dict[str, Any] = firstParams or {} + self.__nextUrl = firstUrl + self.__nextParams: Dict[str, Any] = firstParams or {} + self.__headers = headers + self.__list_item = list_item + self.__total_count_item = total_count_item + if self.__requester.per_page != 30: + self.__nextParams["per_page"] = self.__requester.per_page + self._reversed = False + self.__totalCount: Optional[int] = None + self._attributesTransformer = attributesTransformer + + self.__graphql_query = graphql_query + self.__graphql_variables = graphql_variables or {} + self.__page_info = None + + first_page = [] + if firstData is not None: + first_page = self._getPage(firstData, firstHeaders) + # this paginated list contains a single page + if self.__nextUrl is None and self.__totalCount is None: + self.__totalCount = len(first_page) + super().__init__(first_page) + + @property + def is_rest(self) -> bool: + return self.__is_rest + + @property + def is_graphql(self) -> bool: + return not self.is_rest + + def _transformAttributes(self, element: Dict[str, Any]) -> Dict[str, Any]: + if self._attributesTransformer is None: + return element + return self._attributesTransformer(element) + + @property + def totalCount(self) -> int: + if self.__totalCount is None: + if self.is_rest: + params = self.__nextParams.copy() + # set per_page = 1 so the totalCount is just the number of pages + params.update({"per_page": 1}) + headers, data = self.__requester.requestJsonAndCheck( + "GET", self.__firstUrl, parameters=params, headers=self.__headers # type: ignore + ) + if "link" not in headers: + if data and "total_count" in data: + self.__totalCount = data["total_count"] + elif data: + if isinstance(data, dict): + data = data[self.__list_item] + self.__totalCount = len(data) + else: + self.__totalCount = 0 + else: + links = self.__parseLinkHeader(headers) + lastUrl = links.get("last") + if lastUrl: + self.__totalCount = int(parse_qs(lastUrl)["page"][0]) + else: + self.__totalCount = 0 + else: + variables = self.__graphql_variables.copy() + if not self._reversed: + variables["first"] = 1 + variables["after"] = None + else: + variables["last"] = 1 + variables["before"] = None + + _, data = self.__requester.graphql_query(self.__graphql_query, variables) # type: ignore + pagination = self._get_graphql_pagination(data["data"], self.__list_item) # type: ignore + self.__totalCount = pagination.get("totalCount") + return self.__totalCount # type: ignore + + def _getLastPageUrl(self) -> Optional[str]: + headers, data = self.__requester.requestJsonAndCheck( + "GET", self.__firstUrl, parameters=self.__nextParams, headers=self.__headers # type: ignore + ) + links = self.__parseLinkHeader(headers) + return links.get("last") + + @property + def reversed(self) -> "PaginatedList[T]": + r = PaginatedList( + self.__contentClass, + self.__requester, + self.__firstUrl, + self.__firstParams, + headers=self.__headers, + list_item=self.__list_item, + attributesTransformer=self._attributesTransformer, + graphql_query=self.__graphql_query, + graphql_variables=self.__graphql_variables, + ) + r.__reverse() + return r + + def __reverse(self) -> None: + self._reversed = True + if self.is_rest: + lastUrl = self._getLastPageUrl() + if lastUrl: + self.__nextUrl = lastUrl + if self.__nextParams: + # #2929: remove all parameters from self.__nextParams contained in self.__nextUrl + self.__nextParams = { + k: v + for k, v in self.__nextParams.items() + if k not in Requester.get_parameters_of_url(self.__nextUrl).keys() + } + + def _couldGrow(self) -> bool: + return ( + self.is_rest + and self.__nextUrl is not None + or self.is_graphql + and ( + self.__page_info is None + or not self._reversed + and self.__page_info["hasNextPage"] + or self._reversed + and self.__page_info["hasPreviousPage"] + ) + ) + + def _get_graphql_pagination(self, data: Dict[str, Any], path: List[str]) -> Dict[str, Any]: + for item in path: + if item not in data: + raise RuntimeError(f"Pagination path {path} not found in data: {self.paths_of_dict(data)}") + data = data[item] + return data + + def _fetchNextPage(self) -> List[T]: + if self.is_rest: + # REST API pagination + headers, data = self.__requester.requestJsonAndCheck( + "GET", self.__nextUrl, parameters=self.__nextParams, headers=self.__headers # type: ignore + ) + data = data if data else [] + return self._getPage(data, headers) + else: + # GraphQL API pagination + variables = self.__graphql_variables.copy() + if not self._reversed: + variables["first"] = self.__requester.per_page + if self.__page_info is not None: + variables["after"] = self.__page_info["endCursor"] + else: + variables["last"] = self.__requester.per_page + if self.__page_info is not None: + variables["before"] = self.__page_info["startCursor"] + + _, data = self.__requester.graphql_query(self.__graphql_query, variables) # type: ignore + + pagination = self._get_graphql_pagination(data["data"], self.__list_item) # type: ignore + return self._getPage(pagination, {}) + + def _getPage(self, data: Any, headers: Optional[Dict[str, Union[str, int]]]) -> List[T]: + if self.is_rest: + self.__nextUrl = None # type: ignore + if len(data) > 0: + links = self.__parseLinkHeader(headers) # type: ignore + if self._reversed: + if "prev" in links: + self.__nextUrl = links["prev"] + elif "next" in links: + self.__nextUrl = links["next"] + self.__nextParams = {} + if self.__list_item in data: + self.__totalCount = data.get(self.__total_count_item) + data = data[self.__list_item] + content = [ + self.__contentClass(self.__requester, headers, self._transformAttributes(element)) # type: ignore + for element in data + if element is not None + ] + if self._reversed: + return content[::-1] + return content + else: + if "pageInfo" not in data: + raise RuntimeError(f"Query must provide pagination with pageInfo:\n{self.__graphql_query}") + + self.__page_info = data["pageInfo"] + if any( + item not in self.__page_info # type: ignore + for item in ["startCursor", "endCursor", "hasNextPage", "hasPreviousPage"] + ): + raise RuntimeError(f"Query must provide pagination with pageInfo\n{self.__graphql_query}") + + if self.__totalCount is None: + if "totalCount" not in data: + raise RuntimeError(f"Query must provide totalCount\n{self.__graphql_query}") + self.__totalCount = data["totalCount"] + + if "nodes" not in data: + raise RuntimeError( + f"No nodes found under pagination path {self.__list_item}: {self.paths_of_dict(data)}" + ) + + nodes = data["nodes"] + if self._reversed: + nodes = nodes[::-1] + return [self.__contentClass(self.__requester, {}, element) for element in nodes if element is not None] + + def __parseLinkHeader(self, headers: Dict[str, Union[str, int]]) -> Dict[str, str]: + links = {} + if "link" in headers and isinstance(headers["link"], str): + linkHeaders = headers["link"].split(", ") + for linkHeader in linkHeaders: + url, rel, *rest = linkHeader.split("; ") + url = url[1:-1] + rel = rel[5:-1] + links[rel] = url + return links + + def get_page(self, page: int) -> List[T]: + if self.is_graphql: + raise RuntimeError("Not supported for GraphQL pagination") + + params = dict(self.__firstParams) + if page != 0: + params["page"] = page + 1 + if self.__requester.per_page != 30: + params["per_page"] = self.__requester.per_page + headers, data = self.__requester.requestJsonAndCheck( + "GET", self.__firstUrl, parameters=params, headers=self.__headers # type: ignore + ) + + if self.__list_item in data: + self.__totalCount = data.get("total_count") + data = data[self.__list_item] + return [self.__contentClass(self.__requester, headers, self._transformAttributes(element)) for element in data] + + @classmethod + def override_attributes(cls, overrides: Dict[str, Any]) -> Callable[[Dict[str, Any]], Dict[str, Any]]: + def attributes_transformer(element: Dict[str, Any]) -> Dict[str, Any]: + # Recursively merge overrides with attributes, overriding attributes with overrides + element = cls.merge_dicts(element, overrides) + return element + + return attributes_transformer + + @classmethod + def merge_dicts(cls, d1: Dict[str, Any], d2: Dict[str, Any]) -> Dict[str, Any]: + # clone d1 + d1 = d1.copy() + for k, v in d2.items(): + if isinstance(v, dict): + d1[k] = cls.merge_dicts(d1.get(k, {}), v) + else: + d1[k] = v + return d1 + + @classmethod + def paths_of_dict(cls, d: dict) -> dict: + return {key: cls.paths_of_dict(val) if isinstance(val, dict) else None for key, val in d.items()} diff --git a/venv/lib/python3.10/site-packages/github/Path.py b/venv/lib/python3.10/site-packages/github/Path.py new file mode 100644 index 0000000000000000000000000000000000000000..07e036af0996b998249c264b5774f1ffa97bf99d --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/Path.py @@ -0,0 +1,98 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Justin Kufro # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from typing import Any, Dict + +from github.GithubObject import Attribute, NonCompletableGithubObject, NotSet + + +class Path(NonCompletableGithubObject): + """ + This class represents a popular Path for a GitHub repository. + + The reference can be found here + https://docs.github.com/en/rest/reference/repos#traffic + + The OpenAPI schema can be found at + - /components/schemas/content-traffic + + """ + + def _initAttributes(self) -> None: + self._count: Attribute[int] = NotSet + self._path: Attribute[str] = NotSet + self._title: Attribute[str] = NotSet + self._uniques: Attribute[int] = NotSet + + def __repr__(self) -> str: + return self.get__repr__( + { + "path": self._path.value, + "title": self._title.value, + "count": self._count.value, + "uniques": self._uniques.value, + } + ) + + @property + def count(self) -> int: + return self._count.value + + @property + def path(self) -> str: + return self._path.value + + @property + def title(self) -> str: + return self._title.value + + @property + def uniques(self) -> int: + return self._uniques.value + + def _useAttributes(self, attributes: Dict[str, Any]) -> None: + if "count" in attributes: # pragma no branch + self._count = self._makeIntAttribute(attributes["count"]) + if "path" in attributes: # pragma no branch + self._path = self._makeStringAttribute(attributes["path"]) + if "title" in attributes: # pragma no branch + self._title = self._makeStringAttribute(attributes["title"]) + if "uniques" in attributes: # pragma no branch + self._uniques = self._makeIntAttribute(attributes["uniques"]) diff --git a/venv/lib/python3.10/site-packages/github/Permissions.py b/venv/lib/python3.10/site-packages/github/Permissions.py new file mode 100644 index 0000000000000000000000000000000000000000..4abba205519ccd581c427216a7e720e5294ab62e --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/Permissions.py @@ -0,0 +1,107 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 karsten-wagner <39054096+karsten-wagner@users.noreply.github.com># +# Copyright 2023 Enrico Minack # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from typing import Any, Dict + +from github.GithubObject import Attribute, NonCompletableGithubObject, NotSet + + +class Permissions(NonCompletableGithubObject): + """ + This class represents Permissions. + + The OpenAPI schema can be found at + - /components/schemas/collaborator/properties/permissions + - /components/schemas/full-repository/properties/permissions + - /components/schemas/minimal-repository/properties/permissions + - /components/schemas/repo-search-result-item/properties/permissions + - /components/schemas/repository/properties/permissions + - /components/schemas/team/properties/permissions + + """ + + def _initAttributes(self) -> None: + self._admin: Attribute[bool] = NotSet + self._maintain: Attribute[bool] = NotSet + self._pull: Attribute[bool] = NotSet + self._push: Attribute[bool] = NotSet + self._triage: Attribute[bool] = NotSet + + def __repr__(self) -> str: + return self.get__repr__( + { + "admin": self._admin.value, + "maintain": self._maintain.value, + "pull": self._pull.value, + "push": self._push.value, + "triage": self._triage.value, + } + ) + + @property + def admin(self) -> bool: + return self._admin.value + + @property + def maintain(self) -> bool: + return self._maintain.value + + @property + def pull(self) -> bool: + return self._pull.value + + @property + def push(self) -> bool: + return self._push.value + + @property + def triage(self) -> bool: + return self._triage.value + + def _useAttributes(self, attributes: Dict[str, Any]) -> None: + if "admin" in attributes: # pragma no branch + self._admin = self._makeBoolAttribute(attributes["admin"]) + if "maintain" in attributes: # pragma no branch + self._maintain = self._makeBoolAttribute(attributes["maintain"]) + if "pull" in attributes: # pragma no branch + self._pull = self._makeBoolAttribute(attributes["pull"]) + if "push" in attributes: # pragma no branch + self._push = self._makeBoolAttribute(attributes["push"]) + if "triage" in attributes: # pragma no branch + self._triage = self._makeBoolAttribute(attributes["triage"]) diff --git a/venv/lib/python3.10/site-packages/github/Plan.py b/venv/lib/python3.10/site-packages/github/Plan.py new file mode 100644 index 0000000000000000000000000000000000000000..e1f1a39d9bb1447be064f4395bef25cf2a1a09fe --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/Plan.py @@ -0,0 +1,103 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Geoff Low # +# Copyright 2020 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from typing import Any, Dict + +from github.GithubObject import Attribute, NonCompletableGithubObject, NotSet + + +class Plan(NonCompletableGithubObject): + """ + This class represents Plans. + + The OpenAPI schema can be found at + - /components/schemas/organization-full/properties/plan + - /components/schemas/public-user/properties/plan + - /components/schemas/team-organization/properties/plan + + """ + + def _initAttributes(self) -> None: + self._collaborators: Attribute[int] = NotSet + self._filled_seats: Attribute[int] = NotSet + self._name: Attribute[str] = NotSet + self._private_repos: Attribute[int] = NotSet + self._seats: Attribute[int] = NotSet + self._space: Attribute[int] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"name": self._name.value}) + + @property + def collaborators(self) -> int: + return self._collaborators.value + + @property + def filled_seats(self) -> int: + return self._filled_seats.value + + @property + def name(self) -> str: + return self._name.value + + @property + def private_repos(self) -> int: + return self._private_repos.value + + @property + def seats(self) -> int: + return self._seats.value + + @property + def space(self) -> int: + return self._space.value + + def _useAttributes(self, attributes: Dict[str, Any]) -> None: + if "collaborators" in attributes: # pragma no branch + self._collaborators = self._makeIntAttribute(attributes["collaborators"]) + if "filled_seats" in attributes: # pragma no branch + self._filled_seats = self._makeIntAttribute(attributes["filled_seats"]) + if "name" in attributes: # pragma no branch + self._name = self._makeStringAttribute(attributes["name"]) + if "private_repos" in attributes: # pragma no branch + self._private_repos = self._makeIntAttribute(attributes["private_repos"]) + if "seats" in attributes: # pragma no branch + self._seats = self._makeIntAttribute(attributes["seats"]) + if "space" in attributes: # pragma no branch + self._space = self._makeIntAttribute(attributes["space"]) diff --git a/venv/lib/python3.10/site-packages/github/Project.py b/venv/lib/python3.10/site-packages/github/Project.py new file mode 100644 index 0000000000000000000000000000000000000000..900e76a54050f591373e1b991b7e231e76127892 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/Project.py @@ -0,0 +1,265 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2017 Chris McBride # +# Copyright 2017 Simon # +# Copyright 2018 Benoit Latinier # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 Yossarian King # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Anuj Bansal # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Lars Kellogg-Stedman # +# Copyright 2021 Mark Walker # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from datetime import datetime +from typing import Any + +import github.GithubObject +import github.NamedUser +import github.ProjectColumn +from github import Consts +from github.GithubObject import Attribute, CompletableGithubObject, NotSet, Opt +from github.PaginatedList import PaginatedList + + +class Project(CompletableGithubObject): + """ + This class represents Projects. + + The reference can be found here + https://docs.github.com/en/rest/reference/projects + + The OpenAPI schema can be found at + - /components/schemas/project + + """ + + def _initAttributes(self) -> None: + self._body: Attribute[str] = NotSet + self._columns_url: Attribute[str] = NotSet + self._created_at: Attribute[datetime] = NotSet + self._creator: Attribute[github.NamedUser.NamedUser] = NotSet + self._html_url: Attribute[str] = NotSet + self._id: Attribute[int] = NotSet + self._name: Attribute[str] = NotSet + self._node_id: Attribute[str] = NotSet + self._number: Attribute[int] = NotSet + self._organization_permission: Attribute[str] = NotSet + self._owner_url: Attribute[str] = NotSet + self._private: Attribute[bool] = NotSet + self._state: Attribute[str] = NotSet + self._updated_at: Attribute[datetime] = NotSet + self._url: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"name": self._name.value}) + + @property + def body(self) -> str: + self._completeIfNotSet(self._body) + return self._body.value + + @property + def columns_url(self) -> str: + self._completeIfNotSet(self._columns_url) + return self._columns_url.value + + @property + def created_at(self) -> datetime: + self._completeIfNotSet(self._created_at) + return self._created_at.value + + @property + def creator(self) -> github.NamedUser.NamedUser: + self._completeIfNotSet(self._creator) + return self._creator.value + + @property + def html_url(self) -> str: + self._completeIfNotSet(self._html_url) + return self._html_url.value + + @property + def id(self) -> int: + self._completeIfNotSet(self._id) + return self._id.value + + @property + def name(self) -> str: + self._completeIfNotSet(self._name) + return self._name.value + + @property + def node_id(self) -> str: + self._completeIfNotSet(self._node_id) + return self._node_id.value + + @property + def number(self) -> int: + self._completeIfNotSet(self._number) + return self._number.value + + @property + def organization_permission(self) -> str: + self._completeIfNotSet(self._organization_permission) + return self._organization_permission.value + + @property + def owner_url(self) -> str: + self._completeIfNotSet(self._owner_url) + return self._owner_url.value + + @property + def private(self) -> bool: + self._completeIfNotSet(self._private) + return self._private.value + + @property + def state(self) -> str: + self._completeIfNotSet(self._state) + return self._state.value + + @property + def updated_at(self) -> datetime: + self._completeIfNotSet(self._updated_at) + return self._updated_at.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + def delete(self) -> None: + """ + :calls: `DELETE /projects/{project_id} `_ + """ + headers, data = self._requester.requestJsonAndCheck( + "DELETE", self.url, headers={"Accept": Consts.mediaTypeProjectsPreview} + ) + + def edit( + self, + name: Opt[str] = NotSet, + body: Opt[str] = NotSet, + state: Opt[str] = NotSet, + organization_permission: Opt[str] = NotSet, + private: Opt[bool] = NotSet, + ) -> None: + """ + :calls: `PATCH /projects/{project_id} `_ + """ + assert name is NotSet or isinstance(name, str), name + assert body is NotSet or isinstance(body, str), body + assert state is NotSet or isinstance(state, str), state + assert organization_permission is NotSet or isinstance(organization_permission, str), organization_permission + assert private is NotSet or isinstance(private, bool), private + patch_parameters = NotSet.remove_unset_items( + { + "name": name, + "body": body, + "state": state, + "organization_permission": organization_permission, + "private": private, + } + ) + + headers, data = self._requester.requestJsonAndCheck( + "PATCH", + self.url, + input=patch_parameters, + headers={"Accept": Consts.mediaTypeProjectsPreview}, + ) + self._useAttributes(data) + + def get_columns(self) -> PaginatedList[github.ProjectColumn.ProjectColumn]: + """ + :calls: `GET /projects/{project_id}/columns `_ + """ + + return PaginatedList( + github.ProjectColumn.ProjectColumn, + self._requester, + self.columns_url, + None, + headers={"Accept": Consts.mediaTypeProjectsPreview}, + ) + + def create_column(self, name: str) -> github.ProjectColumn.ProjectColumn: + """ + calls: `POST /projects/{project_id}/columns `_ + """ + assert isinstance(name, str), name + post_parameters = {"name": name} + import_header = {"Accept": Consts.mediaTypeProjectsPreview} + headers, data = self._requester.requestJsonAndCheck( + "POST", f"{self.url}/columns", headers=import_header, input=post_parameters + ) + return github.ProjectColumn.ProjectColumn(self._requester, headers, data, completed=True) + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "body" in attributes: # pragma no branch + self._body = self._makeStringAttribute(attributes["body"]) + if "columns_url" in attributes: # pragma no branch + self._columns_url = self._makeStringAttribute(attributes["columns_url"]) + if "created_at" in attributes: # pragma no branch + self._created_at = self._makeDatetimeAttribute(attributes["created_at"]) + if "creator" in attributes: # pragma no branch + self._creator = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["creator"]) + if "html_url" in attributes: # pragma no branch + self._html_url = self._makeStringAttribute(attributes["html_url"]) + if "id" in attributes: # pragma no branch + self._id = self._makeIntAttribute(attributes["id"]) + if "name" in attributes: # pragma no branch + self._name = self._makeStringAttribute(attributes["name"]) + if "node_id" in attributes: # pragma no branch + self._node_id = self._makeStringAttribute(attributes["node_id"]) + if "number" in attributes: # pragma no branch + self._number = self._makeIntAttribute(attributes["number"]) + if "organization_permission" in attributes: # pragma no branch + self._organization_permission = self._makeStringAttribute(attributes["organization_permission"]) + if "owner_url" in attributes: # pragma no branch + self._owner_url = self._makeStringAttribute(attributes["owner_url"]) + if "private" in attributes: # pragma no branch + self._private = self._makeBoolAttribute(attributes["private"]) + if "state" in attributes: # pragma no branch + self._state = self._makeStringAttribute(attributes["state"]) + if "updated_at" in attributes: # pragma no branch + self._updated_at = self._makeDatetimeAttribute(attributes["updated_at"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) diff --git a/venv/lib/python3.10/site-packages/github/ProjectCard.py b/venv/lib/python3.10/site-packages/github/ProjectCard.py new file mode 100644 index 0000000000000000000000000000000000000000..34e2ce94be92a5df0e6e877bedf5b5b5cf333866 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/ProjectCard.py @@ -0,0 +1,225 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2015 Matt Babineau # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Martijn Koster # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 Yossarian King # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Jody McIntyre # +# Copyright 2020 Steve Kowalik # +# Copyright 2020 chloe jungah kim <43295963+chloeeekim@users.noreply.github.com># +# Copyright 2021 Mark Walker # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from datetime import datetime +from typing import Any + +import github.Issue +import github.NamedUser +import github.ProjectColumn +import github.PullRequest +from github import Consts +from github.GithubObject import Attribute, CompletableGithubObject, NotSet, Opt + +# NOTE: There is currently no way to get cards "in triage" for a project. +# https://platform.github.community/t/moving-github-project-cards-that-are-in-triage/3784 +# +# See also https://developer.github.com/v4/object/projectcard for the next generation GitHub API, +# which may point the way to where the API is likely headed and what might come back to v3. E.g. ProjectCard.content member. + + +class ProjectCard(CompletableGithubObject): + """ + This class represents Project Cards. + + The reference can be found here + https://docs.github.com/en/rest/reference/projects#cards + + The OpenAPI schema can be found at + - /components/schemas/project-card + - /components/schemas/validation-error + - /components/schemas/validation-error-simple + - /paths/"/projects/columns/{column_id}/cards"/post/responses/503/content/"application/json"/schema + + """ + + def _initAttributes(self) -> None: + self._archived: Attribute[bool] = NotSet + self._column_url: Attribute[str] = NotSet + self._content_url: Attribute[str] = NotSet + self._created_at: Attribute[datetime] = NotSet + self._creator: Attribute[github.NamedUser.NamedUser] = NotSet + self._id: Attribute[int] = NotSet + self._node_id: Attribute[str] = NotSet + self._note: Attribute[str] = NotSet + self._updated_at: Attribute[datetime] = NotSet + self._url: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"id": self._id.value}) + + @property + def archived(self) -> bool: + return self._archived.value + + @property + def column_url(self) -> str: + return self._column_url.value + + @property + def content_url(self) -> str: + return self._content_url.value + + @property + def created_at(self) -> datetime: + return self._created_at.value + + @property + def creator(self) -> github.NamedUser.NamedUser: + return self._creator.value + + @property + def id(self) -> int: + return self._id.value + + @property + def node_id(self) -> str: + return self._node_id.value + + @property + def note(self) -> str: + return self._note.value + + @property + def updated_at(self) -> datetime: + return self._updated_at.value + + @property + def url(self) -> str: + return self._url.value + + # Note that the content_url for any card will be an "issue" URL, from + # which you can retrieve either an Issue or a PullRequest. Unfortunately + # the API doesn't make it clear which you are dealing with. + def get_content( + self, content_type: Opt[str] = NotSet + ) -> github.PullRequest.PullRequest | github.Issue.Issue | None: + """ + :calls: `GET /repos/{owner}/{repo}/pulls/{number} `_ + """ + assert content_type is NotSet or isinstance(content_type, str), content_type + if self.content_url is None: + return None + + retclass: type[github.PullRequest.PullRequest] | type[github.Issue.Issue] + if content_type == "PullRequest": + url = self.content_url.replace("issues", "pulls") + retclass = github.PullRequest.PullRequest + elif content_type is NotSet or content_type == "Issue": + url = self.content_url + retclass = github.Issue.Issue + else: + raise ValueError(f"Unknown content type: {content_type}") + headers, data = self._requester.requestJsonAndCheck("GET", url) + return retclass(self._requester, headers, data, completed=True) + + def move(self, position: str, column: github.ProjectColumn.ProjectColumn | int) -> bool: + """ + :calls: `POST /projects/columns/cards/{card_id}/moves `_ + """ + assert isinstance(position, str), position + assert isinstance(column, github.ProjectColumn.ProjectColumn) or isinstance(column, int), column + post_parameters = { + "position": position, + "column_id": column.id if isinstance(column, github.ProjectColumn.ProjectColumn) else column, + } + status, _, _ = self._requester.requestJson( + "POST", + f"{self.url}/moves", + input=post_parameters, + headers={"Accept": Consts.mediaTypeProjectsPreview}, + ) + return status == 201 + + def delete(self) -> bool: + """ + :calls: `DELETE /projects/columns/cards/{card_id} `_ + """ + status, _, _ = self._requester.requestJson( + "DELETE", + self.url, + headers={"Accept": Consts.mediaTypeProjectsPreview}, + ) + return status == 204 + + def edit(self, note: Opt[str] = NotSet, archived: Opt[bool] = NotSet) -> None: + """ + :calls: `PATCH /projects/columns/cards/{card_id} `_ + """ + assert note is NotSet or isinstance(note, str), note + assert archived is NotSet or isinstance(archived, bool), archived + patch_parameters: dict[str, Any] = NotSet.remove_unset_items({"note": note, "archived": archived}) + headers, data = self._requester.requestJsonAndCheck( + "PATCH", + self.url, + input=patch_parameters, + headers={"Accept": Consts.mediaTypeProjectsPreview}, + ) + self._useAttributes(data) + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "archived" in attributes: # pragma no branch + self._archived = self._makeBoolAttribute(attributes["archived"]) + if "column_url" in attributes: # pragma no branch + self._column_url = self._makeStringAttribute(attributes["column_url"]) + if "content_url" in attributes: # pragma no branch + self._content_url = self._makeStringAttribute(attributes["content_url"]) + if "created_at" in attributes: # pragma no branch + self._created_at = self._makeDatetimeAttribute(attributes["created_at"]) + if "creator" in attributes: # pragma no branch + self._creator = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["creator"]) + if "id" in attributes: # pragma no branch + self._id = self._makeIntAttribute(attributes["id"]) + if "node_id" in attributes: # pragma no branch + self._node_id = self._makeStringAttribute(attributes["node_id"]) + if "note" in attributes: # pragma no branch + self._note = self._makeStringAttribute(attributes["note"]) + if "updated_at" in attributes: # pragma no branch + self._updated_at = self._makeDatetimeAttribute(attributes["updated_at"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) diff --git a/venv/lib/python3.10/site-packages/github/ProjectColumn.py b/venv/lib/python3.10/site-packages/github/ProjectColumn.py new file mode 100644 index 0000000000000000000000000000000000000000..ad4cfb4fb9e7fa548e15035bd70e8174e308c5aa --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/ProjectColumn.py @@ -0,0 +1,221 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2015 Matt Babineau # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Martijn Koster # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 Yossarian King # +# Copyright 2018 sfdye # +# Copyright 2019 Benoit Latinier # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Vincent # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Alice GIRARD # +# Copyright 2020 Florent Clarret # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Dhruv Bhanushali # +# Copyright 2021 Mark Walker # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from datetime import datetime +from typing import Any + +import github.GithubObject +import github.Project +import github.ProjectCard +from github.GithubObject import Attribute, CompletableGithubObject, NotSet, Opt +from github.PaginatedList import PaginatedList + +from . import Consts + + +class ProjectColumn(CompletableGithubObject): + """ + This class represents Project Columns. + + The reference can be found here + https://docs.github.com/en/rest/reference/projects#columns + + The OpenAPI schema can be found at + - /components/schemas/project-column + + """ + + def _initAttributes(self) -> None: + self._cards_url: Attribute[str] = NotSet + self._created_at: Attribute[datetime] = NotSet + self._id: Attribute[int] = NotSet + self._name: Attribute[str] = NotSet + self._node_id: Attribute[str] = NotSet + self._project_url: Attribute[str] = NotSet + self._updated_at: Attribute[datetime] = NotSet + self._url: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"name": self._name.value}) + + @property + def cards_url(self) -> str: + return self._cards_url.value + + @property + def created_at(self) -> datetime: + return self._created_at.value + + @property + def id(self) -> int: + return self._id.value + + @property + def name(self) -> str: + return self._name.value + + @property + def node_id(self) -> str: + return self._node_id.value + + @property + def project_url(self) -> str: + return self._project_url.value + + @property + def updated_at(self) -> datetime: + return self._updated_at.value + + @property + def url(self) -> str: + return self._url.value + + def get_cards(self, archived_state: Opt[str] = NotSet) -> PaginatedList[github.ProjectCard.ProjectCard]: + """ + :calls: `GET /projects/columns/{column_id}/cards `_ + """ + assert archived_state is NotSet or isinstance(archived_state, str), archived_state + + url_parameters = dict() + if archived_state is not NotSet: + url_parameters["archived_state"] = archived_state + + return PaginatedList( + github.ProjectCard.ProjectCard, + self._requester, + f"{self.url}/cards", + url_parameters, + headers={"Accept": Consts.mediaTypeProjectsPreview}, + ) + + def create_card( + self, + note: Opt[str] = NotSet, + content_id: Opt[int] = NotSet, + content_type: Opt[str] = NotSet, + ) -> github.ProjectCard.ProjectCard: + """ + :calls: `POST /projects/columns/{column_id}/cards `_ + """ + if isinstance(note, str): + assert content_id is NotSet, content_id + assert content_type is NotSet, content_type + post_parameters: dict[str, Any] = {"note": note} + else: + assert note is NotSet, note + assert isinstance(content_id, int), content_id + assert isinstance(content_type, str), content_type + post_parameters = {"content_id": content_id, "content_type": content_type} + + import_header = {"Accept": Consts.mediaTypeProjectsPreview} + headers, data = self._requester.requestJsonAndCheck( + "POST", f"{self.url}/cards", headers=import_header, input=post_parameters + ) + return github.ProjectCard.ProjectCard(self._requester, headers, data, completed=True) + + def move(self, position: str) -> bool: + """ + :calls: `POST POST /projects/columns/{column_id}/moves `_ + """ + assert isinstance(position, str), position + post_parameters = {"position": position} + status, _, _ = self._requester.requestJson( + "POST", + f"{self.url}/moves", + input=post_parameters, + headers={"Accept": Consts.mediaTypeProjectsPreview}, + ) + return status == 201 + + def delete(self) -> bool: + """ + :calls: `DELETE /projects/columns/{column_id} `_ + """ + status, _, _ = self._requester.requestJson( + "DELETE", + self.url, + headers={"Accept": Consts.mediaTypeProjectsPreview}, + ) + return status == 204 + + def edit(self, name: str) -> None: + """ + :calls: `PATCH /projects/columns/{column_id} `_ + """ + assert isinstance(name, str), name + patch_parameters = {"name": name} + + headers, data = self._requester.requestJsonAndCheck( + "PATCH", + self.url, + input=patch_parameters, + headers={"Accept": Consts.mediaTypeProjectsPreview}, + ) + + self._useAttributes(data) + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "cards_url" in attributes: # pragma no branch + self._cards_url = self._makeStringAttribute(attributes["cards_url"]) + if "created_at" in attributes: # pragma no branch + self._created_at = self._makeDatetimeAttribute(attributes["created_at"]) + if "id" in attributes: # pragma no branch + self._id = self._makeIntAttribute(attributes["id"]) + if "name" in attributes: # pragma no branch + self._name = self._makeStringAttribute(attributes["name"]) + if "node_id" in attributes: # pragma no branch + self._node_id = self._makeStringAttribute(attributes["node_id"]) + if "project_url" in attributes: # pragma no branch + self._project_url = self._makeStringAttribute(attributes["project_url"]) + if "updated_at" in attributes: # pragma no branch + self._updated_at = self._makeDatetimeAttribute(attributes["updated_at"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) diff --git a/venv/lib/python3.10/site-packages/github/PublicKey.py b/venv/lib/python3.10/site-packages/github/PublicKey.py new file mode 100644 index 0000000000000000000000000000000000000000..8459b3d0d4ed1db15a13946e6b95f0be356e9962 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/PublicKey.py @@ -0,0 +1,136 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Chris Keating # +# Copyright 2021 MeggyCal # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +# https://docs.github.com/en/rest/reference/actions#example-encrypting-a-secret-using-python +from __future__ import annotations + +from base64 import b64encode +from typing import Any + +from nacl import encoding, public + +from github.GithubObject import Attribute, CompletableGithubObject, NotSet + + +def encrypt(public_key: str, secret_value: str) -> str: + """ + Encrypt a Unicode string using the public key. + """ + pk = public.PublicKey(public_key.encode("utf-8"), encoding.Base64Encoder) + sealed_box = public.SealedBox(pk) + encrypted = sealed_box.encrypt(secret_value.encode("utf-8")) + return b64encode(encrypted).decode("utf-8") + + +class PublicKey(CompletableGithubObject): + """ + This class represents either an organization public key or a repository public key. + + The reference can be found here + https://docs.github.com/en/rest/reference/actions#get-an-organization-public-key + or here + https://docs.github.com/en/rest/reference/actions#get-a-repository-public-key + + The OpenAPI schema can be found at + - /components/schemas/actions-public-key + + """ + + def _initAttributes(self) -> None: + self._created_at: Attribute[str] = NotSet + self._id: Attribute[int] = NotSet + self._key: Attribute[str] = NotSet + self._key_id: Attribute[str | int] = NotSet + self._title: Attribute[str] = NotSet + self._url: Attribute[str] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"key_id": self._key_id.value, "key": self._key.value}) + + @property + def created_at(self) -> str: + self._completeIfNotSet(self._created_at) + return self._created_at.value + + @property + def id(self) -> int: + self._completeIfNotSet(self._id) + return self._id.value + + @property + def key(self) -> str: + self._completeIfNotSet(self._key) + return self._key.value + + @property + def key_id(self) -> str | int: + self._completeIfNotSet(self._key_id) + return self._key_id.value + + @property + def title(self) -> str: + self._completeIfNotSet(self._title) + return self._title.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + def encrypt(self, unencrypted_value: str) -> str: + return encrypt(self._key.value, unencrypted_value) + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "created_at" in attributes: # pragma no branch + self._created_at = self._makeStringAttribute(attributes["created_at"]) + if "id" in attributes: # pragma no branch + self._id = self._makeIntAttribute(attributes["id"]) + if "key" in attributes: # pragma no branch + self._key = self._makeStringAttribute(attributes["key"]) + if "key_id" in attributes: # pragma no branch + if isinstance(attributes["key_id"], str): + self._key_id = self._makeStringAttribute(attributes["key_id"]) + else: + self._key_id = self._makeIntAttribute(attributes["key_id"]) + if "title" in attributes: # pragma no branch + self._title = self._makeStringAttribute(attributes["title"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) diff --git a/venv/lib/python3.10/site-packages/github/PullRequest.py b/venv/lib/python3.10/site-packages/github/PullRequest.py new file mode 100644 index 0000000000000000000000000000000000000000..5bcf95817e42b184c0b4c737479c4f744210dbe9 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/PullRequest.py @@ -0,0 +1,1141 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Michael Stead # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2013 martinqt # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 @tmshn # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2017 Aaron Levine # +# Copyright 2017 Simon # +# Copyright 2018 Ben Yohay # +# Copyright 2018 Brian J. Murrell # +# Copyright 2018 Gilad Shefer # +# Copyright 2018 Martin Monperrus # +# Copyright 2018 Matt Babineau <9685860+babineaum@users.noreply.github.com> # +# Copyright 2018 Shinichi TAMURA # +# Copyright 2018 Steve Kowalik # +# Copyright 2018 Thibault Jamet # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 per1234 # +# Copyright 2018 sfdye # +# Copyright 2019 MarcoFalke # +# Copyright 2019 Mark Browning # +# Copyright 2019 MurphyZhao # +# Copyright 2019 Olof-Joachim Frahm (欧雅福) # +# Copyright 2019 Pavan Kunisetty # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Tim Gates # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Alice GIRARD # +# Copyright 2020 Florent Clarret # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Mark Walker # +# Copyright 2021 Steve Kowalik # +# Copyright 2022 tison # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Heitor Polidoro <14806300+heitorpolidoro@users.noreply.github.com># +# Copyright 2023 Heitor Polidoro # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2023 sd-kialo <138505487+sd-kialo@users.noreply.github.com> # +# Copyright 2023 vanya20074 # +# Copyright 2024 Austin Sasko # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Evan Fetsko # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2024 Kobbi Gal <85439776+kgal-pan@users.noreply.github.com> # +# Copyright 2025 Bruno Didot # +# Copyright 2025 Enrico Minack # +# Copyright 2025 Ryan Peach # +# Copyright 2025 a-sido # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +import urllib.parse +from datetime import datetime +from typing import TYPE_CHECKING, Any + +from typing_extensions import NotRequired, TypedDict + +import github.Commit +import github.File +import github.IssueComment +import github.IssueEvent +import github.Label +import github.Milestone +import github.NamedUser +import github.PaginatedList +import github.PullRequestComment +import github.PullRequestMergeStatus +import github.PullRequestPart +import github.PullRequestReview +import github.Team +from github import Consts +from github.GithubObject import ( + Attribute, + CompletableGithubObject, + NotSet, + Opt, + is_defined, + is_optional, + is_optional_list, + is_undefined, +) +from github.Issue import Issue +from github.PaginatedList import PaginatedList + +if TYPE_CHECKING: + from github.Commit import Commit + from github.File import File + from github.GitRef import GitRef + from github.IssueComment import IssueComment + from github.IssueEvent import IssueEvent + from github.Label import Label + from github.Milestone import Milestone + from github.NamedUser import NamedUser + from github.PullRequestComment import PullRequestComment + from github.PullRequestMergeStatus import PullRequestMergeStatus + from github.PullRequestPart import PullRequestPart + from github.PullRequestReview import PullRequestReview + from github.Team import Team + + +class ReviewComment(TypedDict): + path: str + position: NotRequired[int] + body: str + line: NotRequired[int] + side: NotRequired[str] + start_line: NotRequired[int] + start_side: NotRequired[str] + + +class PullRequest(CompletableGithubObject): + """ + This class represents PullRequests. + + The reference can be found here + https://docs.github.com/en/rest/reference/pulls + + The OpenAPI schema can be found at + - /components/schemas/pull-request + - /components/schemas/pull-request-minimal + - /components/schemas/pull-request-simple + + """ + + def _initAttributes(self) -> None: + self.__links: Attribute[dict[str, Any]] = NotSet + self._active_lock_reason: Attribute[str] = NotSet + self._additions: Attribute[int] = NotSet + self._assignee: Attribute[NamedUser] = NotSet + self._assignees: Attribute[list[NamedUser]] = NotSet + self._author_association: Attribute[str] = NotSet + self._auto_merge: Attribute[dict[str, Any]] = NotSet + self._base: Attribute[PullRequestPart] = NotSet + self._body: Attribute[str] = NotSet + self._changed_files: Attribute[int] = NotSet + self._closed_at: Attribute[datetime | None] = NotSet + self._comments: Attribute[int] = NotSet + self._comments_url: Attribute[str] = NotSet + self._commits: Attribute[int] = NotSet + self._commits_url: Attribute[str] = NotSet + self._created_at: Attribute[datetime] = NotSet + self._deletions: Attribute[int] = NotSet + self._diff_url: Attribute[str] = NotSet + self._draft: Attribute[bool] = NotSet + self._head: Attribute[PullRequestPart] = NotSet + self._html_url: Attribute[str] = NotSet + self._id: Attribute[int] = NotSet + self._issue_url: Attribute[str] = NotSet + self._labels: Attribute[list[Label]] = NotSet + self._locked: Attribute[bool] = NotSet + self._maintainer_can_modify: Attribute[bool] = NotSet + self._merge_commit_sha: Attribute[str] = NotSet + self._mergeable: Attribute[bool] = NotSet + self._mergeable_state: Attribute[str] = NotSet + self._merged: Attribute[bool] = NotSet + self._merged_at: Attribute[datetime | None] = NotSet + self._merged_by: Attribute[NamedUser] = NotSet + self._milestone: Attribute[Milestone] = NotSet + self._node_id: Attribute[str] = NotSet + self._number: Attribute[int] = NotSet + self._patch_url: Attribute[str] = NotSet + self._rebaseable: Attribute[bool] = NotSet + self._requested_reviewers: Attribute[list[NamedUser]] = NotSet + self._requested_teams: Attribute[list[Team]] = NotSet + self._review_comment_url: Attribute[str] = NotSet + self._review_comments: Attribute[int] = NotSet + self._review_comments_url: Attribute[str] = NotSet + self._state: Attribute[str] = NotSet + self._statuses_url: Attribute[str] = NotSet + self._title: Attribute[str] = NotSet + self._updated_at: Attribute[datetime | None] = NotSet + self._url: Attribute[str] = NotSet + self._user: Attribute[NamedUser] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"number": self._number.value, "title": self._title.value}) + + @property + def _links(self) -> dict[str, Any]: + self._completeIfNotSet(self.__links) + return self.__links.value + + @property + def active_lock_reason(self) -> str: + self._completeIfNotSet(self._active_lock_reason) + return self._active_lock_reason.value + + @property + def additions(self) -> int: + self._completeIfNotSet(self._additions) + return self._additions.value + + @property + def assignee(self) -> NamedUser: + self._completeIfNotSet(self._assignee) + return self._assignee.value + + @property + def assignees(self) -> list[NamedUser]: + self._completeIfNotSet(self._assignees) + return self._assignees.value + + @property + def author_association(self) -> str: + self._completeIfNotSet(self._author_association) + return self._author_association.value + + @property + def auto_merge(self) -> dict[str, Any]: + self._completeIfNotSet(self._auto_merge) + return self._auto_merge.value + + @property + def base(self) -> PullRequestPart: + self._completeIfNotSet(self._base) + return self._base.value + + @property + def body(self) -> str: + self._completeIfNotSet(self._body) + return self._body.value + + @property + def changed_files(self) -> int: + self._completeIfNotSet(self._changed_files) + return self._changed_files.value + + @property + def closed_at(self) -> datetime | None: + self._completeIfNotSet(self._closed_at) + return self._closed_at.value + + @property + def comments(self) -> int: + self._completeIfNotSet(self._comments) + return self._comments.value + + @property + def comments_url(self) -> str: + self._completeIfNotSet(self._comments_url) + return self._comments_url.value + + @property + def commits(self) -> int: + self._completeIfNotSet(self._commits) + return self._commits.value + + @property + def commits_url(self) -> str: + self._completeIfNotSet(self._commits_url) + return self._commits_url.value + + @property + def created_at(self) -> datetime: + self._completeIfNotSet(self._created_at) + return self._created_at.value + + @property + def deletions(self) -> int: + self._completeIfNotSet(self._deletions) + return self._deletions.value + + @property + def diff_url(self) -> str: + self._completeIfNotSet(self._diff_url) + return self._diff_url.value + + @property + def draft(self) -> bool: + self._completeIfNotSet(self._draft) + return self._draft.value + + @property + def head(self) -> PullRequestPart: + self._completeIfNotSet(self._head) + return self._head.value + + @property + def html_url(self) -> str: + self._completeIfNotSet(self._html_url) + return self._html_url.value + + @property + def id(self) -> int: + self._completeIfNotSet(self._id) + return self._id.value + + @property + def issue_url(self) -> str: + self._completeIfNotSet(self._issue_url) + return self._issue_url.value + + @property + def labels(self) -> list[Label]: + self._completeIfNotSet(self._labels) + return self._labels.value + + @property + def locked(self) -> bool: + self._completeIfNotSet(self._locked) + return self._locked.value + + @property + def maintainer_can_modify(self) -> bool: + self._completeIfNotSet(self._maintainer_can_modify) + return self._maintainer_can_modify.value + + @property + def merge_commit_sha(self) -> str: + self._completeIfNotSet(self._merge_commit_sha) + return self._merge_commit_sha.value + + @property + def mergeable(self) -> bool: + self._completeIfNotSet(self._mergeable) + return self._mergeable.value + + @property + def mergeable_state(self) -> str: + self._completeIfNotSet(self._mergeable_state) + return self._mergeable_state.value + + @property + def merged(self) -> bool: + self._completeIfNotSet(self._merged) + return self._merged.value + + @property + def merged_at(self) -> datetime | None: + self._completeIfNotSet(self._merged_at) + return self._merged_at.value + + @property + def merged_by(self) -> NamedUser: + self._completeIfNotSet(self._merged_by) + return self._merged_by.value + + @property + def milestone(self) -> Milestone: + self._completeIfNotSet(self._milestone) + return self._milestone.value + + @property + def node_id(self) -> str: + self._completeIfNotSet(self._node_id) + return self._node_id.value + + @property + def number(self) -> int: + self._completeIfNotSet(self._number) + return self._number.value + + @property + def patch_url(self) -> str: + self._completeIfNotSet(self._patch_url) + return self._patch_url.value + + @property + def rebaseable(self) -> bool: + self._completeIfNotSet(self._rebaseable) + return self._rebaseable.value + + @property + def requested_reviewers(self) -> list[NamedUser]: + self._completeIfNotSet(self._requested_reviewers) + return self._requested_reviewers.value + + @property + def requested_teams(self) -> list[Team]: + self._completeIfNotSet(self._requested_teams) + return self._requested_teams.value + + @property + def review_comment_url(self) -> str: + self._completeIfNotSet(self._review_comment_url) + return self._review_comment_url.value + + @property + def review_comments(self) -> int: + self._completeIfNotSet(self._review_comments) + return self._review_comments.value + + @property + def review_comments_url(self) -> str: + self._completeIfNotSet(self._review_comments_url) + return self._review_comments_url.value + + @property + def state(self) -> str: + self._completeIfNotSet(self._state) + return self._state.value + + @property + def statuses_url(self) -> str: + self._completeIfNotSet(self._statuses_url) + return self._statuses_url.value + + @property + def title(self) -> str: + self._completeIfNotSet(self._title) + return self._title.value + + @property + def updated_at(self) -> datetime | None: + self._completeIfNotSet(self._updated_at) + return self._updated_at.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + @property + def user(self) -> NamedUser: + self._completeIfNotSet(self._user) + return self._user.value + + def as_issue(self) -> Issue: + """ + :calls: `GET /repos/{owner}/{repo}/issues/{number} `_ + """ + headers, data = self._requester.requestJsonAndCheck("GET", self.issue_url) + return github.Issue.Issue(self._requester, headers, data, completed=True) + + def create_comment(self, body: str, commit: github.Commit.Commit, path: str, position: int) -> PullRequestComment: + """ + :calls: `POST /repos/{owner}/{repo}/pulls/{number}/comments `_ + """ + return self.create_review_comment(body, commit, path, position) + + def create_review_comment( + self, + body: str, + commit: github.Commit.Commit, + path: str, + # line replaces deprecated position argument, so we put it between path and side + line: Opt[int] = NotSet, + side: Opt[str] = NotSet, + start_line: Opt[int] = NotSet, + start_side: Opt[str] = NotSet, + in_reply_to: Opt[int] = NotSet, + subject_type: Opt[str] = NotSet, + as_suggestion: bool = False, + ) -> PullRequestComment: + """ + :calls: `POST /repos/{owner}/{repo}/pulls/{number}/comments `_ + """ + assert isinstance(body, str), body + assert isinstance(commit, github.Commit.Commit), commit + assert isinstance(path, str), path + assert is_optional(line, int), line + assert is_undefined(side) or side in ["LEFT", "RIGHT"], side + assert is_optional(start_line, int), start_line + assert is_undefined(start_side) or start_side in [ + "LEFT", + "RIGHT", + "side", + ], start_side + assert is_optional(in_reply_to, int), in_reply_to + assert is_undefined(subject_type) or subject_type in [ + "line", + "file", + ], subject_type + assert isinstance(as_suggestion, bool), as_suggestion + + if as_suggestion: + body = f"```suggestion\n{body}\n```" + post_parameters = NotSet.remove_unset_items( + { + "body": body, + "commit_id": commit._identity, + "path": path, + "line": line, + "side": side, + "start_line": start_line, + "start_side": start_side, + "in_reply_to": in_reply_to, + "subject_type": subject_type, + } + ) + + headers, data = self._requester.requestJsonAndCheck("POST", f"{self.url}/comments", input=post_parameters) + return github.PullRequestComment.PullRequestComment(self._requester, headers, data, completed=True) + + def create_review_comment_reply(self, comment_id: int, body: str) -> PullRequestComment: + """ + :calls: `POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies `_ + """ + assert isinstance(comment_id, int), comment_id + assert isinstance(body, str), body + post_parameters = {"body": body} + headers, data = self._requester.requestJsonAndCheck( + "POST", + f"{self.url}/comments/{comment_id}/replies", + input=post_parameters, + ) + return github.PullRequestComment.PullRequestComment(self._requester, headers, data, completed=True) + + def create_issue_comment(self, body: str) -> IssueComment: + """ + :calls: `POST /repos/{owner}/{repo}/issues/{number}/comments `_ + """ + assert isinstance(body, str), body + post_parameters = { + "body": body, + } + headers, data = self._requester.requestJsonAndCheck("POST", f"{self.issue_url}/comments", input=post_parameters) + return github.IssueComment.IssueComment(self._requester, headers, data, completed=True) + + def create_review( + self, + commit: Opt[github.Commit.Commit] = NotSet, + body: Opt[str] = NotSet, + event: Opt[str] = NotSet, + comments: Opt[list[ReviewComment]] = NotSet, + ) -> PullRequestReview: + """ + :calls: `POST /repos/{owner}/{repo}/pulls/{number}/reviews `_ + """ + assert is_optional(commit, github.Commit.Commit), commit + assert is_optional(body, str), body + assert is_optional(event, str), event + assert is_optional_list(comments, dict), comments + post_parameters: dict[str, Any] = NotSet.remove_unset_items({"body": body}) + post_parameters["event"] = "COMMENT" if is_undefined(event) else event + if is_defined(commit): + post_parameters["commit_id"] = commit.sha + if is_defined(comments): + post_parameters["comments"] = comments + else: + post_parameters["comments"] = [] + headers, data = self._requester.requestJsonAndCheck("POST", f"{self.url}/reviews", input=post_parameters) + return github.PullRequestReview.PullRequestReview(self._requester, headers, data) + + def create_review_request( + self, + reviewers: Opt[list[str] | str] = NotSet, + team_reviewers: Opt[list[str] | str] = NotSet, + ) -> None: + """ + :calls: `POST /repos/{owner}/{repo}/pulls/{number}/requested_reviewers `_ + """ + assert is_optional(reviewers, str) or is_optional_list(reviewers, str), reviewers + assert is_optional(team_reviewers, str) or is_optional_list(team_reviewers, str), team_reviewers + + if isinstance(reviewers, str): + reviewers = [reviewers] + if isinstance(team_reviewers, str): + team_reviewers = [team_reviewers] + + post_parameters = NotSet.remove_unset_items({"reviewers": reviewers, "team_reviewers": team_reviewers}) + + headers, data = self._requester.requestJsonAndCheck( + "POST", f"{self.url}/requested_reviewers", input=post_parameters + ) + + def delete_review_request( + self, + reviewers: Opt[list[str] | str] = NotSet, + team_reviewers: Opt[list[str] | str] = NotSet, + ) -> None: + """ + :calls: `DELETE /repos/{owner}/{repo}/pulls/{number}/requested_reviewers `_ + """ + assert is_optional(reviewers, str) or is_optional_list(reviewers, str), reviewers + assert is_optional(team_reviewers, str) or is_optional_list(team_reviewers, str), team_reviewers + + if isinstance(reviewers, str): + reviewers = [reviewers] + if isinstance(team_reviewers, str): + team_reviewers = [team_reviewers] + + post_parameters = NotSet.remove_unset_items({"reviewers": reviewers, "team_reviewers": team_reviewers}) + + headers, data = self._requester.requestJsonAndCheck( + "DELETE", f"{self.url}/requested_reviewers", input=post_parameters + ) + + def edit( + self, + title: Opt[str] = NotSet, + body: Opt[str] = NotSet, + state: Opt[str] = NotSet, + base: Opt[str] = NotSet, + maintainer_can_modify: Opt[bool] = NotSet, + ) -> None: + """ + :calls: `PATCH /repos/{owner}/{repo}/pulls/{number} `_ + """ + assert is_optional(title, str), title + assert is_optional(body, str), body + assert is_optional(state, str), state + assert is_optional(base, str), base + assert is_optional(maintainer_can_modify, bool), maintainer_can_modify + post_parameters = NotSet.remove_unset_items( + {"title": title, "body": body, "state": state, "base": base, "maintainer_can_modify": maintainer_can_modify} + ) + + headers, data = self._requester.requestJsonAndCheck("PATCH", self.url, input=post_parameters) + self._useAttributes(data) + + def get_comment(self, id: int) -> PullRequestComment: + """ + :calls: `GET /repos/{owner}/{repo}/pulls/comments/{number} `_ + """ + return self.get_review_comment(id) + + def get_review_comment(self, id: int) -> PullRequestComment: + """ + :calls: `GET /repos/{owner}/{repo}/pulls/comments/{number} `_ + """ + assert isinstance(id, int), id + headers, data = self._requester.requestJsonAndCheck("GET", f"{self._parentUrl(self.url)}/comments/{id}") + return github.PullRequestComment.PullRequestComment(self._requester, headers, data, completed=True) + + def get_comments( + self, + sort: Opt[str] = NotSet, + direction: Opt[str] = NotSet, + since: Opt[datetime] = NotSet, + ) -> PaginatedList[PullRequestComment]: + """ + Warning: this only returns review comments. For normal conversation comments, use get_issue_comments. + + :calls: `GET /repos/{owner}/{repo}/pulls/{number}/comments `_ + :param sort: string 'created' or 'updated' + :param direction: string 'asc' or 'desc' + :param since: datetime + """ + return self.get_review_comments(sort=sort, direction=direction, since=since) + + # v3: remove *, added here to force named parameters because order has changed + def get_review_comments( + self, + *, + sort: Opt[str] = NotSet, + direction: Opt[str] = NotSet, + since: Opt[datetime] = NotSet, + ) -> PaginatedList[PullRequestComment]: + """ + :calls: `GET /repos/{owner}/{repo}/pulls/{number}/comments `_ + :param sort: string 'created' or 'updated' + :param direction: string 'asc' or 'desc' + :param since: datetime + """ + assert is_optional(sort, str), sort + assert is_optional(direction, str), direction + assert is_optional(since, datetime), since + + url_parameters = NotSet.remove_unset_items({"sort": sort, "direction": direction}) + if is_defined(since): + url_parameters["since"] = since.strftime("%Y-%m-%dT%H:%M:%SZ") + + return PaginatedList( + github.PullRequestComment.PullRequestComment, + self._requester, + f"{self.url}/comments", + url_parameters, + ) + + def get_single_review_comments(self, id: int) -> PaginatedList[PullRequestComment]: + """ + :calls: `GET /repos/{owner}/{repo}/pulls/{number}/review/{id}/comments `_ + """ + assert isinstance(id, int), id + return PaginatedList( + github.PullRequestComment.PullRequestComment, + self._requester, + f"{self.url}/reviews/{id}/comments", + None, + ) + + def get_commits(self) -> PaginatedList[Commit]: + """ + :calls: `GET /repos/{owner}/{repo}/pulls/{number}/commits `_ + """ + return PaginatedList(github.Commit.Commit, self._requester, f"{self.url}/commits", None) + + def get_files(self) -> PaginatedList[File]: + """ + :calls: `GET /repos/{owner}/{repo}/pulls/{number}/files `_ + """ + return PaginatedList(github.File.File, self._requester, f"{self.url}/files", None) + + def get_issue_comment(self, id: int) -> IssueComment: + """ + :calls: `GET /repos/{owner}/{repo}/issues/comments/{id} `_ + """ + assert isinstance(id, int), id + headers, data = self._requester.requestJsonAndCheck("GET", f"{self._parentUrl(self.issue_url)}/comments/{id}") + return github.IssueComment.IssueComment(self._requester, headers, data, completed=True) + + def get_issue_comments(self) -> PaginatedList[IssueComment]: + """ + :calls: `GET /repos/{owner}/{repo}/issues/{number}/comments `_ + """ + return PaginatedList( + github.IssueComment.IssueComment, + self._requester, + f"{self.issue_url}/comments", + None, + ) + + def get_issue_events(self) -> PaginatedList[IssueEvent]: + """ + :calls: `GET /repos/{owner}/{repo}/issues/{issue_number}/events `_ + :rtype: :class:`github.PaginatedList.PaginatedList` of :class:`github.IssueEvent.IssueEvent` + """ + return PaginatedList( + github.IssueEvent.IssueEvent, + self._requester, + f"{self.issue_url}/events", + None, + headers={"Accept": Consts.mediaTypeLockReasonPreview}, + ) + + def get_review(self, id: int) -> PullRequestReview: + """ + :calls: `GET /repos/{owner}/{repo}/pulls/{number}/reviews/{id} `_ + :param id: integer + :rtype: :class:`github.PullRequestReview.PullRequestReview` + """ + assert isinstance(id, int), id + headers, data = self._requester.requestJsonAndCheck( + "GET", + f"{self.url}/reviews/{id}", + ) + return github.PullRequestReview.PullRequestReview(self._requester, headers, data) + + def get_reviews(self) -> PaginatedList[PullRequestReview]: + """ + :calls: `GET /repos/{owner}/{repo}/pulls/{number}/reviews `_ + :rtype: :class:`github.PaginatedList.PaginatedList` of :class:`github.PullRequestReview.PullRequestReview` + """ + return PaginatedList( + github.PullRequestReview.PullRequestReview, + self._requester, + f"{self.url}/reviews", + None, + ) + + def get_review_requests(self) -> tuple[PaginatedList[NamedUser], PaginatedList[Team]]: + """ + :calls: `GET /repos/{owner}/{repo}/pulls/{number}/requested_reviewers `_ + :rtype: tuple of :class:`github.PaginatedList.PaginatedList` of :class:`github.NamedUser.NamedUser` and of :class:`github.PaginatedList.PaginatedList` of :class:`github.Team.Team` + """ + return ( + PaginatedList( + github.NamedUser.NamedUser, + self._requester, + f"{self.url}/requested_reviewers", + None, + list_item="users", + ), + PaginatedList( + github.Team.Team, + self._requester, + f"{self.url}/requested_reviewers", + None, + list_item="teams", + ), + ) + + def get_labels(self) -> PaginatedList[Label]: + """ + :calls: `GET /repos/{owner}/{repo}/issues/{number}/labels `_ + """ + return PaginatedList(github.Label.Label, self._requester, f"{self.issue_url}/labels", None) + + def add_to_labels(self, *labels: github.Label.Label | str) -> None: + """ + :calls: `POST /repos/{owner}/{repo}/issues/{number}/labels `_ + """ + assert all(isinstance(element, (github.Label.Label, str)) for element in labels), labels + post_parameters = [label.name if isinstance(label, github.Label.Label) else label for label in labels] + headers, data = self._requester.requestJsonAndCheck("POST", f"{self.issue_url}/labels", input=post_parameters) + + def delete_labels(self) -> None: + """ + :calls: `DELETE /repos/{owner}/{repo}/issues/{number}/labels `_ + """ + headers, data = self._requester.requestJsonAndCheck("DELETE", f"{self.issue_url}/labels") + + def remove_from_labels(self, label: github.Label.Label | str) -> None: + """ + :calls: `DELETE /repos/{owner}/{repo}/issues/{number}/labels/{name} `_ + """ + assert isinstance(label, (github.Label.Label, str)), label + if isinstance(label, github.Label.Label): + label = label._identity + else: + label = urllib.parse.quote(label) + headers, data = self._requester.requestJsonAndCheck("DELETE", f"{self.issue_url}/labels/{label}") + + def set_labels(self, *labels: github.Label.Label | str) -> None: + """ + :calls: `PUT /repos/{owner}/{repo}/issues/{number}/labels `_ + """ + assert all(isinstance(element, (github.Label.Label, str)) for element in labels), labels + post_parameters = [label.name if isinstance(label, github.Label.Label) else label for label in labels] + headers, data = self._requester.requestJsonAndCheck("PUT", f"{self.issue_url}/labels", input=post_parameters) + + def is_merged(self) -> bool: + """ + :calls: `GET /repos/{owner}/{repo}/pulls/{number}/merge `_ + """ + status, headers, data = self._requester.requestJson("GET", f"{self.url}/merge") + return status == 204 + + def restore_branch(self) -> GitRef: + """ + Convenience function that calls :meth:`Repository.create_git_ref` :rtype: :class:`github.GitRef.GitRef` + """ + return self.head.repo.create_git_ref(f"refs/heads/{self.head.ref}", sha=self.head.sha) + + def delete_branch(self, force: bool = False) -> None: + """ + Convenience function that calls :meth:`GitRef.delete` :rtype: bool. + """ + if not force: + remaining_pulls = self.head.repo.get_pulls(head=f"{self.head.repo.owner.login}:{self.head.ref}") + if remaining_pulls.totalCount > 0: + raise RuntimeError( + "This branch is referenced by open pull requests, set force=True to delete this branch." + ) + return self.head.repo.get_git_ref(f"heads/{self.head.ref}").delete() + + def enable_automerge( + self, + merge_method: Opt[str] = "MERGE", + author_email: Opt[str] = NotSet, + client_mutation_id: Opt[str] = NotSet, + commit_body: Opt[str] = NotSet, + commit_headline: Opt[str] = NotSet, + expected_head_oid: Opt[str] = NotSet, + ) -> dict[str, Any]: + """ + :calls: `POST /graphql `_ with a mutation to enable pull request auto merge + + """ + assert is_optional(author_email, str), author_email + assert is_optional(client_mutation_id, str), client_mutation_id + assert is_optional(commit_body, str), commit_body + assert is_optional(commit_headline, str), commit_headline + assert is_optional(expected_head_oid, str), expected_head_oid + assert isinstance(merge_method, str) and merge_method in ["MERGE", "REBASE", "SQUASH"], merge_method + + # Define the variables + variables = { + "pullRequestId": self.node_id, + "authorEmail": author_email, + "clientMutationId": client_mutation_id, + "commitBody": commit_body, + "commitHeadline": commit_headline, + "expectedHeadOid": expected_head_oid, + "mergeMethod": merge_method, + } + + # Make the request + _, data = self._requester.graphql_named_mutation( + mutation_name="enablePullRequestAutoMerge", + mutation_input=NotSet.remove_unset_items(variables), + output_schema="actor { avatarUrl login resourcePath url } clientMutationId", + ) + return data + + def disable_automerge( + self, + client_mutation_id: Opt[str] = NotSet, + ) -> dict[str, Any]: + """ + :calls: `POST /graphql `_ with a mutation to disable pull request auto merge + + """ + assert is_optional(client_mutation_id, str), client_mutation_id + + # Define the variables + variables = { + "pullRequestId": self.node_id, + "clientMutationId": client_mutation_id, + } + + # Make the request + _, data = self._requester.graphql_named_mutation( + mutation_name="disablePullRequestAutoMerge", + mutation_input=NotSet.remove_unset_items(variables), + output_schema="actor { avatarUrl login resourcePath url } clientMutationId", + ) + return data + + def merge( + self, + commit_message: Opt[str] = NotSet, + commit_title: Opt[str] = NotSet, + merge_method: Opt[str] = NotSet, + sha: Opt[str] = NotSet, + delete_branch: bool = False, + ) -> PullRequestMergeStatus: + """ + :calls: `PUT /repos/{owner}/{repo}/pulls/{number}/merge `_ + """ + assert is_optional(commit_message, str), commit_message + assert is_optional(commit_title, str), commit_title + assert is_optional(merge_method, str), merge_method + assert is_optional(sha, str), sha + post_parameters = NotSet.remove_unset_items( + {"commit_message": commit_message, "commit_title": commit_title, "merge_method": merge_method, "sha": sha} + ) + headers, data = self._requester.requestJsonAndCheck("PUT", f"{self.url}/merge", input=post_parameters) + if delete_branch: + self.delete_branch() + + return github.PullRequestMergeStatus.PullRequestMergeStatus(self._requester, headers, data) + + def add_to_assignees(self, *assignees: github.NamedUser.NamedUser | str) -> None: + """ + :calls: `POST /repos/{owner}/{repo}/issues/{number}/assignees `_ + """ + assert all(isinstance(element, (github.NamedUser.NamedUser, str)) for element in assignees), assignees + post_parameters = { + "assignees": [ + assignee.login if isinstance(assignee, github.NamedUser.NamedUser) else assignee + for assignee in assignees + ] + } + headers, data = self._requester.requestJsonAndCheck( + "POST", f"{self.issue_url}/assignees", input=post_parameters + ) + # Only use the assignees attribute, since we call this PR as an issue + self._useAttributes({"assignees": data["assignees"]}) + + def remove_from_assignees(self, *assignees: github.NamedUser.NamedUser | str) -> None: + """ + :calls: `DELETE /repos/{owner}/{repo}/issues/{number}/assignees `_ + """ + assert all(isinstance(element, (github.NamedUser.NamedUser, str)) for element in assignees), assignees + post_parameters = { + "assignees": [ + assignee.login if isinstance(assignee, github.NamedUser.NamedUser) else assignee + for assignee in assignees + ] + } + headers, data = self._requester.requestJsonAndCheck( + "DELETE", f"{self.issue_url}/assignees", input=post_parameters + ) + # Only use the assignees attribute, since we call this PR as an issue + self._useAttributes({"assignees": data["assignees"]}) + + def update_branch(self, expected_head_sha: Opt[str] = NotSet) -> bool: + """ + :calls `PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch `_ + """ + assert is_optional(expected_head_sha, str), expected_head_sha + post_parameters = NotSet.remove_unset_items({"expected_head_sha": expected_head_sha}) + status, headers, data = self._requester.requestJson( + "PUT", + f"{self.url}/update-branch", + input=post_parameters, + headers={"Accept": Consts.updateBranchPreview}, + ) + return status == 202 + + def convert_to_draft( + self, + client_mutation_id: Opt[str] = NotSet, + ) -> dict[str, Any]: + """ + :calls: `POST /graphql `_ to convert pull request to draft + + """ + assert is_optional(client_mutation_id, str), client_mutation_id + + # Define the variables + variables = { + "pullRequestId": self.node_id, + "clientMutationId": client_mutation_id, + } + + # Make the request + _, data = self._requester.graphql_named_mutation( + mutation_name="convertPullRequestToDraft", + mutation_input=NotSet.remove_unset_items(variables), + output_schema="clientMutationId pullRequest { isDraft }", + ) + self._useAttributes({"draft": data["pullRequest"]["isDraft"]}) + return data + + def mark_ready_for_review( + self, + client_mutation_id: Opt[str] = NotSet, + ) -> dict[str, Any]: + """ + :calls: `POST /graphql `_ to mark pull request ready for review + + """ + assert is_optional(client_mutation_id, str), client_mutation_id + + # Define the variables + variables = { + "pullRequestId": self.node_id, + "clientMutationId": client_mutation_id, + } + + # Make the request + _, data = self._requester.graphql_named_mutation( + mutation_name="markPullRequestReadyForReview", + mutation_input=NotSet.remove_unset_items(variables), + output_schema="clientMutationId pullRequest { isDraft }", + ) + self._useAttributes({"draft": data["pullRequest"]["isDraft"]}) + return data + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "_links" in attributes: # pragma no branch + self.__links = self._makeDictAttribute(attributes["_links"]) + if "active_lock_reason" in attributes: # pragma no branch + self._active_lock_reason = self._makeStringAttribute(attributes["active_lock_reason"]) + if "additions" in attributes: # pragma no branch + self._additions = self._makeIntAttribute(attributes["additions"]) + if "assignee" in attributes: # pragma no branch + self._assignee = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["assignee"]) + if "assignees" in attributes: # pragma no branch + self._assignees = self._makeListOfClassesAttribute(github.NamedUser.NamedUser, attributes["assignees"]) + elif "assignee" in attributes: + if attributes["assignee"] is not None: + self._assignees = self._makeListOfClassesAttribute(github.NamedUser.NamedUser, [attributes["assignee"]]) + else: + self._assignees = self._makeListOfClassesAttribute(github.NamedUser.NamedUser, []) + if "author_association" in attributes: # pragma no branch + self._author_association = self._makeStringAttribute(attributes["author_association"]) + if "auto_merge" in attributes: # pragma no branch + self._auto_merge = self._makeDictAttribute(attributes["auto_merge"]) + if "base" in attributes: # pragma no branch + self._base = self._makeClassAttribute(github.PullRequestPart.PullRequestPart, attributes["base"]) + if "body" in attributes: # pragma no branch + self._body = self._makeStringAttribute(attributes["body"]) + if "changed_files" in attributes: # pragma no branch + self._changed_files = self._makeIntAttribute(attributes["changed_files"]) + if "closed_at" in attributes: # pragma no branch + self._closed_at = self._makeDatetimeAttribute(attributes["closed_at"]) + if "comments" in attributes: # pragma no branch + self._comments = self._makeIntAttribute(attributes["comments"]) + if "comments_url" in attributes: # pragma no branch + self._comments_url = self._makeStringAttribute(attributes["comments_url"]) + if "commits" in attributes: # pragma no branch + self._commits = self._makeIntAttribute(attributes["commits"]) + if "commits_url" in attributes: # pragma no branch + self._commits_url = self._makeStringAttribute(attributes["commits_url"]) + if "created_at" in attributes: # pragma no branch + self._created_at = self._makeDatetimeAttribute(attributes["created_at"]) + if "deletions" in attributes: # pragma no branch + self._deletions = self._makeIntAttribute(attributes["deletions"]) + if "diff_url" in attributes: # pragma no branch + self._diff_url = self._makeStringAttribute(attributes["diff_url"]) + if "draft" in attributes: # pragma no branch + self._draft = self._makeBoolAttribute(attributes["draft"]) + if "head" in attributes: # pragma no branch + self._head = self._makeClassAttribute(github.PullRequestPart.PullRequestPart, attributes["head"]) + if "html_url" in attributes: # pragma no branch + self._html_url = self._makeStringAttribute(attributes["html_url"]) + if "id" in attributes: # pragma no branch + self._id = self._makeIntAttribute(attributes["id"]) + if "issue_url" in attributes: # pragma no branch + self._issue_url = self._makeStringAttribute(attributes["issue_url"]) + if "labels" in attributes: # pragma no branch + self._labels = self._makeListOfClassesAttribute(github.Label.Label, attributes["labels"]) + if "locked" in attributes: # pragma no branch + self._locked = self._makeBoolAttribute(attributes["locked"]) + if "maintainer_can_modify" in attributes: # pragma no branch + self._maintainer_can_modify = self._makeBoolAttribute(attributes["maintainer_can_modify"]) + if "merge_commit_sha" in attributes: # pragma no branch + self._merge_commit_sha = self._makeStringAttribute(attributes["merge_commit_sha"]) + if "mergeable" in attributes: # pragma no branch + self._mergeable = self._makeBoolAttribute(attributes["mergeable"]) + if "mergeable_state" in attributes: # pragma no branch + self._mergeable_state = self._makeStringAttribute(attributes["mergeable_state"]) + if "merged" in attributes: # pragma no branch + self._merged = self._makeBoolAttribute(attributes["merged"]) + if "merged_at" in attributes: # pragma no branch + self._merged_at = self._makeDatetimeAttribute(attributes["merged_at"]) + if "merged_by" in attributes: # pragma no branch + self._merged_by = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["merged_by"]) + if "milestone" in attributes: # pragma no branch + self._milestone = self._makeClassAttribute(github.Milestone.Milestone, attributes["milestone"]) + if "node_id" in attributes: # pragma no branch + self._node_id = self._makeStringAttribute(attributes["node_id"]) + if "number" in attributes: # pragma no branch + self._number = self._makeIntAttribute(attributes["number"]) + if "patch_url" in attributes: # pragma no branch + self._patch_url = self._makeStringAttribute(attributes["patch_url"]) + if "rebaseable" in attributes: # pragma no branch + self._rebaseable = self._makeBoolAttribute(attributes["rebaseable"]) + if "requested_reviewers" in attributes: + self._requested_reviewers = self._makeListOfClassesAttribute( + github.NamedUser.NamedUser, attributes["requested_reviewers"] + ) + if "requested_teams" in attributes: + self._requested_teams = self._makeListOfClassesAttribute(github.Team.Team, attributes["requested_teams"]) + if "review_comment_url" in attributes: # pragma no branch + self._review_comment_url = self._makeStringAttribute(attributes["review_comment_url"]) + if "review_comments" in attributes: # pragma no branch + self._review_comments = self._makeIntAttribute(attributes["review_comments"]) + if "review_comments_url" in attributes: # pragma no branch + self._review_comments_url = self._makeStringAttribute(attributes["review_comments_url"]) + if "state" in attributes: # pragma no branch + self._state = self._makeStringAttribute(attributes["state"]) + if "statuses_url" in attributes: # pragma no branch + self._statuses_url = self._makeStringAttribute(attributes["statuses_url"]) + if "title" in attributes: # pragma no branch + self._title = self._makeStringAttribute(attributes["title"]) + if "updated_at" in attributes: # pragma no branch + self._updated_at = self._makeDatetimeAttribute(attributes["updated_at"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) + if "user" in attributes: # pragma no branch + self._user = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["user"]) diff --git a/venv/lib/python3.10/site-packages/github/PullRequestComment.py b/venv/lib/python3.10/site-packages/github/PullRequestComment.py new file mode 100644 index 0000000000000000000000000000000000000000..4b90ec74311b89dcfdbd53d92c9810f65385f2e9 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/PullRequestComment.py @@ -0,0 +1,379 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Michael Stead # +# Copyright 2013 Vincent Jacques # +# Copyright 2013 martinqt # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2017 Nicolas Agustín Torres # +# Copyright 2018 Jess Morgan <979404+JessMorgan@users.noreply.github.com> # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 per1234 # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Huan-Cheng Chang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Mark Walker # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Den Stroebel # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from datetime import datetime +from typing import Any + +import github.GithubObject +import github.NamedUser +import github.Reaction +from github import Consts +from github.GithubObject import Attribute, CompletableGithubObject, NotSet +from github.PaginatedList import PaginatedList + + +class PullRequestComment(CompletableGithubObject): + """ + This class represents PullRequestComments. + + The reference can be found here + https://docs.github.com/en/rest/reference/pulls#review-comments + + The OpenAPI schema can be found at + - /components/schemas/pull-request-review-comment + + """ + + def _initAttributes(self) -> None: + self.__links: Attribute[dict[str, Any]] = NotSet + self._author_association: Attribute[str] = NotSet + self._body: Attribute[str] = NotSet + self._body_html: Attribute[str] = NotSet + self._body_text: Attribute[str] = NotSet + self._commit_id: Attribute[str] = NotSet + self._created_at: Attribute[datetime] = NotSet + self._diff_hunk: Attribute[str] = NotSet + self._html_url: Attribute[str] = NotSet + self._id: Attribute[int] = NotSet + self._in_reply_to_id: Attribute[int] = NotSet + self._line: Attribute[int] = NotSet + self._node_id: Attribute[str] = NotSet + self._original_commit_id: Attribute[str] = NotSet + self._original_line: Attribute[int] = NotSet + self._original_position: Attribute[int] = NotSet + self._original_start_line: Attribute[int] = NotSet + self._path: Attribute[str] = NotSet + self._position: Attribute[int] = NotSet + self._pull_request_review_id: Attribute[int] = NotSet + self._pull_request_url: Attribute[str] = NotSet + self._reactions: Attribute[dict[str, Any]] = NotSet + self._side: Attribute[str] = NotSet + self._start_line: Attribute[int] = NotSet + self._start_side: Attribute[str] = NotSet + self._subject_type: Attribute[str] = NotSet + self._updated_at: Attribute[datetime] = NotSet + self._url: Attribute[str] = NotSet + self._user: Attribute[github.NamedUser.NamedUser] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"id": self._id.value, "user": self._user.value}) + + @property + def _links(self) -> dict[str, Any]: + self._completeIfNotSet(self.__links) + return self.__links.value + + @property + def author_association(self) -> str: + self._completeIfNotSet(self._author_association) + return self._author_association.value + + @property + def body(self) -> str: + self._completeIfNotSet(self._body) + return self._body.value + + @property + def body_html(self) -> str: + self._completeIfNotSet(self._body_html) + return self._body_html.value + + @property + def body_text(self) -> str: + self._completeIfNotSet(self._body_text) + return self._body_text.value + + @property + def commit_id(self) -> str: + self._completeIfNotSet(self._commit_id) + return self._commit_id.value + + @property + def created_at(self) -> datetime: + self._completeIfNotSet(self._created_at) + return self._created_at.value + + @property + def diff_hunk(self) -> str: + self._completeIfNotSet(self._diff_hunk) + return self._diff_hunk.value + + @property + def html_url(self) -> str: + self._completeIfNotSet(self._html_url) + return self._html_url.value + + @property + def id(self) -> int: + self._completeIfNotSet(self._id) + return self._id.value + + @property + def in_reply_to_id(self) -> int: + self._completeIfNotSet(self._in_reply_to_id) + return self._in_reply_to_id.value + + @property + def line(self) -> int: + self._completeIfNotSet(self._line) + return self._line.value + + @property + def node_id(self) -> str: + self._completeIfNotSet(self._node_id) + return self._node_id.value + + @property + def original_commit_id(self) -> str: + self._completeIfNotSet(self._original_commit_id) + return self._original_commit_id.value + + @property + def original_line(self) -> int: + self._completeIfNotSet(self._original_line) + return self._original_line.value + + @property + def original_position(self) -> int: + self._completeIfNotSet(self._original_position) + return self._original_position.value + + @property + def original_start_line(self) -> int: + self._completeIfNotSet(self._original_start_line) + return self._original_start_line.value + + @property + def path(self) -> str: + self._completeIfNotSet(self._path) + return self._path.value + + @property + def position(self) -> int: + self._completeIfNotSet(self._position) + return self._position.value + + @property + def pull_request_review_id(self) -> int: + self._completeIfNotSet(self._pull_request_review_id) + return self._pull_request_review_id.value + + @property + def pull_request_url(self) -> str: + self._completeIfNotSet(self._pull_request_url) + return self._pull_request_url.value + + @property + def reactions(self) -> dict[str, Any]: + self._completeIfNotSet(self._reactions) + return self._reactions.value + + @property + def side(self) -> str: + self._completeIfNotSet(self._side) + return self._side.value + + @property + def start_line(self) -> int: + self._completeIfNotSet(self._start_line) + return self._start_line.value + + @property + def start_side(self) -> str: + self._completeIfNotSet(self._start_side) + return self._start_side.value + + @property + def subject_type(self) -> str: + self._completeIfNotSet(self._subject_type) + return self._subject_type.value + + @property + def updated_at(self) -> datetime: + self._completeIfNotSet(self._updated_at) + return self._updated_at.value + + @property + def url(self) -> str: + self._completeIfNotSet(self._url) + return self._url.value + + @property + def user(self) -> github.NamedUser.NamedUser: + self._completeIfNotSet(self._user) + return self._user.value + + def delete(self) -> None: + """ + :calls: `DELETE /repos/{owner}/{repo}/pulls/comments/{number} `_ + :rtype: None + """ + headers, data = self._requester.requestJsonAndCheck("DELETE", self.url) + + def edit(self, body: str) -> None: + """ + :calls: `PATCH /repos/{owner}/{repo}/pulls/comments/{number} `_ + :param body: string + :rtype: None + """ + assert isinstance(body, str), body + post_parameters = { + "body": body, + } + headers, data = self._requester.requestJsonAndCheck("PATCH", self.url, input=post_parameters) + self._useAttributes(data) + + def get_reactions(self) -> PaginatedList[github.Reaction.Reaction]: + """ + :calls: `GET /repos/{owner}/{repo}/pulls/comments/{number}/reactions + `_ + :return: :class: :class:`github.PaginatedList.PaginatedList` of :class:`github.Reaction.Reaction` + """ + return PaginatedList( + github.Reaction.Reaction, + self._requester, + f"{self.url}/reactions", + None, + headers={"Accept": Consts.mediaTypeReactionsPreview}, + ) + + def create_reaction(self, reaction_type: str) -> github.Reaction.Reaction: + """ + :calls: `POST /repos/{owner}/{repo}/pulls/comments/{number}/reactions + `_ + :param reaction_type: string + :rtype: :class:`github.Reaction.Reaction` + """ + assert isinstance(reaction_type, str), reaction_type + post_parameters = { + "content": reaction_type, + } + headers, data = self._requester.requestJsonAndCheck( + "POST", + f"{self.url}/reactions", + input=post_parameters, + headers={"Accept": Consts.mediaTypeReactionsPreview}, + ) + return github.Reaction.Reaction(self._requester, headers, data, completed=True) + + def delete_reaction(self, reaction_id: int) -> bool: + """ + :calls: `DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id} + `_ + :param reaction_id: integer + :rtype: bool + """ + assert isinstance(reaction_id, int), reaction_id + status, _, _ = self._requester.requestJson( + "DELETE", + f"{self.url}/reactions/{reaction_id}", + headers={"Accept": Consts.mediaTypeReactionsPreview}, + ) + return status == 204 + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "_links" in attributes: # pragma no branch + self.__links = self._makeDictAttribute(attributes["_links"]) + if "author_association" in attributes: # pragma no branch + self._author_association = self._makeStringAttribute(attributes["author_association"]) + if "body" in attributes: # pragma no branch + self._body = self._makeStringAttribute(attributes["body"]) + if "body_html" in attributes: # pragma no branch + self._body_html = self._makeStringAttribute(attributes["body_html"]) + if "body_text" in attributes: # pragma no branch + self._body_text = self._makeStringAttribute(attributes["body_text"]) + if "commit_id" in attributes: # pragma no branch + self._commit_id = self._makeStringAttribute(attributes["commit_id"]) + if "created_at" in attributes: # pragma no branch + self._created_at = self._makeDatetimeAttribute(attributes["created_at"]) + if "diff_hunk" in attributes: # pragma no branch + self._diff_hunk = self._makeStringAttribute(attributes["diff_hunk"]) + if "html_url" in attributes: # pragma no branch + self._html_url = self._makeStringAttribute(attributes["html_url"]) + if "id" in attributes: # pragma no branch + self._id = self._makeIntAttribute(attributes["id"]) + if "in_reply_to_id" in attributes: # pragma no branch + self._in_reply_to_id = self._makeIntAttribute(attributes["in_reply_to_id"]) + if "line" in attributes: # pragma no branch + self._line = self._makeIntAttribute(attributes["line"]) + if "node_id" in attributes: # pragma no branch + self._node_id = self._makeStringAttribute(attributes["node_id"]) + if "original_commit_id" in attributes: # pragma no branch + self._original_commit_id = self._makeStringAttribute(attributes["original_commit_id"]) + if "original_line" in attributes: # pragma no branch + self._original_line = self._makeIntAttribute(attributes["original_line"]) + if "original_position" in attributes: # pragma no branch + self._original_position = self._makeIntAttribute(attributes["original_position"]) + if "original_start_line" in attributes: # pragma no branch + self._original_start_line = self._makeIntAttribute(attributes["original_start_line"]) + if "path" in attributes: # pragma no branch + self._path = self._makeStringAttribute(attributes["path"]) + if "position" in attributes: # pragma no branch + self._position = self._makeIntAttribute(attributes["position"]) + if "pull_request_review_id" in attributes: # pragma no branch + self._pull_request_review_id = self._makeIntAttribute(attributes["pull_request_review_id"]) + if "pull_request_url" in attributes: # pragma no branch + self._pull_request_url = self._makeStringAttribute(attributes["pull_request_url"]) + if "reactions" in attributes: # pragma no branch + self._reactions = self._makeDictAttribute(attributes["reactions"]) + if "side" in attributes: # pragma no branch + self._side = self._makeStringAttribute(attributes["side"]) + if "start_line" in attributes: # pragma no branch + self._start_line = self._makeIntAttribute(attributes["start_line"]) + if "start_side" in attributes: # pragma no branch + self._start_side = self._makeStringAttribute(attributes["start_side"]) + if "subject_type" in attributes: # pragma no branch + self._subject_type = self._makeStringAttribute(attributes["subject_type"]) + if "updated_at" in attributes: # pragma no branch + self._updated_at = self._makeDatetimeAttribute(attributes["updated_at"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) + if "user" in attributes: # pragma no branch + self._user = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["user"]) diff --git a/venv/lib/python3.10/site-packages/github/PullRequestPart.py b/venv/lib/python3.10/site-packages/github/PullRequestPart.py new file mode 100644 index 0000000000000000000000000000000000000000..7cc64bbf181a5706980757c73240a79a242ce0b0 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/PullRequestPart.py @@ -0,0 +1,107 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from typing import TYPE_CHECKING, Any + +import github.NamedUser +import github.Repository +from github.GithubObject import Attribute, NonCompletableGithubObject, NotSet + +if TYPE_CHECKING: + from github.NamedUser import NamedUser + from github.Repository import Repository + + +class PullRequestPart(NonCompletableGithubObject): + """ + This class represents PullRequestParts. + + The OpenAPI schema can be found at + - /components/schemas/pull-request-minimal/properties/base + - /components/schemas/pull-request-minimal/properties/head + - /components/schemas/pull-request-simple/properties/base + - /components/schemas/pull-request-simple/properties/head + - /components/schemas/pull-request/properties/base + - /components/schemas/pull-request/properties/head + + """ + + def _initAttributes(self) -> None: + self._label: Attribute[str] = NotSet + self._ref: Attribute[str] = NotSet + self._repo: Attribute[Repository] = NotSet + self._sha: Attribute[str] = NotSet + self._user: Attribute[NamedUser] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"sha": self._sha.value}) + + @property + def label(self) -> str: + return self._label.value + + @property + def ref(self) -> str: + return self._ref.value + + @property + def repo(self) -> Repository: + return self._repo.value + + @property + def sha(self) -> str: + return self._sha.value + + @property + def user(self) -> NamedUser: + return self._user.value + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "label" in attributes: # pragma no branch + self._label = self._makeStringAttribute(attributes["label"]) + if "ref" in attributes: # pragma no branch + self._ref = self._makeStringAttribute(attributes["ref"]) + if "repo" in attributes: # pragma no branch + self._repo = self._makeClassAttribute(github.Repository.Repository, attributes["repo"]) + if "sha" in attributes: # pragma no branch + self._sha = self._makeStringAttribute(attributes["sha"]) + if "user" in attributes: # pragma no branch + self._user = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["user"]) diff --git a/venv/lib/python3.10/site-packages/github/PullRequestReview.py b/venv/lib/python3.10/site-packages/github/PullRequestReview.py new file mode 100644 index 0000000000000000000000000000000000000000..0bf5e56650023ccd7b24156693494cfd2d294d61 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/PullRequestReview.py @@ -0,0 +1,160 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2017 Aaron Levine # +# Copyright 2017 Mike Miller # +# Copyright 2018 Darragh Bailey # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Claire Johns <42869556+johnsc1@users.noreply.github.com> # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Gael Colas # +# Copyright 2023 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from __future__ import annotations + +from datetime import datetime +from typing import Any + +import github.GithubObject +import github.NamedUser +from github.GithubObject import Attribute, NonCompletableGithubObject, NotSet + + +class PullRequestReview(NonCompletableGithubObject): + """ + This class represents PullRequestReviews. + + The reference can be found here + https://docs.github.com/en/rest/reference/pulls#reviews + + """ + + def _initAttributes(self) -> None: + self._body: Attribute[str] = NotSet + self._commit_id: Attribute[str] = NotSet + self._html_url: Attribute[str] = NotSet + self._id: Attribute[int] = NotSet + self._pull_request_url: Attribute[str] = NotSet + self._state: Attribute[str] = NotSet + self._submitted_at: Attribute[datetime] = NotSet + self._user: Attribute[github.NamedUser.NamedUser] = NotSet + + def __repr__(self) -> str: + return self.get__repr__({"id": self._id.value, "user": self._user.value}) + + @property + def body(self) -> str: + return self._body.value + + @property + def commit_id(self) -> str: + return self._commit_id.value + + @property + def html_url(self) -> str: + return self._html_url.value + + @property + def id(self) -> int: + return self._id.value + + @property + def pull_request_url(self) -> str: + return self._pull_request_url.value + + @property + def state(self) -> str: + return self._state.value + + @property + def submitted_at(self) -> datetime: + return self._submitted_at.value + + @property + def user(self) -> github.NamedUser.NamedUser: + return self._user.value + + def dismiss(self, message: str) -> None: + """ + :calls: `PUT /repos/{owner}/{repo}/pulls/{number}/reviews/{review_id}/dismissals `_ + """ + post_parameters = {"message": message} + headers, data = self._requester.requestJsonAndCheck( + "PUT", + f"{self.pull_request_url}/reviews/{self.id}/dismissals", + input=post_parameters, + ) + self._useAttributes(data) + + def delete(self) -> None: + """ + :calls: `DELETE /repos/:owner/:repo/pulls/:number/reviews/:review_id `_ + """ + headers, data = self._requester.requestJsonAndCheck("DELETE", f"{self.pull_request_url}/reviews/{self.id}") + + def edit(self, body: str) -> None: + """ + :calls: `PUT /repos/{owner}/{repo}/pulls/{number}/reviews/{review_id} + `_ + """ + assert isinstance(body, str), body + post_parameters = { + "body": body, + } + headers, data = self._requester.requestJsonAndCheck( + "PUT", + f"{self.pull_request_url}/reviews/{self.id}", + input=post_parameters, + ) + self._useAttributes(data) + + def _useAttributes(self, attributes: dict[str, Any]) -> None: + if "body" in attributes: # pragma no branch + self._body = self._makeStringAttribute(attributes["body"]) + if "commit_id" in attributes: # pragma no branch + self._commit_id = self._makeStringAttribute(attributes["commit_id"]) + if "html_url" in attributes: # pragma no branch + self._html_url = self._makeStringAttribute(attributes["html_url"]) + if "id" in attributes: # pragma no branch + self._id = self._makeIntAttribute(attributes["id"]) + if "pull_request_url" in attributes: # pragma no branch + self._pull_request_url = self._makeStringAttribute(attributes["pull_request_url"]) + if "state" in attributes: # pragma no branch + self._state = self._makeStringAttribute(attributes["state"]) + if "submitted_at" in attributes: # pragma no branch + self._submitted_at = self._makeDatetimeAttribute(attributes["submitted_at"]) + if "user" in attributes: # pragma no branch + self._user = self._makeClassAttribute(github.NamedUser.NamedUser, attributes["user"]) diff --git a/venv/lib/python3.10/site-packages/github/Rate.py b/venv/lib/python3.10/site-packages/github/Rate.py new file mode 100644 index 0000000000000000000000000000000000000000..6f634350bfb734629e720ce34fbe8dcaacc232f5 --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/Rate.py @@ -0,0 +1,99 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Mark Walker # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Nikolay Yurin # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from datetime import datetime +from typing import Any, Dict + +from github.GithubObject import Attribute, NonCompletableGithubObject, NotSet + + +class Rate(NonCompletableGithubObject): + """ + This class represents Rates. + + The reference can be found here + https://docs.github.com/en/rest/reference/rate-limit + + The OpenAPI schema can be found at + - /components/schemas/rate-limit + + """ + + def _initAttributes(self) -> None: + self._limit: Attribute[int] = NotSet + self._remaining: Attribute[int] = NotSet + self._reset: Attribute[datetime] = NotSet + self._used: Attribute[int] = NotSet + + def __repr__(self) -> str: + return self.get__repr__( + { + "limit": self._limit.value, + "remaining": self._remaining.value, + "reset": self._reset.value, + } + ) + + @property + def limit(self) -> int: + return self._limit.value + + @property + def remaining(self) -> int: + return self._remaining.value + + @property + def reset(self) -> datetime: + return self._reset.value + + @property + def used(self) -> int: + return self._used.value + + def _useAttributes(self, attributes: Dict[str, Any]) -> None: + if "limit" in attributes: # pragma no branch + self._limit = self._makeIntAttribute(attributes["limit"]) + if "remaining" in attributes: # pragma no branch + self._remaining = self._makeIntAttribute(attributes["remaining"]) + if "reset" in attributes: # pragma no branch + self._reset = self._makeTimestampAttribute(attributes["reset"]) + if "used" in attributes: # pragma no branch + self._used = self._makeIntAttribute(attributes["used"]) diff --git a/venv/lib/python3.10/site-packages/github/Referrer.py b/venv/lib/python3.10/site-packages/github/Referrer.py new file mode 100644 index 0000000000000000000000000000000000000000..268c32f3bbf4fae35e4be9cd760bc7adc4712fbd --- /dev/null +++ b/venv/lib/python3.10/site-packages/github/Referrer.py @@ -0,0 +1,90 @@ +############################ Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# Copyright 2014 Vincent Jacques # +# Copyright 2016 Jannis Gebauer # +# Copyright 2016 Peter Buckley # +# Copyright 2018 Justin Kufro # +# Copyright 2018 Wan Liuyang # +# Copyright 2018 sfdye # +# Copyright 2019 Steve Kowalik # +# Copyright 2019 Wan Liuyang # +# Copyright 2020 Steve Kowalik # +# Copyright 2021 Steve Kowalik # +# Copyright 2023 Enrico Minack # +# Copyright 2023 Trim21 # +# Copyright 2024 Enrico Minack # +# Copyright 2024 Jirka Borovec <6035284+Borda@users.noreply.github.com> # +# Copyright 2025 Enrico Minack # +# # +# This file is part of PyGithub. # +# http://pygithub.readthedocs.io/ # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +################################################################################ + +from typing import Any, Dict + +from github.GithubObject import Attribute, NonCompletableGithubObject, NotSet + + +class Referrer(NonCompletableGithubObject): + """ + This class represents a popylar Referrer for a GitHub repository. + + The reference can be found here + https://docs.github.com/en/rest/reference/repos#traffic + + The OpenAPI schema can be found at + - /components/schemas/referrer-traffic + + """ + + def _initAttributes(self) -> None: + self._count: Attribute[int] = NotSet + self._referrer: Attribute[str] = NotSet + self._uniques: Attribute[int] = NotSet + + def __repr__(self) -> str: + return self.get__repr__( + { + "referrer": self._referrer.value, + "count": self._count.value, + "uniques": self._uniques.value, + } + ) + + @property + def count(self) -> int: + return self._count.value + + @property + def referrer(self) -> str: + return self._referrer.value + + @property + def uniques(self) -> int: + return self._uniques.value + + def _useAttributes(self, attributes: Dict[str, Any]) -> None: + if "count" in attributes: # pragma no branch + self._count = self._makeIntAttribute(attributes["count"]) + if "referrer" in attributes: # pragma no branch + self._referrer = self._makeStringAttribute(attributes["referrer"]) + if "uniques" in attributes: # pragma no branch + self._uniques = self._makeIntAttribute(attributes["uniques"]) diff --git a/venv/pyvenv.cfg b/venv/pyvenv.cfg new file mode 100644 index 0000000000000000000000000000000000000000..0537ffc00ba0979f914c62c057a72f4bf1f681c4 --- /dev/null +++ b/venv/pyvenv.cfg @@ -0,0 +1,3 @@ +home = /usr/bin +include-system-site-packages = false +version = 3.10.12 diff --git a/venv/share/man/man1/isympy.1 b/venv/share/man/man1/isympy.1 new file mode 100644 index 0000000000000000000000000000000000000000..0ff966158a28c5ad1a6cd954e454842b25fdd999 --- /dev/null +++ b/venv/share/man/man1/isympy.1 @@ -0,0 +1,188 @@ +'\" -*- coding: us-ascii -*- +.if \n(.g .ds T< \\FC +.if \n(.g .ds T> \\F[\n[.fam]] +.de URL +\\$2 \(la\\$1\(ra\\$3 +.. +.if \n(.g .mso www.tmac +.TH isympy 1 2007-10-8 "" "" +.SH NAME +isympy \- interactive shell for SymPy +.SH SYNOPSIS +'nh +.fi +.ad l +\fBisympy\fR \kx +.if (\nx>(\n(.l/2)) .nr x (\n(.l/5) +'in \n(.iu+\nxu +[\fB-c\fR | \fB--console\fR] [\fB-p\fR ENCODING | \fB--pretty\fR ENCODING] [\fB-t\fR TYPE | \fB--types\fR TYPE] [\fB-o\fR ORDER | \fB--order\fR ORDER] [\fB-q\fR | \fB--quiet\fR] [\fB-d\fR | \fB--doctest\fR] [\fB-C\fR | \fB--no-cache\fR] [\fB-a\fR | \fB--auto\fR] [\fB-D\fR | \fB--debug\fR] [ +-- | PYTHONOPTIONS] +'in \n(.iu-\nxu +.ad b +'hy +'nh +.fi +.ad l +\fBisympy\fR \kx +.if (\nx>(\n(.l/2)) .nr x (\n(.l/5) +'in \n(.iu+\nxu +[ +{\fB-h\fR | \fB--help\fR} +| +{\fB-v\fR | \fB--version\fR} +] +'in \n(.iu-\nxu +.ad b +'hy +.SH DESCRIPTION +isympy is a Python shell for SymPy. It is just a normal python shell +(ipython shell if you have the ipython package installed) that executes +the following commands so that you don't have to: +.PP +.nf +\*(T< +>>> from __future__ import division +>>> from sympy import * +>>> x, y, z = symbols("x,y,z") +>>> k, m, n = symbols("k,m,n", integer=True) + \*(T> +.fi +.PP +So starting isympy is equivalent to starting python (or ipython) and +executing the above commands by hand. It is intended for easy and quick +experimentation with SymPy. For more complicated programs, it is recommended +to write a script and import things explicitly (using the "from sympy +import sin, log, Symbol, ..." idiom). +.SH OPTIONS +.TP +\*(T<\fB\-c \fR\*(T>\fISHELL\fR, \*(T<\fB\-\-console=\fR\*(T>\fISHELL\fR +Use the specified shell (python or ipython) as +console backend instead of the default one (ipython +if present or python otherwise). + +Example: isympy -c python + +\fISHELL\fR could be either +\&'ipython' or 'python' +.TP +\*(T<\fB\-p \fR\*(T>\fIENCODING\fR, \*(T<\fB\-\-pretty=\fR\*(T>\fIENCODING\fR +Setup pretty printing in SymPy. By default, the most pretty, unicode +printing is enabled (if the terminal supports it). You can use less +pretty ASCII printing instead or no pretty printing at all. + +Example: isympy -p no + +\fIENCODING\fR must be one of 'unicode', +\&'ascii' or 'no'. +.TP +\*(T<\fB\-t \fR\*(T>\fITYPE\fR, \*(T<\fB\-\-types=\fR\*(T>\fITYPE\fR +Setup the ground types for the polys. By default, gmpy ground types +are used if gmpy2 or gmpy is installed, otherwise it falls back to python +ground types, which are a little bit slower. You can manually +choose python ground types even if gmpy is installed (e.g., for testing purposes). + +Note that sympy ground types are not supported, and should be used +only for experimental purposes. + +Note that the gmpy1 ground type is primarily intended for testing; it the +use of gmpy even if gmpy2 is available. + +This is the same as setting the environment variable +SYMPY_GROUND_TYPES to the given ground type (e.g., +SYMPY_GROUND_TYPES='gmpy') + +The ground types can be determined interactively from the variable +sympy.polys.domains.GROUND_TYPES inside the isympy shell itself. + +Example: isympy -t python + +\fITYPE\fR must be one of 'gmpy', +\&'gmpy1' or 'python'. +.TP +\*(T<\fB\-o \fR\*(T>\fIORDER\fR, \*(T<\fB\-\-order=\fR\*(T>\fIORDER\fR +Setup the ordering of terms for printing. The default is lex, which +orders terms lexicographically (e.g., x**2 + x + 1). You can choose +other orderings, such as rev-lex, which will use reverse +lexicographic ordering (e.g., 1 + x + x**2). + +Note that for very large expressions, ORDER='none' may speed up +printing considerably, with the tradeoff that the order of the terms +in the printed expression will have no canonical order + +Example: isympy -o rev-lax + +\fIORDER\fR must be one of 'lex', 'rev-lex', 'grlex', +\&'rev-grlex', 'grevlex', 'rev-grevlex', 'old', or 'none'. +.TP +\*(T<\fB\-q\fR\*(T>, \*(T<\fB\-\-quiet\fR\*(T> +Print only Python's and SymPy's versions to stdout at startup, and nothing else. +.TP +\*(T<\fB\-d\fR\*(T>, \*(T<\fB\-\-doctest\fR\*(T> +Use the same format that should be used for doctests. This is +equivalent to '\fIisympy -c python -p no\fR'. +.TP +\*(T<\fB\-C\fR\*(T>, \*(T<\fB\-\-no\-cache\fR\*(T> +Disable the caching mechanism. Disabling the cache may slow certain +operations down considerably. This is useful for testing the cache, +or for benchmarking, as the cache can result in deceptive benchmark timings. + +This is the same as setting the environment variable SYMPY_USE_CACHE +to 'no'. +.TP +\*(T<\fB\-a\fR\*(T>, \*(T<\fB\-\-auto\fR\*(T> +Automatically create missing symbols. Normally, typing a name of a +Symbol that has not been instantiated first would raise NameError, +but with this option enabled, any undefined name will be +automatically created as a Symbol. This only works in IPython 0.11. + +Note that this is intended only for interactive, calculator style +usage. In a script that uses SymPy, Symbols should be instantiated +at the top, so that it's clear what they are. + +This will not override any names that are already defined, which +includes the single character letters represented by the mnemonic +QCOSINE (see the "Gotchas and Pitfalls" document in the +documentation). You can delete existing names by executing "del +name" in the shell itself. You can see if a name is defined by typing +"'name' in globals()". + +The Symbols that are created using this have default assumptions. +If you want to place assumptions on symbols, you should create them +using symbols() or var(). + +Finally, this only works in the top level namespace. So, for +example, if you define a function in isympy with an undefined +Symbol, it will not work. +.TP +\*(T<\fB\-D\fR\*(T>, \*(T<\fB\-\-debug\fR\*(T> +Enable debugging output. This is the same as setting the +environment variable SYMPY_DEBUG to 'True'. The debug status is set +in the variable SYMPY_DEBUG within isympy. +.TP +-- \fIPYTHONOPTIONS\fR +These options will be passed on to \fIipython (1)\fR shell. +Only supported when ipython is being used (standard python shell not supported). + +Two dashes (--) are required to separate \fIPYTHONOPTIONS\fR +from the other isympy options. + +For example, to run iSymPy without startup banner and colors: + +isympy -q -c ipython -- --colors=NoColor +.TP +\*(T<\fB\-h\fR\*(T>, \*(T<\fB\-\-help\fR\*(T> +Print help output and exit. +.TP +\*(T<\fB\-v\fR\*(T>, \*(T<\fB\-\-version\fR\*(T> +Print isympy version information and exit. +.SH FILES +.TP +\*(T<\fI${HOME}/.sympy\-history\fR\*(T> +Saves the history of commands when using the python +shell as backend. +.SH BUGS +The upstreams BTS can be found at \(lahttps://github.com/sympy/sympy/issues\(ra +Please report all bugs that you find in there, this will help improve +the overall quality of SymPy. +.SH "SEE ALSO" +\fBipython\fR(1), \fBpython\fR(1) diff --git a/venv/share/man/man1/ttx.1 b/venv/share/man/man1/ttx.1 new file mode 100644 index 0000000000000000000000000000000000000000..bba23b5e51629509a499f4471fc8196e9863d211 --- /dev/null +++ b/venv/share/man/man1/ttx.1 @@ -0,0 +1,225 @@ +.Dd May 18, 2004 +.\" ttx is not specific to any OS, but contrary to what groff_mdoc(7) +.\" seems to imply, entirely omitting the .Os macro causes 'BSD' to +.\" be used, so I give a zero-width space as its argument. +.Os \& +.\" The "FontTools Manual" argument apparently has no effect in +.\" groff 1.18.1. I think it is a bug in the -mdoc groff package. +.Dt TTX 1 "FontTools Manual" +.Sh NAME +.Nm ttx +.Nd tool for manipulating TrueType and OpenType fonts +.Sh SYNOPSIS +.Nm +.Bk +.Op Ar option ... +.Ek +.Bk +.Ar file ... +.Ek +.Sh DESCRIPTION +.Nm +is a tool for manipulating TrueType and OpenType fonts. It can convert +TrueType and OpenType fonts to and from an +.Tn XML Ns -based format called +.Tn TTX . +.Tn TTX +files have a +.Ql .ttx +extension. +.Pp +For each +.Ar file +argument it is given, +.Nm +detects whether it is a +.Ql .ttf , +.Ql .otf +or +.Ql .ttx +file and acts accordingly: if it is a +.Ql .ttf +or +.Ql .otf +file, it generates a +.Ql .ttx +file; if it is a +.Ql .ttx +file, it generates a +.Ql .ttf +or +.Ql .otf +file. +.Pp +By default, every output file is created in the same directory as the +corresponding input file and with the same name except for the +extension, which is substituted appropriately. +.Nm +never overwrites existing files; if necessary, it appends a suffix to +the output file name before the extension, as in +.Pa Arial#1.ttf . +.Ss "General options" +.Bl -tag -width ".Fl t Ar table" +.It Fl h +Display usage information. +.It Fl d Ar dir +Write the output files to directory +.Ar dir +instead of writing every output file to the same directory as the +corresponding input file. +.It Fl o Ar file +Write the output to +.Ar file +instead of writing it to the same directory as the +corresponding input file. +.It Fl v +Be verbose. Write more messages to the standard output describing what +is being done. +.It Fl a +Allow virtual glyphs ID's on compile or decompile. +.El +.Ss "Dump options" +The following options control the process of dumping font files +(TrueType or OpenType) to +.Tn TTX +files. +.Bl -tag -width ".Fl t Ar table" +.It Fl l +List table information. Instead of dumping the font to a +.Tn TTX +file, display minimal information about each table. +.It Fl t Ar table +Dump table +.Ar table . +This option may be given multiple times to dump several tables at +once. When not specified, all tables are dumped. +.It Fl x Ar table +Exclude table +.Ar table +from the list of tables to dump. This option may be given multiple +times to exclude several tables from the dump. The +.Fl t +and +.Fl x +options are mutually exclusive. +.It Fl s +Split tables. Dump each table to a separate +.Tn TTX +file and write (under the name that would have been used for the output +file if the +.Fl s +option had not been given) one small +.Tn TTX +file containing references to the individual table dump files. This +file can be used as input to +.Nm +as long as the referenced files can be found in the same directory. +.It Fl i +.\" XXX: I suppose OpenType programs (exist and) are also affected. +Don't disassemble TrueType instructions. When this option is specified, +all TrueType programs (glyph programs, the font program and the +pre-program) are written to the +.Tn TTX +file as hexadecimal data instead of +assembly. This saves some time and results in smaller +.Tn TTX +files. +.It Fl y Ar n +When decompiling a TrueType Collection (TTC) file, +decompile font number +.Ar n , +starting from 0. +.El +.Ss "Compilation options" +The following options control the process of compiling +.Tn TTX +files into font files (TrueType or OpenType): +.Bl -tag -width ".Fl t Ar table" +.It Fl m Ar fontfile +Merge the input +.Tn TTX +file +.Ar file +with +.Ar fontfile . +No more than one +.Ar file +argument can be specified when this option is used. +.It Fl b +Don't recalculate glyph bounding boxes. Use the values in the +.Tn TTX +file as is. +.El +.Sh "THE TTX FILE FORMAT" +You can find some information about the +.Tn TTX +file format in +.Pa documentation.html . +In particular, you will find in that file the list of tables understood by +.Nm +and the relations between TrueType GlyphIDs and the glyph names used in +.Tn TTX +files. +.Sh EXAMPLES +In the following examples, all files are read from and written to the +current directory. Additionally, the name given for the output file +assumes in every case that it did not exist before +.Nm +was invoked. +.Pp +Dump the TrueType font contained in +.Pa FreeSans.ttf +to +.Pa FreeSans.ttx : +.Pp +.Dl ttx FreeSans.ttf +.Pp +Compile +.Pa MyFont.ttx +into a TrueType or OpenType font file: +.Pp +.Dl ttx MyFont.ttx +.Pp +List the tables in +.Pa FreeSans.ttf +along with some information: +.Pp +.Dl ttx -l FreeSans.ttf +.Pp +Dump the +.Sq cmap +table from +.Pa FreeSans.ttf +to +.Pa FreeSans.ttx : +.Pp +.Dl ttx -t cmap FreeSans.ttf +.Sh NOTES +On MS\-Windows and MacOS, +.Nm +is available as a graphical application to which files can be dropped. +.Sh SEE ALSO +.Pa documentation.html +.Pp +.Xr fontforge 1 , +.Xr ftinfo 1 , +.Xr gfontview 1 , +.Xr xmbdfed 1 , +.Xr Font::TTF 3pm +.Sh AUTHORS +.Nm +was written by +.An -nosplit +.An "Just van Rossum" Aq just@letterror.com . +.Pp +This manual page was written by +.An "Florent Rougon" Aq f.rougon@free.fr +for the Debian GNU/Linux system based on the existing FontTools +documentation. It may be freely used, modified and distributed without +restrictions. +.\" For Emacs: +.\" Local Variables: +.\" fill-column: 72 +.\" sentence-end: "[.?!][]\"')}]*\\($\\| $\\| \\| \\)[ \n]*" +.\" sentence-end-double-space: t +.\" End: \ No newline at end of file