Nodes/AAA Metadata System/Cultural Color Palette Generator V01
ComfyUI Node

Cultural Color Palette Generator V01

A palette with a culture attached

By EricRollei·Created 10 months ago·Updated 8 months ago· 13
Cultural Color Palette Generator V01
    • color1
    • color2
    • color3
    • color4
    • color5
    • color6
    • palette_preview
    • color_picker
    color_selection_methodBy Category
    base_color_categoryBasic
    base_color_from_categoryblue
    base_color_from_listblue
    harmony_modelComplementary
    cultureWestern/American
    conceptAnger
    palette_size5
    use_secondary_colorfalse
    secondary_color_methodBy Category
    secondary_color_categoryBasic
    secondary_color_from_categoryred
    secondary_color_from_listred
    custom_base_color
    custom_secondary_color
    cultural_influence0.5
    saturation0.8
    value0.8
    preview_width1024
    preview_height1024
    color_previewtrue

    Color theory gets you complementary and analogous palettes. Culture gets you "what red means in China vs. the West." Cultural Color Palette Generator V01 is the node that tries to do both at once: pick a base color, a harmony model, a culture, and a concept, and it hands you a 3–6 color palette plus previews, tuned by how strongly you want the cultural meaning to influence things. It's the most opinionated color node in the AAA Metadata System pack, and it's genuinely fun for design work, mood boards, and style-prompt experiments.

    Let me be clear about what this is and isn't. It is a creative-assistance tool: the cultural tables are hard-coded data compiled into the pack, mapping concepts like "Anger" or "Celebration" to color meanings per culture. It is not ethnography, and the results should be treated as creative inspiration, not cultural authority. Used that way, it's a surprisingly good source of palettes you'd never have picked yourself.

    How it works

    You pick a base color two ways - By Category (the curated color lists) or By Name (the full 1,327-name dictionary) - then a harmony_model. That's where the classic color theory comes in: Complementary, Analogous, Triadic, Tetradic, Square, Split-Complementary, or Monochromatic. The node rotates around the color wheel to generate the harmony palette. Then the culture and concept dropdowns pull in the cultural layer, and cultural_influence (0–1, default 0.5) decides how hard that layer pushes the colors. saturation and value let you dial the palette's intensity after the fact. Outputs are the palette colors plus a palette_preview image and a color_picker image.

    It's a solid demonstration of why these tools are fun: the same base color produces completely different palettes when you switch culture from "Japanese" to "Hindu/Indian" for the concept "Celebration". Whether those are right is a question the node won't answer for you.

    Inputs and outputs that matter

    • base_color_category / base_color_from_category / base_color_from_list - how you set the starting color. The method dropdown decides which pair is active.
    • harmony_model - the color-theory structure (Complementary etc.).
    • culture (10 options) and concept (84 options, from Anger to Zen) - the cultural layer.
    • palette_size (3–6) - how many colors you get back.
    • cultural_influence, saturation, value - the fine-tuning knobs; lower influence if the palette drifts too far from your base.

    Outputs: color1 through color6 (STRING hexes - but note only up to palette_size will be populated), palette_preview (IMAGE), and color_picker (IMAGE).

    Installing it

    Part of AAA Metadata System by Eric Hiss (GitHub: EricRollei). Via ComfyUI Manager (search "AAA Metadata System") or:

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

    Restart ComfyUI. No downloads - the cultural tables ship with the pack.

    Common issues

    Two traps, both conceptual. First, not every output color is populated: ask for palette_size 3 and only color1color3 carry real values - wiring color6 downstream gets you junk. Second, the cultural layer is a fixed table, so don't expect nuance: "Western/American" + "Anger" will give you a generic red-based read, not a bespoke analysis. If the palette looks muddy, that's saturation/value doing their job - nudge them up. And again: treat the cultural meanings as a prompt-generation aid for style work, not as facts to put in a design brief.

    Categorycolors

    Inputs (21)

    NameTypeDefaultDescription
    color_selection_methodCOMBOBy Category2 options: By Category, By Name
    base_color_categoryCOMBOBasic14 options: Basic, Grayscale, Reds, Oranges, Yellows, Greens, +8
    base_color_from_categoryCOMBOblue9 options: white, black, red, green, blue, yellow, +3
    base_color_from_listCOMBOblue1327 options: Absolute Zero, Acid Green, Amaranth, AntiqueWhite, AntiqueWhite1, AntiqueWhite2, +1321
    harmony_modelCOMBOComplementary7 options: Complementary, Analogous, Triadic, Tetradic, Square, Split-Complementary, +1
    cultureCOMBOWestern/American10 options: Western/American, Japanese, Hindu/Indian, Native American, Chinese, Asian (General), +4
    conceptCOMBOAnger84 options: Anger, Art/Creativity, Authority, Bad Luck, Balance, Beauty, +78
    palette_sizeINT53–6
    use_secondary_coloroptBOOLEANfalse
    secondary_color_methodoptCOMBOBy Category2 options: By Category, By Name
    secondary_color_categoryoptCOMBOBasic14 options: Basic, Grayscale, Reds, Oranges, Yellows, Greens, +8
    secondary_color_from_categoryoptCOMBOred9 options: white, black, red, green, blue, yellow, +3
    secondary_color_from_listoptCOMBOred1327 options: Absolute Zero, Acid Green, Amaranth, AntiqueWhite, AntiqueWhite1, AntiqueWhite2, +1321
    custom_base_coloroptSTRING
    custom_secondary_coloroptSTRING
    cultural_influenceoptFLOAT0.50–1How strongly to apply cultural preferences (0=none, 1=strong)
    saturationoptFLOAT0.80–1
    valueoptFLOAT0.80–1
    preview_widthoptINT1024256–2048
    preview_heightoptINT1024256–2048
    color_previewoptBOOLEANtrue

    Outputs (8)

    NameTypeDescription
    color1STRING
    color2STRING
    color3STRING
    color4STRING
    color5STRING
    color6STRING
    palette_previewIMAGE
    color_pickerIMAGE