Giter Club home page Giter Club logo

comfyui_tinyterranodes's Introduction

tinyterraNodes

A selection of custom nodes for ComfyUI.

tinyterra_pipeSDXL tinyterra_trueHRFix tinyterra_trueHRFix

Installation

Navigate to the ComfyUI/custom_nodes directory with cmd, and run:

git clone https://github.com/TinyTerra/ComfyUI_tinyterraNodes.git

Special Features

Fullscreen Image Viewer

Enabled by default

  • Adds 'Fullscreen (ttN)' to the node right-click context menu Opens a Fullscreen image viewer - containing all images generated by the selected node during the current comfy session.
  • Adds 'Set Default Fullscreen Node (ttN)' to the node right-click context menu Sets the currently selected node as the default Fullscreen node
  • Adds 'Clear Default Fullscreen Node (ttN)' to the node right-click context menu Clears the assigned default Fullscreen node
  • Slideshow Mode

    • Toggled On - Automatically jumps to New images as they are generated (Black Background)
    • Toggled Off - Holds to the current user selected image (Light Background)
  • Fullscreen Overlay

    • Toggles display of a navigable preview of all the selected nodes images
    • Toggles display of the default comfy menu
  • Shortcuts

    • 'shift + up arrow' => Open ttN-Fullscreen using selected node OR default fullscreen node
  • Shortcuts in Fullscreen

    • 'up arrow' => Toggle Fullscreen Overlay

    • 'down arrow' => Toggle Slideshow Mode

    • 'left arrow' => Select Image to the left

    • 'shift + left arrow' => Select Image 5 to the left

    • 'ctrl + left arrow' => Select the first Image

    • 'Right arrow' => Select Image to the right

    • 'shift + right arrow' => Select Image 5 to the right

    • 'ctrl + right arrow' => Select last Image

    • 'mouse scroll' => Select image to Left/Right

    • 'esc' => Close Fullscreen Mode

Embedding Auto Complete

Enabled by default

  • displays a popup to autocomplete embedding filenames in text widgets - to use, start typing embedding and select an option from the list
  • Option to disable ([ttNodes] enable_embed_autocomplete = True | False)

Dynamic Widgets

Enabled by default

  • Automatically hides and shows widgets depending on their relevancy
  • Option to disable ([ttNodes] enable_dynamic_widgets = True | False)

ttNinterface

Enabled by default

  • Adds 'Node Dimensions (ttN)' to the node right-click context menu Allows setting specific node Width and Height values as long as they are above the minimum size for the given node.
  • Adds 'Default BG Color (ttN)' to the node right-click context menu Allows setting specific default background color for every node added.
  • Adds 'Show Execution Order (ttN)' to the node right-click context menu Toggles execution order flags on node corners.
  • Adds support for 'ctrl + arrow key' Node movement This aligns the node(s) to the set ComfyUI grid spacing size and move the node in the direction of the arrow key by the grid spacing value. Holding shift in addition will move the node by the grid spacing size * 10.
  • Adds 'Reload Node (ttN)' to the node right-click context menu Creates a new instance of the node with the same position, size, color and title (will disconnect any IO wires). It attempts to retain set widget values which is useful for replacing nodes when a node/widget update occurs
  • Adds 'Slot Type Color (ttN)' to the Link right-click context menu Opens a color picker dialog menu to update the color of the selected link type.
  • Adds 'Link Border (ttN)' to the Link right-click context menu Toggles link line border.
  • Adds 'Link Shadow (ttN)' to the Link right-click context menu Toggles link line shadow.
  • Adds 'Link Style (ttN)' to the Link right-click context menu Sets the default link line type.

Save image prefix parsing

  • Add date/time info to filenames or output folder by using: %date:yyyy-MM-dd-hh-mm-ss%

  • Parse any upstream setting into filenames or output folder by using %[widget_name]% (for the current node)
    or %[input_name]>[input_name]>[widget_name]% (for inputting nodes)

    Example:

    tinyterra_prefixParsing

Node Versioning

  • All tinyterraNodes now have a version property so that if any future changes are made to widgets that would break workflows the nodes will be highlighted on load
  • Will only work with workflows created/saved after the v1.0.0 release

AutoUpdate

Disabled by default

  • Option to auto-update the node pack ([ttNodes] auto_update = False | True)

$\Large\color{white}{Nodes}$

ttN/pipe

pipeLoader

(Modified from Efficiency Nodes and ADV_CLIP_emb)

Combination of Efficiency Loader and Advanced CLIP Text Encode with an additional pipe output

  • Inputs - model, vae, clip skip, (lora1, modelstrength clipstrength), (Lora2, modelstrength clipstrength), (Lora3, modelstrength clipstrength), (positive prompt, token normalization, weight interpretation), (negative prompt, token normalization, weight interpretation), (latent width, height), batch size, seed
  • Outputs - pipe, model, conditioning, conditioning, samples, vae, clip, seed
pipeKSampler

(Modified from Efficiency Nodes and QOLS_Omar92)

Combination of Efficiency Loader and Advanced CLIP Text Encode with an additional pipe output

  • Inputs - pipe, (optional pipe overrides), xyplot, (Lora, model strength, clip strength), (upscale method, factor, crop), sampler state, steps, cfg, sampler name, scheduler, denoise, (image output [None, Preview, Save]), Save_Prefix, seed
  • Outputs - pipe, model, conditioning, conditioning, samples, vae, clip, image, seed

Old node layout:

With pipeLoader and pipeKSampler:

pipeKSamplerAdvanced

Combination of Efficiency Loader and Advanced CLIP Text Encode with an additional pipe output

  • Inputs - pipe, (optional pipe overrides), xyplot, (Lora, model strength, clip strength), (upscale method, factor, crop), sampler state, steps, cfg, sampler name, scheduler, starts_at_step, return_with_leftover_noise, (image output [None, Preview, Save]), Save_Prefix

  • Outputs - pipe, model, conditioning, conditioning, samples, vae, clip, image, seed

pipeLoaderSDXL

SDXL Loader and Advanced CLIP Text Encode with an additional pipe output

  • Inputs - model, vae, clip skip, (lora1, modelstrength clipstrength), (Lora2, modelstrength clipstrength), model, vae, clip skip, (lora1, modelstrength clipstrength), (Lora2, modelstrength clipstrength), (positive prompt, token normalization, weight interpretation), (negative prompt, token normalization, weight interpretation), (latent width, height), batch size, seed
  • Outputs - sdxlpipe, model, conditioning, conditioning, vae, model, conditioning, conditioning, vae, samples, clip, seed
pipeKSamplerSDXL

SDXL Sampler (base and refiner in one) and Advanced CLIP Text Encode with an additional pipe output

  • Inputs - sdxlpipe, (optional pipe overrides), (upscale method, factor, crop), sampler state, base_steps, refiner_steps cfg, sampler name, scheduler, (image output [None, Preview, Save]), Save_Prefix, seed
  • Outputs - pipe, model, conditioning, conditioning, vae, model, conditioning, conditioning, vae, samples, clip, image, seed

Old node layout:

With pipeLoaderSDXL and pipeKSamplerSDXL:

pipeIN

Encode up to 8 frequently used inputs into a single Pipe line.

  • Inputs - model, conditioning, conditioning, samples, vae, clip, image, seed
  • Outputs - pipe
pipeOUT

Decode single Pipe line into the 8 original outputs, AND a Pipe throughput.

  • Inputs - pipe
  • Outputs - model, conditioning, conditioning, samples, vae, clip, image, seed, pipe
pipeEDIT

Update/Overwrite any of the 8 original inputs in a Pipe line with new information.

  • Inputs - pipe, model, conditioning, conditioning, samples, vae, clip, image, seed
  • Outputs - pipe
pipe > basic_pipe

Convert ttN pipe line to basic pipe (to be compatible with ImpactPack), WITH original pipe throughput

  • Inputs - pipe[model, conditioning, conditioning, samples, vae, clip, image, seed]
  • Outputs - basic_pipe[model, clip, vae, conditioning, conditioning], pipe
pipe > Detailer Pipe

Convert ttN pipe line to detailer pipe (to be compatible with ImpactPack), WITH original pipe throughput

  • Inputs - pipe[model, conditioning, conditioning, samples, vae, clip, image, seed], bbox_detector, sam_model_opt
  • Outputs - detailer_pipe[model, vae, conditioning, conditioning, bbox_detector, sam_model_opt], pipe
pipe > xyPlot

pipeKSampler input to generate xy plots using sampler and loader values. (Any values not set by xyPlot will be taken from the corresponding pipeKSampler or pipeLoader)

  • Inputs - grid_spacing, latent_id, flip_xy, x_axis, x_values, y_axis, y_values
  • Outputs - xyPlot

ttN/image

imageOutput

Preview or Save an image with one node, with image throughput.

  • Inputs - image, image output[Hide, Preview, Save, Hide/Save], output path, save prefix, number padding[None, 2-9], file type[PNG, JPG, JPEG, BMP, TIFF, TIF] overwrite existing[True, False], embed workflow[True, False]
  • Outputs - image
imageRemBG

(Using RemBG)

Background Removal node with optional image preview & save.

  • Inputs - image, image output[Disabled, Preview, Save], save prefix
  • Outputs - image, mask

Example of a photobashing workflow using pipeNodes, imageRemBG, imageOutput and nodes from ADV_CLIP_emb and ImpactPack: photobash

hiresFix

Upscale image by model, optional rescale of result image.

  • Inputs - image, vae, upscale_model, rescale_after_model[true, false], rescale[by_percentage, to Width/Height], rescale method[nearest-exact, bilinear, area], factor, width, height, crop, image_output[Hide, Preview, Save], save prefix, output_latent[true, false]
  • Outputs - image, latent

ttN/text

text

Basic TextBox Loader.

  • Outputs - text (STRING)
textDebug

Text input, to display text inside the node, with optional print to console.

  • inputs - text, print_to_console
  • Outputs - text (STRING)
textConcat

3 TextBOX inputs with a single concatenated output.

  • inputs - text1, text2, text3 (STRING's), delimiter
  • Outputs - text (STRING)
7x TXT Loader Concat

7 TextBOX inputs concatenated with spaces into a single output, AND seperate text outputs.

  • inputs - text1, text2, text3, text4, text5, text6, text7 (STRING's), delimiter
  • Outputs - text1, text2, text3, text4, text5, text6, text7, concat (STRING's)
3x TXT Loader MultiConcat

3 TextBOX inputs with seperate text outputs AND multiple concatenation variations (concatenated with spaces).

  • inputs - text1, text2, text3 (STRING's), delimiter
  • Outputs - text1, text2, text3, 1 & 2, 1 & 3, 2 & 3, concat (STRING's)

ttN/util

seed

Basic Seed Loader.

  • Outputs - seed (INT)
float

float loader and converter

  • inputs - float (FLOAT)
  • Outputs - float, int, text (FLOAT, INT, STRING)
int

int loader and converter

  • inputs - int (INT)
  • Outputs - int, float, text (INT, FLOAT, STRING)

comfyui_tinyterranodes's People

Contributors

muhammadmuradkhan avatar

Stargazers

 avatar

Watchers

 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.