This is an image/video/workflow browser and manager for ComfyUI. You can sync your workflows to a remote Git repository and use them everywhere.
Welcome to submit your workflow source by submitting an issue. Let's build the workflows together.
comfyui_browser_231215_subtitle.mov
- Browse and manage your images/videos/workflows in the output folder.
- Add your workflows to the 'Saves' so that you can switch and manage them more easily.
- Sync your 'Saves' anywhere by Git.
- Subscribe workflow sources by Git and load them more easily.
- Search your workflow by keywords.
- Some useful custom nodes like xyz_plot, inputs_select.
- Select any inputs of the current graph.
![image](https://private-user-images.githubusercontent.com/828837/297422185-8e505f62-f709-426a-8a0a-fca291784b08.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjI2ODExMDMsIm5iZiI6MTcyMjY4MDgwMywicGF0aCI6Ii84Mjg4MzcvMjk3NDIyMTg1LThlNTA1ZjYyLWY3MDktNDI2YS04YTBhLWZjYTI5MTc4NGIwOC5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwODAzJTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDgwM1QxMDI2NDNaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT0wMjI4ZWY4MjM4YTZhMDgwODZlNTU4OGRhMDE3ZGI2NWFjZmFmNDYzODZhODFlNTVmNGZjYWQzMzM0YmM3ZjA0JlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.oUYiubHPf0vPSQ2AH_06hzhl6qMbT3oPdon7YPHZ7BE)
- Simple XYZ Plot by selecting inputs and filling in the values.
![image](https://private-user-images.githubusercontent.com/828837/297422372-23ce6a4d-3311-4058-9b46-ddb50d07e22a.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjI2ODExMDMsIm5iZiI6MTcyMjY4MDgwMywicGF0aCI6Ii84Mjg4MzcvMjk3NDIyMzcyLTIzY2U2YTRkLTMzMTEtNDA1OC05YjQ2LWRkYjUwZDA3ZTIyYS5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwODAzJTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDgwM1QxMDI2NDNaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT1mOTk1YjdlNjBiZmIzOTAyNjdiNjNkMzk2NDRiOTgwNGYxNmVlZjRmMDhlMzUwZWZlOWEyMWQzZjc5ZWRmYmJkJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.sb5XdOlNdQjN0wKF9BsLKIl9_NHrtT_vhuYyTstzB8M)
![image](https://private-user-images.githubusercontent.com/828837/316298835-d46461ac-3fb3-4037-b1be-048a7ae5e89a.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjI2ODExMDMsIm5iZiI6MTcyMjY4MDgwMywicGF0aCI6Ii84Mjg4MzcvMzE2Mjk4ODM1LWQ0NjQ2MWFjLTNmYjMtNDAzNy1iMWJlLTA0OGE3YWU1ZTg5YS5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwODAzJTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDgwM1QxMDI2NDNaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT1iMjQxMTI2ODlmNjg3NTU5NDVmNTE0YTI2ZTQ3ZGIyMDg4NDBjZjFhN2M3Y2I2YmU3ZjQ0YTM0ZWRhMmNlZTlkJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.D2K_8LYCTiEuYFGx4u-xpiPSejTii8rr9TbO37jVcDM)
![Outputs](https://private-user-images.githubusercontent.com/1184998/294696150-49936e2f-9682-4df8-af8e-6e1653e78ca1.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjI2ODExMDMsIm5iZiI6MTcyMjY4MDgwMywicGF0aCI6Ii8xMTg0OTk4LzI5NDY5NjE1MC00OTkzNmUyZi05NjgyLTRkZjgtYWY4ZS02ZTE2NTNlNzhjYTEucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MDgwMyUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDA4MDNUMTAyNjQzWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9MTUzNDZhNWZjMDQwMTU5ZDA5MGVlMWY4MDc4ZmQxYTIxNWZhZmE5MTY5OWE2OWQ2YmU3YmI2MjU3MjIyNzY3MiZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.dY6aIoMqIu64XuIZuKO66KJWwcHZA1M_ZiV_XW5pZVs)
![Saves](https://private-user-images.githubusercontent.com/1184998/294696180-de3327e3-643e-4ae4-9e31-86df6a0353e0.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjI2ODExMDMsIm5iZiI6MTcyMjY4MDgwMywicGF0aCI6Ii8xMTg0OTk4LzI5NDY5NjE4MC1kZTMzMjdlMy02NDNlLTRhZTQtOWUzMS04NmRmNmEwMzUzZTAucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MDgwMyUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDA4MDNUMTAyNjQzWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9ZGY5OTY4OGRjNGM3OTYzNTgwNWIyZTVlNWQ4OGUyYzc3ZDM2YTBhM2FmZjQ0YWUxMzVlMmNlZDlhMzAyZGRmYyZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.CadBEgHy5aT5v7kxOQ2jf6QxNMrBrDDrLBn0lVsZXw8)
![Sources](https://private-user-images.githubusercontent.com/1184998/294696282-07671822-c4d1-4327-bd87-6b1c7e85a354.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjI2ODExMDMsIm5iZiI6MTcyMjY4MDgwMywicGF0aCI6Ii8xMTg0OTk4LzI5NDY5NjI4Mi0wNzY3MTgyMi1jNGQxLTQzMjctYmQ4Ny02YjFjN2U4NWEzNTQucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MDgwMyUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDA4MDNUMTAyNjQzWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9OTk5YzQxNWZkMTZhYmM2NjZlNDhjOGNjNDdiY2U3YzdhMDQ3MGJlNTJmYTY1OWMzZTk5NGNlNTVhNWMxOTk4ZSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.bDeKBwnmBUea-tRbSugqiMDsCjwwil4WdQdAD6Bf_gs)
![Recommended Sources](https://private-user-images.githubusercontent.com/1184998/294696185-f37852b9-1030-4044-abf3-12bd8158c446.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjI2ODExMDMsIm5iZiI6MTcyMjY4MDgwMywicGF0aCI6Ii8xMTg0OTk4LzI5NDY5NjE4NS1mMzc4NTJiOS0xMDMwLTQwNDQtYWJmMy0xMmJkODE1OGM0NDYucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MDgwMyUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDA4MDNUMTAyNjQzWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9Y2U1N2QwZmM0ZTQ5ODVhYWQ4YmU0ZDBiMmMwNjlhZmViYjMzN2M4NDc1ZTk4ZDcxOWIxNGViYTBhMTVmZTc5MCZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.QqgPySBRkKgkgZ5hpEyPQKJ3SedNIY9WmeD8BIrxS4M)
![Models](https://private-user-images.githubusercontent.com/1184998/294696293-4f36378e-05e0-49dc-a5b2-07d24a8b96bc.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjI2ODExMDMsIm5iZiI6MTcyMjY4MDgwMywicGF0aCI6Ii8xMTg0OTk4LzI5NDY5NjI5My00ZjM2Mzc4ZS0wNWUwLTQ5ZGMtYTViMi0wN2QyNGE4Yjk2YmMucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MDgwMyUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDA4MDNUMTAyNjQzWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9ZmY5MTQ1OGIyNjE0NDI5OGY1OGE3M2UwMzYyNzNjM2FhNDY1Njg5YmQzZjY1NmQyMWNiOTIwMzYwYjNjNjU2YSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.Ikc1gaCtiEbYsNjbTjPD0MMt0RPiElzBe6rSkulRm6o)
![SideBar](https://private-user-images.githubusercontent.com/1184998/294696191-746a031e-88b0-4ccf-8e2d-e448c001f319.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjI2ODExMDMsIm5iZiI6MTcyMjY4MDgwMywicGF0aCI6Ii8xMTg0OTk4LzI5NDY5NjE5MS03NDZhMDMxZS04OGIwLTRjY2YtOGUyZC1lNDQ4YzAwMWYzMTkucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MDgwMyUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDA4MDNUMTAyNjQzWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9MGYwNzYxN2FlOTc3YmQ0YTgyNzQ1NzkyZTNiNzkyOWFjNjEwYjQwZDRjOGFjMzg2YmVmY2I5NDc4NmE4MWE0NyZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.U6HtAOaXePtY8Gj89ZzZsfGDhjbuEas1wb4Sp82nGsE)
Install ComfyUI Manager, search comfyui-browser
in Install Custom Node and install it.
In your comfyui-browser
directory, you can add a config.json
to override
the directories that comfyui-browser
uses. Ex:
{
"collections": "/var/lib/comfyui/comfyui-browser-collections",
"download_logs": "/var/lib/comfyui/comfyui-browser-download-logs",
"outputs": "/var/lib/comfyui/outputs",
"sources": "/var/lib/comfyui/comfyui-browser-sources"
}
The default configuration values are:
{
"collections": "[comfyui-browser]/collections",
"download_logs": "[comfyui-browser]/download-logs",
"outputs": "[comfyui]/outputs",
"sources": "[comfyui-browser]/sources"
}
Where [comfyui-browser]
is the automatically determined path of your
comfyui-browser
installation, and [comfyui]
is the automatically determined
path of your comfyui
server. Notably, the outputs
directory defaults to the
--output-directory
argument to comfyui
itself, or the default path that
comfyui
wishes to use for the --output-directory
argument.
Clone this repo into the custom_nodes
folder and restart the ComfyUI.
cd custom_nodes && git clone https://github.com/tzwm/comfyui-browser.git
- Your 'Saves' are stored in the
collections
configuration value. See Configuring for its default, and how to set the path to something different. - Press 'B' to toggle the Browser dialog in the ComfyUI.
-
Prerequisite
- Install Node
-
Framework
-
Project Structure
├── __init__.py (Backend Server)
├── web (Frontend code loaded by ComfyUI)
├── build (Built in Svelte)
└── index.js (Frontend that interact with ComfyUI)
├── svelte (Frontend in the Modal as a iframe, written in Svelte)
-
Build and Run
- Copy or link
comfyui-browser
toComfyUI/custom_nodes/
- Start backend by
cd ComfyUI && python main.py --enable-cors-header
- Start frontend by
cd ComfyUI/custom_nodes/comfyui-browser/svelte && npm i && npm run dev
- Open and debug by
http://localhost:5173/?comfyUrl=http://localhost:8188
- It will use
localhost:8188
as ComfyUI server localhost:5173
is a Vite dev server
- It will use
- Copy or link
-
Notes
- Please try to test on Windows, because I only have Linux/macOS
- Sync collections to remote git repository
- Add external git repository to local collections
- Search workflow by node name and model name
To see ChangeLog.