ComfyUI Node

Empty Dict

The empty dict that starts every JSON-building chain

By wmatson·Created 3 years ago·Updated about a year ago· 18
Empty Dict
    • dict

    Empty Dict is exactly what it sounds like: a node with no inputs and one output - {}, an empty dictionary. It exists to be the seed of the pack's dict-building chains, and on its own it looks almost too trivial to bother with. But it's the foundation for the whole approach, so it earns its place.

    Why you'd reach for it

    ComfyUI's wire types are mostly tensors and strings, but a lot of real automation wants structured data - key/value maps you can send somewhere or use to parameterize a workflow. This pack gives you a DICT wire type, and Empty Dict is how you start one. From there you chain Assoc Str / Assoc Dict / Assoc Img to add keys, and eventually feed the finished dict into the pack's HTTP POST node as a JSON body, or wherever else a map is useful.

    Without a starter, you'd have no way to create a dict at all - the assoc nodes all require an existing dict input, and something has to be first.

    How it works

    It's one line of Python: return ({},). A fresh, empty Python dict every execution. Nothing to configure, nothing to download, nothing that can really go wrong - it's the most bulletproof node in this pack.

    Inputs and outputs

    • No inputs.
    • dict (DICT, output) - an empty map. Feed it into the dict input of any Assoc node to start building.

    Installing it

    Part of the easy-comfy-nodes pack. ComfyUI Manager: search easy-comfy-nodes and install. Or manually:

    cd ComfyUI/custom_nodes
    git clone https://github.com/wmatson/easy-comfy-nodes
    # restart ComfyUI
    

    The mental model

    Think of the dict nodes as building JSON by hand in the graph. Empty Dict → Assoc Str (key="name", value="cat") → Assoc Str (key="count", value="3") gives you {"name": "cat", "count": "3"}. The Assoc Img variant can even drop a base64-encoded image in as a value, which is what makes HTTP POST interesting. If you only ever run single-node workflows in the ComfyUI UI, this node will look pointless. The moment you're wiring automation - webhooks, APIs, multi-step pipelines - it becomes the thing everything else hangs off.

    One note: values in this chain are strings unless you use the typed assoc nodes. Assoc Str stores whatever string you type, so "3" is text, not a number. For JSON consumers that care about types, keep that in mind - it's a limitation of doing this in a visual graph rather than code.

    CategoryDICT

    Inputs (0)

    No inputs

    Outputs (1)

    NameTypeDescription
    dictDICT