diff --git a/README.md b/README.md index 146a509..0da34aa 100644 --- a/README.md +++ b/README.md @@ -7,16 +7,25 @@ A ComfyUI node designed to enable seamless multi-user workflow collaboration. -This node allows teams to work together both locally and remotely, making collaboration a breeze. - -Install and setup this node on a server PC. Get Url, share and use. No Need to install comfyui on other PCs. - ![Untitled design (2)](https://github.com/user-attachments/assets/ce10622d-e210-4e13-b226-fde501c2a94b) **Features Video**: Coming Soon +
+ +# Important Notes + + - ### **This node should be only installed/maintained on the machine that will act as Server.** + - ### **No need to install this node on other users.** + - ### **ComfyUI is also not needed by other users.** + - ### **Only URL is needed by other users to connect to server Locally/Remotely**. + +
+ ## Key Features +
+ - **Multiuser collaboration**: enable multiple users to work on the same workflow simultaneously. - **Local and Remote access**: use tools like ngrok or other tunneling software to facilitate remote collaboration. A local IP address on WiFi will also work 😎. - **Enhanced teamwork**: streamline your team's workflow management and collaboration process. @@ -25,7 +34,12 @@ Install and setup this node on a server PC. Get Url, share and use. No Need to i - **Admin permissions**: admins can control who can edit the workflow and who can queue prompts, ensuring the right level of access for each team member. - **Workflow backup**: in case of any mishap, you can reload an old backup. The node saves 5 workflows, each 60 seconds apart. -> Note: When Opening the Comfyui Workspace for the first time, It will be locked, Login as admin to enable editing. +
+ +>[!WARNING] +>When Opening the Comfyui Workspace for the first time, It will be locked, Login as admin to enable editing. + +
## Key Binds @@ -33,107 +47,121 @@ Install and setup this node on a server PC. Get Url, share and use. No Need to i - **Show/hide users panel**: press **`LAlt + p`** - **Show/hide backups panel**: press **`LAlt + o`** (for editors only) +
+ ## Chat Commands - `/nick `: changes your nickname - `/login account password`: this command is used to become admin. - `/logout`: logout the admin. -# Installation +
-- This Node should be only installed/maintained on the Server Hosting PC. -- **No need** to install this node on Client Side Users. -- Comfy UI is also **NOT NEEDED** to run this on Client Side Users. -- Only URL will be shared which will connect with the server to run/view comfy. +# Node Installation -### Installing Using `comfy-cli` -- `comfy node registry-install ComfyUI-Nexus` -- [Node Registry](https://registry.comfy.org/publishers/daxcay/nodes/comfyui-nexus) + - ### Installing Using `comfy-cli` + - `comfy node registry-install ComfyUI-Nexus` + - https://registry.comfy.org/publishers/daxcay/nodes/comfyui-nexus + + - ### Manual Method + - Go to your ComfyUI > Custom Nodes folder path > Run CMD + - Copy and paste this command: `git clone https://github.com/daxcay/ComfyUI-Nexus.git` + + - ### Automatic Method with [Comfy Manager](https://github.com/ltdrdata/ComfyUI-Manager) + - Inside ComfyUI > Click the Manager Button on the side. + - Click `Custom Nodes Manager` and search for `Nexus`, then install this node. + +
+ + >[!IMPORTANT] + > #### **Restart ComfyUI before proceeding to next step** -### Manual Method +## Server Setup -- Go to your ComfyUI > Custom Nodes folder path > Run CMD -- Copy and paste this command: `git clone https://github.com/daxcay/ComfyUI-Nexus.git` -- Then go inside `ComfyUI-Nexus` with CMD or open a new one. -- Type `pip install -r requirements.txt` to install the dependencies. - -### Automatic Method with [Comfy Manager](https://github.com/ltdrdata/ComfyUI-Manager) - -- Inside ComfyUI > Click the Manager Button on the side. -- Click `Custom Nodes Manager` and search for `Nexus`, then install this node. - -**Restart ComfyUI before proceeding to next step** - -### Setting Admin and Password - -- Open the file `comfyui`> `nexus`>`admins.json` in notepad. - - ![image](https://github.com/user-attachments/assets/9632115f-12dc-4530-9d5b-b51988898c9d) - - ![admins.json example](https://github.com/user-attachments/assets/0159397d-bf1e-436e-a822-b02ca4dec3b1) - -- Write any and , but make sure not to use spaces. -- **DO NOT SHARE ACCOUNT AND PASSWORD IN PUBLIC** - - ![admins.json example 2](https://github.com/user-attachments/assets/7ef767b0-ffa0-4bde-8e87-8ab3fc2ba535) - -### Save this file and Restart ComfyUI to complete setup. - -# Getting Shareable URL - -- Use Ngrok or any other tunneling software supporting http/https to Host a Globally. -- Also you can host locally over WiFi/Lan. - -### Getting Comfy URL Port - -Open Comfyui in your browser: - -![image](https://github.com/user-attachments/assets/b430d5b7-dcb9-4a7f-948f-d257147b597a) - -In your url tab, Last digits after Colon is your port. - -Example: - -![image](https://github.com/user-attachments/assets/82ff2d9e-9eb6-4846-97c6-e3e321101fef) - -The port for the above URL will be **8188** - -## Method 1) To setup global remote access to server - -### Ngrok Setup: - -- Go to this https://dashboard.ngrok.com/signup?ref=home-hero to sign up. -- After signing up and logging in, go to this https://dashboard.ngrok.com/get-started/setup/windows to set up ngrok. -- After installing and setting up ngrok, -- Run CMD and enter this command: `ngrok http ` - - ![Ngrok Output Example](https://github.com/user-attachments/assets/66f9b4a4-1d63-4756-8d57-64420fdc151a) - ![image](https://github.com/user-attachments/assets/e3ca3d23-a388-4879-8b45-23591a05833c) - - -- "Forwarding" is the Remote Url, Share this url with your peers. - -## Method 2) To setup local access to server - -### Using Your Local IP Address to Host Server - -- Open a cmd and write `ipconfig`. - - ![image](https://github.com/user-attachments/assets/56c4c17d-b1dc-40e1-acbc-1e62e8e15b70) - -- Now copy this address. For example, if it's `http://192.168.1.45:`, the final URL will be: `http://192.168.1.45:5000` - -> Ngrok and WiFi address will change if you restart the machine. -> Follow above steps again to get the new URL. + ### Admin Account Setup + + - Open the file `ComfyUI\nexus\admins.json` in notepad. + + ![image](https://github.com/user-attachments/assets/2c0f3e6b-8bea-4378-8390-1bb377514e0c) + + - **"epic"** is the account name and **"comfynexus"** is password + - Replace account and password with your own liking, but make sure not to use spaces. + +
+ + >[!IMPORTANT] + >Don't leave the password as "comfynexus" as anyone can login. + + >[!NOTE] + >**DO NOT SHARE ACCOUNT AND PASSWORD IN PUBLIC** + + >[!IMPORTANT] + > #### Save file and **Restart ComfyUI before proceeding to next step** + +
+ + # Getting Shareable URL + + - One can use Ngrok or any other tunneling software supporting http/https to Host a Globally. + - Also you can host locally over WiFi/Lan. + + ### Getting Comfy URL Port + + Open Comfyui in your browser: + + ![image](https://github.com/user-attachments/assets/b430d5b7-dcb9-4a7f-948f-d257147b597a) + + In your url tab, Last digits after Colon is your port. + + Example: + + ![image](https://github.com/user-attachments/assets/82ff2d9e-9eb6-4846-97c6-e3e321101fef) + + The port for the above URL will be **8188** + + ## Hosting Setup + + ### Ngrok: + + - Go to this https://dashboard.ngrok.com/signup?ref=home-hero to sign up. + - After signing up and logging in, go to this https://dashboard.ngrok.com/get-started/setup/windows to set up ngrok. + - After installing and setting up ngrok, + - Run CMD and enter this command: `ngrok http ` + + ![Ngrok Output Example](https://github.com/user-attachments/assets/66f9b4a4-1d63-4756-8d57-64420fdc151a) + ![image](https://github.com/user-attachments/assets/e3ca3d23-a388-4879-8b45-23591a05833c) + + - "Forwarding" is the Remote Url, Share this url with your peers. + +
+ + ### Local + + - Open a cmd and write `ipconfig`. + + ![image](https://github.com/user-attachments/assets/56c4c17d-b1dc-40e1-acbc-1e62e8e15b70) + + - Now copy this address. For example, if it's `http://192.168.1.45:`, the final URL will be: `http://192.168.1.45:5000` + +
+ + >[!NOTE] + > **Ngrok and WiFi address will change if you restart the machine. Follow above steps again to get the new URL.** + +
## Permissions in ComfyUI-Nexus -- **viewer**: default permission given to a person joining. -- **editor**: person having permission to edit the workflow. -- **queue prompt**: person having permission to queue the workflow. +- **viewer**: default permission given to a person joining the server. +- **editor**: person having editor permission cad edit the workflow. +- **queue prompt**: person having queue permission can queue the workflow. +
+>[!NOTE] > Admin has all permissions by default. +
+ ## Real-Time Chat Window When you join ComfyUI for the first time, you will see this chat window in the top left corner: @@ -147,9 +175,11 @@ To chat, press `t`, then write the message and press 'Enter'. ### Chat Commands - `/nick `: changes your nickname -- `/login `: this command is used to become admin. +- `/login `: this command is used to become admin. ( account name and password saved in `admins.json` above ) - `/logout`: logout the admin. +
+ ## User Panel To show/hide the user panel, press `LAlt + p`. @@ -178,6 +208,8 @@ Admins can perform the following actions on a joined user: - **queue**: give/revoke queue permission to/from that user. Anyone with this permission can queue the workflow. - **mouse**: show/hide the mouse of other players. +
+ ## Backup Panel (For Admins and Editors Only) To show/hide the backup panel, press `LAlt + o`. @@ -190,12 +222,15 @@ To show/hide the backup panel, press `LAlt + o`. > Backups are saved 60 seconds apart. To load a workflow dragged by an admin, the admin will have to wait 60 seconds to let the server make a backup, then load it for all users. +
+ ## Future Updates - Based on feedback, I will add/update features. - Multi-room collaboration. - Users can set their own color for names and mouse cursors. - + +
### Daxton Caylor - ComfyUI Node Developer