Nodes/ComfyUI-Drawer/๐Ÿ“ Controls 12 (Drawer)
ComfyUI Node

๐Ÿ“ Controls 12 (Drawer)

Twelve controls in one node โ€” the full control panel

By Kuroi961ยทCreated 5 months agoยทUpdated about a month agoยท 5
๐Ÿ“ Controls 12 (Drawer)
    • value_1
    • value_2
    • value_3
    • value_4
    • value_5
    • value_6
    • value_7
    • value_8
    • value_9
    • value_10
    • value_11
    • value_12
    โ—„value_1โ–บ
    โ—„def_1โ–บ
    โ—„value_2โ–บ
    โ—„def_2โ–บ
    โ—„value_3โ–บ
    โ—„def_3โ–บ
    โ—„value_4โ–บ
    โ—„def_4โ–บ
    โ—„value_5โ–บ
    โ—„def_5โ–บ
    โ—„value_6โ–บ
    โ—„def_6โ–บ
    โ—„value_7โ–บ
    โ—„def_7โ–บ
    โ—„value_8โ–บ
    โ—„def_8โ–บ
    โ—„value_9โ–บ
    โ—„def_9โ–บ
    โ—„value_10โ–บ
    โ—„def_10โ–บ
    โ—„value_11โ–บ
    โ—„def_11โ–บ
    โ—„value_12โ–บ
    โ—„def_12โ–บ

    If DrawerControls4 is the sampler cluster and DrawerControls8 is the character sheet, DrawerControls12 is the full control panel - twelve slots in one node, the biggest of the Drawer Controls family (1 / 4 / 8 / 12) from ComfyUI-Drawer. It's the one you reach for when a workflow genuinely has a dozen things a user might touch and you don't want a dozen floating nodes to manage.

    Realistic use: a model-to-image workflow where someone should be able to set steps, CFG, seed, denoise, sampler, scheduler, a couple of lora weights, a prompt toggle, and a size knob - all from one place, all in a drawer on a tablet. That's exactly the scenario this node exists for, because ComfyUI-Drawer's whole pitch is turning a graph into touch-friendly controls.

    The slot mechanics

    Each of the twelve slots is two text widgets:

    • value_N - the value, as text.
    • def_N - the definition string. First token is the type: int, float, bool, combo, string - with aliases (integer, number, number:float, toggle, boolean) and string | Label / string | Label | multiline forms for text. Everything after the type is what the Deck renders: label, min, max, step. Example: float | Denoise | 0 | 1 | 0.05 | 0.6.

    Outputs value_1 through value_12, all typed *, each feeding any widget via Convert to input on the target node. Give the node a ๐Ÿ“ title and the connected slots render as Deck controls - unconnected slots stay hidden. Combo slots pull their options live from the widget they're wired into.

    Installing it

    cd ComfyUI/custom_nodes
    git clone https://github.com/Kuroi961/ComfyUI-Drawer.git
    pip install -r ComfyUI-Drawer/requirements.txt
    

    Or search ComfyUI-Drawer in ComfyUI Manager. requirements.txt is just Send2Trash; no model files to grab.

    Gotchas

    • The bigger the node, the more discipline you need. Twelve def_N strings with no labels make an unusable drawer - write the label in every def.
    • * outputs skip type checking, so a def_N of int feeding a FLOAT widget breaks downstream, not at the socket. Match the def to the target widget.
    • Empty def_N = string behavior; a numeric-looking string arriving at an INT input is the classic symptom.
    • If twelve slots feel like too many, you're probably trying to expose everything. The Drawer pattern is selective: only the knobs people actually turn. Controls4 covers most workflows.

    One more thing worth knowing: because only connected outputs show in the Deck, you can use a 12-slot node for a 5-control workflow and the unused slots simply don't exist from the user's point of view. That's the real reason to reach for the big one - headroom that costs you nothing.

    CategoryDrawer

    Inputs (24)

    NameTypeDefaultDescription
    value_1STRINGโ€”
    def_1STRINGโ€”
    value_2STRINGโ€”
    def_2STRINGโ€”
    value_3STRINGโ€”
    def_3STRINGโ€”
    value_4STRINGโ€”
    def_4STRINGโ€”
    value_5STRINGโ€”
    def_5STRINGโ€”
    value_6STRINGโ€”
    def_6STRINGโ€”
    value_7STRINGโ€”
    def_7STRINGโ€”
    value_8STRINGโ€”
    def_8STRINGโ€”
    value_9STRINGโ€”
    def_9STRINGโ€”
    value_10STRINGโ€”
    def_10STRINGโ€”
    value_11STRINGโ€”
    def_11STRINGโ€”
    value_12STRINGโ€”
    def_12STRINGโ€”

    Outputs (12)

    NameTypeDescription
    value_1*โ€”
    value_2*โ€”
    value_3*โ€”
    value_4*โ€”
    value_5*โ€”
    value_6*โ€”
    value_7*โ€”
    value_8*โ€”
    value_9*โ€”
    value_10*โ€”
    value_11*โ€”
    value_12*โ€”