Giter VIP home page Giter VIP logo

awamwang / comfyui-workspace-manager Goto Github PK

View Code? Open in Web Editor NEW

This project forked from 11cafe/comfyui-workspace-manager

0.0 0.0 0.0 14.9 MB

A ComfyUI workflows and models management extension to organize and manage all your workflows, models in one place. Seamlessly switch between workflows, as well as import, export workflows, reuse subworkflows, install models, browse your models in a single workspace

License: GNU General Public License v3.0

JavaScript 0.36% Python 11.54% TypeScript 87.70% CSS 0.30% HTML 0.11%

comfyui-workspace-manager's Introduction

☕️ ComfyUI Workspace Manager - Comfyspace

A ComfyUI workflow management extension to organize and manage all your workflows, models and generated images in one place. Seamlessly switch between workflows, track version history and image generation history, 1 click install models from Civit ai, browse/update your installed models

If you have questions or suggestions, please join our Discord!

Join Discord

Installation

[Option 1] via ComfyUI Manager (Preferred)

Simply search for “ComfyUI Workspace Manager”, install, and restart ComfyUI.

[Option 2] via git

Like any other custom node installation, in your ComfyUI root folder

cd custom_nodes && git clone https://github.com/11cafe/comfyui-workspace-manager.git

and restart your ComfyUI.

It is recommended to do git clone than downloading zip folder, because you can get latest updates by git pull!

Features

  • 🔁Effortlessly switch between different workflows in your workspace. 1click open workflow in new browser tab.
  • [new!] Model manager: 1click install models from civitai to models/ subfolder of the matching model type, browse all your installed models and drag and drop to insert "load model_type" node into workflow, automatic detect and install missing models for workflow from civit ai and hugging face
  • 🗂️Organize workflows with folders, 🏷️tags
  • 🤏Drag and drop to insert subworkflows into current flow.
  • 📂Saves all your workflows in a single folder (by default under /ComfyUI/my_workflows), customize this location in Settings
  • 🖼️Gallery and thumbnail: Every image/video you generate will be saved in the gallery of the current workflow. You can set any image in the gallery as the cover photo of the workflow
  • 🕛Version control of workflow, never lose any changes (Everytime you press save, it will log a new version in history. you can easily revert back to any versions like git)
  • Bulk import/export workflows into your workspace or select all to download into .zip
  • 📑Quickly duplicate flow in right-click menu
  • cloud sync & backup workspace so you will never lose your data (Upcoming!)
  • One-click share workflow (Upcoming!)

Recommend using Chrome browser for the best experience. Safari doesn't work well. Edge or firefox should be fine too.

中文版教程       Roadmap

v1.7 ✨New ComfyUI model manager, view all your models, browse and install models from civit ai, find missing models in workflow automatically in civit ai and hugging face!

open workflow in new tab, 1click model install from civitai, automatic install missing models for workflow, view image gen metadata in gallery (prompt, sampler, models used).

Screenshot 2024-02-02 at 5 51 31 PM Screenshot 2024-02-02 at 5 51 13 PM Screenshot 2024-01-23 at 12 27 34 AM Screenshot 2024-01-23 at 12 26 56 AM

V1.5

Manually save your workflow by pressing the 💾 button, or ⌨Shift+S shortcut (customize this shortcut in Settings). Every time you save, it will create a new record in Version History. You can go back and switch versions in version history like git. Every image/video you generate will be saved in the gallery of the current workflow. You can set any image in the gallery as the cover photo of the workflow.

sidebar gallery

switch between flows:

🤏drag and drop to insert sub-workflow:

Bulk import flows:

Screenshot 2024-01-02 at 10 22 45 PM

add tags to flow:

Screenshot 2023-12-13 at 1 54 04 AM

Workflow operations: Manual Save, Download, Discard unsaved changes:

Screenshot 2023-12-29 at 9 59 57 PM

duplicate flow by right click menu option:

Screenshot 2023-12-29 at 9 58 26 PM

Where are my workflow and workspace data stored?

🍺 All your workflows are saved in a folder in /ComfyUI/my_workflows, you can change this path in settings.

⚠️Note: this is a ONE-WAY sync folder by default, that will only reflect changes made from your ComfyUI workspace browser; If you add some files manually using your OS file system (e.g. Finder in MacOS, File Explorer in Windows), workspace manager will not be able to pickup those changes. You need to use the "Import" button in files side bar to add new files to workspace manager.

Screenshot 2024-01-02 at 10 22 45 PM

All your data is primarily stored in your browser cache (IndexDB) and backedup in your disk under /ComfyUI/custom_nodes/comfyui-workspace-manager/db/. Press F12 or Inspect in right click browser menu, go to Application -> IndexedDB -> comfyui_workspace_db to see your data (workflows, version history, gallery, etc.)

Screenshot 2024-02-11 at 9 03 53 AM

How do I save my workflow?

Save your workflow by either clicking the 💾 floppy disk icon button or ⌨Shift+S shortcut (customize this shortcut in Settings) Every time you save, it will create a new record in Version History. You can go back and switch versions in version history like git.

Screenshot 2024-01-23 at 12 22 22 AM Screenshot 2024-01-23 at 12 23 21 AM

By default, We also enabled auto-saving your current workflow as a cache in case you forgot to save it manually. It will NOT affect or change your manually saved versions. You can always click "Discard unsaved changes" to instantly revert back to your last manually saved version.

‼️You can disable this auto-saving behabior in Settings:

Screenshot 2024-01-23 at 12 37 37 AM Screenshot 2024-01-22 at 2 33 00 PM

Looking for colaborators and coworkers to develop this ComfyUI project management tool. If you know React, Python or ML model deployment, please reach out to [email protected] We want to make it easy to manage, share and deploy ComfyUI project.

Upcoming Features

  1. 1-Click Install Models Often when you import a json workflow from online, it will show lots of missing nodes or models errors, we will provide easy one-click install for missing models from Hugging face and Civiti

  2. Modular Modern software development project are all modularized, the whole system is broken down into different modules. In ComfyUI each custom node is a module and should be self contained and easy to install and depend on from other modules. So that the modules (custom nodes) can be easily reused across projects. ➡️ We need something like web bundler, e.g. webpack, vite. This will make each custom node self contained and has a clear definition of its dependency.

  3. Multi workflow project Now you can only work on one workflow at a time, this limits the potential to build large scale workflows that consists multiple sub-workflows parts. Each workflow can be seen as a custom node. You should be able to easily convert one workflow into one custom node. You can reuse workflow/custom node across your project. ➡️ We need a cross workflow, project management tool, like VSCode editor

  4. Cloud running / easy deployment Right now you need to have python and GPU server up to run ComfyUI or Automatic111, that’s really painful for people who do not own a GPU. You should be able to run UI independently without paying for GPU💰. ➡️ Share and deploy your workflow to cloud in 1click and other people can easily run in browser using cloud GPU with no setup. It should be as easy as running Google Docs or Figma.

Beta Preview

We're constantly pushing new features in beta branch, and only wait til it's thoroghly tested then push it to main. But if you would like to join our Beta Preview Program, you can receive latest feature updates pre-launch! Here is how to switch to beta, it requires you have some basic knowledge about command line and git.

  • Make sure you have git installed
  • Open your terminal, go to the ComfyUI directory (where you usually start your python server by python main.py
  • in ComfyUI root directory, cd custom_nodes && cd comfyui-workspace-manager
  • inside custom_nodes/comfyui-workspace-manager, do git fetch origin beta && git checkout beta, you should see something like:
From https://github.com/11cafe/comfyui-workspace-manager
 * branch            beta       -> FETCH_HEAD
Switched to branch 'beta'
Your branch is up to date with 'origin/beta'.
  • now go back to ComfyUI restart your python server by python main.py

‼️ Be careful that beta branch can be unstable, so please please make sure you have backups for all your workflows! Before switching to beta, please make a copy of these folders somewhere:

ComfyUI/custom_nodes/comfyui-workspace-manager/db or for extra safety, you can make a copy of the entire ComfyUI/custom_nodes/comfyui-workspace-manager/ folder

if anything goes wrong, you can always paste back these folders. Also, you should have your /my_workflows folder (workspace save directory) in safe place always

If anything goes wrong, and you want to revert back to main, please do the following:

  • inside custom_nodes/comfyui-workspace-manager, do git checkout main, then restart your python server and you are back into main branch!

Credits

ComfyUI: https://github.com/comfyanonymous/ComfyUI

ComfyUI Browser: https://github.com/talesofai/comfyui-browser (Media display code for reference) And thanks to all custom node creators building the community!

Dev

  1. Clone ComfyUI git clone https://github.com/comfyanonymous/ComfyUI follow the install and setup instructions of ComfyUI README
  2. Clone Workspace Manager in /ComfyUI folder
cd custom_nodes && git clone https://github.com/11cafe/comfyui-workspace-manager.git
  1. npm install inside /ComfyUI/custom_nodes/comfyui-workspace-manager do cd ui && npm install this will install all node dependencies
  2. build and run inside /ComfyUI/custom_nodes/comfyui-workspace-manager/ui npm run build --watch this command will watch for your file changes and automatically rebuild, you just need to refresh to see your changes in browser everyting you change some code
  3. run ComfyUI server inside /ComfyUI do python main.py or python3 main.py depending on your version

IndexDB trouble shooting

If you see indexdb version mismatch error in console that looks like:

VersionError: The requested version (10) is less than the existing version (30)."
name
:
"DatabaseClosedError"

please delete indexdb manually F12 Dev tools -> Application -> IndexDB -> WorkspaceManagerDB Screenshot 2024-01-21 at 11 21 55 PM

and delete localstorage.WORKSPACE_INDEXDB_BACKFILL Screenshot 2024-01-21 at 11 29 02 PM

only do this if you are a developer

comfyui-workspace-manager's People

Contributors

weixuanf avatar aller05 avatar arslan2012 avatar sen46sko avatar ss707494 avatar astrayv avatar marcusjt avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.