From 87f94a67eb338e049315f2c5b8dce054963bb4f7 Mon Sep 17 00:00:00 2001
From: FaberVS <54268603+FaberVS@users.noreply.github.com>
Date: Tue, 29 Apr 2025 15:48:55 +0300
Subject: [PATCH] Add files via upload
---
ModelParamsNode.py | 779 +++-
README.md | 95 +
Styles/Pixaroma.yaml | 2631 ++++++++++++++
Styles/artist.yaml | 7353 ++++++++++++++++++++++++++++++++++++++
Styles/basic.json | 332 ++
Styles/camera.yaml | 539 +++
Styles/mood.yaml | 163 +
Styles/original.yaml | 554 +++
__init__.py | 37 +-
js/ModelParamsNode.js | 121 +
js/ModelParamsNodeExt.js | 237 ++
js/MultiModelSwitch.js | 127 +
js/active_model.js | 738 ++++
13 files changed, 13592 insertions(+), 114 deletions(-)
create mode 100644 README.md
create mode 100644 Styles/Pixaroma.yaml
create mode 100644 Styles/artist.yaml
create mode 100644 Styles/basic.json
create mode 100644 Styles/camera.yaml
create mode 100644 Styles/mood.yaml
create mode 100644 Styles/original.yaml
create mode 100644 js/ModelParamsNode.js
create mode 100644 js/ModelParamsNodeExt.js
create mode 100644 js/MultiModelSwitch.js
create mode 100644 js/active_model.js
diff --git a/ModelParamsNode.py b/ModelParamsNode.py
index 58a135c..a4b5b00 100644
--- a/ModelParamsNode.py
+++ b/ModelParamsNode.py
@@ -1,107 +1,672 @@
-import comfy.sd
-import comfy.samplers # For accessing lists of SAMPLERS and SCHEDULERS
-import folder_paths
-import json
-import inspect # For type verification
-
-# Define a custom type for "pipe" for better readability
-PIPE_TYPE_NAME = "PARAMS_PIPE"
-
-# --- Node 1: ModelParamsPipeNode ---
-class ModelParamsPipeNode:
- @classmethod
- def INPUT_TYPES(cls):
- samplers = comfy.samplers.KSampler.SAMPLERS
- schedulers = comfy.samplers.KSampler.SCHEDULERS
- return {
- "required": {
- "ckpt_name": (folder_paths.get_filename_list("checkpoints"),),
- "steps": ("INT", {"default": 20, "min": 1, "max": 10000}),
- "cfg": ("FLOAT", {"default": 7.0, "min": 0.0, "max": 100.0, "step": 0.1}),
- "sampler_name": (samplers,),
- "scheduler": (schedulers,),
- "positive_tag": ("STRING", {"multiline": True, "default": ""}),
- "negative_tag": ("STRING", {"multiline": True, "default": ""}),
- "clip_skip": ("INT", {"default": -2, "min": -12, "max": 0, "step": 1}),
- },
- "optional": {
- "vae_override": ("VAE",),
- }
- }
-
- RETURN_TYPES = ("MODEL", "CLIP", "VAE",
- "INT", "FLOAT", "STRING", "STRING", "STRING", "STRING",
- PIPE_TYPE_NAME)
- RETURN_NAMES = ("MODEL", "CLIP", "VAE",
- "steps", "cfg", "sampler_name", "scheduler",
- "positive_tag", "negative_tag",
- "params_pipe")
- FUNCTION = "process_to_pipe"
- CATEGORY = "MultiModel"
-
- def process_to_pipe(self, ckpt_name, steps, cfg, sampler_name, scheduler,
- positive_tag, negative_tag, clip_skip, vae_override=None):
- ckpt_path = folder_paths.get_full_path("checkpoints", ckpt_name)
- out = comfy.sd.load_checkpoint_guess_config(ckpt_path, output_vae=True, output_clip=True, embedding_directory=folder_paths.get_folder_paths("embeddings"))
- model = out[0]
- clip = out[1]
- vae_from_checkpoint = out[2]
- clip_skipped = clip.clone()
- clip_skipped.clip_layer(clip_skip)
- final_vae = vae_override if vae_override is not None else vae_from_checkpoint
- combined_params = {
- "ckpt_name": ckpt_name, "steps": steps, "cfg": cfg,
- "sampler_name": str(sampler_name), "scheduler": str(scheduler),
- "positive_tag": positive_tag.strip() if isinstance(positive_tag, str) else positive_tag,
- "negative_tag": negative_tag.strip() if isinstance(negative_tag, str) else negative_tag,
- "clip_skip": clip_skip
- }
- pipe_data = (model, clip_skipped, final_vae, combined_params)
- return (model, clip_skipped, final_vae, steps, cfg, str(sampler_name), str(scheduler),
- positive_tag, negative_tag, pipe_data)
-
-# --- Node 2: ParamsPipeUnpack ---
-class ParamsPipeUnpack:
- @classmethod
- def INPUT_TYPES(cls):
- return { "required": { "params_pipe": (PIPE_TYPE_NAME,), } }
-
- RETURN_TYPES = ("MODEL", "CLIP", "VAE", "INT", "FLOAT",
- comfy.samplers.KSampler.SAMPLERS, comfy.samplers.KSampler.SCHEDULERS,
- "STRING", "STRING", PIPE_TYPE_NAME)
- RETURN_NAMES = ("MODEL", "CLIP", "VAE", "steps", "cfg",
- "sampler_name", "scheduler",
- "positive_tag", "negative_tag", "params_pipe")
- FUNCTION = "unpack_pipe"
- CATEGORY = "MultiModel"
-
- def unpack_pipe(self, params_pipe):
- if not isinstance(params_pipe, tuple) or len(params_pipe) != 4:
- raise ValueError(f"Unpack: Expected PARAMS_PIPE tuple of length 4, but got: {type(params_pipe)}")
- model, clip, vae, params_dict = params_pipe
- if not isinstance(params_dict, dict):
- raise ValueError(f"Unpack: Expected dict as the 4th element in PARAMS_PIPE, but got: {type(params_dict)}")
- steps = params_dict.get("steps")
- cfg = params_dict.get("cfg")
- sampler_name = params_dict.get("sampler_name")
- scheduler = params_dict.get("scheduler")
- positive_tag = params_dict.get("positive_tag")
- negative_tag = params_dict.get("negative_tag")
- return (model, clip, vae, steps, cfg, sampler_name, scheduler,
- positive_tag, negative_tag, params_pipe)
-
-
-# --- Registration for only the first two nodes ---
-NODE_CLASS_MAPPINGS = {
- "ModelParamsPipeNode": ModelParamsPipeNode,
- "ParamsPipeUnpack": ParamsPipeUnpack
-}
-
-# --- Display names for only the first two nodes ---
-NODE_DISPLAY_NAME_MAPPINGS = {
- "ModelParamsPipeNode": "Model Parameters Pipe Hub",
- "ParamsPipeUnpack": "Unpack Parameters Pipe"
-}
-
-# Loading message
-print("✅ Loaded custom nodes (Reverted): ModelParamsPipeNode, ParamsPipeUnpack ▪B ▪B ▪С")
+import comfy.sd
+import comfy.samplers # For accessing lists of SAMPLERS and SCHEDULERS
+import comfy.sample
+import folder_paths
+import json
+import inspect # For type verification
+import torch
+import comfy.utils # Потрібен для PROGRESS_BAR_ENABLED
+# import comfy.latent_preview as latent_preview # Видалено
+import comfy.model_management # Залишаємо, може бути потрібен для інших нод?
+import os # Додано для роботи з шляхами
+from server import PromptServer # Додано
+from aiohttp import web # Додано
+
+import git
+from typing import Any, Dict
+import yaml
+
+# Проксі для любого типу
+class AlwaysEqualProxy(str):
+ def __eq__(self, _):
+ return True
+ def __ne__(self, _):
+ return False
+
+# Ревізія ComfyUI для lazy_options
+comfy_ui_revision = None
+
+def get_comfyui_revision() -> Any:
+ try:
+ repo = git.Repo(os.path.dirname(folder_paths.__file__))
+ return len(list(repo.iter_commits('HEAD')))
+ except:
+ return "Unknown"
+
+def compare_revision(num: int) -> bool:
+ global comfy_ui_revision
+ if comfy_ui_revision is None:
+ comfy_ui_revision = get_comfyui_revision()
+ return comfy_ui_revision == "Unknown" or int(comfy_ui_revision) >= num
+
+WEB_DIRECTORY = "js" # Додано для JS файлу
+
+MAX_FLOW_NUM = 10
+lazy_options = {"lazy": True}
+
+any_type = AlwaysEqualProxy("*")
+# Define a custom type for "pipe" for better readability
+PIPE_TYPE_NAME = "PARAMS_PIPE"
+# IMG2TXT_TYPE_NAME = "IMG2TXT_STRING" # Видалено
+
+# --- Helper Functions for Styles ---
+def get_styles_dir():
+ # Визначаємо шлях до папки Styles відносно поточного файлу
+ return os.path.join(os.path.dirname(__file__), "Styles")
+
+def get_style_files():
+ styles_dir = get_styles_dir()
+ if not os.path.isdir(styles_dir):
+ return ["None"]
+ files = [f for f in os.listdir(styles_dir) if (f.endswith('.json') or f.endswith('.yaml') or f.endswith('.yml')) and os.path.isfile(os.path.join(styles_dir, f))]
+ return ["None"] + sorted(files)
+
+def get_style_names(style_filename):
+ # Прибираємо перевірку на "None" тут, бо API endpoint не повинен викликатися для "None"
+ # Однак, якщо він все ж викликається, повернемо порожній список.
+ if style_filename is None or style_filename == "None":
+ return []
+
+ styles_dir = get_styles_dir()
+ filepath = os.path.join(styles_dir, style_filename)
+
+ names = [] # Ініціалізуємо порожнім списком, без "None"
+ try:
+ if os.path.isfile(filepath):
+ if filepath.endswith('.yaml') or filepath.endswith('.yml'):
+ with open(filepath, 'r', encoding='utf-8') as f:
+ data = yaml.safe_load(f)
+ else:
+ with open(filepath, 'r', encoding='utf-8') as f:
+ data = json.load(f)
+ if isinstance(data, list):
+ # Додаємо імена, пропускаючи порожні або None
+ names.extend([item.get("name") for item in data if isinstance(item, dict) and item.get("name")])
+ except Exception as e:
+ print(f"Error loading style names from {filepath}: {e}")
+ return [] # Повертаємо порожній список при помилці
+
+ # Видаляємо дублікати (якщо є) і сортуємо. НЕ додаємо "None".
+ unique_names = sorted(list(set(n for n in names if n))) # Додаткова фільтрація None/empty
+ return unique_names
+
+# Оновлена функція common_ksampler без latent_preview
+def common_ksampler(model, seed, steps, cfg, sampler_name, scheduler, positive, negative, latent, denoise=1.0, disable_noise=False, start_step=None, last_step=None, force_full_denoise=False):
+ latent_image = latent["samples"]
+ latent_image = comfy.sample.fix_empty_latent_channels(model, latent_image)
+
+ if disable_noise:
+ noise = torch.zeros(latent_image.size(), dtype=latent_image.dtype, layout=latent_image.layout, device="cpu")
+ else:
+ batch_inds = latent["batch_index"] if "batch_index" in latent else None
+ noise = comfy.sample.prepare_noise(latent_image, seed, batch_inds)
+
+ noise_mask = None
+ if "noise_mask" in latent:
+ noise_mask = latent["noise_mask"]
+
+ # callback = latent_preview.prepare_callback(model, steps) # Видалено рядок з колбеком
+ callback = None # Встановлюємо колбек в None
+ disable_pbar = not comfy.utils.PROGRESS_BAR_ENABLED
+ samples = comfy.sample.sample(model, noise, steps, cfg, sampler_name, scheduler, positive, negative, latent_image,
+ denoise=denoise, disable_noise=disable_noise, start_step=start_step, last_step=last_step,
+ force_full_denoise=force_full_denoise, noise_mask=noise_mask, callback=callback, disable_pbar=disable_pbar, seed=seed)
+ out = latent.copy()
+ out["samples"] = samples
+ return (out, )
+
+# --- Node 1: ModelParamsPipeNode ---
+class ModelParamsPipeNode:
+ @classmethod
+ def INPUT_TYPES(cls):
+ samplers = comfy.samplers.KSampler.SAMPLERS
+ schedulers = comfy.samplers.KSampler.SCHEDULERS
+ return {
+ "required": {
+ # Переносимо теги на початок
+ "positive_tag": ("STRING", {"multiline": True, "default": ""}),
+ "negative_tag": ("STRING", {"multiline": True, "default": ""}),
+ # Решта полів
+ "ckpt_name": (folder_paths.get_filename_list("checkpoints"),),
+ "steps": ("INT", {"default": 20, "min": 1, "max": 10000}),
+ "cfg": ("FLOAT", {"default": 7.0, "min": 0.0, "max": 100.0, "step": 0.1}),
+ "sampler_name": (samplers,),
+ "scheduler": (schedulers,),
+ "clip_skip": ("INT", {"default": -2, "min": -12, "max": 0, "step": 1}),
+ },
+ "optional": {
+ "vae_override": ("VAE",),
+ }
+ }
+
+ RETURN_TYPES = ("MODEL", "CLIP", "VAE",
+ "INT", "FLOAT", comfy.samplers.KSampler.SAMPLERS, comfy.samplers.KSampler.SCHEDULERS,
+ "STRING", "STRING",
+ PIPE_TYPE_NAME)
+ RETURN_NAMES = ("MODEL", "CLIP", "VAE",
+ "steps", "cfg", "sampler_name", "scheduler",
+ "positive_tag", "negative_tag",
+ "params_pipe")
+ FUNCTION = "process_to_pipe"
+ CATEGORY = "MultiModel"
+
+ def process_to_pipe(self, ckpt_name, steps, cfg, sampler_name, scheduler,
+ positive_tag, negative_tag, clip_skip, vae_override=None):
+ ckpt_path = folder_paths.get_full_path("checkpoints", ckpt_name)
+ out = comfy.sd.load_checkpoint_guess_config(ckpt_path, output_vae=True, output_clip=True, embedding_directory=folder_paths.get_folder_paths("embeddings"))
+ model = out[0]
+ clip = out[1]
+ vae_from_checkpoint = out[2]
+ clip_skipped = clip.clone()
+ clip_skipped.clip_layer(clip_skip)
+ final_vae = vae_override if vae_override is not None else vae_from_checkpoint
+
+ # Safely handle positive_tag and negative_tag even if they're None
+ safe_positive_tag = "" if positive_tag is None else positive_tag.strip()
+ safe_negative_tag = "" if negative_tag is None else negative_tag.strip()
+
+ # Store the original sampler_name and scheduler objects
+ combined_params = {
+ "ckpt_name": ckpt_name,
+ "steps": steps,
+ "cfg": cfg,
+ "sampler_name": sampler_name,
+ "scheduler": scheduler,
+ "positive_tag": safe_positive_tag,
+ "negative_tag": safe_negative_tag,
+ "clip_skip": clip_skip
+ }
+ pipe_data = (model, clip_skipped, final_vae, combined_params)
+
+ # Convert sampler_name and scheduler to string only for display purposes
+ return (model, clip_skipped, final_vae, steps, cfg,
+ sampler_name, scheduler,
+ safe_positive_tag, safe_negative_tag, pipe_data)
+
+# --- Node 2: ParamsPipeUnpack ---
+class ParamsPipeUnpack:
+ @classmethod
+ def INPUT_TYPES(cls):
+ return { "required": { "params_pipe": (PIPE_TYPE_NAME,), } }
+
+ # Змінюємо типи повернення для sampler_name та scheduler
+ RETURN_TYPES = ("MODEL", "CLIP", "VAE", "INT", "FLOAT",
+ comfy.samplers.KSampler.SAMPLERS, comfy.samplers.KSampler.SCHEDULERS,
+ "STRING", "STRING", PIPE_TYPE_NAME)
+ RETURN_NAMES = ("MODEL", "CLIP", "VAE", "steps", "cfg",
+ "sampler_name", "scheduler",
+ "positive_tag", "negative_tag", "params_pipe")
+ FUNCTION = "unpack_pipe"
+ CATEGORY = "MultiModel"
+
+ def unpack_pipe(self, params_pipe):
+ if not isinstance(params_pipe, tuple) or len(params_pipe) != 4:
+ raise ValueError(f"Unpack: Expected PARAMS_PIPE tuple of length 4, but got: {type(params_pipe)}")
+ model, clip, vae, params_dict = params_pipe
+ if not isinstance(params_dict, dict):
+ raise ValueError(f"Unpack: Expected dict as the 4th element in PARAMS_PIPE, but got: {type(params_dict)}")
+
+ # Get parameters with proper type checking
+ steps = params_dict.get("steps", 20)
+ cfg = params_dict.get("cfg", 7.0)
+ sampler_name = params_dict.get("sampler_name", "euler_ancestral") # Отримуємо оригінальний об'єкт
+ scheduler = params_dict.get("scheduler", "normal") # Отримуємо оригінальний об'єкт
+ positive_tag = params_dict.get("positive_tag", "")
+ negative_tag = params_dict.get("negative_tag", "")
+
+ # Повертаємо оригінальні об'єкти, а не їх рядкові представлення
+ return (model, clip, vae, steps, cfg,
+ sampler_name, scheduler, # Без конвертації в str
+ positive_tag, negative_tag, params_pipe)
+
+# --- Node 3: ListSelectorNode ---
+class ListSelectorNode:
+ @classmethod
+ def INPUT_TYPES(cls):
+ return {
+ "required": {
+ # Input for multiline text where each line is a list item
+ "list_items": ("STRING", {"multiline": True, "default": "Item 1\nItem 2\nItem 3"}),
+ # Input for selecting the item's number (1-based index)
+ "index": ("INT", {"default": 1, "min": 1, "max": 10000, "step": 1}),
+ }
+ }
+ # Return types: selected string and its number
+ RETURN_TYPES = ("STRING", "INT")
+ # Output names
+ RETURN_NAMES = ("selected_item", "selected_index")
+ FUNCTION = "get_item_by_index"
+ CATEGORY = "MultiModel" # Category for the node
+
+ def get_item_by_index(self, list_items, index):
+ # Split the input text into lines
+ lines = list_items.splitlines()
+ # Filter out empty lines and trim unnecessary spaces
+ items = [line.strip() for line in lines if line.strip()]
+ selected_item_str = ""
+ selected_item_index = 1 # Default to the first item
+
+ if not items:
+ # If the list is empty after filtering
+ print("Warning: ListSelectorNode - Input list is empty.")
+ selected_item_str = ""
+ selected_item_index = 1 # Nothing to select, return index 1
+ else:
+ # Adjust the 1-based input index to 0-based for Python list access
+ zero_based_index = index - 1
+ # Check if the index is within bounds
+ # If index is too small (<0), use 0
+ if zero_based_index < 0:
+ zero_based_index = 0
+ # If index is too large, use the index of the last item
+ elif zero_based_index >= len(items):
+ zero_based_index = len(items) - 1
+ # Get the selected item
+ selected_item_str = items[zero_based_index]
+ # Determine the actual 1-based index of the selected item
+ selected_item_index = zero_based_index + 1
+
+ # Return the selected string and its 1-based index
+ return (selected_item_str, selected_item_index)
+
+class DenoiseSelector:
+ @classmethod
+ def INPUT_TYPES(s):
+ return {
+ "required": {
+ "denoise": ("FLOAT", {"default": 0.5, "min": 0.0, "max": 1.0, "step": 0.01}),
+ }
+ }
+
+ RETURN_TYPES = ("FLOAT",)
+ RETURN_NAMES = ("denoise",)
+ FUNCTION = "select_denoise"
+ CATEGORY = "MultiModel"
+
+ def select_denoise(self, denoise):
+ return (denoise,)
+
+# --- Наша існуюча нода KSamplerPipeNode ---
+class KSamplerPipeNode:
+ @classmethod
+ def INPUT_TYPES(cls):
+ return {
+ "required": {
+ "params_pipe": (PIPE_TYPE_NAME,),
+ # "latent": ("LATENT",), # Переміщено до optional
+ "positive": ("CONDITIONING",),
+ "negative": ("CONDITIONING",),
+ "seed": ("INT", {"default": 0, "min": 0, "max": 0xffffffffffffffff}),
+ "denoise": ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01}),
+ },
+ "optional": {
+ "latent": ("LATENT",), # Тепер опціональний
+ "image_override": ("IMAGE",)
+ }
+ }
+
+ RETURN_TYPES = (PIPE_TYPE_NAME, "IMAGE")
+ RETURN_NAMES = ("params_pipe", "image")
+ FUNCTION = "sample"
+ CATEGORY = "MultiModel"
+
+ def sample(self, params_pipe, positive, negative, seed, denoise, latent=None, image_override=None):
+ if latent is not None and image_override is not None:
+ raise ValueError("Both 'latent' and 'image_override' inputs are connected. Please connect only one.")
+ if latent is None and image_override is None:
+ raise ValueError("Either 'latent' or 'image_override' input must be provided to KSamplerPipeNode.")
+
+ if not isinstance(params_pipe, tuple) or len(params_pipe) != 4:
+ raise ValueError(f"KSamplerPipeNode: Expected PARAMS_PIPE tuple of length 4, but got: {type(params_pipe)}")
+
+ model, clip, vae, params_dict = params_pipe
+ if not isinstance(params_dict, dict):
+ raise ValueError(f"KSamplerPipeNode: Expected dict as the 4th element in PARAMS_PIPE, but got: {type(params_dict)}")
+
+ # Отримуємо параметри з params_pipe
+ steps = params_dict.get("steps", 20)
+ cfg = params_dict.get("cfg", 7.0)
+ sampler_name = params_dict.get("sampler_name", "euler_ancestral")
+ scheduler = params_dict.get("scheduler", "normal")
+
+ # Визначаємо, який латент використовувати
+ if image_override is not None:
+ print("KSamplerPipeNode: Using image_override input.")
+ if vae is None:
+ raise ValueError("VAE is required to encode image_override, but it's missing in the params_pipe.")
+ encoded_samples = vae.encode(image_override[:,:,:,:3])
+ latent_input = {"samples": encoded_samples}
+ else: # image_override is None, тому використовуємо latent (ми вже перевірили, що він не None)
+ print("KSamplerPipeNode: Using latent input.")
+ latent_input = latent
+
+ # Використовуємо common_ksampler
+ latent_result = common_ksampler(model, seed, steps, cfg, sampler_name, scheduler, positive, negative, latent_input, denoise=denoise)[0]
+
+ # Декодуємо зображення
+ if vae is None:
+ raise ValueError("VAE is required for decoding the result, but it's missing in the params_pipe.")
+ image = vae.decode(latent_result["samples"])
+
+ return (params_pipe, image)
+
+# --- Нова нода PromptBuilderNode ---
+class PromptBuilderNode:
+ @classmethod
+ def INPUT_TYPES(cls):
+ style_files = get_style_files() # Ця функція все ще повертає список з "None"
+ # Ми більше не використовуємо get_style_names для початкового списку тут
+
+ return {
+ "required": {
+ "params_pipe": (PIPE_TYPE_NAME,),
+ "positive_base": ("STRING", {"multiline": True, "default": ""}),
+ "negative_base": ("STRING", {"multiline": True, "default": ""}),
+ },
+ "optional": {
+ "from_IMG2TXT": ("STRING", {"multiline": True, "default": "", "forceInput": True}),
+ "style_file": (style_files, ),
+ # Змінюємо default на порожній рядок, оскільки "None" більше не буде опцією
+ "style_name": ("STRING", {"default": "", "multiline": False}),
+ }
+ }
+
+ RETURN_TYPES = ("STRING", "STRING", "CONDITIONING", "CONDITIONING")
+ RETURN_NAMES = ("positive_text", "negative_text", "positive_prompt", "negative_prompt")
+ FUNCTION = "build_prompts"
+ CATEGORY = "MultiModel"
+
+ @classmethod
+ def IS_CHANGED(cls, *args, **kwargs):
+ # Використовуємо *args, **kwargs, щоб уникнути помилок з аргументами
+ return float("NaN")
+
+ def build_prompts(self, params_pipe, positive_base, negative_base, from_IMG2TXT=None, style_file="None", style_name="None"):
+ # 1. Розпаковка params_pipe
+ if not isinstance(params_pipe, tuple) or len(params_pipe) != 4:
+ raise ValueError("PromptBuilderNode: Invalid params_pipe structure.")
+ model, clip, vae, params_dict = params_pipe
+ if not isinstance(params_dict, dict):
+ raise ValueError("PromptBuilderNode: Invalid params_dict in params_pipe.")
+ if clip is None:
+ raise ValueError("PromptBuilderNode: CLIP object is missing in the params_pipe.")
+
+ # 2. Отримання тегів з pipe
+ positive_tags = params_dict.get("positive_tag", "").strip()
+ negative_tags = params_dict.get("negative_tag", "").strip()
+
+ # Очищення вхідного тексту з вузла
+ safe_from_img2txt = "" if from_IMG2TXT is None else from_IMG2TXT.strip()
+ safe_positive_base = "" if positive_base is None else positive_base.strip()
+ safe_negative_base = "" if negative_base is None else negative_base.strip()
+
+ style_prompt_template = "{prompt}" # Default template
+ style_negative_prompt = "" # Default negative from style
+
+ # 3. Обробка стилю (отримання шаблонів)
+ if style_file != "None" and style_name != "None":
+ styles_dir = get_styles_dir()
+ filepath = os.path.join(styles_dir, style_file)
+ try:
+ if os.path.isfile(filepath):
+ if filepath.endswith('.yaml') or filepath.endswith('.yml'):
+ with open(filepath, 'r', encoding='utf-8') as f:
+ styles_data = yaml.safe_load(f)
+ else:
+ with open(filepath, 'r', encoding='utf-8') as f:
+ styles_data = json.load(f)
+ if isinstance(styles_data, list):
+ selected_style = next((s for s in styles_data if isinstance(s, dict) and s.get("name") == style_name), None)
+ if selected_style:
+ style_prompt_template = selected_style.get("prompt", "{prompt}")
+ style_negative_prompt = selected_style.get("negative_prompt", "")
+ else:
+ print(f"Warning: Style '{style_name}' not found in {style_file}.")
+ except Exception as e:
+ print(f"Error processing style file {style_file}: {e}")
+
+ # 4. Формування позитивного тексту (НОВИЙ ПОРЯДОК)
+ # Спочатку збираємо теги, базу та img2txt
+ core_positive_parts = []
+ if positive_tags:
+ core_positive_parts.append(positive_tags)
+ if safe_positive_base:
+ core_positive_parts.append(safe_positive_base)
+ if safe_from_img2txt:
+ core_positive_parts.append(safe_from_img2txt)
+ core_prompt = ". ".join(filter(None, core_positive_parts))
+
+ # Тепер вставляємо зібраний core_prompt у шаблон стилю
+ final_positive_text = style_prompt_template.replace("{prompt}", core_prompt) if core_prompt else style_prompt_template.replace("{prompt}", "")
+ # Додатково очистимо кінцевий результат від зайвих пробілів
+ final_positive_text = final_positive_text.strip()
+
+ # 5. Формування негативного тексту (ЗМІНЕНО ПОРЯДОК)
+ # Спочатку збираємо базу і стиль
+ negative_base_and_style_parts = []
+ if safe_negative_base:
+ negative_base_and_style_parts.append(safe_negative_base)
+ if style_negative_prompt:
+ negative_base_and_style_parts.append(style_negative_prompt)
+ base_and_style_negative = ". ".join(filter(None, negative_base_and_style_parts))
+
+ # Тепер збираємо фінальний негативний, ставлячи теги першими
+ final_negative_parts = []
+ if negative_tags:
+ final_negative_parts.append(negative_tags)
+ if base_and_style_negative:
+ final_negative_parts.append(base_and_style_negative)
+ final_negative_text = ". ".join(filter(None, final_negative_parts))
+
+ # 6 & 7. Кодування промптів (залишається без змін)
+ tokens_positive = clip.tokenize(final_positive_text)
+ cond_positive, pooled_positive = clip.encode_from_tokens(tokens_positive, return_pooled=True)
+
+ tokens_negative = clip.tokenize(final_negative_text)
+ cond_negative, pooled_negative = clip.encode_from_tokens(tokens_negative, return_pooled=True)
+
+ # 8. Повернення результатів (залишається без змін)
+ return (final_positive_text, final_negative_text,
+ [[cond_positive, {"pooled_output": pooled_positive}]],
+ [[cond_negative, {"pooled_output": pooled_negative}]])
+
+# --- Новий вузол-байпасер для ModelParamsPipeNode ---
+class ActiveModel:
+ # Цьому вузлу не потрібні входи чи виходи, визначені в Python,
+ # оскільки вся логіка відбувається в JavaScript.
+ @classmethod
+ def INPUT_TYPES(cls):
+ return {"required": {}}
+
+ RETURN_TYPES = ()
+ FUNCTION = "do_nothing" # Потрібно вказати функцію, навіть якщо вона нічого не робить
+ OUTPUT_NODE = True # Вказує, що вузол може не мати виходів або має особливу логіку
+ CATEGORY = "MultiModel" # Змінюємо категорію на основну категорію
+
+ def do_nothing(self):
+ # Ця функція ніколи не буде викликана, якщо JS обробляє дії,
+ # але вона потрібна для реєстрації.
+ return ()
+
+# --- API Endpoint for Dynamic Styles ---
+@PromptServer.instance.routes.post('/multi_model/get_style_names')
+async def get_style_names_endpoint(request):
+ # print("--- API Endpoint /multi_model/get_style_names called ---") # Keep this commented for less verbose logs
+ try:
+ json_data = await request.json()
+ filename = json_data.get('filename')
+
+ if filename is None: # Check explicitly for None, as empty string might be valid (though unlikely here)
+ print("API Error: Filename not provided in request")
+ return web.Response(status=400, text="Filename not provided")
+
+ style_names = get_style_names(filename)
+ # print(f"Returning style names for {filename}: {style_names}") # Keep commented
+ return web.json_response({"style_names": style_names})
+
+ except json.JSONDecodeError as json_err:
+ try:
+ raw_body = await request.read()
+ body_text = raw_body.decode('utf-8', errors='ignore')
+ except Exception:
+ body_text = "[Could not read body]"
+ print(f"API Error: Invalid JSON received. Body: {body_text}. Error: {json_err}")
+ return web.Response(status=400, text=f"Invalid JSON received: {json_err}")
+ except Exception as e:
+ print(f"API Error in get_style_names_endpoint: {e}")
+ import traceback
+ print(traceback.format_exc())
+ return web.Response(status=500, text=f"Internal server error: {e}")
+
+# --- Helper definitions for MySwitchIndex ---
+class AnyType(str):
+ """A special class that is always equal in not equal comparisons. Credit to pythongosssss"""
+
+ def __ne__(self, __value: object) -> bool:
+ return False
+
+class FlexibleOptionalInputType(dict):
+ """A special class to make flexible nodes that pass data to our python handlers.
+
+ Enables both flexible/dynamic input types (like for Any Switch) or a dynamic number of inputs
+ (like for Any Switch, Context Switch, Context Merge, Power Lora Loader, etc).
+ """
+ def __init__(self, type):
+ self.type = type
+
+ def __getitem__(self, key):
+ # Allow specific named inputs if needed, otherwise default to the flexible type
+ # Returning the flexible type tuple for __contains__ to work seamlessly
+ return (self.type,)
+
+
+ def __contains__(self, key):
+ # We accept any key starting with 'input_'
+ return key.startswith('input_')
+
+
+any_type_switch = AnyType("*") # Using a different variable name to avoid conflicts
+
+def is_context_empty(ctx):
+ """Checks if the provided ctx is None or contains just None values."""
+ return not ctx or all(v is None for v in ctx.values())
+
+def is_none(value):
+ """Checks if a value is none. Adapted from rgthree."""
+ if value is not None:
+ # Handle rgthree context specifically if needed, or remove if not applicable
+ if isinstance(value, dict) and 'model' in value and 'clip' in value:
+ return is_context_empty(value)
+ return value is None
+
+# --- Node: MySwitchIndex ---
+class MySwitchIndex:
+ """
+ A node that takes multiple inputs and outputs the first non-empty one
+ along with its index (firstActive mode) OR outputs the input at a specific index.
+ Inputs are dynamically managed by the frontend.
+ """
+
+ # Set NAME and CATEGORY directly
+ NAME = "Multi Model Switch"
+ CATEGORY = "MultiModel"
+
+ @classmethod
+ def INPUT_TYPES(cls):
+ return {
+ "required": {
+ "mode": (["firstActive", "index"], ),
+ # Оновлюємо min та default для 1-базованого індексу
+ "index": ("INT", {"default": 1, "min": 1, "max": 999}),
+ },
+ "optional": FlexibleOptionalInputType(any_type_switch),
+ }
+
+ # Output the selected value and its index
+ RETURN_TYPES = (any_type_switch, "INT",)
+ RETURN_NAMES = ("selected_value", "selected_index",)
+
+ FUNCTION = "switch_index"
+
+ # Змінюємо сигнатуру: приймаємо всі входи через **kwargs
+ def switch_index(self, **kwargs):
+ """
+ Selects and returns an input value and its 1-based index based on the selected mode.
+ - firstActive: Returns the first non-none input.
+ - index: Returns the input at the specified 1-based index from the widget.
+ Returns 0 for selected_index if no active input is found.
+ """
+ # Витягуємо mode та index_from_widget з kwargs
+ mode = kwargs.get("mode", "firstActive") # За замовчуванням firstActive
+ # Отримуємо 1-базований індекс з віджета, за замовчуванням 1
+ index_from_widget = kwargs.get("index", 1)
+
+ selected_value = None
+ # Внутрішній індекс буде 0-базованим, або -1 якщо не знайдено
+ internal_selected_index = -1
+
+ if mode == "firstActive":
+ input_items = []
+ # Проходимо по всіх kwargs, щоб знайти динамічні входи
+ for key, value in kwargs.items():
+ if key.startswith("input_"):
+ try:
+ # Assume 1-based index in name from frontend, store 0-based
+ key_index_0_based = int(key.split('_')[-1]) - 1
+ input_items.append({'index': key_index_0_based, 'key': key, 'value': value})
+ except ValueError:
+ print(f"[MultiModelSwitch] Warning: Could not parse index from key '{key}'")
+ continue
+
+ # Sort by index parsed from the key name
+ input_items.sort(key=lambda item: item['index'])
+
+ for item in input_items:
+ if not is_none(item['value']):
+ selected_value = item['value']
+ internal_selected_index = item['index'] # Store the 0-based index
+ break
+
+ elif mode == "index":
+ # index_from_widget тепер 1-базований
+ target_key = f"input_{index_from_widget}" # Ключ будується з 1-базованого індексу
+ # Перевіряємо наявність ключа та значення в kwargs
+ if target_key in kwargs:
+ input_value = kwargs[target_key]
+ if not is_none(input_value):
+ selected_value = input_value
+ # Зберігаємо внутрішній 0-базований індекс
+ internal_selected_index = index_from_widget - 1
+
+ else:
+ print(f"[MultiModelSwitch] Warning: Unknown mode '{mode}'")
+
+ # Конвертуємо 0-базований внутрішній індекс в 1-базований для виходу, або 0 якщо не знайдено
+ output_index = internal_selected_index + 1 if internal_selected_index != -1 else 0
+
+ return (selected_value, output_index,)
+
+# --- Node Mappings ---
+NODE_CLASS_MAPPINGS = {
+ "ModelParamsPipe": ModelParamsPipeNode,
+ "ParamsPipeUnpack": ParamsPipeUnpack,
+ "ListSelector": ListSelectorNode,
+ "DenoiseSelector": DenoiseSelector,
+ "KSamplerPipe": KSamplerPipeNode,
+ "PromptBuilder": PromptBuilderNode,
+ "ActiveModel": ActiveModel,
+ "MySwitchIndex": MySwitchIndex, # Register the new node
+}
+
+NODE_DISPLAY_NAME_MAPPINGS = {
+ "ModelParamsPipe": "Model Parameters Pipe",
+ "ParamsPipeUnpack": "Unpack Parameters Pipe",
+ "ListSelector": "List Selector",
+ "DenoiseSelector": "Denoise Selector",
+ "KSamplerPipe": "KSampler (Pipe)",
+ "PromptBuilder": "Prompt Builder",
+ "ActiveModel": "Active Model",
+ "MySwitchIndex": "Multi Model Switch", # Оновлено відображуване ім'я
+}
+
+print("✅ Loaded ModelParamsNode.py with all nodes (*^_^*)")
\ No newline at end of file
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..d8cbfc4
--- /dev/null
+++ b/README.md
@@ -0,0 +1,95 @@
+
+ MultiModel1 for ComfyUI
+
+ Flexible multi-model workflows, prompt engineering, and style management for ComfyUI
+
+
+
+ The Nodes | Styles | Installation | Example Usage
+
+
+
+A collection of nodes and utilities to make working with multiple models, custom parameters, and prompt styles in ComfyUI easier, faster, and more flexible.
+You are welcome to use and adapt them for your own workflows!
+
+---
+
+# ✴️ The Nodes
+
+## ModelParamsPipeNode
+> Create a "pipe" containing the selected model, CLIP, VAE, and all generation parameters (steps, CFG, sampler, scheduler, tags, etc).
+> Makes it easy to pass model settings between nodes.
+
+## ParamsPipeUnpack
+> Unpack all parameters and objects from a pipe: model, CLIP, VAE, steps, CFG, sampler, scheduler, tags.
+
+## KSamplerPipeNode
+> A sampler node that takes a pipe, conditioning, seed, denoise, and either latent or image_override.
+> Works with any model passed via the pipe.
+
+## PromptBuilderNode
+> Build final positive/negative texts and CLIP conditioning, taking into account styles (from JSON), base texts, tags, and img2txt.
+> Supports custom styles for advanced prompt engineering.
+
+## ListSelectorNode
+> Select an item from a list by index.
+> Useful for UI and dynamic workflows.
+
+## DenoiseSelector
+> Simple node for selecting the denoise value.
+
+## DualTextInput
+> Two text fields for positive and negative prompts.
+
+## ActiveModel
+> Dummy node for JavaScript-side integration (client logic).
+
+## MySwitchIndex (Multi Model Switch)
+> Вузол для вибору одного з декількох вхідних сигналів. Працює у двох режимах:
+>
+> - firstActive — повертає перший не-порожній (не None) вхід та його індекс.
+> - index — повертає вхід із заданим індексом (1-базований), якщо він не порожній.
+>
+> Динамічно керує кількістю входів через UI. Повертає обране значення та його індекс (або 0, якщо не знайдено).
+>
+> Корисно для мульти-модельних пайплайнів, умовної маршрутизації, вибору активного результату.
+
+---
+
+# 🎨 Styles
+
+- Styles are stored in the `Styles` folder inside this package.
+- For dynamic style selection, the API endpoint `/multi_model/get_style_names` is used.
+- A style is a JSON file containing an array of objects, each with `name`, `prompt`, and `negative_prompt` fields.
+
+---
+
+# ⚡ Installation
+
+## Recommended: via ComfyUI-Manager
+1. Open ComfyUI-Manager.
+2. Search for `MultiModel1` (or your package name) and click "Install".
+
+## Manual Install
+1. Copy the `MultiModel1` folder to `ComfyUI/custom_nodes/`.
+2. Restart ComfyUI.
+
+---
+
+# 🚀 Example Usage
+
+1. Add `ModelParamsPipeNode` to select your model and parameters.
+2. Build prompts using `PromptBuilderNode` (optionally connect styles).
+3. Use `KSamplerPipeNode` to generate images.
+4. For multi-model pipelines, add several pipes and switch between them using `MySwitchIndex`.
+
+---
+
+# 🙏 Credits
+
+- [ComfyUI](https://github.com/comfyanonymous/ComfyUI) – The base for node development and workflow.
+- Authors and contributors of this package.
+
+---
+
+**Feedback, bug reports, and suggestions are welcome via GitHub Issues or your favorite chat!**
\ No newline at end of file
diff --git a/Styles/Pixaroma.yaml b/Styles/Pixaroma.yaml
new file mode 100644
index 0000000..ad9526c
--- /dev/null
+++ b/Styles/Pixaroma.yaml
@@ -0,0 +1,2631 @@
+# Ensure that the formatting is kept the same as in this file.
+# Indents in YAML are critical. Ensure proper indentation, as incorrect spacing can cause errors.
+#
+# Best approach is to copy a block of name, negative_prompt and a prompt and then replace their values
+# Note that your text_positive will be added in this part {prompt}
+# Adding - name: random will allow the node to pick random name from this file
+
+- name: none
+ negative_prompt: ''
+ prompt: ''
+
+- name: random
+ negative_prompt: ''
+ prompt: ''
+
+- name: 3D | Abstract
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: abstract 3D render of {prompt}, abstract 3d art, imaginative design, dynamic
+ lighting, immersive presentation, captivating visuals, high-quality rendering
+ techniques, innovative concept, unique aesthetics, creative compositions, visually
+ stunning results, volumetric, 4k
+
+- name: 3D | Abstract > Fluid Dynamics
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: fluid dynamics 3D art style of {prompt}, 3d fluid render, expressive and
+ dynamic, vibrant contrasting colors, lively appearance, mesmerizing flow of shapes,
+ simulation of fluid dynamics, swirling motion, bold colors blending seamlessly,
+ abstract and captivating, fluidity and energy, mesmerizing composition, engaging
+ viewer experience, seamless integration of colors and shapes, volumetric, 4k
+
+- name: 3D | Abstract > Organic 3D Sculpture
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: modern abstract organic 3D sculpture of {prompt}, intricate and fluid shapes,
+ dynamic composition, soft translucent materials, vibrant yet harmonious color
+ palette, organic forms blending with geometric elements, highly detailed textures,
+ surreal and futuristic, captivating lighting effects, high-quality rendering,
+ volumetric lighting, 4k
+
+- name: 3D | Abstract > Soft Forms
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: modern abstract 3D art style of {prompt}, focusing on organic shapes and
+ objects, soft colors, captivating composition, tactile qualities, smoothness,
+ softness, contrast between matte and shiny textures, depth and interest, blend
+ of textures, minimalistic yet complex aesthetic, volumetric, 4k
+
+- name: 3D | Architectural
+ negative_prompt: painting, low-quality rendering, ugly, worst quality, low quality,
+ lowres, JPEG artifacts
+ prompt: professional 3D architectural rendering of {prompt}, realistic visualization,
+ intricate detailing, lifelike textures, dynamic lighting, immersive environment,
+ photorealistic representation, captivating visuals, realistic materials, professional
+ rendering techniques, volumetric, 4k
+
+- name: 3D | Character
+ negative_prompt: low-quality rendering, photo, photorealistic, realism, ugly, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: professional 3D character design of {prompt}, dynamic pose, expert character
+ design, engaging storytelling, captivating visuals, imaginative concept, high-quality
+ rendering, volumetric, 4k
+
+- name: 3D | Character > Cartoon
+ negative_prompt: low-quality rendering, photo, photorealistic, realism, ugly, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: professional 3D cartoon character design of {prompt}, whimsical animation,
+ vibrant personality, exaggerated features, dynamic pose, expert character design,
+ colorful textures, engaging storytelling, versatile animation styles, captivating
+ visuals, imaginative concepts, playful interactions, high-quality rendering, volumetric,
+ 4k
+
+- name: 3D | Character > Cartoon Cute
+ negative_prompt: low-quality rendering, photo, photorealistic, realism, ugly, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: professional 3D design of {prompt}, a cute and adorable cartoon character
+ with big eyes, charming animation, endearing personality, exaggerated features,
+ dynamic pose, captivating expression, expert character design, vibrant and colorful
+ textures, engaging storytelling, versatile animation style, high-quality render,
+ volumetric, 4k
+
+- name: 3D | Character > Surreal Toy
+ negative_prompt: low-quality rendering, photo, photorealistic, realism, ugly, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: surreal toy-like 3D character of {prompt}, dark and whimsical elements,
+ stylized and exaggerated proportions, muted color palette with bold accents, sculptural
+ design with doll-like qualities, eerie and imaginative, high-quality rendering,
+ volumetric lighting, 4k
+
+- name: 3D | Cute Minimal 3D
+ negative_prompt: low-quality rendering, photo, photorealistic, realism, ugly, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: cute minimal 3D render of {prompt}, simple and clean design, soft color
+ palette, smooth and rounded edges, whimsical and playful style, charming and endearing,
+ high-quality rendering, subtle lighting, engaging and visually appealing, minimalist
+ yet expressive, volumetric lighting, 4k
+
+- name: 3D | Dreamlike Surreal Interior
+ negative_prompt: low-quality rendering, ugly, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: dreamlike surreal 3D interior of {prompt}, soft and ethereal atmosphere,
+ clouds blending with interior elements, minimalistic yet surreal composition,
+ natural elements like grass and plants indoors, calming color palette, immersive
+ lighting effects, high-quality rendering, blending fantasy with reality, volumetric
+ light, 4k
+
+- name: 3D | Game Asset
+ negative_prompt: low-quality rendering, photo, photorealistic, realism, ugly, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: 3d game item of {prompt}, high-quality 3D rendering of a game asset, dynamic
+ lighting, captivating visuals, seamless integration, realistic materials, high-quality
+ rendering techniques, versatile application, innovative concepts, optimized for
+ gaming engines, volumetric, 4k
+
+- name: 3D | Geometric 3D Cubism
+ negative_prompt: low-quality rendering, photo, photorealistic, realism, ugly, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: geometric 3D cubism of {prompt}, flat and abstract shapes, layered geometric
+ forms, pastel and muted color palette, clean lines, minimalistic yet expressive
+ composition, cubist influence with modern 3D rendering, subtle lighting, captivating
+ visual storytelling, high-quality rendering, volumetric lighting, 4k
+
+- name: 3D | Hard Surface
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: professional hard surface 3D design modeling of {prompt}, hard surface expert
+ modeling, hard surface 3d render, precise detailing, captivating visuals, professional-grade
+ design, dynamic appearance, attention-grabbing aesthetics, high-quality rendering
+ techniques, volumetric, 4k
+
+- name: 3D | Icon
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: 3D icon design of {prompt}, isolated on solid background, creative icon
+ design, minimalist, depth and dimensionality, dynamic lighting, captivating visuals,
+ high-quality rendering techniques, volumetric, 4k
+
+- name: 3D | Inflatable
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: inflatable 3D rednder of {prompt}, soft and rounded forms, highly glossy
+ and reflective surfaces, balloon-like textures, exaggerated puffy shapes, pastel
+ and vibrant color palette, playful and tactile design, smooth and polished finishes,
+ high-quality rendering, volumetric lighting, 4k
+
+- name: 3D | Isometric
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: isometric 3D render of {prompt}, isometric 3D design, isometric perspective,
+ precise perspective, clean, dynamic lighting, captivating visuals, immersive presentation,
+ high-quality rendering techniques, volumetric, dramatic lighting, 4k
+
+- name: 3D | Luxurious Modern Interior
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: luxurious contemporary interior design of {prompt}, rich color palette ,
+ elegant and modern furnishings, high-end materials, sophisticated lighting, clean
+ lines with opulent touches, soft textures, harmonious balance of luxury and comfort,
+ high-quality rendering, volumetric lighting, 4k
+
+- name: 3D | Low Poly
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: Low poly 3D design of {prompt}, low poly aesthetic, minimalist and stylized
+ appearance, expert modeling software, efficient detailing, immersive presentation,
+ captivating visuals, professional-grade design, dynamic and clean appearance,
+ versatile application, attention-grabbing aesthetics, efficient rendering, suitable
+ for performance-sensitive applications such as games and simulations
+
+- name: 3D | Mech
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: 3d mechanical render of {prompt}, mech style, scifi, futuristic, detailed
+ mech 3D rendering, intricate design, dynamic lighting, captivating visuals, high-quality
+ rendering techniques, futuristic aesthetics, volumetric, 4k
+
+- name: 3D | Minimalist Ribbon 3D Sculpture
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: minimalist ribbon 3D sculpture of {prompt}, smooth and flowing lines, pastel
+ color palette, dynamic and abstract forms, clean and elegant curves, delicate
+ balance of shapes, visually captivating, modern aesthetic, high-quality rendering,
+ soft gradients, volumetric lighting, 4k
+
+- name: 3D | Model
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: detailed 3D model representation of {prompt}, 3d render, captivating visuals,
+ professional-grade design, dynamic appearance, high-quality rendering techniques,
+ volumetric, 4k
+
+- name: 3D | Product
+ negative_prompt: low poly, blurry, painting, low-quality rendering, photo, photorealistic,
+ realism, ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: professional 3d model of {prompt}, 3D product visualization, octane render,
+ immersive presentation, photorealistic rendering, captivating visuals, realistic
+ materials, highly detailed, volumetric, dramatic lighting, 4k
+
+- name: 3D | Sci-Fi
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: futuristic 3D rendering of {prompt}, imaginative design, dynamic lighting,
+ immersive presentation, volumetric, futuristic elements, captivating visuals,
+ realistic materials, high-quality rendering techniques, innovative concepts, otherworldly
+ atmosphere, futuristic aesthetics, immersive storytelling, 4k
+
+- name: 3D | Soft 3D Cartoon Environment
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: soft 3D cartoon environment of {prompt}, smooth and rounded shapes, vibrant
+ yet soft color palette, playful and whimsical atmosphere, clean and minimal detailing,
+ stylized natural elements, subtle lighting with gentle gradients, highly engaging
+ and immersive, high-quality rendering, volumetric lighting, 4k
+
+- name: 3D | Vehicle
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: professional 3D vehicle render of {prompt}, realistic representation, intricate
+ detailing, dynamic lighting, immersive presentation, seamless integration, photorealistic
+ rendering, captivating visuals, realistic materials, high-quality rendering techniques,
+ octane render, highly detailed, volumetric, dramatic lighting, 4k
+
+- name: Art | African Traditional
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: African traditional art style of {prompt}, bold patterns, vibrant colors,
+ intricate designs, dynamic compositions, cultural heritage, adds richness and
+ depth
+
+- name: Art | Afrofuturism Art
+ negative_prompt: Signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Afrofuturism art style of {prompt}, blend of African culture and aesthetics
+ with futuristic elements, reimagines history and imagines alternative futures,
+ black identity, creativity, and resilience
+
+- name: Art | Ancient Egyptian Mural
+ negative_prompt: Signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Ancient Egyptian mural art style of {prompt}, rich cultural heritage, intricate
+ hieroglyphics, vibrant colors, symbolic motifs, depicts scenes from mythology,
+ religion, and daily life, monumental scale, timeless beauty
+
+- name: Art | Atompunk
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Atompunk art style of {prompt}, retro-futuristic, atomic age aesthetics,
+ sleek and streamlined designs, nuclear energy motifs, optimism about technological
+ progress
+
+- name: Art | Baroque
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Baroque art style of {prompt}, dynamic composition, dramatic lighting, rich
+ colors, intricate details, professional-grade execution, captures the grandeur
+ and theatricality of the Baroque period
+
+- name: Art | Bauhaus
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Bauhaus art style of {prompt}, geometric shapes, clean lines, minimalist
+ design, primary colors, focuses on functionality and simplicity, modernist approach,
+ balance between art and industrial design
+
+- name: Art | Biomechanical
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Biomechanical art style of {prompt}, Biology, Machinery, Intricate, Surreal,
+ Organic Forms, Mechanical Structures, Futuristic, Cyberpunk, Fusion, Nature, Technology
+
+- name: Art | Biopunk
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Biopunk art style of {prompt}, explores genetic engineering, biohacking,
+ and biotechnology, organic and living elements, dystopian or utopian visions of
+ a genetically modified future
+
+- name: Art | Byzantine Icon
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Byzantine icon oil painting art style of {prompt}, intricate details, rich
+ colors, religious symbolism, cultural significance, professional-grade execution,
+ spiritual, religious
+
+- name: Art | Cartoon
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: cartoon art style of {prompt}, whimsical character, exaggerated features,
+ vibrant colors, dynamic composition, expressive pose, professional-grade finish,
+ adds humor and charm
+
+- name: Art | Claymation
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Claymation art style of {prompt}, tactile and three-dimensional character,
+ dynamic animation, captures the charm and whimsy of stop-motion animation, suitable
+ for various storytelling and advertising
+
+- name: Art | Comic Book Style
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: comic book art style of {prompt}, comics, dynamic lines, vibrant colors,
+ expressive characters, action-packed composition, adds energy and excitement
+
+- name: Art | Constructivism
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Constructivism Art Style of {prompt}, Industrial materials, geometric abstraction,
+ social purposes, modernity, functional art, the machine age and collective labor,
+ fosters innovation and collaboration
+
+- name: Art | Cubism
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: cubism art style of {prompt}, fragmented forms, geometric shapes, dynamic
+ compositions, vibrant colors, innovative technique, cultural significance
+
+- name: Art | Cybergoth Art
+ negative_prompt: Signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Cybergoth art style of {prompt}, futuristic and edgy aesthetic, combines
+ cyberpunk and gothic elements, neon colors, industrial motifs, alternative fashion
+ and culture
+
+- name: Art | Cyberpunk
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Cyberpunk art style of {prompt}, futuristic cityscapes, neon-lit streets,
+ high-tech and low-life, cybernetic enhancements, dystopian and gritty atmosphere
+
+- name: Art | Dadaism
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Dadaism Art Style of {prompt},Anti-art, absurdity, irony, spontaneity, rejecting
+ conventional aesthetics, collage art
+
+- name: Art | Dark Academia
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Dark Academia art style of {prompt}, evokes the atmosphere of scholarly
+ pursuits and literary classics, rich and moody color palettes, intricate details
+
+- name: Art | Deco
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Art Deco style of {prompt}, Symmetry, streamlined shapes, geometric patterns,
+ luxury, modernity, glamour, sleek lines
+
+- name: Art | Dieselpunk
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Dieselpunk art style of {prompt}, retro-futuristic, industrial aesthetics,
+ mechanical marvels, alternative history, gritty and dystopian atmosphere
+
+- name: Art | Egyptian
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Egyptian art style of {prompt}, iconic symbolism, intricate hieroglyphics,
+ dynamic composition, Egyptian cultural significance
+
+- name: Art | Futurism
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Futurism art style of {prompt}, dynamic composition, bold geometric forms,
+ vibrant colors, captures the spirit of technological advancement and modernity
+
+- name: Art | Gilded
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Gilded art style of {prompt}, opulent, luxurious, metallic elements, divine
+ symbolism, fine craftsmanship
+
+- name: Art | Glitch
+ negative_prompt: Signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Glitch art style of {prompt}, embraces digital errors and glitches, distorted
+ and fragmented imagery, experimental and abstract, challenges traditional notions
+ of perfection and beauty
+
+- name: Art | Gothic
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Gothic art style of {prompt}, gothic details, dramatic compositions, rich
+ symbolism
+
+- name: Art | Interstellar
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Interstellar art style of {prompt}, Cosmic, Space, Celestial, Galactic,
+ Nebulae, Stars, Planets, Exploration, Unknown, Infinity, Futuristic
+
+- name: Art | Japanese Traditional
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Japanese traditional art style of {prompt}, delicate lines, subtle colors,
+ intricate details, dynamic compositions, cultural heritage, adds elegance and
+ sophistication
+
+- name: Art | Linocut
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Linocut art style of {prompt}, relief printing, bold and graphic imagery
+ with striking contrasts
+
+- name: Art | Lucha Libre
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Lucha libre art style of {prompt}, dynamic and colorful compositions, exaggerated
+ characters, captures the excitement and energy of Mexican wrestling culture
+
+- name: Art | Mayan
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Mayan art style of {prompt}, rich cultural heritage, intricate geometric
+ patterns, mayan colors, reflects the spiritual and artistic achievements of the
+ Maya civilization
+
+- name: Art | Minoan
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Minoan art style of {prompt}, dynamic composition, Minoan cultural significance,
+ adds depth and richness
+
+- name: Art | Naive
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Naive art style of {prompt}, simplistic and childlike aesthetic, spontaneous
+ and untrained, captures innocence and purity, features bold colors, exaggerated
+ perspectives, and whimsical themes
+
+- name: Art | Necropunk
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Necropunk art style of {prompt}, dark and macabre, blending of death and
+ technology, eerie and unsettling imagery, explores themes of mortality and decay,
+ unique and thought-provoking concepts
+
+- name: Art | Nouveau
+ negative_prompt: Signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Art Nouveau art style of {prompt},elegant and organic forms, intricate floral
+ motifs, flowing lines, decorative and ornate, influenced architecture, design,
+ and visual arts in the late 19th and early 20th centuries
+
+- name: Art | Pixel Art
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, JPEG artifacts
+ prompt: pixel art style of {prompt}, pixelated design, flat, uses pixelated graphics
+ reminiscent of classic video games, charming simplicity, intricate detailing despite
+ limited resolution
+
+- name: Art | Pop Art
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, JPEG artifacts
+ prompt: Pop art style of {prompt}, vibrant colors, bold outlines, use of popular
+ culture imagery, iconic and recognizable, consumerism and mass media
+
+- name: Art | Propaganda
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: propaganda art style of {prompt}, bold and persuasive imagery, dynamic compositions,
+ serves as a powerful tool for communication and persuasion
+
+- name: Art | Psychedelic
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Psychedelic art style of {prompt}, vibrant and surreal imagery, kaleidoscopic
+ patterns, intense colors, mind-expanding and hallucinatory, reflects the psychedelic
+ experience and counterculture movement
+
+- name: Art | Rococo
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Rococo art style of {prompt}, ornate, light-hearted, elegant, decorative,
+ playful subject, asymmetrical design
+
+- name: Art | Solarpunk
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Solarpunk art style of {prompt}, optimistic vision of the future, sustainable
+ technology, renewable energy sources, lush and green landscapes, community and
+ harmony with nature
+
+- name: Art | Stencil
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Street Art of {prompt}, Urban setting, graffiti, murals, social messages,
+ public spaces, anonymity, vibrant visuals
+
+- name: Art | Street Art
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Stencil art style of {prompt}, urban and contemporary, graphic and bold
+ imagery
+
+- name: Art | Steampunk
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Steampunk art style of {prompt},Victorian-era aesthetics, steam-powered
+ machinery, brass and gears, fantastical inventions, retro-futuristic adventure
+
+- name: Art | Surrealism
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Surrealism art style of {prompt},dreamlike and irrational imagery, explores
+ the unconscious mind, juxtaposition of unlikely elements, challenges reality and
+ logic
+
+- name: Art | Synthwave
+ negative_prompt: Signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Synthwave art style of {prompt},retro-futuristic aesthetic, vibrant neon
+ colors, nostalgic 80s imagery, futuristic landscapes, nostalgic and atmospheric
+
+- name: Art | Ukrainian Folk Art
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Ukrainian folk art style of {prompt},vibrant colors, intricate patterns,
+ dynamic compositions, traditional motifs, cultural heritage, adds richness and
+ depth
+
+- name: Art | Vaporwave
+ negative_prompt: Signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Vaporwave art style of {prompt},nostalgic and surreal aesthetic, 80s and
+ 90s retro imagery, glitch art elements, pastel colors, dreamy and ethereal atmosphere
+
+- name: Art | Westernpunk
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Westernpunk art style of {prompt},fusion of Wild West and futuristic elements,
+ rugged landscapes, cowboy aesthetics, steam-powered technology, adventurous spirit
+
+- name: Craft | Ceramic
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Ceramic craft style of {prompt}, versatile and durable, pottery and ceramic
+ artwork, showcases creativity and craftsmanship
+
+- name: Craft | Ceramic > Cibulak
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Cibulak porcelain art style of {prompt}, delicate and intricately detailed
+ porcelain creations, traditional Kazakh craftsmanship, exquisite hand-painted
+ designs, cultural heritage preservation
+
+- name: Craft | Ceramic > Glass
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Ceramic glass craft style of {prompt}, combines ceramic and glass materials
+ to create unique and innovative artwork, offers versatility in texture and transparency,
+ allows for experimentation with light and color
+
+- name: Craft | Ceramic > Moche
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Moche craft style of {prompt}, ancient Peruvian civilization known for its
+ intricate ceramic vessels and figurines, rich cultural and artistic heritage,
+ showcases advanced craftsmanship and artistic skill
+
+- name: Craft | Ceramic > Porcelain
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Ceramic porcelain craft style of {prompt}, utilizes porcelain clay to create
+ delicate and translucent artworks, smooth texture and white color, allows for
+ intricate detailing and precise forms
+
+- name: Craft | Crochet
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Crochet craft style of {prompt}, versatile and creative, yarn
+
+- name: Craft | Crochet > Amigurumi
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Amigurumi crochet style of {prompt}, Japanese crochet art, cute and whimsical
+ designs, fosters creativity and handcrafting skills
+
+- name: Craft | Cross-stitching
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Cross-stitching art style of {prompt}, traditional and timeless craft, precise
+ and meticulous stitching technique, intricate and decorative piece
+
+- name: Craft | Embossed
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Embossed art style of {prompt}, raised and textured surfaces, adds depth
+ and dimension to artwork, tactile and interactive
+
+- name: Craft | Embroidery
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Embroidery art style of {prompt},decorative designs on fabric, intricate
+ stitching techniques, adds texture and dimension to artwork
+
+- name: Craft | Felt
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Felt art style of {prompt}, tactile and textural, intricate detailing and
+ layering
+
+- name: Craft | Gobelin Tapestry
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Gobelin tapestry art style of {prompt}, intricate woven designs, rich colors
+ and textures
+
+- name: Craft | Kirigami
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Kirigami art style of {prompt}, combines paper cutting with origami folding
+ techniques, creates intricate and dynamic paper sculptures, encourages creativity
+ and precision
+
+- name: Craft | Knitting Art
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Knitting art style of {prompt}, fabric and patterns, intricate designs and
+ textures
+
+- name: Craft | Lapidary
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Lapidary art style of {prompt}, intricate and precise craftsmanship in cutting
+ and polishing gemstones, creates dazzling and unique pieces of jewelry and sculpture,
+ showcases the natural beauty of mineral
+
+- name: Craft | Laser Engraving Wood
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Laser engraving art style of {prompt}, precise and detailed engraving on
+ plywood, allows for intricate designs and patterns, modern and versatile technique,
+ flat, wood engraving art
+
+- name: Craft | Leatherworking
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Leatherworking art style of {prompt}, craftsmanship of creating designs
+ and patterns on leather, carving, stamping, and dyeing techniques
+
+- name: Craft | Macrame
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Macrame art style of {prompt}, uses knotting techniques to create textiles
+ or decorative items, versatile and tactile craft, allows for intricate patterns
+ and designs
+
+- name: Craft | Marquetry
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Marquetry art style of {prompt}, intricate wood inlay technique, creates
+ decorative patterns and images using veneers of different woods, showcases craftsmanship
+ and attention to detail
+
+- name: Craft | Metalwork
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Metalwork art style of {prompt}, manipulation of metal to create sculptures,
+ showcases craftsmanship and technical skill, intricate and durable designs
+
+- name: Craft | Mosaic
+ negative_prompt: worst quality, blurry, normal quality, signature, watermark, ugly,
+ off-center, deformed, cropped, worst quality, low quality, lowres, JPEG artifacts,
+ low details, bad photo, bad photography, bad art
+ prompt: mosaic art style of {prompt}, versatile and decorative, uses small pieces
+ of tile, adds color and texture, glossy, sharp
+
+- name: Craft | Mosaic > Roman
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Roman mosaic art style of {prompt}, intricate and colorful mosaic designs,
+ depict scenes from mythology, daily life, and nature, showcases superb craftsmanship
+ and attention to detail, cultural and historical significance
+
+- name: Craft | Needlepoint
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Needlepoint art style of {prompt}, needlepoint intricate and detailed design
+ created through stitching, rich texture and depth, intricate patterns and color
+ variations, fosters creativity and craftsmanship
+
+- name: Craft | Origami
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Origami art style of {prompt}, traditional Japanese paper folding technique,
+ creates intricate sculptures and designs from paper
+
+- name: Craft | Paper Cut
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: minimalist Paper cut craft style of {prompt}, designs cut from paper, allows
+ for detailed and delicate artwork
+
+- name: Craft | Plasticine
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Plasticine art style of {prompt}, malleable and colorful modeling material,
+ ideal for sculpting and creating 3D artwork
+
+- name: Craft | Pyrography
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Pyrography art style of {prompt},uses heat to burn designs onto wood, creates
+ intricate and permanent markings, showcases craftsmanship and attention to detail
+
+- name: Craft | Quilted
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Quilted art style of {prompt},combines fabric and stitching to create intricate
+ designs and patterns, reflects cultural traditions and personal stories, tactile
+ and cozy, showcases craftsmanship and creativity
+
+- name: Craft | Scrapbooking
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Scrapbooking art style of {prompt},creative arrangement of photographs,
+ memorabilia, and decorative elements in albums or displays, preserves memories
+ and tells stories
+
+- name: Craft | Shadowbox > Paper
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: 3D papercut shadowbox art style of {prompt},intricate paper cutting technique
+ to create layered scenes or designs, plays with light and shadow, adds depth and
+ dimensionality to artwork, depth, silhouette
+
+- name: Craft | Shadowbox > Wood
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: cat of {prompt},3D wood shadowbox art style, layers of wood cut and assembled
+ to create dimensional scenes or designs, natural textures and tones, adds warmth
+ and depth to artwork, depth, silhouette
+
+- name: Craft | 3D Layered Plywood Wall Art
+ negative_prompt: painting, drawing, photo, 2D, flat, high detail, blurry, noisy,
+ disfigured, complex, intricate, signature, watermark, ugly, off-center, deformed,
+ cropped, worst quality, low quality, lowres, JPEG artifacts
+ prompt: 3D plywood laser cut of {prompt}, symmetrical, 3D layered wood wall art
+ style, stacked layers made from plywood, laser cut, on white painted wall, stacked,
+ 3d layered, minimalist, layered, dimensional, depth, silhouette, shadow, handmade,
+ high contrast
+
+- name: Craft | Stained Glass
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts, 3d
+ prompt: Stained glass art style of {prompt}, vitrail, isolated on solid color background,
+ vibrant colors, intricate patterns, luminous effects when hit by sunlight, traditional
+ craftsmanship, flat
+
+- name: Craft | Tapestry
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts, 3d
+ prompt: Tapestry art style of {prompt}, woven textile technique, intricate designs
+ and patterns
+
+- name: Design | Avatar
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Avatar design of {prompt}, avatar design art style, visually appealing and
+ distinctive avatar, professional-grade execution, represents individual or brand
+ identity effectively, enhances online presence and engagement
+
+- name: Design | Banner
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Banner design of {prompt}, banner design art style, eye-catching and informative
+ banner, professional-grade execution, effectively communicates message or event
+ details, captures attention
+
+- name: Design | Brochure
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Brochure design style of {prompt}, informative and visually appealing layout,
+ professional-grade execution, effectively communicates product or service details,
+ enhances brand credibility
+
+- name: Design | Business card
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Business card design of {prompt}, business card art style, professional
+ and memorable business card, professional-grade execution, effectively represents
+ brand identity and contact information
+
+- name: Design | Event Invitation
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Event invitation design style of {prompt}, visually appealing and informative
+ invitation, professional-grade execution, effectively communicates event details,
+ encourages attendance
+
+- name: Design | Favicon
+ negative_prompt: complex, boring, signature, watermark, ugly, off-center, deformed,
+ cropped, frame, worst quality, low quality, lowres, JPEG artifacts
+ prompt: Favicon design of {prompt}, favicon art style, isolated on solid white background,
+ small and recognizable website icon, professional-grade execution, enhances brand
+ recognition and website identity, complements overall design aesthetic
+
+- name: Design | Flyer
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Flyer design style of {prompt}, visually appealing and informative flyer,
+ professional-grade execution, effectively promotes an event or product, engages
+ audience
+
+- name: Design | Icon Design
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Icon design of {prompt}, icon design art style, visually clear and recognizable
+ icon, professional-grade execution, effectively conveys concepts or actions, enhances
+ user interface and experience
+
+- name: Design | Icon Design Simple Black
+ negative_prompt: complex, boring, signature, watermark, ugly, off-center, deformed,
+ cropped, frame, worst quality, low quality, lowres, JPEG artifacts
+ prompt: minimalist modern black icon design of {prompt}, on solid white background,
+ simple stylized icon, vector graphic icon, clean and minimalist vector icon, professional-grade
+ execution, enhances visual clarity and simplicity
+
+- name: Design | Infographic
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Infographic design style of {prompt}, visually engaging and informative
+ graphic, professional-grade execution, effectively communicates complex information
+ or data, enhances understanding
+
+- name: Design | Letterhead
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Letterhead design style of {prompt}, professional and branded letterhead,
+ professional-grade execution, enhances brand identity and communication
+
+- name: Design | Logo
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Logo design of {prompt}, logo design art style, custom and memorable logo,
+ professional-grade execution, captures brand identity and values, timeless and
+ iconic design
+
+- name: Design | Magazine Layout
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Magazine layout design style of {prompt}, visually appealing and well-organized
+ layout, professional-grade execution, effectively showcases content and articles,
+ enhances reader experience
+
+- name: Design | Menu
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Menu design style of {prompt}, visually appealing and informative menu,
+ professional-grade execution, effectively presents food and beverage options,
+ enhances dining experience
+
+- name: Design | Packaging
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Packaging Design of {prompt}, Brand Identity, Visual Communication, Product
+ Presentation, Consumer Appeal, structural integrity, graphic elements, brand recognition,
+ marketing impact, professional design
+
+- name: Design | Poster
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Poster design of {prompt}, poster art style, visually striking and informative
+ poster, professional-grade execution, poster graphic design
+
+- name: Design | Website
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, frame,
+ worst quality, low quality, lowres, JPEG artifacts
+ prompt: Website design of {prompt}, website design art style, web page, user-friendly
+ interface, visually appealing layout, professional-grade execution, responsive
+ design, enhances user experience and engagement
+
+- name: Drawing | Blue Ballpoint Pen
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: dark blue color ballpoint pen drawing of {prompt}, ballpoint drawing art
+ style, expressive dark blue lines, dynamic compositions, professional-grade execution,
+ captures the spontaneity and fluidity of sketching
+
+- name: Drawing | Caricature
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Caricature drawing of {prompt}, caricature art style, exaggerated features,
+ humorous interpretation, dynamic composition, professional-grade execution, adds
+ humor and personality, captures essence in a playful manner
+
+- name: Drawing | Caricature Extreme
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: caricature drawing of {prompt}, extreme caricature art style, highly exaggerated
+ features, humorous interpretation, bold and dynamic composition, professional-grade
+ execution, adds humor and personality, captures essence in a exaggerated playful
+ manner
+
+- name: Drawing | Charcoal
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: charcoal drawing style of {prompt}, dramatic contrast, expressive strokes,
+ rich textures, dynamic composition, professional-grade finish, classic aesthetic
+
+- name: Drawing | Colored Pencil
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Colored pencil drawing art style of {prompt}, vibrant colors, delicate shading,
+ professional-grade execution, captures the richness and depth of traditional drawing
+ techniques
+
+- name: Drawing | Graphite
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: graphite drawing art style of {prompt}, subtle tones, delicate shading,
+ precise detailing, fine textures, expressive lines, intricate compositions, timeless
+ elegance, professional-grade finish, immersive depth, classic aesthetic
+
+- name: Drawing | Ink
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Ink drawing art style of {prompt}, bold lines, expressive strokes, high
+ contrast, intricate details, dynamic compositions, versatile medium, professional-grade
+ finish, classic aesthetic, adds depth and texture, timeless elegance
+
+- name: Drawing | Pastel
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: pastel drawing art style of {prompt}, pastel colors, delicate shading, dynamic
+ composition, soft and velvety pastel textures, amazing pastel drawing
+
+- name: Drawing | Pen
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: pen drawing art style of {prompt}, precise lines, intricate details, high
+ contrast, dynamic compositions, versatile medium, professional-grade finish, timeless
+ elegance, creates bold and expressive strokes
+
+- name: Drawing | Pencil
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Pencil drawing art style of {prompt}, delicate shading, precise lines, professional-grade
+ execution, captures the subtlety and texture of graphite
+
+- name: Drawing | Scratchboard
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Scratchboard drawing art style of {prompt}, intricate details, dramatic
+ contrast, professional-grade execution, captures the tactile quality and depth
+ of etching
+
+- name: Drawing | Technical
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Technical drawing art style of {prompt}, precise and detailed, emphasizes
+ accuracy and clarity, communicates complex ideas visually
+
+- name: Drawing | Zentangle
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Zentangle drawing art style of {prompt}, clean, minimalist, meditative and
+ relaxing, uses repetitive patterns and structured designs to create intricate
+ and abstract artworks, precise lines, professional-grade execution, contrast,
+ black and white
+
+- name: Experimental | Alien Creature 3D
+ negative_prompt: low-quality rendering, photo, photorealistic, realism, ugly, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Professional 3D design of a cute and quirky alien creature with big curious
+ eyes of {prompt}, charming animation, endearing personality, exaggerated features,
+ dynamic pose, captivating expression, expert character design, vibrant and otherworldly
+ textures, engaging storytelling, versatile animation style, high-quality render,
+ volumetric, 4k
+
+- name: Experimental | Apocalyptic Surrealism
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Apocalyptic surrealism art style of {prompt}, digital painting, eerie and
+ haunting, surreal landscapes, dystopian ruins, twisted reality, dreamlike and
+ nightmarish scenes, vibrant and dark color palette, intricate details, professional-grade
+ execution, evokes a sense of doom and otherworldliness
+
+- name: Experimental | Aztec Sculpture 3D
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: Aztec sculpture 3D art style of {prompt}, intricate geometric patterns,
+ stylized figures, rich cultural symbolism, professional-grade execution, volumetric,
+ 4k
+
+- name: Experimental | Bio-Luminous Art
+ negative_prompt: bad anatomy, cropped, cross-eyed, worst quality, low quality, noisy,
+ blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts, mutilated,
+ distorted
+ prompt: Bio-luminous illustration style of {prompt}, combines biological forms with
+ luminous effects, vibrant and glowing, dynamic composition, professional-grade
+ execution, captures the essence of living organisms with an ethereal glow, evokes
+ a sense of wonder and fascination
+
+- name: Experimental | Bio-Mechanical Fantasy
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Bio-mechanical fantasy illustration style of {prompt}, blends organic and
+ mechanical elements, vibrant and surreal, dynamic composition, professional-grade
+ execution, captures the essence of fantasy and science fiction, detailed and imaginative
+ environment
+
+- name: Experimental | Biomechanical Angel 3D
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: Biomechanical Angel 3D character art style of {prompt}, fusion of organic
+ and mechanical elements, ethereal and divine, metallic wings, mechanical details,
+ dynamic pose, high-quality rendering techniques, professional-grade execution,
+ volumetric, 4k
+
+- name: Experimental | Cute Animal 3D
+ negative_prompt: low-quality rendering, photo, photorealistic, realism, ugly, worst
+ quality, low quality, lowres, JPEG artifact
+ prompt: Professional 3D design of a cute cartoon animal of {prompt}, charming animation,
+ endearing personality, exaggerated features, captivating expression, expert character
+ design, vibrant and magical textures, engaging storytelling, versatile animation
+ style, high-quality render, volumetric, 4k
+
+- name: Experimental | Cute Boy 3D
+ negative_prompt: low-quality rendering, photo, photorealistic, realism, ugly, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Professional 3D design of a cute cartoon boy of {prompt}, charming animation,
+ endearing personality, exaggerated features, captivating expression, expert character
+ design, vibrant and magical textures, engaging storytelling, versatile animation
+ style, high-quality render, volumetric, 4k
+
+- name: Experimental | Cute Cyber Ninja 3D
+ negative_prompt: low-quality rendering, photo, photorealistic, realism, ugly, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Professional 3D design of a cute and stealthy cyber ninja with big alert
+ eyes of {prompt}, charming animation, endearing personality, exaggerated features,
+ dynamic pose, captivating expression, expert character design, vibrant and futuristic
+ textures, engaging storytelling, versatile animation style, high-quality render,
+ volumetric, 4k
+
+- name: Experimental | Cute Cyberpunk
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Cute Cyberpunk illustration art style of {prompt}, combines cyberpunk elements
+ with cute aesthetics, vibrant and neon colors, dynamic and charming compositions,
+ captures the essence of cute futuristic worlds, professional-grade execution,
+ evokes a sense of futuristic cuteness
+
+- name: Experimental | Cute Girl 3D
+ negative_prompt: low-quality rendering, photo, photorealistic, realism, ugly, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Professional 3D design of a cute cartoon girl of {prompt}, charming animation,
+ endearing personality, exaggerated features, captivating expression, expert character
+ design, vibrant and magical textures, engaging storytelling, versatile animation
+ style, high-quality render, volumetric, 4k
+
+- name: Experimental | Cute Knight 3D
+ negative_prompt: low-quality rendering, photo, photorealistic, realism, ugly, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Professional 3D design of a cute and brave medieval knight with big noble
+ eyes of {prompt}, charming animation, endearing personality, exaggerated features,
+ dynamic pose, captivating expression, expert character design, vibrant and detailed
+ textures, engaging storytelling, versatile animation style, high-quality render,
+ volumetric, 4k
+
+- name: Experimental | Cute Monster 3D
+ negative_prompt: low-quality rendering, photo, photorealistic, realism, ugly, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Professional 3D design of a cute cartoon monster of {prompt}, adorable creature,
+ charming animation, endearing personality, exaggerated features, captivating expression,
+ expert character design, vibrant and magical textures, engaging storytelling,
+ versatile animation style, high-quality render, volumetric, 4k
+
+- name: Experimental | Cute Robot 3D
+ negative_prompt: low-quality rendering, photo, photorealistic, realism, ugly, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Professional 3D design of a cute and friendly futuristic robot with big
+ glowing eyes of {prompt}, charming animation, endearing personality, sleek and
+ exaggerated features, dynamic pose, captivating expression, expert character design,
+ vibrant and metallic textures, engaging storytelling, versatile animation style,
+ high-quality render, volumetric, 4k
+
+- name: Experimental | Cute Victorian
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Cute Victorian drawing art style of {prompt}, combines Victorian-era elegance
+ with cute aesthetics, soft and pastel colors, dynamic and charming compositions,
+ captures the essence of cute and historical worlds, professional-grade execution,
+ evokes a sense of vintage charm and cuteness
+
+- name: Experimental | Character Sheet Cartoon
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Character sheet style of {prompt}, expressive cartoon character, multiple
+ dynamic poses and exaggerated facial expressions, front, side, and back views,
+ action poses, emotion study, clean lines, vibrant colors, playful and engaging,
+ professional-grade character design, clearly defined features for animation, suitable
+ for creating character personality and storytelling, ideal for animation and game
+ design, well-organized layout showcasing emotions, movement, and body language.
+
+- name: Experimental | Cyber Couture
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Cyber couture fashion style of {prompt}, inspired by futuristic and cybernetic
+ aesthetics, uses innovative materials and designs, professional-grade execution,
+ captures the essence of high-tech fashion, emphasizes creativity and technological
+ advancement
+
+- name: Experimental | Cybernetic Flora
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Cybernetic flora illustration style of {prompt}, blends plant life with
+ cybernetic elements, dynamic and futuristic composition, professional-grade execution,
+ captures the beauty of bio-mechanical fusion, evokes a sense of innovation and
+ natural harmony
+
+- name: Experimental | Divine Portraiture
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Divine portraiture art style of {prompt}, digital painting, ethereal and
+ spiritual, soft lighting with glowing halos, classical religious influence, rich
+ and muted color palette, captivating expression of serenity and devotion, intricate
+ detailing, professional-grade execution, evokes a sense of holiness and reverence,
+ high contrast between light and shadows, realistic and symbolic elements, 4k
+
+- name: Experimental | Dreamscape Mapping
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Dreamscape mapping illustration style of {prompt}, visualizes dreamlike
+ landscapes and surreal environments, uses imaginative and abstract elements, dynamic
+ composition, professional-grade execution, captures the essence of the subconscious
+ mind, evokes a sense of wonder and mystery
+
+- name: Experimental | Dreamwave
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Dreamwave illustration style of {prompt}, blends dreamy and surreal elements
+ with vibrant and fluid composition, uses soft gradients and glowing effects, professional-grade
+ execution, captures the essence of dreamscapes, evokes a sense of wonder and imagination
+
+- name: Experimental | Dreamy Animal
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Dreamy Animal illustration art style of {prompt}, combines dreamy elements
+ with adorable animals, soft and pastel colors, dynamic and charming compositions,
+ captures the essence of cute and dreamlike animal worlds, professional-grade execution,
+ evokes a sense of serenity and cuteness
+
+- name: Experimental | Eldritch Minimalism
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Eldritch Minimalism painting art style of {prompt}, combines minimalist
+ and eldritch horror elements, stark and haunting compositions, muted and eerie
+ colors, captures the essence of horror with minimalist precision, professional-grade
+ execution, evokes a sense of existential dread and minimalist terror
+
+- name: Experimental | Ethereal Assassin 3D
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: Ethereal Assassin 3D character art style of {prompt}, ghostly and stealthy,
+ shadowy figure, dynamic pose, glowing eyes, high-quality rendering techniques,
+ professional-grade execution, volumetric, 4k
+
+- name: Experimental | Ethereal Fluidity
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Ethereal fluidity painting art style of {prompt}, uses fluid and flowing
+ brushstrokes, creates a sense of movement and lightness, dynamic and abstract
+ composition, professional-grade execution, captures the beauty of fluid dynamics,
+ evokes a sense of calm and serenity
+
+- name: Experimental | Ethereal Steam
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Ethereal Steam painting art style of {prompt}, merges steampunk elements
+ with ethereal, ghostly imagery, soft pastel colors, wispy forms, intricate mechanical
+ details, combines the solidity of steampunk machinery with the lightness of ethereal
+ beings, professional-grade execution
+
+- name: Experimental | Fae Fantasy
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Fae Fantasy painting art style of {prompt}, blends elements of fairies and
+ fantasy, soft lines, vibrant colors, whimsical compositions, captures the essence
+ of magical creatures and enchanted forests, professional-grade execution, evokes
+ a sense of fairy-tale magic and wonder
+
+- name: Experimental | Fairy Tale Chronicles
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Fairy tale chronicles art style of {prompt}, digital painting, storybook-like
+ illustration, charming character, vibrant and pastel colors, whimsical environments,
+ detailed and imaginative scenes, professional-grade execution, creates an enchanting
+ and narrative-driven world
+
+- name: Experimental | Fairy Tale Cute
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Fairy Tale Cute painting art style of {prompt}, blends fairy tale elements
+ with cute aesthetics, vibrant and pastel colors, imaginative and enchanting compositions,
+ captures the essence of cute fairy tale worlds, professional-grade execution,
+ evokes a sense of magic and charm
+
+- name: Experimental | Geomancer 3D
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: Geomancer 3D character art style of {prompt}, earth magic user, intricate
+ robes with stone patterns, glowing runes, dynamic pose, high-quality rendering
+ techniques, professional-grade execution, volumetric, 4k
+
+- name: Experimental | Holographic Chic
+ negative_prompt: signature, watermark, low quality, JPEG artifacts, off-center,
+ deformed, cropped, worst quality
+ prompt: Holographic chic fashion style of {prompt}, incorporates holographic and
+ iridescent materials, futuristic and eye-catching designs, professional-grade
+ execution, captures the essence of modern and high-tech fashion, emphasizes creativity
+ and innovation
+
+- name: Experimental | Legends Digital Painting
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: legends art style of {prompt}, digital painting, epic and mystical, game
+ character with magical abilities, intricate details, rich color palette, atmospheric
+ effects, professional-grade execution, captures the essence of ancient legends
+ and powerful magic
+
+- name: Experimental | Liquid Light
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Liquid light painting art style of {prompt}, uses fluid and luminous colors,
+ creates a sense of light and movement, dynamic and abstract composition, professional-grade
+ execution, captures the beauty of illuminated art, evokes a sense of wonder and
+ serenity
+
+- name: Experimental | Mechanical Titan 3D
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: Mechanical Titan 3D character of {prompt}, 3D mech, 3D render art style,
+ massive robotic entity, mechanical and industrial design, glowing power cores,
+ dynamic pose, high-quality rendering techniques, professional-grade execution,
+ volumetric, 4k
+
+- name: Experimental | Mythical Mechanica 3D
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: Mythical Mechanica 3D render of {prompt}, blend of mythical creatures with
+ mechanical elements, dynamic lighting, vibrant colors, high-quality rendering
+ techniques, professional-grade execution, captivating visuals, volumetric, 4k
+
+- name: Experimental | Nebula Dreams
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: Nebula Dreams 3D render of {prompt}, cosmic clouds and nebulas, vibrant
+ colors, dynamic lighting, surreal and dreamlike, high-quality rendering techniques,
+ professional-grade execution, captivating visuals, volumetric, 4k
+
+- name: Experimental | Neural Dreams
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Neural dreams illustration style of {prompt}, inspired by neural networks
+ and artificial intelligence, abstract and surreal, dynamic compositions, vibrant
+ and fluid colors, professional-grade execution, captures the essence of machine
+ learning and human creativity
+
+- name: Experimental | Occult Expressionism
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Occult Expressionism painting art style of {prompt}, merges abstract expressionism
+ and occult themes, dark and chaotic compositions, vibrant and eerie colors, expressive
+ brushwork, captures the essence of emotional turmoil and supernatural elements,
+ professional-grade execution, evokes a sense of mystical chaos and expressive
+ darkness
+
+- name: Experimental | Pastel Goth Cute
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Pastel Goth Cute illustration art style of {prompt}, combines pastel goth
+ elements with cute aesthetics, soft and pastel colors, dynamic and charming compositions,
+ captures the essence of cuteness with a goth twist, professional-grade execution,
+ evokes a sense of sweet darkness and charm
+
+- name: Experimental | Phantasmagoric Abstract
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Phantasmagoric Abstract painting art style of {prompt}, blends abstract
+ expressionism with phantasmagoric elements, chaotic and dreamlike compositions,
+ surreal colors, captures the essence of abstract horror and surreal beauty, professional-grade
+ execution, evokes a sense of nightmarish abstraction and phantasmagoric wonder
+
+- name: Experimental | Phantasmal Visions
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Phantasmal visions illustration style of {prompt}, blends ghostly and surreal
+ elements with vibrant and fluid compositions, uses soft gradients and glowing
+ effects, professional-grade execution, captures the essence of ethereal beauty,
+ evokes a sense of wonder and mystery
+
+- name: Experimental | Phantom Rococo
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Phantom Rococo painting art style of {prompt}, blends rococo and ghostly
+ elements, ornate and intricate compositions, soft and eerie colors, captures the
+ elegance of rococo with a spectral twist, professional-grade execution, evokes
+ a sense of haunted beauty and rococo grace
+
+- name: Experimental | Quantum Sketching
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Quantum sketching art style of {prompt}, abstract and dynamic, inspired
+ by quantum physics, uses fluid lines and shapes, professional-grade execution,
+ captures the essence of quantum mechanics, evokes a sense of mystery and complexity
+
+- name: Experimental | Radiant Fantasy
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: Radiant Fantasy 3D render of {prompt}, glowing fantasy landscapes, vibrant
+ colors, dynamic lighting, immersive presentation, high-quality rendering techniques,
+ professional-grade execution, captivating visuals, volumetric, 4k
+
+- name: Experimental | Robot Cute
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Robot Cute illustration art style of {prompt}, blends robotic elements with
+ cute aesthetics, vibrant and pastel colors, dynamic and charming compositions,
+ captures the essence of cute robots in playful scenes, professional-grade execution,
+ evokes a sense of mechanical cuteness and whimsy
+
+- name: Experimental | Shadow Mage 3D
+ negative_prompt: painting, low-quality rendering, photo, photorealistic, realism,
+ ugly, worst quality, low quality, lowres, JPEG artifacts
+ prompt: Shadow Mage 3D character art style of {prompt}, master of dark magic, ethereal
+ and mysterious, glowing eyes, shadowy effects, dynamic pose, high-quality rendering
+ techniques, professional-grade execution, volumetric, 4k
+
+- name: Experimental | Voodoo Surrealism
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Voodoo Surrealism painting art style of {prompt}, combines voodoo and surrealist
+ elements, dark and mystical composition, vibrant and eerie colors, symbolic and
+ dreamlike imagery, captures the essence of spiritual mysticism and surreal fantasy,
+ professional-grade execution, evokes a sense of supernatural wonder and surreal
+ mystery
+
+- name: Experimental | Whimsical Chibi
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Whimsical Chibi painting art style of {prompt}, combines whimsical elements
+ with chibi character, soft and pastel colors, dynamic and playful compositions,
+ captures the essence of cuteness and whimsy, professional-grade execution, evokes
+ a sense of joy and delight
+
+- name: Experimental | Whimsical Love
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Whimsical cartoon illustration style of {prompt}, digital painting illustration,
+ characters in a charming, playful pose, soft and heartwarming color palette, exaggerated
+ features and expressions, dynamic yet simple composition, captures the essence
+ of love and joy, lighthearted, cute, and endearing, professional-grade execution,
+ evokes a sense of warmth and affection, with heart symbols and playful elements
+ to enhance the emotional connection
+
+- name: Fashion | Beachwear
+ negative_prompt: signature, watermark, low quality, JPEG artifacts, off-center,
+ deformed, cropped, worst quality
+ prompt: Beachwear fashion style of {prompt},designed for leisure activities and
+ relaxation, features lightweight and breezy clothing, reflects a carefree and
+ laid-back attitude
+
+- name: Fashion | Boho
+ negative_prompt: signature, watermark, low quality, JPEG artifacts, off-center,
+ deformed, cropped, worst quality
+ prompt: Boho fashion style of {prompt},inspired by bohemian and hippie aesthetics,
+ characterized by free-spirited and eclectic clothing choices, features flowing
+ fabrics, floral prints, and ethnic-inspired details, promotes individuality and
+ self-expression, embraces a laid-back and carefree attitude
+
+- name: Fashion | Cosplay
+ negative_prompt: signature, watermark, low quality, JPEG artifacts, off-center,
+ deformed, cropped, worst quality
+ prompt: Cosplay fashion style of {prompt},allows individuals to embody their favorite
+ fictional characters, promotes creativity and craftsmanship, features elaborate
+ costumes and accessories, celebrates diverse interests and fandoms
+
+- name: Fashion | Cyberpunk
+ negative_prompt: signature, watermark, low quality, JPEG artifacts, off-center,
+ deformed, cropped, worst quality
+ prompt: Cyberpunk fashion style of {prompt},inspired by futuristic dystopian settings,
+ features high-tech and futuristic clothing, incorporates elements of technology
+ and urban culture, promotes a bold and avant-garde aesthetic
+
+- name: Fashion | Emo Fashion
+ negative_prompt: signature, watermark, low quality, JPEG artifacts, off-center,
+ deformed, cropped, worst quality
+ prompt: Emo fashion style of {prompt},characterized by dark colors, layered clothing,
+ and edgy accessories, allows individuals to express emotions and individuality,
+ often incorporates elements of punk and gothic styles, promotes self-expression
+ and authenticity
+
+- name: Fashion | Glamour
+ negative_prompt: signature, watermark, low quality, JPEG artifacts, off-center,
+ deformed, cropped, worst quality
+ prompt: Glamour fashion style of {prompt},epitomizes sophistication and elegance,
+ features luxurious fabrics like silk and satin, embellishments, promotes a polished
+ and glamorous look, opulence and refinement
+
+- name: Fashion | Goth
+ negative_prompt: signature, watermark, low quality, JPEG artifacts, off-center,
+ deformed, cropped, worst quality
+ prompt: Goth fashion style of {prompt},characterized by dark and dramatic clothing
+ choices, often includes black clothing, lace, leather, and Victorian-inspired
+ elements, promotes a sense of mystery and theatricality, celebrates beauty in
+ the macabre, encourages self-expression and embracing the unconventional
+
+- name: Fashion | Metalhead
+ negative_prompt: signature, watermark, low quality, JPEG artifacts, off-center,
+ deformed, cropped, worst quality
+ prompt: Metalhead fashion style of {prompt},inspired by heavy metal music culture,
+ features black clothing, leather jackets, band t-shirts, and metal accessories,
+ promotes individuality and rebellion, celebrates a love for music and expression
+ through clothing
+
+- name: Fashion | Normcore
+ negative_prompt: signature, watermark, low quality, JPEG artifacts, off-center,
+ deformed, cropped, worst quality
+ prompt: Normcore fashion style of {prompt},embraces simplicity and everyday clothing
+ items, focuses on comfort and practicality, promotes a minimalist and unpretentious
+ aesthetic, encourages mixing and matching basic wardrobe staples, celebrates understated
+ elegance and timeless style
+
+- name: Fashion | Preppy
+ negative_prompt: signature, watermark, low quality, JPEG artifacts, off-center,
+ deformed, cropped, worst quality
+ prompt: Preppy fashion style of {prompt},characterized by classic and timeless clothing
+ choices, features tailored silhouettes, vibrant colors, and traditional patterns
+ like plaid and stripes, promotes a polished and sophisticated look, reflects a
+ sense of privilege and tradition associated with elite education
+
+- name: Fashion | Psychobilly
+ negative_prompt: signature, watermark, low quality, JPEG artifacts, off-center,
+ deformed, cropped, worst quality
+ prompt: Psychobilly fashion style of {prompt},combines elements of rockabilly, punk,
+ and retro influences, characterized by bold prints, vintage-inspired clothing,
+ and edgy accessories, promotes a rebellious and retro aesthetic, encourages individuality
+ and creativity
+
+- name: Fashion | Rave
+ negative_prompt: signature, watermark, low quality, JPEG artifacts, off-center,
+ deformed, cropped, worst quality
+ prompt: Rave fashion style of {prompt},vibrant and colorful clothing choices, featuring
+ neon colors, bold patterns, and futuristic designs, encourages self-expression
+ and creativity, incorporates elements of dance culture and electronic music, promotes
+ a sense of community and celebration
+
+- name: Fashion | Sci-Fi
+ negative_prompt: signature, watermark, low quality, JPEG artifacts, off-center,
+ deformed, cropped, worst quality
+ prompt: Sci-Fi Inspired fashion style of {prompt},draws inspiration from science
+ fiction movies, and futurism, features futuristic silhouettes, and avant-garde
+ designs, promotes imagination and innovation in fashion, explores concepts of
+ technology
+
+- name: Fashion | Sportswear
+ negative_prompt: signature, watermark, low quality, JPEG artifacts, off-center,
+ deformed, cropped, worst quality
+ prompt: Sportswear fashion style of {prompt},designed for athletic activities and
+ casual wear, features comfortable and functional clothing, and performance fabrics,
+ promotes an active lifestyle and physical fitness
+
+- name: Fashion | Steampunk
+ negative_prompt: signature, watermark, low quality, JPEG artifacts, off-center,
+ deformed, cropped, worst quality
+ prompt: Steampunk fashion style of {prompt},inspired by Victorian-era machinery
+ and science fiction, features a mix of vintage clothing with futuristic elements,
+ promotes creativity and craftsmanship, encourages DIY and upcycling, celebrates
+ a love for exploration and adventure
+
+- name: Fashion | Streetwear
+ negative_prompt: signature, watermark, low quality, JPEG artifacts, off-center,
+ deformed, cropped, worst quality
+ prompt: Streetwear fashion style of {prompt},influenced by urban culture and street
+ fashion, features casual and comfortable clothing with bold graphics, promotes
+ self-expression and individuality, celebrates creativity and innovation in design,
+ reflects the diverse influences of music, art, and sports
+
+- name: Fashion | Vintage
+ negative_prompt: signature, watermark, low quality, JPEG artifacts, off-center,
+ deformed, cropped, worst quality
+ prompt: Vintage fashion style of {prompt},embraces clothing and accessories from
+ previous eras, celebrates timeless designs and craftsmanship, allows for unique
+ and one-of-a-kind looks, evokes nostalgia and a sense of history
+
+- name: Fashion | Winter
+ negative_prompt: signature, watermark, low quality, JPEG artifacts, off-center,
+ deformed, cropped, worst quality
+ prompt: Winter fashion style of {prompt},designed for cold weather, features cozy
+ and warm clothing, comfort and chicness
+
+- name: Illustration | Art Deco
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Art Deco illustration style of {prompt}, elegant and geometric designs,
+ streamlined and symmetrical compositions, embodies the glamour and sophistication
+ of the Art Deco era, influenced by modernism and machine aesthetics
+
+- name: Illustration | Animal Cute
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: "cute cartoon animal illustration of {prompt}, adorable and fluffy animal\
+ \ with large eyes and round features, playful and endearing expressions, vibrant\
+ \ and lively colors, whimsical and soft design, perfect for children\u2019s books\
+ \ or merchandise"
+
+- name: Illustration | Anime
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: anime art style of {prompt}, anime digital art, expressive anime art, dynamic
+ composition, anime style, vibrant, studio anime, highly detailed
+
+- name: Illustration | Anime > Chibi
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Chibi anime art style of {prompt}, cute and exaggerated characters, large
+ heads and small bodies, expressive facial features, playful and whimsical, popular
+ in manga and anime fandoms
+
+- name: Illustration | Anime > Detailed Illustration
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: hyper-detailed anime illustration of {prompt}, anime art style, every element
+ meticulously crafted, complex backgrounds with rich textures and depth, vibrant
+ and harmonious color palette, dynamic lighting and shadows, capturing fine details
+ in every scene, magical or surreal atmosphere, lifelike gestures and movements,
+ elaborate compositions with multiple layers of detail, blending realism and anime
+ aesthetics, fully immersive and visually captivating storytelling
+
+- name: Illustration | Anime > Sci-Fi Cityscape
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: futuristic anime cityscape of {prompt}, anime art style, neon-lit skyscrapers,
+ advanced technology, bustling urban environment, clean lines and sharp details,
+ sci-fi atmosphere, cyberpunk vibes, advanced infrastructure, dramatic perspectives,
+ high-tech and futuristic designs
+
+- name: Illustration | Anime > Fantasy Landscape
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: fantasy anime landscape of {prompt}, vast and imaginative anime landscape,
+ epic and cinematic scenery, detailed anime, magical and otherworldly atmosphere,
+ fantastical environments, lush and vibrant colors
+
+- name: Illustration | Anime > Kawaii
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Kawaii anime art style of {prompt}, cute, adorable characters with big eyes
+ and small mouths, pastel colors, playful and endearing
+
+- name: Illustration | Anime > Mecha
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Mecha anime art style of {prompt}, focuses on giant robots and mechanical
+ suits, intricate mechanical designs, dynamic action scenes, futuristic settings,
+ appeals to fans of science fiction and action genres
+
+- name: Illustration | Anime > Studio Ghibli Style
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: "Studio Ghibli anime style of {prompt}, anime richly detailed landscapes,\
+ \ lush greenery, magical atmosphere, soft and vibrant color palettes, whimsical\
+ \ and dreamlike anime environments, beautifully crafted nature scenes, evokes\
+ \ nostalgia and serenity, inspired by Hayao Miyazaki\u2019s worldbuilding."
+
+- name: Illustration | Anime > Realistic
+ negative_prompt: painting, drawing, signature, watermark, ugly, off-center, deformed,
+ cropped, frame, worst quality, low quality, lowres, JPEG artifacts
+ prompt: Realistic anime art style of {prompt}, combines anime aesthetics with lifelike
+ details, detailed character designs, intricate backgrounds, immersive storytelling
+
+- name: Illustration | Cartoon
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Cartoon illustration style of {prompt}, whimsical and expressive characters
+ exaggerated features and emotions, versatile and adaptable for various storytelling
+ purposes
+
+- name: Illustration | Cartoon Character on White BG
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: cartoon digital painting art style of {prompt}, isolated on solid white
+ background, adorable, big eyes, cute cartoon character
+
+- name: Illustration | Cartoon Pastel Cute
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: "pastel cute cartoon illustration of {prompt}, soft and soothing pastel\
+ \ color palette, adorable characters with round and simple shapes, gentle gradients,\
+ \ light and fluffy textures, whimsical and heartwarming, perfect for children\u2019\
+ s content, kawaii and endearing design"
+
+- name: Illustration | Children's book
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Children's book illustration style of {prompt}, whimsical and charming imagery,
+ bright and playful colors, engaging characters and storytelling, cartoon
+
+- name: Illustration | Cute Food Character
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: cute cartoon food character illustration of {prompt}, anthropomorphic food
+ item with big eyes and smiles, bright and colorful design, simple shapes and charming
+ expressions, playful and humorous, designed to evoke joy and hunger, adorable
+ and delightful
+
+- name: Illustration | Doodle Cute
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: "doodle cute cartoon illustration of {prompt}, simple and childlike hand-drawn\
+ \ doodles, playful and spontaneous, round and soft characters, bright and cheerful\
+ \ colors, perfect for kids\u2019 content, casual and fun design that evokes happiness\
+ \ and creativity"
+
+- name: Illustration | Fantasy
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Fantasy illustration style of {prompt}, transports viewers to imaginative
+ worlds, epic landscape, and heroic adventures, sparks wonder and inspiration
+
+- name: Illustration | Fantasy Cartoon on White BG
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Watercolor cartoon illustration on solid white background of {prompt}, enchanted,
+ adorable, Digital Cartoon Illustration, a simple and charming design
+
+- name: Illustration | Fashion
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Fashion illustration style of {prompt}, captures the latest trends and designs
+ in clothing and accessories, elegant and stylized figures, showcases creativity
+ and imagination in the fashion industry
+
+- name: Illustration | Flat Cute Cartoon
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: "flat cute cartoon illustration of {prompt}, simple and bold shapes, minimal\
+ \ shading, bright and cheerful colors, playful characters, round edges and exaggerated\
+ \ features, modern and clean aesthetic, perfect for children\u2019s media or minimalist\
+ \ designs"
+
+- name: Illustration | Game Art
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Game art illustration style of {prompt}, game illustration, diverse and
+ immersive visuals, whimsical, dynamic characters and environments, rich color
+ palettes, enhances storytelling and gameplay experience
+
+- name: Illustration | Illuminated Manuscript
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Illuminated manuscript art style illustration of {prompt}, medieval illustration,
+ intricate and detailed illustration, vibrant colors and gold leaf accents, showcases
+ meticulous craftsmanship and dedication
+
+- name: Illustration | Pop Art
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Pop art illustration style of {prompt}, vibrant and bold colors, uses imagery
+ from popular culture, incorporate elements of mass media and consumerism, celebrates
+ the mundane and everyday objects
+
+- name: Illustration | Retro
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Retro illustration style of {prompt}, nostalgic and vintage aesthetics,
+ inspired by design elements from past decades, evokes a sense of nostalgia and
+ charm
+
+- name: Illustration | Modern
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Modern illustration style of {prompt}, contemporary and cutting-edge, embraces
+ new techniques and technologies, reflects current trends and cultural influences
+
+- name: Illustration | Modernism
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Modernism illustration style of {prompt}, embraces experimentation and abstraction,
+ breaks away from traditional representation, explores new forms and techniques,
+ reflects the spirit of innovation and progress.
+
+- name: Illustration | Super Cute Creature
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: super cute cartoon creature illustration of {prompt}, tiny fantasy creature
+ with adorable and exaggerated features, bright and bold colors, playful and quirky
+ designs, friendly and inviting expressions, whimsical and joyful, perfect for
+ kids and fantasy content
+
+- name: Illustration | Sticker
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Sticker of {prompt}, sticker art style isolated on solid color background
+
+- name: Illustration | Sticker Cute
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Cute adorable cartoon sticker art style isolated on solid color background,
+ {prompt}, charming and endearing characters or designs, appeals to emotions like
+ joy and affection
+
+- name: Illustration | Sticker Watercolor
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Sticker of {prompt}, art style isolated on solid color background of {prompt},
+ watercolor painting art style, transparent and delicate layers, luminous and ethereal
+ effects, spontaneous and fluid compositions, subtle gradients and blending
+
+- name: Painting | Abstract Expressionism
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Abstract Expressionism art style of {prompt}, emphasizes spontaneous and
+ gestural brushwork, explores emotions and inner thoughts, non-representational
+ and subjective influenced by the subconscious and the act of painting itself
+
+- name: Painting | Acrylic
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Acrylic Paint art style of {prompt}, fast-drying paint, versatile, vibrant
+ colors, expressive brushwork, rich textures, dynamic compositions, bold contrasts,
+ layered depth, tactile quality, fluid movement, lively energy, immersive atmosphere,
+ professional-grade finish
+
+- name: Painting | Aerosol
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Aerosol paint art style of {prompt}, spray painted, vibrant colors, seamless
+ blending, dynamic compositions, bold contrasts, urban aesthetic, professional-grade
+ results
+
+- name: Painting | Children Book Art
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: digital painting of {prompt}, whimsical children's book art style, charming
+ and inviting illustration style, soft and rounded shapes, warm and inviting color
+ palette, creates a friendly and serene atmosphere, simplicity and clarity make
+ it accessible and enjoyable for a wide audience, imaginative scene with fantastical
+ elements in a storybook-like setting, encourages viewer's sense of wonder and
+ exploration
+
+- name: Painting | Chinese Ink Brush
+ negative_prompt: Chinese writing, signature, watermark, photo, photorealistic, realism,
+ ugly, off-center, deformed, 35mm film, dslr, cropped, frame, worst quality, low
+ quality, lowres, JPEG artifacts
+ prompt: Chinese ink brush art style of {prompt}, graceful brushwork, elegant compositions,
+ traditional motifs, professional-grade execution, captures the essence of Chinese
+ culture and aesthetics
+
+- name: Painting | Digital
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Digital painting art style of {prompt}, dynamic composition, professional-grade
+ execution
+
+- name: Painting | Digital Fantasy Game Art
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: digital painting art style of {prompt}, fantasy video game concept art style,
+ dynamic and richly detailed composition, vibrant colors, action-packed scene,
+ emphasizes dramatic poses and expressive faces, immersive environments with fantasy
+ backgrounds, designed to draw viewers into fantastical worlds, typical for character
+ and environment designs in video games
+
+- name: Painting | Fantasy Art
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Fantasy painting art style of {prompt}, imaginative, dynamic composition,
+ professional-grade execution, creates immersive world and landscape, painterly,
+ epic, magical
+
+- name: Painting | Fantasy Cartoon
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Fantasy cartoon concept art style of {prompt}, cartoon cute digital painting,
+ imaginative, dynamic composition, whimsical expression, adorable, playful character,
+ professional-grade execution, creates immersive world and landscape, brush strokes
+
+- name: Painting | Fantasy Digital Art
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Fantasy concept art style of {prompt}, digital painting, imaginative, dynamic
+ composition, professional-grade execution, creates immersive world and landscape,
+ brush strokes, epic, magical
+
+- name: Painting | Fantasy Game Concept Item
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Fantasy game concept art on solid color background of {prompt}, game item
+ design, detailed and painterly style, focus on fantasy elements, attention to
+ texture and additional elements like, suitable for video games or animation
+
+- name: Painting | Fresco
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Fresco painting art style of {prompt}, ancient painting technique dating
+ back to antiquity, rich colors and textures, timeless aesthetic, historical significance,
+ evokes a sense of tradition and craftsmanship
+
+- name: Painting | Gouache
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: gouache painting style of {prompt}, gouache opaque colors, matte finish,
+ vibrant hues, dynamic compositions, professional-grade result, adds depth and
+ texture
+
+- name: Painting | Gouache Cartoon
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: gouache painting style of {prompt}, gouache vibrant colors, adorable, whimsical
+ expression, playful character, dynamic compositions, professional-grade result,
+ adds depth and texture
+
+- name: Painting | Graffiti
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Graffiti aerosol painting art style of {prompt}, bold composition, vibrant
+ colors, mural, urban aesthetic, hip hop culture
+
+- name: Painting | Grimdark
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Grimdark painting art style of {prompt}, dark and brooding composition,
+ dramatic lighting, captures the sinister and macabre atmosphere
+
+- name: Painting | Impasto
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: impasto painting art style of {prompt}, thick and textured brushwork, vibrant
+ colors, tactile quality, expressive strokes, dynamic compositions, bold contrasts,
+ dramatic lighting effects, immersive texture, professional-grade finish, adds
+ depth and dimension, creates visual interest
+
+- name: Painting | Impressionism Painting Style
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Impressionism painting art style of {prompt}, loose brushwork, captures
+ the fleeting effects of light and atmosphere
+
+- name: Painting | Magic Realism
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Magic realism painting art style of {prompt}, surreal compositions, vibrant
+ colors, blurs the line between reality and fantasy
+
+- name: Painting | Oil Painting
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: oil painting art style of {prompt}, rich colors, lush textures, expressive
+ brushwork, blendable layers, dynamic compositions, professional-grade finish,
+ versatile medium, timeless elegance, immersive depth, vibrant hues, intricate
+ detailing, adds depth and dimension
+
+- name: Painting | Palette Knife
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: palette knife painting art style of {prompt}, bold textures, impasto effects,
+ expressive strokes, vibrant colors, dynamic compositions, professional-grade finish,
+ adds depth and dimension, creates tactile quality, immersive texture, contemporary
+ aesthetic
+
+- name: Painting | Pointillism
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, JPEG artifacts
+ prompt: Pointillism art style of {prompt}, uses dots of color to create images,
+ optical blending creates vibrant and textured surfaces
+
+- name: Painting | Renaissance
+ negative_prompt: painting frame, signature, watermark, photo, photorealistic, realism,
+ ugly, off-center, deformed, 35mm film, dslr, cropped, frame, worst quality, low
+ quality, lowres, JPEG artifacts
+ prompt: oil painting art style from Renaissance period of {prompt}, masterful composition,
+ Renaissance mood, renaissance oil painting, brush strokes
+
+- name: Painting | Retrofuturism
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Retrofuturism painting art style of {prompt}, nostalgic composition, combines
+ retro aesthetics with futuristic elements
+
+- name: Painting | Sumi-e Painting
+ negative_prompt: Japanese writing, Chinese writing, chinese stamp, signature, watermark,
+ photo, photorealistic, realism, ugly, off-center, deformed, 35mm film, dslr, cropped,
+ frame, worst quality, low quality, lowres, JPEG artifacts
+ prompt: Sumi-e painting style of {prompt}, traditional Japanese ink wash painting,
+ emphasizes simplicity and elegance, expressive brushwork, captures the essence
+ of the subject with minimal strokes, meditative and reflective
+
+- name: Painting | Watercolor
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Watercolor painting art style of {prompt}, transparent and delicate layers,
+ luminous and ethereal effects, spontaneous and fluid compositions, subtle gradients
+ and blending, captures light and atmosphere, creates soft and dreamy scenes
+
+- name: Painting | Watercolor > Cartoon
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Cartoon watercolor painting style of {prompt}, playful cartoon character,
+ dynamic composition, whimsical expression, soft and fluid texture, adds charm
+ and personality, subtle gradients and blending, captures light and atmosphere,
+ creates soft and dreamy scenes, watercolor texture
+
+- name: Painting | Watercolor on White Background
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Watercolor painting art style of {prompt},isolated on solid white background,
+ transparent and delicate layers, luminous and ethereal effects, subtle gradients
+ and blending, captures light and atmosphere, creates soft and dreamy scenes
+
+- name: Photography | Aerial
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: aerial photography of {prompt}, drone photography, sweeping landscapes,
+ unique perspectives, epic scale, capturing from above, cinematic storytelling
+
+- name: Photography | Architecture
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: architecture photography of {prompt}, striking structures, clean lines,
+ geometric shapes, dramatic angles, play of light and shadow, capturing architectural
+ details, showcasing design elements, evoking mood, professional lighting, precise
+ compositions, emphasizing scale and proportion, creating depth, architectural
+ storytelling
+
+- name: Photography | Black and White
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: black and white photography of {prompt}, timeless elegance, classic aesthetic,
+ dramatic contrasts, emphasizing shapes and textures, evoking nostalgia, focusing
+ on light and shadow, monochromatic storytelling, capturing mood and emotion, artistic
+ expression, minimalist compositions, conveying depth and atmosphere, timeless
+ beauty
+
+- name: Photography | Cinematic
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: Cinematic photography of {prompt}, movie mood, cinematic light, compelling
+ composition, storytelling elements, conveys emotion, mood, and narrative depth,
+ creating visually striking images that feel like still frames from a film
+
+- name: Photography | Double Exposure
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: double exposure photography of {prompt}, layered imagery, blending two scenes,
+ creating surreal compositions, overlaying visuals, artistic interpretation of
+ reality, capturing depth of emotion, storytelling through visual layering, ethereal
+ and dreamlike effects.
+
+- name: Photography | Documentary
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: documentary photography of {prompt}, capturing reality, social issues, human
+ experiences, photojournalistic storytelling, candid moments, authentic narratives,
+ raising awareness, documenting history, preserving cultural heritage, immersive
+ storytelling, evoking empathy, powerful imagery, journalistic integrity
+
+- name: Photography | Experimental
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: experimental photography of {prompt}, pushing the boundaries of creativity,
+ unconventional techniques, innovative concepts, artistic exploration, thought-provoking
+ imagery, pushing the boundaries of traditional photography
+
+- name: Photography | Fashion
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: fashion photography of {prompt}, glamorous, stylish attire, captivating
+ pose, dynamic composition, high-fashion aesthetic, professional studio lighting,
+ expert styling, showcasing trend, conveying elegance, conveying attitude, evoking
+ emotion, creating visual impact, editorial storytelling, artistic interpretation,
+ fashion-forward visual
+
+- name: Photography | Fashion Editorial
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: fashion editorial photography of {prompt}, high-fashion imagery, avant-garde
+ aesthetics, editorial storytelling, conveying fashion trends and concepts, artistic
+ interpretation, expert styling, professional lighting, capturing fashion-forward
+ visuals, creating visual impact, evoking emotion, pushing creative boundaries
+
+- name: Photography | Fine Art
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: fine art photography of {prompt}, conceptual expression, evocative imagery,
+ artistic interpretation, emotional resonance, creative composition, professional
+ lighting, exquisite detail, immersive experience, storytelling through imagery,
+ conveying mood, unique perspective, thought-provoking concept, capturing beauty,
+ transcending reality
+
+- name: Photography | Flower
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: flower photography of {prompt}, capturing nature's beauty, delicate petals,
+ vibrant colors, intricate details, showcasing botanical diversity, evoking emotions,
+ conveying serenity, expert composition, professional lighting, immersive floral
+ portrait, timeless elegance
+
+- name: Photography | Food
+ negative_prompt: bad anatomy, unappetizing, sloppy, unprofessional, comics, cropped,
+ cross-eyed, worst quality, low quality, painting, 3D render, drawing, crayon,
+ sketch, graphite, impressionist, cartoon, anime, noisy, blurry, soft, deformed,
+ ugly, lowres, low details, JPEG artifacts, airbrushed, semi-realistic, CGI, render,
+ Blender, digital art, manga, amateur, mutilated, distorted
+ prompt: food photography of {prompt}, mouthwatering dishes, vibrant colors, appetizing
+ presentations, enticing compositions, delicious details, showcasing textures,
+ capturing freshness, professional lighting, expert styling, culinary storytelling,
+ enhancing food appeal
+
+- name: Photography | Infrared
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: infrared photography of {prompt}, capturing unseen light spectrum, surreal,
+ dreamlike effect, ethereal glow, shifting colors, stark contrasts, creating otherworldly
+ scenes, artistic interpretation, capturing heat and light patterns, visually distinctive
+ composition
+
+- name: Photography | Landscape
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: landscape photography of {prompt}, vast vistas, natural beauty, dynamic
+ compositions, captivating scenery, immersive, serene
+
+- name: Photography | Long exposure
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: long exposure photography of {prompt}, streaking lights, smooth motion,
+ dreamy landscapes, ethereal atmosphere, light painting, creative expression, time
+ manipulation, surreal effects, captivating visuals, artistic interpretation, immersive
+ experience, unique perspective
+
+- name: Photography | Low key
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: low key photography of {prompt}, dramatic lighting, deep shadows, rich contrast,
+ moody atmosphere, intense emotions, cinematic feel, mysterious ambiance, emphasizing
+ shape and form, creating depth, evoking drama, storytelling through shadows, professional
+ technique
+
+- name: Photography | Macro
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: macro photography of {prompt}, extreme close-ups, intricate details, unseen
+ worlds, capturing texture, emphasizing details, revealing beauty in small things,
+ professional lighting, precise focusing, artistic expression, immersive experience,
+ expert technique
+
+- name: Photography | Microscopic
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, drawing, crayon, sketch, graphite, impressionist, cartoon, anime, noisy,
+ blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts, airbrushed,
+ semi-realistic, digital art, manga, amateur, mutilated, distorted
+ prompt: microscopic photography of {prompt}, magnified, molecular, unseen worlds
+ revealed, scientific exploration, capturing molecular details, professional imaging
+ techniques, precise focusing, revealing hidden beauty, scientific discovery, artistic
+ interpretation, nano scale, revealing the wonders of the unseen
+
+- name: Photography | Minimalist
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: minimalist photography of {prompt}, simplicity in composition, clean lines,
+ uncluttered visuals, negative space, focusing on essential elements, conveying
+ tranquility, understated beauty, elegant aesthetics, subtle storytelling, capturing
+ the essence of minimalism
+
+- name: Photography | Mockup
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: mockup photography of {prompt}, professional presentation, blank, empty,
+ creative composition, versatile use, professional lighting, expert styling, high-quality
+ imagery, realistic perspective, accurate representation
+
+- name: Photography | Night
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: night photography of {prompt}, nocturnal beauty, city lights, starry skies,
+ celestial wonders, moonlit landscapes, urban glow, capturing the essence of darkness,
+ ethereal atmosphere, dramatic shadows, magical ambiance, long exposure techniques,
+ expert use of light sources
+
+- name: Photography | Pet
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: pet photography of {prompt}, adorable portrait, playful moment, expressive
+ eyes, showcasing personality, professional lighting, expert composition, capturing
+ joyful interaction, conveying emotion, creative composition, enhancing pet beauty,
+ pet-friendly environment, storytelling through imagery
+
+- name: Photography | Portrait
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: portrait photography of {prompt}, capturing emotion, personality, flattering
+ lighting, professional, engaging, compelling composition
+
+- name: Photography | Portrait > Cinematic
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: Cinematic portrait photography of {prompt}, capture subject in a way that
+ resembles a still frame from a movie, cinematic lighting, story, narrative quality,
+ drawing viewers into the scene and evoking a sense of cinematic immersion, capturing
+ emotion, professional, engaging, compelling composition
+
+- name: Photography | Portrait > Closeup
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: closeup portrait photography of {prompt}, beautiful eyes, capturing emotion,
+ personality, flattering lighting, professional, engaging, compelling composition
+
+- name: Photography | Portrait > Fantasy
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: fantasy portrait photography of {prompt}, beautiful eyes, ethereal beauty,
+ magical atmosphere, whimsical element, enchanting composition, mystical storytelling,
+ professional lighting, imaginative concept, creative styling, otherworldly aesthetic,
+ fantasy romance, surreal visual, enchanting character, captivating narrative,
+ intricate detail, vibrant color, fantastical landscape
+
+- name: Photography | Product
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: product photography of {prompt}, crisp details, clean composition, attention
+ to detail, professional lighting, precise focus, appealing aesthetics, capturing
+ textures, high-quality imagery, commercial appeal, creative presentation
+
+- name: Photography | Reflection
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: reflection photography of {prompt}, mirror-like surfaces, symmetry, visual
+ echoes, capturing dual realities, distorted perspectives, ethereal beauty, introspective
+ imagery, mesmerizing patterns, reflecting mood and emotion, creating visual depth,
+ playing with perception
+
+- name: Photography | Sport
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: sport photography of {prompt}, action-packed moment, dynamic, intense competition,
+ thrilling movement, showcasing skill, conveying energy, adrenaline-fueled visuals,
+ immersive experience, storytelling through action, dramatic composition, showcasing
+ passion, capturing decisive moments, vibrant colors, dynamic composition, powerful
+ imagery, engaging perspective
+
+- name: Photography | Street
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: street photography of {prompt}, capturing urban life, candid moment, everyday
+ story, raw emotion, dynamic composition, spontaneous moment, artistic interpretation,
+ evoking the energy of the street, authentic urban atmosphere, storytelling through
+ real life
+
+- name: Photography | Still Life
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: still life photography of {prompt}, capturing tranquility, timeless beauty,
+ meticulous arrangement, exquisite detail, professional lighting, expert composition,
+ evocative mood, storytelling through objects, artistic interpretation, creative
+ expression, showcasing textures, intricate patterns, enhancing atmosphere, conveying
+ emotions, masterful technique, immersive experience
+
+- name: Photography | Surreal
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: surreal photography of {prompt}, dreamlike imagery, subconscious exploration,
+ bending reality, imaginative narratives, juxtaposing elements, evoking wonder
+ and awe, transcending boundaries, challenging perceptions, fantastical landscapes,
+ otherworldly atmospheres
+
+- name: Photography | Time-lapse
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: time-lapse photography of {prompt}, dynamic motion, fluid transition, changing
+ landscape, evolving scene, captivating visual storytelling, accelerated time
+
+- name: Photography | Underwater
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: underwater photography of {prompt}, otherworldly landscape, unique perspective,
+ ethereal lighting, dynamic composition, captivating underwater scene, immersive,
+ serene, expert lighting technique, breathtaking moment captured
+
+- name: Photography | Vintage
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: vintage photography of {prompt}, nostalgic charm, timeless appeal, old-world
+ aesthetics, classic elegance, warm tones, soft focus, aged textures, evoking nostalgia,
+ historical ambiance, storytelling through imagery, vintage atmosphere, timeless
+ compositions, authentic vintage look, professional technique
+
+- name: Photography | Wildlife
+ negative_prompt: bad anatomy, comics, cropped, cross-eyed, worst quality, low quality,
+ painting, 3D render, drawing, crayon, sketch, graphite, impressionist, cartoon,
+ anime, noisy, blurry, soft, deformed, ugly, lowres, low details, JPEG artifacts,
+ airbrushed, semi-realistic, CGI, render, Blender, digital art, manga, amateur,
+ mutilated, distorted
+ prompt: wildlife photography of {prompt}, capturing nature's beauty, breathtaking
+ landscapes, immersive experience, storytelling through imagery, showcasing wildlife
+ behavior, sharp details, evocative composition, unique perspective
+
+- name: Sculpture | Sculpture
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifact
+ prompt: Sculpture style of {prompt}, three-dimensional art form, allows for the
+ creation of expressive and tactile works using various materials, embodies creativity
+ and artistic vision
+
+- name: Sculpture | Abstract Sculpture
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Abstract sculpture {prompt}, abstract scultpure art style, emphasizes form,
+ shape, and texture over realistic representation, explores the relationships between
+ volume, space, and material, often uses geometric or organic forms, avant-garde
+ and innovative design, dynamic and expressive, minimal or complex, allows for
+ open interpretation and emotional impact
+
+- name: Sculpture | Alebrije Sculpture
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Alebrije sculpture style of {prompt}, vibrant and fantastical Mexican folk
+ art sculpture, intricate and whimsical figure, handcrafted, celebrates creativity
+ and imagination
+
+- name: Sculpture | Bas-relief
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Bas-relief art style of {prompt}, sculptural technique where figures or
+ designs are raised slightly from the background, creates depth and texture
+
+- name: Sculpture | Bronze Sculpture
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Bronze sculpture craft style of {prompt}, utilizes bronze as the primary
+ material for creating three-dimensional artworks, known for its durability and
+ timeless beauty, allows for intricate detailing and expressive forms
+
+- name: Sculpture | Clay Sculpture
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Clay sculpture craft style of {prompt}, utilizes clay as the primary material
+ for creating three-dimensional artworks, allows for versatile shaping and modeling
+ technique
+
+- name: Sculpture | Fantasy Sculpture
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Fantasy sculpture of {prompt}, fantasy sculpture art style, brings mythical
+ and fantastical creatures or worlds to life, highly imaginative and detailed,
+ often features magical beings, enchanted landscapes, or legendary figures, intricate
+ and expressive design, evokes a sense of wonder and adventure, captures the essence
+ of otherworldly beauty, dynamic and ethereal forms
+
+- name: Sculpture | Haniwa
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Haniwa craft style of {prompt}, ancient Japanese burial sculptures, simplistic
+ and stylized figure, cultural and historical significance, preserves traditional
+ craftsmanship and artistry
+
+- name: Sculpture | Ice Sculpture
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Ice sculpture {prompt}, ice sculpture art style, made of ice, temporary
+ and ephemeral art form using ice, intricate detailing and craftsmanship, dramatic
+ lighting and clear, glass-like appearance
+
+- name: Sculpture | Jade Sculpture
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Jade sculpture craft style of {prompt}, utilizes jade as the primary material
+ for creating three-dimensional artworks, esteemed for its beauty and cultural
+ significance, allows for intricate carving and sculpting techniques
+
+- name: Sculpture | Marble Sculpture
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Marble sculpture craft style of {prompt}, utilizes marble as the primary
+ material for creating three-dimensional artworks, renowned for its elegance and
+ beauty, allows for intricate detailing and smooth finishes, timeless and enduring
+
+- name: Sculpture | Netsuke
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Netsuke craft style of {prompt},traditional Japanese miniature sculpture,
+ intricately carved and detailed, functional and decorative, reflects Japanese
+ culture and craftsmanship
+
+- name: Sculpture | Olmec
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Olmec craft style of {prompt}, ancient Mesoamerican art tradition, iconic
+ stone sculpture and figurine, rich cultural heritage, significant influence on
+ subsequent civilizations
+
+- name: Sculpture | Gold Sculpture
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Gold sculpture craft style of {prompt}, utilizes gold as the primary material
+ for creating three-dimensional artworks, embodies luxury and opulence, allows
+ for intricate detailing and fine craftsmanship
+
+- name: Sculpture | Sand Scultpure
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Sand sculpture art style of {prompt}, temporary and ephemeral art form created
+ by shaping and carving sand, showcases creativity and skill
+
+- name: Sculpture | Stone Sculpture
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Stone sculpture craft style of {prompt},utilizes stone as the primary material
+ for creating three-dimensional artworks, allows for intricate carving and sculpting
+ techniques, durable and long-lasting, embodies strength and solidity
+
+- name: Sculpture | Terracotta Sculpture
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Terracotta sculpture of {prompt}, Terracotta sculpture craft style, traditional
+ clay-based material, earthy and warm tones, versatile and used across cultures,
+ often for architectural or decorative works, allows for textured and organic forms
+ traditional clay-based material
+
+- name: Sculpture | Wooden Sculpture
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Wooden sculpture craft style of {prompt},utilizes wood as the primary material
+ for creating three-dimensional artworks, showcases the natural beauty and texture
+ of wood, allows for intricate detailing and expressive forms
+
+- name: Sculpture | Wood Carving
+ negative_prompt: signature, watermark, ugly, off-center, deformed, cropped, worst
+ quality, low quality, lowres, JPEG artifacts
+ prompt: Wood carving art style of {prompt},sculptural technique that involves carving
+ wood to create three-dimensional forms, showcases craftsmanship and precision
+
+- name: Vector | Cartoon Vector
+ negative_prompt: signature, shading, gradient, painting, watermark, photo, photorealistic,
+ realism, ugly, off-center, deformed, 35mm film, dslr, cropped, frame, worst quality,
+ low quality, lowres, JPEG artifacts
+ prompt: cartoon vector art style of {prompt}, playful and vibrant, bold outlines,
+ colorful and expressive characters, simplified shapes, dynamic composition, professional-grade
+ vector illustration, scalable and editable, ideal for animation, web, and print
+
+- name: Vector | Coloring Book Page
+ negative_prompt: painting, signature, shading, gray, gradient, watermark, photo,
+ photorealistic, realism, ugly, off-center, deformed, 35mm film, dslr, cropped,
+ frame, worst quality, low quality, lowres, JPEG artifacts
+ prompt: Vector coloring book page style of {prompt}, clean and crisp lines, on solid
+ white background, scalable and editable artwork, suitable for printing and digital
+ coloring, promotes creativity and relaxation, black and white, contrast, profesional,
+ minimalist
+
+- name: Vector | Flat Art Style
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: Modern flat vector style art of {prompt}, on solid color background, minimalist, flat
+ vector art, corporate artstyle, simplified shapes, modern color palette, modern
+ conceptual art, clean lines, geometric forms, contemporary graphic design influence,
+ stylized character features, playful touch, visually appealing, clear communication
+ of ideas, suitable for modern media, web design, advertising, cheerful and engaging
+ aesthetic, easily adaptable
+
+- name: Vector | Flat Pastel Vector
+ negative_prompt: signature, watermark, photo, photorealistic, realism, ugly, off-center,
+ deformed, 35mm film, dslr, cropped, frame, worst quality, low quality, lowres,
+ JPEG artifacts
+ prompt: flat pastel vector illustration of {prompt}, soft and calming color palette,
+ clean and crisp lines, minimal shading, professional-grade vector execution, flat
+ design style, scalable and editable, ideal for web and mobile design, light and
+ airy aesthetic
+
+- name: Vector | Line Art
+ negative_prompt: painting, signature, shading, gradient, watermark, photo, photorealistic,
+ realism, ugly, off-center, deformed, 35mm film, dslr, cropped, frame, worst quality,
+ low quality, lowres, JPEG artifacts
+ prompt: black vector line art of {prompt}, on solid white background, minimalist,
+ vector line art style, clean lines, scalable graphics, professional-grade execution,
+ stylized, professional vector, sleek, modern, graphic, vector graphics
+
+- name: Vector | Logo Symbol
+ negative_prompt: signature, shading, gradient, painting, watermark, photo, photorealistic,
+ realism, ugly, off-center, deformed, 35mm film, dslr, cropped, frame, worst quality,
+ low quality, lowres, JPEG artifacts
+ prompt: vector logo art style of {prompt}, on solid color background, vector logo
+ symbol, stylized logo, logo icon, minimalist, clean, clean and scalable designs,
+ precise lines, professional-grade execution, emphasizes simplicity and versatility
+
+- name: Vector | Retro Vector
+ negative_prompt: signature, shading, gradient, painting, watermark, photo, photorealistic,
+ realism, ugly, off-center, deformed, 35mm film, dslr, cropped, frame, worst quality,
+ low quality, lowres, JPEG artifacts
+ prompt: retro vector art style of {prompt}, vintage-inspired color palette, flat
+ vector design, minimalist shapes, geometric forms, nostalgic aesthetic, professional
+ vector execution, stylized illustrations, scalable graphics, perfect for logos,
+ posters, and branding
+
+- name: Vector | Silhouette
+ negative_prompt: signature, shading, gradient, painting, watermark, photo, photorealistic,
+ realism, ugly, off-center, deformed, 35mm film, dslr, cropped, frame, worst quality,
+ low quality, lowres, JPEG artifacts
+ prompt: ((black vector silhouette of {prompt},)) on solid white background, minimalist,
+ SVG silhouette art style, clean lines and shapes, scalable graphics, professional-grade
+ execution, stylized, professional vector
+
+- name: Vector | Silhouette Cute
+ negative_prompt: signature, shading, gradient, painting, watermark, photo, photorealistic,
+ realism, ugly, off-center, deformed, 35mm film, dslr, cropped, frame, worst quality,
+ low quality, lowres, JPEG artifacts
+ prompt: ((cute cartoon black vector silhouette of {prompt},)) on solid white background,
+ minimalist, SVG silhouette art style, adorable, clean lines and shapes, scalable
+ graphics, professional-grade execution, stylized cartoon, professional cartoon
+ vector
+
+- name: Vector | Vector Tattoo Design
+ negative_prompt: signature, shading, gradient, painting, watermark, photo, photorealistic,
+ realism, ugly, off-center, deformed, 35mm film, dslr, cropped, frame, worst quality,
+ low quality, lowres, JPEG artifacts
+ prompt: (vector tattoo of {prompt}), vector tattoo art style, clean and sharp linework,
+ bold black ink, scalable and editable vector design, professional-grade execution,
+ classic tattoo-inspired style
+
diff --git a/Styles/artist.yaml b/Styles/artist.yaml
new file mode 100644
index 0000000..14a908e
--- /dev/null
+++ b/Styles/artist.yaml
@@ -0,0 +1,7353 @@
+# It is recommended not to modify this file,
+# as it serves as the initialization file for the node.
+#
+# Instead, create a copy, place it in the same folder,
+# and the iTools Prompt Styler node will read all your style files from there.
+#
+# Ensure that the formatting is kept the same as in this file.
+# Indents in YAML are critical. Ensure proper indentation, as incorrect spacing can cause errors.
+#
+# Best approach is to copy a block of name, negative_prompt and a prompt and then replace their values
+# Note that your text_positive will be added in this part {prompt}
+# Adding - name: random will allow the node to pick random name from this file
+
+- name: none
+ negative_prompt: ''
+ prompt: ''
+
+- name: random
+ negative_prompt: ''
+ prompt: ''
+
+- name: A.J.Casson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of A.J.Casson)'
+
+- name: Aaron Douglas
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Aaron Douglas)'
+
+- name: Aaron Horkey
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Aaron Horkey)'
+
+- name: Aaron Jasinski
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Aaron Jasinski)'
+
+- name: Aaron Siskind
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Aaron Siskind)'
+
+- name: Abbott Fuller Graves
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Abbott Fuller Graves)'
+
+- name: Abbott Handerson Thayer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Abbott Handerson Thayer)'
+
+- name: Abdel Hadi Al Gazzar
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Abdel Hadi Al Gazzar)'
+
+- name: Abed Abdi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Abed Abdi)'
+
+- name: Abigail Larson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Abigail Larson)'
+
+- name: Abraham Mintchine
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Abraham Mintchine)'
+
+- name: Abraham Pether
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Abraham Pether)'
+
+- name: Abram Efimovich Arkhipov
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Abram Efimovich Arkhipov)'
+
+- name: Adam Elsheimer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Adam Elsheimer)'
+
+- name: Adam Hughes
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Adam Hughes)'
+
+- name: Adam Martinakis
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Adam Martinakis)'
+
+- name: Adam Paquette
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Adam Paquette)'
+
+- name: Adi Granov
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Adi Granov)'
+
+- name: Adolf Hirémy-Hirschl
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Adolf Hirémy-Hirschl)'
+
+- name: Adolph Gottlieb
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Adolph Gottlieb)'
+
+- name: Adolph Menzel
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Adolph Menzel)'
+
+- name: Adonna Khare
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Adonna Khare)'
+
+- name: Adriaen van Ostade
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Adriaen van Ostade)'
+
+- name: Adriaen van Outrecht
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Adriaen van Outrecht)'
+
+- name: Adrian Donoghue
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Adrian Donoghue)'
+
+- name: Adrian Ghenie
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Adrian Ghenie)'
+
+- name: Adrian Paul Allinson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Adrian Paul Allinson)'
+
+- name: Adrian Smith
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Adrian Smith)'
+
+- name: Adrian Tomine
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Adrian Tomine)'
+
+- name: Adrianus Eversen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Adrianus Eversen)'
+
+- name: Afarin Sajedi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Afarin Sajedi)'
+
+- name: Affandi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Affandi)'
+
+- name: Aggi Erguna
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Aggi Erguna)'
+
+- name: Agnes Cecile
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Agnes Cecile)'
+
+- name: Agnes Lawrence Pelton
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Agnes Lawrence Pelton)'
+
+- name: Agnes Martin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Agnes Martin)'
+
+- name: Agostino Arrivabene
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Agostino Arrivabene)'
+
+- name: Agostino Tassi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Agostino Tassi)'
+
+- name: Ai Weiwei
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ai Weiwei)'
+
+- name: Ai Yazawa
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ai Yazawa)'
+
+- name: Akihiko Yoshida
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Akihiko Yoshida)'
+
+- name: Akira Toriyama
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Akira Toriyama)'
+
+- name: Akos Major
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Akos Major)'
+
+- name: Akseli Gallen-Kallela
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Akseli Gallen-Kallela)'
+
+- name: Al Capp
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Al Capp)'
+
+- name: Al Feldstein
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Al Feldstein)'
+
+- name: Al Williamson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Al Williamson)'
+
+- name: Alain Laboile
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alain Laboile)'
+
+- name: Alan Bean
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alan Bean)'
+
+- name: Alan Davis
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alan Davis)'
+
+- name: Alan Kenny
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alan Kenny)'
+
+- name: Alan Lee
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alan Lee)'
+
+- name: Alan Moore
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alan Moore)'
+
+- name: Alan Parry
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alan Parry)'
+
+- name: Alan Schaller
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alan Schaller)'
+
+- name: Alasdair McLellan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alasdair McLellan)'
+
+- name: Alastair Magnaldo
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alastair Magnaldo)'
+
+- name: Alayna Lemmer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alayna Lemmer)'
+
+- name: Albert Benois
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Albert Benois)'
+
+- name: Albert Bierstadt
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Albert Bierstadt)'
+
+- name: Albert Bloch
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Albert Bloch)'
+
+- name: Albert Dubois-Pillet
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Albert Dubois-Pillet)'
+
+- name: Albert Eckhout
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Albert Eckhout)'
+
+- name: Albert Edelfelt
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Albert Edelfelt)'
+
+- name: Albert Gleizes
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Albert Gleizes)'
+
+- name: Albert Goodwin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Albert Goodwin)'
+
+- name: Albert Joseph Moore
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Albert Joseph Moore)'
+
+- name: Albert Koetsier
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Albert Koetsier)'
+
+- name: Albert Kotin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Albert Kotin)'
+
+- name: Albert Lynch
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Albert Lynch)'
+
+- name: Albert Marquet
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Albert Marquet)'
+
+- name: Albert Pinkham Ryder
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Albert Pinkham Ryder)'
+
+- name: Albert Robida
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Albert Robida)'
+
+- name: Albert Servaes
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Albert Servaes)'
+
+- name: Albert Tucker
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Albert Tucker)'
+
+- name: Albert Watson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Albert Watson)'
+
+- name: Alberto Biasi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alberto Biasi)'
+
+- name: Alberto Burri
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alberto Burri)'
+
+- name: Alberto Giacometti
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alberto Giacometti)'
+
+- name: Alberto Magnelli
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alberto Magnelli)'
+
+- name: Alberto Seveso
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alberto Seveso)'
+
+- name: Alberto Sughi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alberto Sughi)'
+
+- name: Alberto Vargas
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alberto Vargas)'
+
+- name: Albrecht Anker
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Albrecht Anker)'
+
+- name: Albrecht Durer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Albrecht Durer)'
+
+- name: Alec Soth
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alec Soth)'
+
+- name: Alejandro Burdisio
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alejandro Burdisio)'
+
+- name: Alejandro Jodorowsky
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alejandro Jodorowsky)'
+
+- name: Aleksey Savrasov
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Aleksey Savrasov)'
+
+- name: Aleksi Briclot
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Aleksi Briclot)'
+
+- name: Alena Aenami
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alena Aenami)'
+
+- name: Alessandro Allori
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alessandro Allori)'
+
+- name: Alessandro Barbucci
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alessandro Barbucci)'
+
+- name: Alessandro Gottardo
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alessandro Gottardo)'
+
+- name: Alessio Albi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alessio Albi)'
+
+- name: Alex Alemany
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alex Alemany)'
+
+- name: Alex Andreev
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alex Andreev)'
+
+- name: Alex Colville
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alex Colville)'
+
+- name: Alex Figini
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alex Figini)'
+
+- name: Alex Garant
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alex Garant)'
+
+- name: Alex Grey
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alex Grey)'
+
+- name: Alex Gross
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alex Gross)'
+
+- name: Alex Hirsch
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alex Hirsch)'
+
+- name: Alex Horley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alex Horley)'
+
+- name: Alex Howitt
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alex Howitt)'
+
+- name: Alex Katz
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alex Katz)'
+
+- name: Alex Maleev
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alex Maleev)'
+
+- name: Alex Petruk
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alex Petruk)'
+
+- name: Alex Prager
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alex Prager)'
+
+- name: Alex Ross
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alex Ross)'
+
+- name: Alex Russell Flint
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alex Russell Flint)'
+
+- name: Alex Schomburg
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alex Schomburg)'
+
+- name: Alex Timmermans
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alex Timmermans)'
+
+- name: Alex Toth
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alex Toth)'
+
+- name: Alexander Archipenko
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alexander Archipenko)'
+
+- name: Alexander Bogen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alexander Bogen)'
+
+- name: Alexander Fedosav
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alexander Fedosav)'
+
+- name: Alexander Jansson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alexander Jansson)'
+
+- name: Alexander Kanoldt
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alexander Kanoldt)'
+
+- name: Alexander McQueen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alexander McQueen)'
+
+- name: Alexander Millar
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alexander Millar)'
+
+- name: Alexander Milne Calder
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alexander Milne Calder)'
+
+- name: Alexandr Averin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alexandr Averin)'
+
+- name: Alexandre Antigna
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alexandre Antigna)'
+
+- name: Alexandre Benois
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alexandre Benois)'
+
+- name: Alexandre Cabanel
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alexandre Cabanel)'
+
+- name: Alexandre Calame
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alexandre Calame)'
+
+- name: Alexandre Jacovleff
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alexandre Jacovleff)'
+
+- name: Alexandre-Évariste Fragonard
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alexandre-Évariste Fragonard)'
+
+- name: Alexei Harlamoff
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alexei Harlamoff)'
+
+- name: Alexej von Jawlensky
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alexej von Jawlensky)'
+
+- name: Alexey Kurbatov
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alexey Kurbatov)'
+
+- name: Alexis Gritchenko
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alexis Gritchenko)'
+
+- name: Alfred Augustus Glendening
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alfred Augustus Glendening)'
+
+- name: Alfred Cheney Johnston
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alfred Cheney Johnston)'
+
+- name: Alfred Eisenstaedt
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alfred Eisenstaedt)'
+
+- name: Alfred Guillou
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alfred Guillou)'
+
+- name: Alfred Heber Hutty
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alfred Heber Hutty)'
+
+- name: Alfred Henry Maurer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alfred Henry Maurer)'
+
+- name: Alfred Kelsner
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alfred Kelsner)'
+
+- name: Alfred Kubin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alfred Kubin)'
+
+- name: Alfred Munnings
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alfred Munnings)'
+
+- name: Alfred Parsons
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alfred Parsons)'
+
+- name: Alfred Sisley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alfred Sisley)'
+
+- name: Alfred Stevens
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alfred Stevens)'
+
+- name: Alfredo Jaar
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alfredo Jaar)'
+
+- name: Algernon Blackwood
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Algernon Blackwood)'
+
+- name: Alice Bailly
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alice Bailly)'
+
+- name: Alice Neel
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alice Neel)'
+
+- name: Alice Pasquini
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alice Pasquini)'
+
+- name: Alice Rahon
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alice Rahon)'
+
+- name: Alison Bechdel
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alison Bechdel)'
+
+- name: Aliza Razell
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Aliza Razell)'
+
+- name: Allen Williams
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Allen Williams)'
+
+- name: Allie Brosh
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Allie Brosh)'
+
+- name: Allison Bechdel
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Allison Bechdel)'
+
+- name: Alma Thomas
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alma Thomas)'
+
+- name: Alois Arnegger
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alois Arnegger)'
+
+- name: Alphonse Mucha
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alphonse Mucha)'
+
+- name: Alphonse Osbert
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alphonse Osbert)'
+
+- name: Alpo Jaakola
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alpo Jaakola)'
+
+- name: Alson Skinner Clark
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alson Skinner Clark)'
+
+- name: Alvar Aalto
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alvar Aalto)'
+
+- name: Alvaro Siza
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alvaro Siza)'
+
+- name: Alvin Langdon Coburn
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alvin Langdon Coburn)'
+
+- name: Alyssa Monks
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Alyssa Monks)'
+
+- name: Amadou Opa Bathily
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Amadou Opa Bathily)'
+
+- name: Amanda Clark
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Amanda Clark)'
+
+- name: Amanda Sage
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Amanda Sage)'
+
+- name: Amandine Van Ray
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Amandine Van Ray)'
+
+- name: Ambrosius Benson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ambrosius Benson)'
+
+- name: Ambrosius Bosschaert
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ambrosius Bosschaert)'
+
+- name: Amedee Ozenfant
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Amedee Ozenfant)'
+
+- name: Amedeo Modigliani
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Amedeo Modigliani)'
+
+- name: Amiet Cuno
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Amiet Cuno)'
+
+- name: Aminollah Rezaei
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Aminollah Rezaei)'
+
+- name: Amir Zand
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Amir Zand)'
+
+- name: Amy Earles
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Amy Earles)'
+
+- name: Amy Judd
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Amy Judd)'
+
+- name: Amy Sillman
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Amy Sillman)'
+
+- name: Amédée Guillemin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Amédée Guillemin)'
+
+- name: Anato Finnstark
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anato Finnstark)'
+
+- name: Anatoly Metlan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anatoly Metlan)'
+
+- name: Anders Zorn
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anders Zorn)'
+
+- name: Ando Fuchs
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ando Fuchs)'
+
+- name: Andre De Dienes
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andre De Dienes)'
+
+- name: Andre Derain
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andre Derain)'
+
+- name: Andre Kertesz
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andre Kertesz)'
+
+- name: Andre Kohn
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andre Kohn)'
+
+- name: Andre Norton
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andre Norton)'
+
+- name: Andre-Charles Boulle
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andre-Charles Boulle)'
+
+- name: Andrea Kowch
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andrea Kowch)'
+
+- name: Andrea Mantegna
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andrea Mantegna)'
+
+- name: Andreas Achenbach
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andreas Achenbach)'
+
+- name: Andreas Franke
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andreas Franke)'
+
+- name: Andreas Gursky
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andreas Gursky)'
+
+- name: Andreas Levers
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andreas Levers)'
+
+- name: Andreas Rocha
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andreas Rocha)'
+
+- name: Andreas Vesalius
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andreas Vesalius)'
+
+- name: Andrei Markin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andrei Markin)'
+
+- name: Andrew Atroshenko
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andrew Atroshenko)'
+
+- name: Andrew Ferez
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andrew Ferez)'
+
+- name: Andrew Macara
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andrew Macara)'
+
+- name: Andrew Robinson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andrew Robinson)'
+
+- name: Andrew Whem
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andrew Whem)'
+
+- name: Andrew Wyeth
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andrew Wyeth)'
+
+- name: Andrey Remnev
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andrey Remnev)'
+
+- name: Andréi Arinouchkine
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andréi Arinouchkine)'
+
+- name: Android Jones
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Android Jones)'
+
+- name: Andrzej Sykut
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andrzej Sykut)'
+
+- name: André Lhote
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of André Lhote)'
+
+- name: André Masson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of André Masson)'
+
+- name: Andy Fairhurst
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andy Fairhurst)'
+
+- name: Andy Goldsworthy
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andy Goldsworthy)'
+
+- name: Andy Kehoe
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andy Kehoe)'
+
+- name: Andy Warhol
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Andy Warhol)'
+
+- name: Angela Barrett
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Angela Barrett)'
+
+- name: Angela Sung
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Angela Sung)'
+
+- name: Angus McKie
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Angus McKie)'
+
+- name: Anish Kapoor
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anish Kapoor)'
+
+- name: Anita Malfatti
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anita Malfatti)'
+
+- name: Anja Millen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anja Millen)'
+
+- name: Anja Percival
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anja Percival)'
+
+- name: Anka Zhuravleva
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anka Zhuravleva)'
+
+- name: Ann Stookey
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ann Stookey)'
+
+- name: Anna Ancher
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anna Ancher)'
+
+- name: Anna Bocek
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anna Bocek)'
+
+- name: Anna Dittmann
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anna Dittmann)'
+
+- name: Anna Razumovskaya
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anna Razumovskaya)'
+
+- name: Anna and Elena Balbusso
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anna and Elena Balbusso)'
+
+- name: Anne Bachelier
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anne Bachelier)'
+
+- name: Anne Brigman
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anne Brigman)'
+
+- name: Anne Dewailly
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anne Dewailly)'
+
+- name: Anne Mccaffrey
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anne Mccaffrey)'
+
+- name: Anne Packard
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anne Packard)'
+
+- name: Anne Rothenstein
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anne Rothenstein)'
+
+- name: Anne Stokes
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anne Stokes)'
+
+- name: Anne Sudworth
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anne Sudworth)'
+
+- name: Anne Truitt
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anne Truitt)'
+
+- name: Anne-Louis Girodet
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anne-Louis Girodet)'
+
+- name: Anni Albers
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anni Albers)'
+
+- name: Annibale Carracci
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Annibale Carracci)'
+
+- name: Annick Bouvattier
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Annick Bouvattier)'
+
+- name: Annie Soudain
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Annie Soudain)'
+
+- name: Annie Swynnerton
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Annie Swynnerton)'
+
+- name: Ansel Adams
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ansel Adams)'
+
+- name: Anselm Kiefer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anselm Kiefer)'
+
+- name: Antanas Sutkus
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Antanas Sutkus)'
+
+- name: Anthony Gerace
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anthony Gerace)'
+
+- name: Anthony Thieme
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anthony Thieme)'
+
+- name: Anthony van Dyck
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anthony van Dyck)'
+
+- name: Anto Carte
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anto Carte)'
+
+- name: Antoine Blanchard
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Antoine Blanchard)'
+
+- name: Antoine Verney-Carron
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Antoine Verney-Carron)'
+
+- name: Anton Corbijn
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anton Corbijn)'
+
+- name: Anton Domenico Gabbiani
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anton Domenico Gabbiani)'
+
+- name: Anton Fadeev
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anton Fadeev)'
+
+- name: Anton Mauve
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anton Mauve)'
+
+- name: Anton Otto Fischer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anton Otto Fischer)'
+
+- name: Anton Pieck
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anton Pieck)'
+
+- name: Anton Raphael Mengs
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anton Raphael Mengs)'
+
+- name: Anton Semenov
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Anton Semenov)'
+
+- name: Antonello da Messina
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Antonello da Messina)'
+
+- name: Antoni Gaudi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Antoni Gaudi)'
+
+- name: Antonio Canova
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Antonio Canova)'
+
+- name: Antonio Donghi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Antonio Donghi)'
+
+- name: Antonio J. Manzanedo
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Antonio J. Manzanedo)'
+
+- name: Antonio Mancini
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Antonio Mancini)'
+
+- name: Antonio Mora
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Antonio Mora)'
+
+- name: Antonio Roybal
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Antonio Roybal)'
+
+- name: Antony Gormley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Antony Gormley)'
+
+- name: Apollinary Vasnetsov
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Apollinary Vasnetsov)'
+
+- name: Apollonia Saintclair
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Apollonia Saintclair)'
+
+- name: Aquirax Uno
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Aquirax Uno)'
+
+- name: Archibald Thorburn
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Archibald Thorburn)'
+
+- name: Aries Moross
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Aries Moross)'
+
+- name: Arik Brauer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Arik Brauer)'
+
+- name: Aristarkh Lentulov
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Aristarkh Lentulov)'
+
+- name: Aristide Maillol
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Aristide Maillol)'
+
+- name: Arkhyp Kuindzhi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Arkhyp Kuindzhi)'
+
+- name: Armand Guillaumin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Armand Guillaumin)'
+
+- name: Armand Point
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Armand Point)'
+
+- name: Arnold Bocklin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Arnold Bocklin)'
+
+- name: Arnold Böcklin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Arnold Böcklin)'
+
+- name: Arnold Schoenberg
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Arnold Schoenberg)'
+
+- name: Aron Demetz
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Aron Demetz)'
+
+- name: Aron Wiesenfeld
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Aron Wiesenfeld)'
+
+- name: Arshile Gorky
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Arshile Gorky)'
+
+- name: Art Fitzpatrick
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Art Fitzpatrick)'
+
+- name: Art Frahm
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Art Frahm)'
+
+- name: Art Spiegelman
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Art Spiegelman)'
+
+- name: Artem Chebokha
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Artem Chebokha)'
+
+- name: Artemisia Gentileschi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Artemisia Gentileschi)'
+
+- name: Artgerm
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Artgerm)'
+
+- name: Arthur Adams
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Arthur Adams)'
+
+- name: Arthur Boyd
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Arthur Boyd)'
+
+- name: Arthur Dove
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Arthur Dove)'
+
+- name: Arthur Garfield Dove
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Arthur Garfield Dove)'
+
+- name: Arthur Hacker
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Arthur Hacker)'
+
+- name: Arthur Hughes
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Arthur Hughes)'
+
+- name: Arthur Lismer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Arthur Lismer)'
+
+- name: Arthur Rackham
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Arthur Rackham)'
+
+- name: Arthur Radebaugh
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Arthur Radebaugh)'
+
+- name: Arthur Sarnoff
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Arthur Sarnoff)'
+
+- name: Arthur Stanley Wilkinson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Arthur Stanley Wilkinson)'
+
+- name: Arthur Streeton
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Arthur Streeton)'
+
+- name: Arthur Tress
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Arthur Tress)'
+
+- name: Arthur Wardle
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Arthur Wardle)'
+
+- name: Artur Bordalo
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Artur Bordalo)'
+
+- name: Arturo Souto
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Arturo Souto)'
+
+- name: Artus Scheiner
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Artus Scheiner)'
+
+- name: Ary Scheffer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ary Scheffer)'
+
+- name: Asaf Hanuka
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Asaf Hanuka)'
+
+- name: Asger Jorn
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Asger Jorn)'
+
+- name: Asher Brown Durand
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Asher Brown Durand)'
+
+- name: Ashley Willerton
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ashley Willerton)'
+
+- name: Ashley Wood
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ashley Wood)'
+
+- name: Atay Ghailan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Atay Ghailan)'
+
+- name: Atelier Olschinsky
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Atelier Olschinsky)'
+
+- name: Atey Ghailan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Atey Ghailan)'
+
+- name: Aubrey Beardsley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Aubrey Beardsley)'
+
+- name: Audrey Kawasaki
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Audrey Kawasaki)'
+
+- name: August Friedrich Schenck
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of August Friedrich Schenck)'
+
+- name: August Macke
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of August Macke)'
+
+- name: August Sander
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of August Sander)'
+
+- name: August von Pettenkofen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of August von Pettenkofen)'
+
+- name: Auguste Herbin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Auguste Herbin)'
+
+- name: Auguste Mambour
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Auguste Mambour)'
+
+- name: Auguste Toulmouche
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Auguste Toulmouche)'
+
+- name: Augustus Edwin Mulready
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Augustus Edwin Mulready)'
+
+- name: Augustus Jansson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Augustus Jansson)'
+
+- name: Augustus John
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Augustus John)'
+
+- name: Austin Osman Spare
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Austin Osman Spare)'
+
+- name: Axel Törneman
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Axel Törneman)'
+
+- name: Ayami Kojima
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ayami Kojima)'
+
+- name: Ayan Nag
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ayan Nag)'
+
+- name: Aykut Aydogdu
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Aykut Aydogdu)'
+
+- name: Bakemono Zukushi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bakemono Zukushi)'
+
+- name: Balthus
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Balthus)'
+
+- name: Banksy
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Banksy)'
+
+- name: Barbara Hepworth
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Barbara Hepworth)'
+
+- name: Barbara Kruger
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Barbara Kruger)'
+
+- name: Barbara Stauffacher Solomon
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Barbara Stauffacher Solomon)'
+
+- name: Barbara Takenaga
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Barbara Takenaga)'
+
+- name: Barclay Shaw
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Barclay Shaw)'
+
+- name: Barkley L. Hendricks
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Barkley L. Hendricks)'
+
+- name: Barnett Newman
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Barnett Newman)'
+
+- name: Barry McGee
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Barry McGee)'
+
+- name: Barry Windsor Smith
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Barry Windsor Smith)'
+
+- name: Bart Sears
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bart Sears)'
+
+- name: Barthel Bruyn the Elder
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Barthel Bruyn the Elder)'
+
+- name: Barthel Bruyn the Younger
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Barthel Bruyn the Younger)'
+
+- name: Bartolome Esteban Murillo
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bartolome Esteban Murillo)'
+
+- name: Basil Gogos
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Basil Gogos)'
+
+- name: Bastien Lecouffe-Deharme
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bastien Lecouffe-Deharme)'
+
+- name: Bayard Wu
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bayard Wu)'
+
+- name: Beatrix Potter
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Beatrix Potter)'
+
+- name: Beauford Delaney
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Beauford Delaney)'
+
+- name: Becky Cloonan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Becky Cloonan)'
+
+- name: Beeple
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Beeple)'
+
+- name: Bella Kotak
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bella Kotak)'
+
+- name: Ben Aronson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ben Aronson)'
+
+- name: Ben Goossens
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ben Goossens)'
+
+- name: Ben Hatke
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ben Hatke)'
+
+- name: Ben Nicholson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ben Nicholson)'
+
+- name: Ben Quilty
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ben Quilty)'
+
+- name: Ben Shahn
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ben Shahn)'
+
+- name: Ben Templesmith
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ben Templesmith)'
+
+- name: Ben Wooten
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ben Wooten)'
+
+- name: Benedetto Caliari
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Benedetto Caliari)'
+
+- name: Benedick Bana
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Benedick Bana)'
+
+- name: Benoit B. Mandelbrot
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Benoit B. Mandelbrot)'
+
+- name: Berend Strik
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Berend Strik)'
+
+- name: Bernard Aubertin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bernard Aubertin)'
+
+- name: Bernard Buffet
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bernard Buffet)'
+
+- name: Bernardo Bellotto
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bernardo Bellotto)'
+
+- name: Bernardo Strozzi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bernardo Strozzi)'
+
+- name: Berndnaut Smilde
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Berndnaut Smilde)'
+
+- name: Bernie Wrightson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bernie Wrightson)'
+
+- name: Bert Hardy
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bert Hardy)'
+
+- name: Bert Stern
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bert Stern)'
+
+- name: Berthe Morisot
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Berthe Morisot)'
+
+- name: Bertil Nilsson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bertil Nilsson)'
+
+- name: Bess Hamiti
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bess Hamiti)'
+
+- name: Beth Conklin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Beth Conklin)'
+
+- name: Bettina Rheims
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bettina Rheims)'
+
+- name: Bhupen Khakhar
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bhupen Khakhar)'
+
+- name: Bijou Karman
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bijou Karman)'
+
+- name: Bill Brandt
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bill Brandt)'
+
+- name: Bill Brauer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bill Brauer)'
+
+- name: Bill Carman
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bill Carman)'
+
+- name: Bill Durgin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bill Durgin)'
+
+- name: Bill Gekas
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bill Gekas)'
+
+- name: Bill Henson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bill Henson)'
+
+- name: Bill Jacklin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bill Jacklin)'
+
+- name: Bill Medcalf
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bill Medcalf)'
+
+- name: Bill Sienkiewicz
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bill Sienkiewicz)'
+
+- name: Bill Traylor
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bill Traylor)'
+
+- name: Bill Viola
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bill Viola)'
+
+- name: Bill Ward
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bill Ward)'
+
+- name: Bill Watterson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bill Watterson)'
+
+- name: Billy Childish
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Billy Childish)'
+
+- name: Bjarke Ingels
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bjarke Ingels)'
+
+- name: Blek Le Rat
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Blek Le Rat)'
+
+- name: Bo Bartlett
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bo Bartlett)'
+
+- name: Bo Chen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bo Chen)'
+
+- name: Bob Byerley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bob Byerley)'
+
+- name: Bob Eggleton
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bob Eggleton)'
+
+- name: Bob Ross
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bob Ross)'
+
+- name: Bojan Jevtic
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bojan Jevtic)'
+
+- name: Bojan Koturanovic
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bojan Koturanovic)'
+
+- name: Bordalo II
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bordalo II)'
+
+- name: Boris Grigoriev
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Boris Grigoriev)'
+
+- name: Boris Groh
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Boris Groh)'
+
+- name: Boris Kustodiev
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Boris Kustodiev)'
+
+- name: Boris Vallejo
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Boris Vallejo)'
+
+- name: Botero
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Botero)'
+
+- name: Brad Kunkle
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brad Kunkle)'
+
+- name: Brad Rigney
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brad Rigney)'
+
+- name: Brandon Mably
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brandon Mably)'
+
+- name: Brandon Woelfel
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brandon Woelfel)'
+
+- name: Brenda Zlamany
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brenda Zlamany)'
+
+- name: Brent Cotton
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brent Cotton)'
+
+- name: Brent Heighton
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brent Heighton)'
+
+- name: Brett Weston
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brett Weston)'
+
+- name: Brett Whiteley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brett Whiteley)'
+
+- name: Brian Bolland
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brian Bolland)'
+
+- name: Brian Despain
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brian Despain)'
+
+- name: Brian Froud
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brian Froud)'
+
+- name: Brian K. Vaughan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brian K. Vaughan)'
+
+- name: Brian Kesinger
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brian Kesinger)'
+
+- name: Brian M. Viveros
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brian M. Viveros)'
+
+- name: Brian Mashburn
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brian Mashburn)'
+
+- name: Brian Oldham
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brian Oldham)'
+
+- name: Brian Stelfreeze
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brian Stelfreeze)'
+
+- name: Brian Sum
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brian Sum)'
+
+- name: Briana Mora
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Briana Mora)'
+
+- name: Brice Marden
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brice Marden)'
+
+- name: Bridget Bate Tichenor
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bridget Bate Tichenor)'
+
+- name: Bridget Riley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bridget Riley)'
+
+- name: Briton Rivière
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Briton Rivière)'
+
+- name: Brooke DiDonato
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brooke DiDonato)'
+
+- name: Brooke Shaden
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brooke Shaden)'
+
+- name: Brothers Grimm
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brothers Grimm)'
+
+- name: Brothers Hildebrandt
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Brothers Hildebrandt)'
+
+- name: Bruce Coville
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bruce Coville)'
+
+- name: Bruce Munro
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bruce Munro)'
+
+- name: Bruce Nauman
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bruce Nauman)'
+
+- name: Bruce Pennington
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bruce Pennington)'
+
+- name: Bruce Timm
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bruce Timm)'
+
+- name: Bruno Catalano
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bruno Catalano)'
+
+- name: Bruno Munari
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bruno Munari)'
+
+- name: Bruno Walpoth
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bruno Walpoth)'
+
+- name: Bryan Hitch
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Bryan Hitch)'
+
+- name: Butcher Billy
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Butcher Billy)'
+
+- name: C. R. W. Nevinson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of C. R. W. Nevinson)'
+
+- name: Cagnaccio Di San Pietro
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Cagnaccio Di San Pietro)'
+
+- name: Camille Corot
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Camille Corot)'
+
+- name: Camille Pissarro
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Camille Pissarro)'
+
+- name: Camille Walala
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Camille Walala)'
+
+- name: Canaletto
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Canaletto)'
+
+- name: Candido Portinari
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Candido Portinari)'
+
+- name: Carel Willink
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Carel Willink)'
+
+- name: Carl Barks
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Carl Barks)'
+
+- name: Carl Gustav Carus
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Carl Gustav Carus)'
+
+- name: Carl Holsoe
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Carl Holsoe)'
+
+- name: Carl Larsson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Carl Larsson)'
+
+- name: Carl Spitzweg
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Carl Spitzweg)'
+
+- name: Carlo Crivelli
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Carlo Crivelli)'
+
+- name: Carlos Schwabe
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Carlos Schwabe)'
+
+- name: Carmen Saldana
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Carmen Saldana)'
+
+- name: Carne Griffiths
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Carne Griffiths)'
+
+- name: Carrie Mae Weems
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Carrie Mae Weems)'
+
+- name: Casey Weldon
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Casey Weldon)'
+
+- name: Caspar David Friedrich
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Caspar David Friedrich)'
+
+- name: Cassius Marcellus Coolidge
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Cassius Marcellus Coolidge)'
+
+- name: Catherine Hyde
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Catherine Hyde)'
+
+- name: Catrin Welz-Stein
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Catrin Welz-Stein)'
+
+- name: Cedric Peyravernay
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Cedric Peyravernay)'
+
+- name: Chad Knight
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Chad Knight)'
+
+- name: Chantal Joffe
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Chantal Joffe)'
+
+- name: Charles Addams
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Charles Addams)'
+
+- name: Charles Angrand
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Charles Angrand)'
+
+- name: Charles Blackman
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Charles Blackman)'
+
+- name: Charles Camoin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Charles Camoin)'
+
+- name: Charles Dana Gibson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Charles Dana Gibson)'
+
+- name: Charles E. Burchfield
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Charles E. Burchfield)'
+
+- name: Charles Gwathmey
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Charles Gwathmey)'
+
+- name: Charles Le Brun
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Charles Le Brun)'
+
+- name: Charles Liu
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Charles Liu)'
+
+- name: Charles Schridde
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Charles Schridde)'
+
+- name: Charles Schulz
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Charles Schulz)'
+
+- name: Charles Spencelayh
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Charles Spencelayh)'
+
+- name: Charles Vess
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Charles Vess)'
+
+- name: Charles-Francois Daubigny
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Charles-Francois Daubigny)'
+
+- name: Charlie Bowater
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Charlie Bowater)'
+
+- name: Charline von Heyl
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Charline von Heyl)'
+
+- name: Chaïm Soutine
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Chaïm Soutine)'
+
+- name: Chen Zhen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Chen Zhen)'
+
+- name: Chesley Bonestell
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Chesley Bonestell)'
+
+- name: Chiharu Shiota
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Chiharu Shiota)'
+
+- name: Ching Yeh
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ching Yeh)'
+
+- name: Chip Zdarsky
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Chip Zdarsky)'
+
+- name: Chris Claremont
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Chris Claremont)'
+
+- name: Chris Cunningham
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Chris Cunningham)'
+
+- name: Chris Foss
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Chris Foss)'
+
+- name: Chris Leib
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Chris Leib)'
+
+- name: Chris Mars
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Chris Mars)'
+
+- name: Chris Moore
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Chris Moore)'
+
+- name: Chris Ofili
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Chris Ofili)'
+
+- name: Chris Saunders
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Chris Saunders)'
+
+- name: Chris Turnham
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Chris Turnham)'
+
+- name: Chris Uminga
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Chris Uminga)'
+
+- name: Chris Van Allsburg
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Chris Van Allsburg)'
+
+- name: Chris Ware
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Chris Ware)'
+
+- name: Christian Dimitrov
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Christian Dimitrov)'
+
+- name: Christian Grajewski
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Christian Grajewski)'
+
+- name: Christophe Vacher
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Christophe Vacher)'
+
+- name: Christopher Balaskas
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Christopher Balaskas)'
+
+- name: Christopher Jin Baron
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Christopher Jin Baron)'
+
+- name: Chuck Close
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Chuck Close)'
+
+- name: Cicely Mary Barker
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Cicely Mary Barker)'
+
+- name: Cindy Sherman
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Cindy Sherman)'
+
+- name: Claire Hummel
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Claire Hummel)'
+
+- name: Clara Miller Burd
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Clara Miller Burd)'
+
+- name: Clara Peeters
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Clara Peeters)'
+
+- name: Clarence Holbrook Carter
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Clarence Holbrook Carter)'
+
+- name: Claude Cahun
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Claude Cahun)'
+
+- name: Claude Monet
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Claude Monet)'
+
+- name: Clemens Ascher
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Clemens Ascher)'
+
+- name: Cliff Chiang
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Cliff Chiang)'
+
+- name: Clive Madgwick
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Clive Madgwick)'
+
+- name: Clovis Trouille
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Clovis Trouille)'
+
+- name: Clyde Caldwell
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Clyde Caldwell)'
+
+- name: Coby Whitmore
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Coby Whitmore)'
+
+- name: Coles Phillips
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Coles Phillips)'
+
+- name: Colin Geller
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Colin Geller)'
+
+- name: Conor Harrington
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Conor Harrington)'
+
+- name: Conrad Roset
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Conrad Roset)'
+
+- name: Constant Permeke
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Constant Permeke)'
+
+- name: Constantin Brancusi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Constantin Brancusi)'
+
+- name: Cory Arcangel
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Cory Arcangel)'
+
+- name: Cory Loftis
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Cory Loftis)'
+
+- name: Costa Dvorezky
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Costa Dvorezky)'
+
+- name: Craig Davison
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Craig Davison)'
+
+- name: Craig Mullins
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Craig Mullins)'
+
+- name: Craig Wylie
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Craig Wylie)'
+
+- name: Craola
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Craola)'
+
+- name: Cuno Amiet
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Cuno Amiet)'
+
+- name: Cyril Rolando
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Cyril Rolando)'
+
+- name: Dain Yoon
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Dain Yoon)'
+
+- name: Dale Chihuly
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Dale Chihuly)'
+
+- name: Damien Hirst
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Damien Hirst)'
+
+- name: Dan Flavin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Dan Flavin)'
+
+- name: Dan Mumford
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Dan Mumford)'
+
+- name: Dan Witz
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Dan Witz)'
+
+- name: Daniel Buren
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Daniel Buren)'
+
+- name: Daniel Clowes
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Daniel Clowes)'
+
+- name: Daniel Garber
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Daniel Garber)'
+
+- name: Daniel Merriam
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Daniel Merriam)'
+
+- name: Daniel Ridgway Knight
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Daniel Ridgway Knight)'
+
+- name: Daniela Uhlig
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Daniela Uhlig)'
+
+- name: Daniele Afferni
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Daniele Afferni)'
+
+- name: Dante Gabriel Rossetti
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Dante Gabriel Rossetti)'
+
+- name: Dao Le Trong
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Dao Le Trong)'
+
+- name: Dariusz Zawadzki
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Dariusz Zawadzki)'
+
+- name: Darren Bacon
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Darren Bacon)'
+
+- name: Darwyn Cooke
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Darwyn Cooke)'
+
+- name: Daryl Mandryk
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Daryl Mandryk)'
+
+- name: Dave Dorman
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Dave Dorman)'
+
+- name: Dave Gibbons
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Dave Gibbons)'
+
+- name: Dave McKean
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Dave McKean)'
+
+- name: David A. Hardy
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of David A. Hardy)'
+
+- name: David Aja
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of David Aja)'
+
+- name: David B. Mattingly
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of David B. Mattingly)'
+
+- name: David Bomberg
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of David Bomberg)'
+
+- name: David Bowie
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of David Bowie)'
+
+- name: David Burdeny
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of David Burdeny)'
+
+- name: David Burliuk
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of David Burliuk)'
+
+- name: David Choe
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of David Choe)'
+
+- name: David Driskell
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of David Driskell)'
+
+- name: David Finch
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of David Finch)'
+
+- name: David Hockney
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of David Hockney)'
+
+- name: David Inshaw
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of David Inshaw)'
+
+- name: David Ligare
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of David Ligare)'
+
+- name: David Lynch
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of David Lynch)'
+
+- name: David McClellan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of David McClellan)'
+
+- name: David Palumbo
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of David Palumbo)'
+
+- name: David Shrigley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of David Shrigley)'
+
+- name: David Spriggs
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of David Spriggs)'
+
+- name: David Teniers the Younger
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of David Teniers the Younger)'
+
+- name: David Wiesner
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of David Wiesner)'
+
+- name: Dean Cornwell
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Dean Cornwell)'
+
+- name: Dean Ellis
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Dean Ellis)'
+
+- name: Death Burger
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Death Burger)'
+
+- name: Debbie Criswell
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Debbie Criswell)'
+
+- name: Derek Boshier
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Derek Boshier)'
+
+- name: Desmond Morris
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Desmond Morris)'
+
+- name: Diane Arbus
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Diane Arbus)'
+
+- name: Diane Dillon
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Diane Dillon)'
+
+- name: Dick Bickenbach
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Dick Bickenbach)'
+
+- name: Diego Dayer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Diego Dayer)'
+
+- name: Diego Rivera
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Diego Rivera)'
+
+- name: Diego Velázquez
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Diego Velázquez)'
+
+- name: Dmitry Kustanovich
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Dmitry Kustanovich)'
+
+- name: Don Bluth
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Don Bluth)'
+
+- name: Don Maitz
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Don Maitz)'
+
+- name: Donald Judd
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Donald Judd)'
+
+- name: Donato Giancola
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Donato Giancola)'
+
+- name: Dora Carrington
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Dora Carrington)'
+
+- name: Dora Maar
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Dora Maar)'
+
+- name: Dorina Costras
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Dorina Costras)'
+
+- name: Dorothea Tanning
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Dorothea Tanning)'
+
+- name: Dorothy Lathrop
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Dorothy Lathrop)'
+
+- name: Doug Chiang
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Doug Chiang)'
+
+- name: Douglas Smith
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Douglas Smith)'
+
+- name: Dr. Seuss
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Dr. Seuss)'
+
+- name: Dunkelbunt Hundertwasser”
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Dunkelbunt Hundertwasser”)'
+
+- name: Dustin Nguyen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Dustin Nguyen)'
+
+- name: Duy Huynh
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Duy Huynh)'
+
+- name: E. H. Shepard
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of E. H. Shepard)'
+
+- name: Earl Norem
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Earl Norem)'
+
+- name: Ed Benedict
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ed Benedict)'
+
+- name: Ed Binkley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ed Binkley)'
+
+- name: Ed Brubaker
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ed Brubaker)'
+
+- name: Ed Emshwiller
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ed Emshwiller)'
+
+- name: Ed Freeman
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ed Freeman)'
+
+- name: Ed Mell
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ed Mell)'
+
+- name: Ed Roth
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ed Roth)'
+
+- name: Eddie Campbell
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Eddie Campbell)'
+
+- name: Eddie Mendoza
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Eddie Mendoza)'
+
+- name: Edgar Degas
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Edgar Degas)'
+
+- name: Edmund Dulac
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Edmund Dulac)'
+
+- name: Edmund Leighton
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Edmund Leighton)'
+
+- name: Edouard Manet
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Edouard Manet)'
+
+- name: Edouard Riou
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Edouard Riou)'
+
+- name: Eduardo Kobra
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Eduardo Kobra)'
+
+- name: Edvard Munch
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Edvard Munch)'
+
+- name: Edward Atkinson Hornel
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Edward Atkinson Hornel)'
+
+- name: Edward Burne-Jones
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Edward Burne-Jones)'
+
+- name: Edward Gorey
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Edward Gorey)'
+
+- name: Edward Hopper
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Edward Hopper)'
+
+- name: Edward John Poynter
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Edward John Poynter)'
+
+- name: Edward Julius Detmold
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Edward Julius Detmold)'
+
+- name: Edward Lear
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Edward Lear)'
+
+- name: Edward Robert Hughes
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Edward Robert Hughes)'
+
+- name: Edward Steichen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Edward Steichen)'
+
+- name: Edward Weston
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Edward Weston)'
+
+- name: Edwin Austin Abbey
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Edwin Austin Abbey)'
+
+- name: Edwin Deakin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Edwin Deakin)'
+
+- name: Edwin Henry Landseer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Edwin Henry Landseer)'
+
+- name: Eero Saarinen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Eero Saarinen)'
+
+- name: Egon Schiele
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Egon Schiele)'
+
+- name: Eiichiro Oda
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Eiichiro Oda)'
+
+- name: Eileen Agar
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Eileen Agar)'
+
+- name: El Greco
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of El Greco)'
+
+- name: Elaine de Kooning
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Elaine de Kooning)'
+
+- name: Eleanor Vere Boyle
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Eleanor Vere Boyle)'
+
+- name: Elenore Abbott
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Elenore Abbott)'
+
+- name: Eliott Lilly
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Eliott Lilly)'
+
+- name: Elizabeth Gadd
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Elizabeth Gadd)'
+
+- name: Elizabeth Shippen Green
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Elizabeth Shippen Green)'
+
+- name: Ellen Gallagher
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ellen Gallagher)'
+
+- name: Ellen Jewett
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ellen Jewett)'
+
+- name: Elliot Lilly
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Elliot Lilly)'
+
+- name: Elsa Beskow
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Elsa Beskow)'
+
+- name: Emil Alzamora
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Emil Alzamora)'
+
+- name: Emil Ferris
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Emil Ferris)'
+
+- name: Emil Nolde
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Emil Nolde)'
+
+- name: Emilia Wilk
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Emilia Wilk)'
+
+- name: Emily Kame Kngwarreye
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Emily Kame Kngwarreye)'
+
+- name: Emma Geary
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Emma Geary)'
+
+- name: Emmanuel Shiu
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Emmanuel Shiu)'
+
+- name: Emmanuelle Moureaux
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Emmanuelle Moureaux)'
+
+- name: Emory Douglas
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Emory Douglas)'
+
+- name: Enki Bilal
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Enki Bilal)'
+
+- name: Ephraim Moses Lilien
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ephraim Moses Lilien)'
+
+- name: Eric Fischl
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Eric Fischl)'
+
+- name: Eric Wallis
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Eric Wallis)'
+
+- name: Eric Zener
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Eric Zener)'
+
+- name: Erich Heckel
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Erich Heckel)'
+
+- name: Erin Hanson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Erin Hanson)'
+
+- name: Ernest Crichlow
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ernest Crichlow)'
+
+- name: Ernie Barnes
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ernie Barnes)'
+
+- name: Ernst Fuchs
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ernst Fuchs)'
+
+- name: Ernst Haas
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ernst Haas)'
+
+- name: Ernst Haeckel
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ernst Haeckel)'
+
+- name: Ernst Ludwig Kirchner
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ernst Ludwig Kirchner)'
+
+- name: Esao Andrews
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Esao Andrews)'
+
+- name: Etel Adnan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Etel Adnan)'
+
+- name: Ethan Van Sciver
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ethan Van Sciver)'
+
+- name: Etienne Hebinger
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Etienne Hebinger)'
+
+- name: Ettore Sottsass
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ettore Sottsass)'
+
+- name: Ettore Tito
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ettore Tito)'
+
+- name: Eugene Delacroix
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Eugene Delacroix)'
+
+- name: Eugene von Guerard
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Eugene von Guerard)'
+
+- name: Eugène Grasset
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Eugène Grasset)'
+
+- name: Evelyn De Morgan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Evelyn De Morgan)'
+
+- name: Everett Raymond Kinstler
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Everett Raymond Kinstler)'
+
+- name: Evgeni Gordiets
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Evgeni Gordiets)'
+
+- name: Ewald Rübsamen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ewald Rübsamen)'
+
+- name: Eyvind Earle
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Eyvind Earle)'
+
+- name: F Scott Hess
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of F Scott Hess)'
+
+- name: Fabian Perez
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Fabian Perez)'
+
+- name: Fabio Hurtado
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Fabio Hurtado)'
+
+- name: Fairfield Porter
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Fairfield Porter)'
+
+- name: Faith 47
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Faith 47)'
+
+- name: Faith Ringgold
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Faith Ringgold)'
+
+- name: Fang Lijun
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Fang Lijun)'
+
+- name: Farel Dalrymple
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Farel Dalrymple)'
+
+- name: Fenghua Zhong
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Fenghua Zhong)'
+
+- name: Ferdinand Hodler
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ferdinand Hodler)'
+
+- name: Ferdinand Knab
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ferdinand Knab)'
+
+- name: Ferdinand Van Kessel
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ferdinand Van Kessel)'
+
+- name: Fernand Khnopff
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Fernand Khnopff)'
+
+- name: Fernand Toussaint
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Fernand Toussaint)'
+
+- name: Fernando Herenu
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Fernando Herenu)'
+
+- name: Filip Hodas
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Filip Hodas)'
+
+- name: Filippino Lippi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Filippino Lippi)'
+
+- name: Filippo Balbi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Filippo Balbi)'
+
+- name: Flora Borsi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Flora Borsi)'
+
+- name: Ford Madox Brown
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ford Madox Brown)'
+
+- name: Francesca Woodman
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Francesca Woodman)'
+
+- name: Francis Bacon
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Francis Bacon)'
+
+- name: Francis Coates Jones
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Francis Coates Jones)'
+
+- name: Francis Picabia
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Francis Picabia)'
+
+- name: Francisco De Goya
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Francisco De Goya)'
+
+- name: Francisco Martín
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Francisco Martín)'
+
+- name: Frank Auerbach
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Frank Auerbach)'
+
+- name: Frank Frazetta
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Frank Frazetta)'
+
+- name: Frank Gehry
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Frank Gehry)'
+
+- name: Frank Holl
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Frank Holl)'
+
+- name: Frank Lloyd Wright
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Frank Lloyd Wright)'
+
+- name: Frank Miller
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Frank Miller)'
+
+- name: Frank Stella
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Frank Stella)'
+
+- name: Frank Tinsley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Frank Tinsley)'
+
+- name: Frank Xavier Leyendecker
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Frank Xavier Leyendecker)'
+
+- name: Franklin Booth
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Franklin Booth)'
+
+- name: Franz Marc
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Franz Marc)'
+
+- name: Franz Sedlacek
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Franz Sedlacek)'
+
+- name: Franz Xaver Winterhalter
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Franz Xaver Winterhalter)'
+
+- name: Frederic Church
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Frederic Church)'
+
+- name: Frederic Remington
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Frederic Remington)'
+
+- name: Frederick Lord Leighton
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Frederick Lord Leighton)'
+
+- name: Frederick McCubbin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Frederick McCubbin)'
+
+- name: Frida Kahlo
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Frida Kahlo)'
+
+- name: Frits Van den Berghe
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Frits Van den Berghe)'
+
+- name: Gabriel Dawe
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gabriel Dawe)'
+
+- name: Gabriele Münter
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gabriele Münter)'
+
+- name: Gaetano Pesce
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gaetano Pesce)'
+
+- name: Galan Pang
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Galan Pang)'
+
+- name: Gareth Pugh
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gareth Pugh)'
+
+- name: Gary Larson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gary Larson)'
+
+- name: Gaston Bussière
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gaston Bussière)'
+
+- name: Gediminas Pranckevicius
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gediminas Pranckevicius)'
+
+- name: Genndy Tartakovsky
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Genndy Tartakovsky)'
+
+- name: Geof Darrow
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Geof Darrow)'
+
+- name: Georg Jensen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Georg Jensen)'
+
+- name: Georg Karl Pfahler
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Georg Karl Pfahler)'
+
+- name: George Ault
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of George Ault)'
+
+- name: George Cruikshank
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of George Cruikshank)'
+
+- name: George Dionysus Ehret
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of George Dionysus Ehret)'
+
+- name: George Frederic Watts
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of George Frederic Watts)'
+
+- name: George French Angas
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of George French Angas)'
+
+- name: George Grosz
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of George Grosz)'
+
+- name: George Herriman
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of George Herriman)'
+
+- name: George Inness
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of George Inness)'
+
+- name: George Lucas
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of George Lucas)'
+
+- name: George Luks
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of George Luks)'
+
+- name: George Stubbs
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of George Stubbs)'
+
+- name: George Tooker
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of George Tooker)'
+
+- name: Georges Rouault
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Georges Rouault)'
+
+- name: Georges Seurat
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Georges Seurat)'
+
+- name: Georges de La Tour
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Georges de La Tour)'
+
+- name: Georgia O’Keeffe
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Georgia O’Keeffe)'
+
+- name: Gerald Brom
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gerald Brom)'
+
+- name: Gerda Wegener
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gerda Wegener)'
+
+- name: Gerhard Munthe
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gerhard Munthe)'
+
+- name: Gerhard Richter
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gerhard Richter)'
+
+- name: Gertrude Abercrombie
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gertrude Abercrombie)'
+
+- name: Giacomo Balla
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Giacomo Balla)'
+
+- name: Gianluca Foli
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gianluca Foli)'
+
+- name: Gifford Beal
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gifford Beal)'
+
+- name: Gil Elvgren
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gil Elvgren)'
+
+- name: Gilbert Stuart
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gilbert Stuart)'
+
+- name: Giorgio De Chirico
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Giorgio De Chirico)'
+
+- name: Giotto Di Bondone
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Giotto Di Bondone)'
+
+- name: Giovanni Battista Bracelli
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Giovanni Battista Bracelli)'
+
+- name: Giovanni Battista Gaulli
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Giovanni Battista Gaulli)'
+
+- name: Giovanni Battista Piranesi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Giovanni Battista Piranesi)'
+
+- name: Giovanni Battista Venanzi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Giovanni Battista Venanzi)'
+
+- name: Giovanni da Udina
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Giovanni da Udina)'
+
+- name: Giuseppe Arcimboldo
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Giuseppe Arcimboldo)'
+
+- name: Giuseppe de Nittis
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Giuseppe de Nittis)'
+
+- name: Gjon Mili
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gjon Mili)'
+
+- name: Glen Orbik
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Glen Orbik)'
+
+- name: Glenn Fabry
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Glenn Fabry)'
+
+- name: Gloria Stoll Karn
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gloria Stoll Karn)'
+
+- name: Go Nagai
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Go Nagai)'
+
+- name: Gordon Browne
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gordon Browne)'
+
+- name: Gordon Parks
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gordon Parks)'
+
+- name: Goro Fujita
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Goro Fujita)'
+
+- name: Grace Cossington Smith
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Grace Cossington Smith)'
+
+- name: Grace Popp
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Grace Popp)'
+
+- name: Grandma Moses
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Grandma Moses)'
+
+- name: Grant Wood
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Grant Wood)'
+
+- name: Grayson Perry
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Grayson Perry)'
+
+- name: Greg Girard
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Greg Girard)'
+
+- name: Greg Hildebrandt
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Greg Hildebrandt)'
+
+- name: Greg Rutkowski
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Greg Rutkowski)'
+
+- name: Greg Simkins
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Greg Simkins)'
+
+- name: Gregory Crewdson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gregory Crewdson)'
+
+- name: Guerrilla Girls
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Guerrilla Girls)'
+
+- name: Guido Borelli Da Caluso
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Guido Borelli Da Caluso)'
+
+- name: Guido Crepax
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Guido Crepax)'
+
+- name: Guillermo del Toro
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Guillermo del Toro)'
+
+- name: Guo Pei
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Guo Pei)'
+
+- name: Gustaf Tenggren
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gustaf Tenggren)'
+
+- name: Gustav Klimt
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gustav Klimt)'
+
+- name: Gustave Buchet
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gustave Buchet)'
+
+- name: Gustave Courbet
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gustave Courbet)'
+
+- name: Gustave Doré
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gustave Doré)'
+
+- name: Gustave Moreau
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gustave Moreau)'
+
+- name: Gustave Van de Woestijne
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gustave Van de Woestijne)'
+
+- name: Guy Billout
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Guy Billout)'
+
+- name: Gwen John
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gwen John)'
+
+- name: Gwenda Morgan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Gwenda Morgan)'
+
+- name: H. R. (Hans Ruedi) Giger
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of H. R. (Hans Ruedi) Giger)'
+
+- name: H.P. Lovecraft
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of H.P. Lovecraft)'
+
+- name: Haddon Sundblom
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Haddon Sundblom)'
+
+- name: Hajime Sorayama
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hajime Sorayama)'
+
+- name: Hal Foster
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hal Foster)'
+
+- name: Hale Woodruff
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hale Woodruff)'
+
+- name: Hanna-Barbera
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hanna-Barbera)'
+
+- name: Hannah Hoch
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hannah Hoch)'
+
+- name: Hans Arnold
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hans Arnold)'
+
+- name: Hans Baldung
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hans Baldung)'
+
+- name: Hans Baluschek
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hans Baluschek)'
+
+- name: Hans Bellmer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hans Bellmer)'
+
+- name: Harold McCauley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Harold McCauley)'
+
+- name: Haroon Mirza
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Haroon Mirza)'
+
+- name: Harriet Backer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Harriet Backer)'
+
+- name: Harry Clarke
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Harry Clarke)'
+
+- name: Hasui Kawase
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hasui Kawase)'
+
+- name: Hayao Miyazaki
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hayao Miyazaki)'
+
+- name: Hayv Kahraman
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hayv Kahraman)'
+
+- name: Hein Gorny
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hein Gorny)'
+
+- name: Heinrich Kley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Heinrich Kley)'
+
+- name: Heinrich Lefler
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Heinrich Lefler)'
+
+- name: Heinz Edelmann
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Heinz Edelmann)'
+
+- name: Helen Frankenthaler
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Helen Frankenthaler)'
+
+- name: Helene Knoop
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Helene Knoop)'
+
+- name: Helene Schjerfbeck
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Helene Schjerfbeck)'
+
+- name: Helio Oiticica
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Helio Oiticica)'
+
+- name: Helmut Newton
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Helmut Newton)'
+
+- name: Hendrick Avercamp
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hendrick Avercamp)'
+
+- name: Hendrick Cornelisz Vroom
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hendrick Cornelisz Vroom)'
+
+- name: Hendrick Goltzius
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hendrick Goltzius)'
+
+- name: Hendrik Kerstens
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hendrik Kerstens)'
+
+- name: Henri De Toulouse Lautrec
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Henri De Toulouse Lautrec)'
+
+- name: Henri Fantin Latour
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Henri Fantin Latour)'
+
+- name: Henri Matisse
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Henri Matisse)'
+
+- name: Henri Rousseau
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Henri Rousseau)'
+
+- name: Henri-Edmond Cross
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Henri-Edmond Cross)'
+
+- name: Henriette Grindat
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Henriette Grindat)'
+
+- name: Henry Asencio
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Henry Asencio)'
+
+- name: Henry Fuseli
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Henry Fuseli)'
+
+- name: Henry Moore
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Henry Moore)'
+
+- name: Henry Moret
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Henry Moret)'
+
+- name: Henry Ossawa Tanner
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Henry Ossawa Tanner)'
+
+- name: Henry Raleigh
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Henry Raleigh)'
+
+- name: Herbert List
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Herbert List)'
+
+- name: Herve Groussin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Herve Groussin)'
+
+- name: Hervé Guibert
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hervé Guibert)'
+
+- name: Hethe Srodawa
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hethe Srodawa)'
+
+- name: Hieronymus Bosch
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hieronymus Bosch)'
+
+- name: Hikari Shimoda
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hikari Shimoda)'
+
+- name: Hilma AF Klint
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hilma AF Klint)'
+
+- name: Hirohiko Araki
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hirohiko Araki)'
+
+- name: Hiroshi Nagai
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hiroshi Nagai)'
+
+- name: Hiroshi Sugimoto
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hiroshi Sugimoto)'
+
+- name: Hiroshi Yoshida
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hiroshi Yoshida)'
+
+- name: Honor C. Appleton
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Honor C. Appleton)'
+
+- name: Honoré Daumier
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Honoré Daumier)'
+
+- name: Hope Gangloff
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hope Gangloff)'
+
+- name: Horace Vernet
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Horace Vernet)'
+
+- name: Hou China
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hou China)'
+
+- name: Howard Chandler Christy
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Howard Chandler Christy)'
+
+- name: Howard Finster
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Howard Finster)'
+
+- name: Howard Hodgkin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Howard Hodgkin)'
+
+- name: Howard Pyle
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Howard Pyle)'
+
+- name: Hsiao-Ron Cheng
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hsiao-Ron Cheng)'
+
+- name: Hubert Robert
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hubert Robert)'
+
+- name: Hugh Ferriss
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hugh Ferriss)'
+
+- name: Hugh Kretschmer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hugh Kretschmer)'
+
+- name: Hyacinthe Rigaud
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Hyacinthe Rigaud)'
+
+- name: Iain Faulkner
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Iain Faulkner)'
+
+- name: Ian McQue
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ian McQue)'
+
+- name: Ian Miller
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ian Miller)'
+
+- name: Ida Rentoul Outhwaite
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ida Rentoul Outhwaite)'
+
+- name: Igor Morski
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Igor Morski)'
+
+- name: Igor Wolski
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Igor Wolski)'
+
+- name: Igor Zenin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Igor Zenin)'
+
+- name: Ilya Kuvshinov
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ilya Kuvshinov)'
+
+- name: Ilya Repin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ilya Repin)'
+
+- name: Incarcerated Jerkfaces
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Incarcerated Jerkfaces)'
+
+- name: Ingrid Baars
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ingrid Baars)'
+
+- name: Inio Asano
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Inio Asano)'
+
+- name: Irma Stern
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Irma Stern)'
+
+- name: Iryna Yermolova
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Iryna Yermolova)'
+
+- name: Isaac Cordal
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Isaac Cordal)'
+
+- name: Isaac Levitan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Isaac Levitan)'
+
+- name: Ismail Inceoglu
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ismail Inceoglu)'
+
+- name: Issac Levitan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Issac Levitan)'
+
+- name: Istvan Banyai
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Istvan Banyai)'
+
+- name: Itō Jakuchū
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Itō Jakuchū)'
+
+- name: Ivan Aivazovsky
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ivan Aivazovsky)'
+
+- name: Ivan Albright
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ivan Albright)'
+
+- name: Ivan Bilibin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ivan Bilibin)'
+
+- name: Ivan Shishkin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ivan Shishkin)'
+
+- name: Iwan Baan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Iwan Baan)'
+
+- name: J. J. Grandville
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of J. J. Grandville)'
+
+- name: J.C. Leyendecker
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of J.C. Leyendecker)'
+
+- name: J.M.W. Turner
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of J.M.W. Turner)'
+
+- name: JC Leyendecker
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of JC Leyendecker)'
+
+- name: Jacek Yerka
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jacek Yerka)'
+
+- name: Jack Butler Yeats
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jack Butler Yeats)'
+
+- name: Jack Davis
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jack Davis)'
+
+- name: Jack Gaughan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jack Gaughan)'
+
+- name: Jack Kirby
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jack Kirby)'
+
+- name: Jackson Pollock
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jackson Pollock)'
+
+- name: Jacob Hashimoto
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jacob Hashimoto)'
+
+- name: Jacob Lawrence
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jacob Lawrence)'
+
+- name: Jacob van Ruisdael
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jacob van Ruisdael)'
+
+- name: Jacques Le Moyne
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jacques Le Moyne)'
+
+- name: Jacques Nathan-Garamond
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jacques Nathan-Garamond)'
+
+- name: Jake Parker
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jake Parker)'
+
+- name: Jakub Różalski
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jakub Różalski)'
+
+- name: James Abbott McNeill Whistler
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of James Abbott McNeill Whistler)'
+
+- name: James C Christensen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of James C Christensen)'
+
+- name: James Ensor
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of James Ensor)'
+
+- name: James Gilleard
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of James Gilleard)'
+
+- name: James Gillray
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of James Gillray)'
+
+- name: James Gurney
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of James Gurney)'
+
+- name: James Jean
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of James Jean)'
+
+- name: James Montgomery Flagg
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of James Montgomery Flagg)'
+
+- name: James Paick
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of James Paick)'
+
+- name: James Stokoe
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of James Stokoe)'
+
+- name: James Thomas Watts
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of James Thomas Watts)'
+
+- name: James Tissot
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of James Tissot)'
+
+- name: James Turrell
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of James Turrell)'
+
+- name: Jamie Baldridge
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jamie Baldridge)'
+
+- name: Jamie Hawkesworth
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jamie Hawkesworth)'
+
+- name: Jamie Hewlett
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jamie Hewlett)'
+
+- name: Jamie McKelvie
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jamie McKelvie)'
+
+- name: Jamini Roy
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jamini Roy)'
+
+- name: Jan Brett
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jan Brett)'
+
+- name: Jan Luyken
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jan Luyken)'
+
+- name: Jan Pietersz Saenredam
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jan Pietersz Saenredam)'
+
+- name: Jan Van Eyck
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jan Van Eyck)'
+
+- name: Jan van Kessel the Elder
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jan van Kessel the Elder)'
+
+- name: Jane Graverol
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jane Graverol)'
+
+- name: Jane Newland
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jane Newland)'
+
+- name: Janek Sedlar
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Janek Sedlar)'
+
+- name: Jasmine Becket-Griffith
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jasmine Becket-Griffith)'
+
+- name: Jason A. Engle
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jason A. Engle)'
+
+- name: Jason Chan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jason Chan)'
+
+- name: Jason Edmiston
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jason Edmiston)'
+
+- name: Jasper Johns
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jasper Johns)'
+
+- name: Jaume Plensa
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jaume Plensa)'
+
+- name: Jaya Suberg
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jaya Suberg)'
+
+- name: Jean Arp
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jean Arp)'
+
+- name: Jean Auguste Dominique Ingres
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jean Auguste Dominique Ingres)'
+
+- name: Jean Bourdichon
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jean Bourdichon)'
+
+- name: Jean Delville
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jean Delville)'
+
+- name: Jean Dubuffet
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jean Dubuffet)'
+
+- name: Jean Fouquet
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jean Fouquet)'
+
+- name: Jean Giraud
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jean Giraud)'
+
+- name: Jean Jullien
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jean Jullien)'
+
+- name: Jean Marc Nattier
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jean Marc Nattier)'
+
+- name: Jean Metzinger
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jean Metzinger)'
+
+- name: Jean Nouvel
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jean Nouvel)'
+
+- name: Jean-Antoine Watteau
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jean-Antoine Watteau)'
+
+- name: Jean-Baptiste Monge
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jean-Baptiste Monge)'
+
+- name: Jean-François Millet
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jean-François Millet)'
+
+- name: Jean-Honoré Fragonard
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jean-Honoré Fragonard)'
+
+- name: Jean-Louis Prevost
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jean-Louis Prevost)'
+
+- name: Jean-Léon Gérôme
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jean-Léon Gérôme)'
+
+- name: Jean-Michel Basquiat
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jean-Michel Basquiat)'
+
+- name: Jean-Paul Riopelle
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jean-Paul Riopelle)'
+
+- name: Jeanloup Sieff
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jeanloup Sieff)'
+
+- name: Jeannette Guichard-Bunel
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jeannette Guichard-Bunel)'
+
+- name: Jed Henry
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jed Henry)'
+
+- name: Jef Wu
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jef Wu)'
+
+- name: Jeff Easley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jeff Easley)'
+
+- name: Jeff Goldblum
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jeff Goldblum)'
+
+- name: Jeff Kinney
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jeff Kinney)'
+
+- name: Jeff Koons
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jeff Koons)'
+
+- name: Jeff Legg
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jeff Legg)'
+
+- name: Jeff Lemire
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jeff Lemire)'
+
+- name: Jeff Simpson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jeff Simpson)'
+
+- name: Jeff Wall
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jeff Wall)'
+
+- name: Jeffrey Catherine Jones
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jeffrey Catherine Jones)'
+
+- name: Jeffrey Smith art
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jeffrey Smith art)'
+
+- name: Jeffrey T. Larson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jeffrey T. Larson)'
+
+- name: Jenny Saville
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jenny Saville)'
+
+- name: JennyBird Alcantara
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of JennyBird Alcantara)'
+
+- name: Jeremiah Ketner
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jeremiah Ketner)'
+
+- name: Jeremy Geddes
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jeremy Geddes)'
+
+- name: Jeremy Lipking
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jeremy Lipking)'
+
+- name: Jeremy Mann
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jeremy Mann)'
+
+- name: Jerry Pinkney
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jerry Pinkney)'
+
+- name: Jerry Siegel
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jerry Siegel)'
+
+- name: Jerzy Duda-Gracz
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jerzy Duda-Gracz)'
+
+- name: Jesper Ejsing
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jesper Ejsing)'
+
+- name: Jessica Rossier
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jessica Rossier)'
+
+- name: Jessica Woulfe
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jessica Woulfe)'
+
+- name: Jessie Willcox Smith
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jessie Willcox Smith)'
+
+- name: Jhonen Vasquez
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jhonen Vasquez)'
+
+- name: Jillian Tamaki
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jillian Tamaki)'
+
+- name: Jim Burns
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jim Burns)'
+
+- name: Jim Davis
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jim Davis)'
+
+- name: Jim Lee
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jim Lee)'
+
+- name: Jim Mahfood
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jim Mahfood)'
+
+- name: Jim Woodring
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jim Woodring)'
+
+- name: Jimmy Ernst
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jimmy Ernst)'
+
+- name: Jimmy Lawlor
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jimmy Lawlor)'
+
+- name: Joachim Brohm
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Joachim Brohm)'
+
+- name: Joan Miró
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Joan Miró)'
+
+- name: Joan Tuset
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Joan Tuset)'
+
+- name: Joanna Kustra
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Joanna Kustra)'
+
+- name: Joao Ruas
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Joao Ruas)'
+
+- name: Joaquín Sorolla
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Joaquín Sorolla)'
+
+- name: Joe Bowler
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Joe Bowler)'
+
+- name: Joe De Mers
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Joe De Mers)'
+
+- name: Joe Fenton
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Joe Fenton)'
+
+- name: Joe Jusko
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Joe Jusko)'
+
+- name: Joe Madureira
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Joe Madureira)'
+
+- name: Joe Webb
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Joe Webb)'
+
+- name: Joel Meyerowitz
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Joel Meyerowitz)'
+
+- name: Joel Sternfeld
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Joel Sternfeld)'
+
+- name: Joey Chou
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Joey Chou)'
+
+- name: Johann Wolfgang von Goethe
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Johann Wolfgang von Goethe)'
+
+- name: Johannes Itten
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Johannes Itten)'
+
+- name: Johannes Vermeer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Johannes Vermeer)'
+
+- name: Johannes Voss
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Johannes Voss)'
+
+- name: Johfra Bosschart
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Johfra Bosschart)'
+
+- name: John Anster Fitzgerald
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Anster Fitzgerald)'
+
+- name: John Atherton
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Atherton)'
+
+- name: John Atkinson Grimshaw
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Atkinson Grimshaw)'
+
+- name: John Bauer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Bauer)'
+
+- name: John Berkey
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Berkey)'
+
+- name: John Blanche
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Blanche)'
+
+- name: John Bratby
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Bratby)'
+
+- name: John Cassaday
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Cassaday)'
+
+- name: John Constable
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Constable)'
+
+- name: John Currin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Currin)'
+
+- name: John Duncan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Duncan)'
+
+- name: John Frederick Kensett
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Frederick Kensett)'
+
+- name: John French Sloan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John French Sloan)'
+
+- name: John Harris
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Harris)'
+
+- name: John Howe
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Howe)'
+
+- name: John Hoyland
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Hoyland)'
+
+- name: John James Audubon
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John James Audubon)'
+
+- name: John Kenn Mortensen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Kenn Mortensen)'
+
+- name: John La Farge
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John La Farge)'
+
+- name: John Lavery
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Lavery)'
+
+- name: John Martin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Martin)'
+
+- name: John Perceval
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Perceval)'
+
+- name: John Philip Falter
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Philip Falter)'
+
+- name: John Salminen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Salminen)'
+
+- name: John Singer Sargent
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Singer Sargent)'
+
+- name: John Singleton Copley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Singleton Copley)'
+
+- name: John Stezaker
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Stezaker)'
+
+- name: John Totleben
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Totleben)'
+
+- name: John Wayne Gacy
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Wayne Gacy)'
+
+- name: John Whitcomb
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Whitcomb)'
+
+- name: John Wilhelm
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John Wilhelm)'
+
+- name: John William Waterhouse
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of John William Waterhouse)'
+
+- name: Jon Klassen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jon Klassen)'
+
+- name: Jon McCoy
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jon McCoy)'
+
+- name: Jon Whitcomb
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jon Whitcomb)'
+
+- name: Jordan Grimmer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jordan Grimmer)'
+
+- name: Jorge Jacinto
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jorge Jacinto)'
+
+- name: Josan Gonzalez
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Josan Gonzalez)'
+
+- name: Josef Albers
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Josef Albers)'
+
+- name: Joseph Cornell
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Joseph Cornell)'
+
+- name: Joseph Ducreux
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Joseph Ducreux)'
+
+- name: Joseph Lorusso
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Joseph Lorusso)'
+
+- name: Joseph Mallord William Turner
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Joseph Mallord William Turner)'
+
+- name: Joseph Stella
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Joseph Stella)'
+
+- name: Josephine Wall
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Josephine Wall)'
+
+- name: Josh Kao
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Josh Kao)'
+
+- name: Josh Keyes
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Josh Keyes)'
+
+- name: José Clemente Orozco
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of José Clemente Orozco)'
+
+- name: Jovana Rikalo
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jovana Rikalo)'
+
+- name: Juan Gris
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Juan Gris)'
+
+- name: Judy Chicago
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Judy Chicago)'
+
+- name: Juergen Teller
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Juergen Teller)'
+
+- name: Jules Bastien-Lepage
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jules Bastien-Lepage)'
+
+- name: Julia Contacessi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Julia Contacessi)'
+
+- name: Julian Calle
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Julian Calle)'
+
+- name: Juliana Huxtable
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Juliana Huxtable)'
+
+- name: Julie Bell
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Julie Bell)'
+
+- name: Julie Blackmon
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Julie Blackmon)'
+
+- name: Julie Mehretu
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Julie Mehretu)'
+
+- name: Julien Delval
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Julien Delval)'
+
+- name: Julius Horsthuis
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Julius Horsthuis)'
+
+- name: Jun Kaneko
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Jun Kaneko)'
+
+- name: Junji Ito
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Junji Ito)'
+
+- name: Justin Gerard
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Justin Gerard)'
+
+- name: Józef Mehoffer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Józef Mehoffer)'
+
+- name: Kadir Nelson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kadir Nelson)'
+
+- name: Kaethe Butcher
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kaethe Butcher)'
+
+- name: Kapwani Kiwanga
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kapwani Kiwanga)'
+
+- name: Karel Appel
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Karel Appel)'
+
+- name: Karel Thole
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Karel Thole)'
+
+- name: Karen Wallis
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Karen Wallis)'
+
+- name: Karl Blossfeldt
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Karl Blossfeldt)'
+
+- name: Karl Schmidt-Rottluff
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Karl Schmidt-Rottluff)'
+
+- name: Karol Bak
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Karol Bak)'
+
+- name: Kasia Nowowiejska
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kasia Nowowiejska)'
+
+- name: Kate Beaton
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kate Beaton)'
+
+- name: Kate Greenaway
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kate Greenaway)'
+
+- name: Kathryn Morris Trotter
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kathryn Morris Trotter)'
+
+- name: Kati Horna
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kati Horna)'
+
+- name: Katsuhiro Otomo
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Katsuhiro Otomo)'
+
+- name: Katsushika Hokusai
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Katsushika Hokusai)'
+
+- name: Kawanabe Kyōsai
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kawanabe Kyōsai)'
+
+- name: Kaws
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kaws)'
+
+- name: Kay Nielsen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kay Nielsen)'
+
+- name: Kay Sage
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kay Sage)'
+
+- name: Kazimir Malevich
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kazimir Malevich)'
+
+- name: Kazuo Koike
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kazuo Koike)'
+
+- name: Kehinde Wiley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kehinde Wiley)'
+
+- name: Keith Haring
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Keith Haring)'
+
+- name: Keith Negley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Keith Negley)'
+
+- name: Keith Parkinson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Keith Parkinson)'
+
+- name: Kelly Freas
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kelly Freas)'
+
+- name: Kelly Mckernan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kelly Mckernan)'
+
+- name: Kelly Sue Deconnick
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kelly Sue Deconnick)'
+
+- name: Kelly Vivanco
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kelly Vivanco)'
+
+- name: Ken Fairclough
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ken Fairclough)'
+
+- name: Ken Kelly
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ken Kelly)'
+
+- name: Ken Sugimori
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ken Sugimori)'
+
+- name: Kengo Kuma
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kengo Kuma)'
+
+- name: Kenne Gregoire
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kenne Gregoire)'
+
+- name: Kent Monkman
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kent Monkman)'
+
+- name: Kentaro Miura
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kentaro Miura)'
+
+- name: Kevin Gnutzmans
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kevin Gnutzmans)'
+
+- name: Kevin Sloan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kevin Sloan)'
+
+- name: Kieron Gillen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kieron Gillen)'
+
+- name: Kilian Eng
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kilian Eng)'
+
+- name: Kim Jung Gi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kim Jung Gi)'
+
+- name: Kim Keever
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kim Keever)'
+
+- name: Kitagawa Utamaro
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kitagawa Utamaro)'
+
+- name: Kitty Lange Kielland
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kitty Lange Kielland)'
+
+- name: Klaus Burgle
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Klaus Burgle)'
+
+- name: Klaus Janson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Klaus Janson)'
+
+- name: Klaus Wittmann
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Klaus Wittmann)'
+
+- name: Kobayashi Kiyochika
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kobayashi Kiyochika)'
+
+- name: Konstantin Korovin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Konstantin Korovin)'
+
+- name: Konstantin Yuon
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Konstantin Yuon)'
+
+- name: Koson Ohara
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Koson Ohara)'
+
+- name: Krenz Cushart
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Krenz Cushart)'
+
+- name: Kris Kuksi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kris Kuksi)'
+
+- name: Kuang Hong
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kuang Hong)'
+
+- name: Kunisada
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kunisada)'
+
+- name: Kuno Veeber
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kuno Veeber)'
+
+- name: Kurzgesagt
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Kurzgesagt)'
+
+- name: Käthe Kollwitz
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Käthe Kollwitz)'
+
+- name: L. Birge Harrison
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of L. Birge Harrison)'
+
+- name: Lady Pink
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Lady Pink)'
+
+- name: Larry Elmore
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Larry Elmore)'
+
+- name: Larry Poons
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Larry Poons)'
+
+- name: Larry Sultan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Larry Sultan)'
+
+- name: Laurel Burch
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Laurel Burch)'
+
+- name: Laurent Grasso
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Laurent Grasso)'
+
+- name: Laurie Greasley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Laurie Greasley)'
+
+- name: Laurie Lipton
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Laurie Lipton)'
+
+- name: Lawren Harris
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Lawren Harris)'
+
+- name: Lee Krasner
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Lee Krasner)'
+
+- name: Lee Madgwick
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Lee Madgwick)'
+
+- name: Lee Quinones
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Lee Quinones)'
+
+- name: Leiji Matsumoto
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Leiji Matsumoto)'
+
+- name: Leon Kossoff
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Leon Kossoff)'
+
+- name: Leonardo Da Vinci
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Leonardo Da Vinci)'
+
+- name: Leonetto Cappiello
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Leonetto Cappiello)'
+
+- name: Leonid Afremov
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Leonid Afremov)'
+
+- name: Leonora Carrington
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Leonora Carrington)'
+
+- name: Les Edwards
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Les Edwards)'
+
+- name: Lesley Vance
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Lesley Vance)'
+
+- name: Leticia Gillett
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Leticia Gillett)'
+
+- name: Liam Wong
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Liam Wong)'
+
+- name: Liang Mark
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Liang Mark)'
+
+- name: Lisa Frank
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Lisa Frank)'
+
+- name: Lisa Keene
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Lisa Keene)'
+
+- name: Liu Ye
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Liu Ye)'
+
+- name: Liubov Sergeevna Popova
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Liubov Sergeevna Popova)'
+
+- name: Lois van Baarle
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Lois van Baarle)'
+
+- name: Loish
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Loish)'
+
+- name: Lorena Alvarez Gómez
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Lorena Alvarez Gómez)'
+
+- name: Lorenz Hideyoshi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Lorenz Hideyoshi)'
+
+- name: Loretta Lux
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Loretta Lux)'
+
+- name: Lori Earley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Lori Earley)'
+
+- name: Louis Comfort Tiffany
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Louis Comfort Tiffany)'
+
+- name: Louis Glackens
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Louis Glackens)'
+
+- name: Louis Icart
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Louis Icart)'
+
+- name: Louis Janmot
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Louis Janmot)'
+
+- name: Louis Rhead
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Louis Rhead)'
+
+- name: Louis Wain
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Louis Wain)'
+
+- name: Louise Bourgeois
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Louise Bourgeois)'
+
+- name: Louise Dahl-Wolfe
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Louise Dahl-Wolfe)'
+
+- name: Lovis Corinth
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Lovis Corinth)'
+
+- name: Luca Boni
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Luca Boni)'
+
+- name: Lucas Cranach the Elder
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Lucas Cranach the Elder)'
+
+- name: Lucian Freud
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Lucian Freud)'
+
+- name: Lucy Madox Brown
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Lucy Madox Brown)'
+
+- name: Ludwig Mies van der Rohe
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ludwig Mies van der Rohe)'
+
+- name: Luis Royo
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Luis Royo)'
+
+- name: Luisa Russo
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Luisa Russo)'
+
+- name: Lynd Ward
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Lynd Ward)'
+
+- name: Lynda Barry
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Lynda Barry)'
+
+- name: Lynda Benglis
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Lynda Benglis)'
+
+- name: Lyonel Feininger
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Lyonel Feininger)'
+
+- name: Lyubov Popova
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Lyubov Popova)'
+
+- name: László Moholy-Nagy
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of László Moholy-Nagy)'
+
+- name: M.C. Escher
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of M.C. Escher)'
+
+- name: M.W. Kaluta
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of M.W. Kaluta)'
+
+- name: Mab Graves
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mab Graves)'
+
+- name: Maginel Wright Enright Barney
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Maginel Wright Enright Barney)'
+
+- name: Magnus Enckell
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Magnus Enckell)'
+
+- name: Makoto Shinkai
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Makoto Shinkai)'
+
+- name: Malcolm Liepke
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Malcolm Liepke)'
+
+- name: Man Ray
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Man Ray)'
+
+- name: Mandy Disher
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mandy Disher)'
+
+- name: Mao Hamaguchi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mao Hamaguchi)'
+
+- name: Marat Latypov
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Marat Latypov)'
+
+- name: Marc Chagall
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Marc Chagall)'
+
+- name: Marc Davis
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Marc Davis)'
+
+- name: Marc Samson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Marc Samson)'
+
+- name: Marc Simonetti
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Marc Simonetti)'
+
+- name: Marcin Jakubowski
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Marcin Jakubowski)'
+
+- name: Marco Mazzoni
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Marco Mazzoni)'
+
+- name: Marcus Selmer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Marcus Selmer)'
+
+- name: Marek Okon
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Marek Okon)'
+
+- name: Margaret Brundage
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Margaret Brundage)'
+
+- name: Margaret Macdonald Mackintosh
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Margaret Macdonald Mackintosh)'
+
+- name: Margaret Mee
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Margaret Mee)'
+
+- name: Margaux Valonia
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Margaux Valonia)'
+
+- name: Maria Kreyn
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Maria Kreyn)'
+
+- name: Maria Pascual Alberich
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Maria Pascual Alberich)'
+
+- name: Maria Sibylla Merian
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Maria Sibylla Merian)'
+
+- name: Marianne North
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Marianne North)'
+
+- name: Marianne von Werefkin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Marianne von Werefkin)'
+
+- name: Marie Guillemine Benoist
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Marie Guillemine Benoist)'
+
+- name: Marie Spartali Stillman
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Marie Spartali Stillman)'
+
+- name: Marina Abramović
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Marina Abramović)'
+
+- name: Marius Borgeaud
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Marius Borgeaud)'
+
+- name: Marjane Satrapi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Marjane Satrapi)'
+
+- name: Mark Arian
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mark Arian)'
+
+- name: Mark Briscoe
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mark Briscoe)'
+
+- name: Mark Brooks
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mark Brooks)'
+
+- name: Mark Keathley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mark Keathley)'
+
+- name: Mark Lovett
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mark Lovett)'
+
+- name: Mark Rothko
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mark Rothko)'
+
+- name: Mark Ryden
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mark Ryden)'
+
+- name: Mark Seliger
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mark Seliger)'
+
+- name: Marsden Hartley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Marsden Hartley)'
+
+- name: Martin Ansin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Martin Ansin)'
+
+- name: Martin Deschambault
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Martin Deschambault)'
+
+- name: Martin John Heade
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Martin John Heade)'
+
+- name: Martin Johnson Heade
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Martin Johnson Heade)'
+
+- name: Martin Kippenberger
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Martin Kippenberger)'
+
+- name: Martine Johanna
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Martine Johanna)'
+
+- name: Martiros Saryan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Martiros Saryan)'
+
+- name: Mary Anning
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mary Anning)'
+
+- name: Mary Blair
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mary Blair)'
+
+- name: Mary Cassatt
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mary Cassatt)'
+
+- name: Masaaki Sasamoto
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Masaaki Sasamoto)'
+
+- name: Masamune Shirow
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Masamune Shirow)'
+
+- name: Mat Collishaw
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mat Collishaw)'
+
+- name: Mati Klarwein
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mati Klarwein)'
+
+- name: Matias Hannecke
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Matias Hannecke)'
+
+- name: Matt Bors
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Matt Bors)'
+
+- name: Matt Fraction
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Matt Fraction)'
+
+- name: Matt Groening
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Matt Groening)'
+
+- name: Matthias Grünewald
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Matthias Grünewald)'
+
+- name: Matthias Jung
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Matthias Jung)'
+
+- name: Matti Suuronen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Matti Suuronen)'
+
+- name: Maurice Sendak
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Maurice Sendak)'
+
+- name: Max Beckmann
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Max Beckmann)'
+
+- name: Max Dupain
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Max Dupain)'
+
+- name: Max Ernst
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Max Ernst)'
+
+- name: Max Pechstein
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Max Pechstein)'
+
+- name: Max Weber
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Max Weber)'
+
+- name: Maxfield Parrish
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Maxfield Parrish)'
+
+- name: Maximilian Pirner
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Maximilian Pirner)'
+
+- name: Maximilien Luce
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Maximilien Luce)'
+
+- name: Maxwell Boas
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Maxwell Boas)'
+
+- name: Mead Schaeffer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mead Schaeffer)'
+
+- name: Meryl McMaster
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Meryl McMaster)'
+
+- name: Michael Carson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Michael Carson)'
+
+- name: Michael Cheval
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Michael Cheval)'
+
+- name: Michael Deforge
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Michael Deforge)'
+
+- name: Michael Heizer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Michael Heizer)'
+
+- name: Michael Hutter
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Michael Hutter)'
+
+- name: Michael Parkes
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Michael Parkes)'
+
+- name: Michael Sowa
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Michael Sowa)'
+
+- name: Michael Whelan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Michael Whelan)'
+
+- name: Michal Karcz
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Michal Karcz)'
+
+- name: Michal Lisowski
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Michal Lisowski)'
+
+- name: Michelangelo Buonarroti
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Michelangelo Buonarroti)'
+
+- name: Michelangelo Merisi Da Caravaggio
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Michelangelo Merisi Da Caravaggio)'
+
+- name: Mickalene Thomas
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mickalene Thomas)'
+
+- name: Miho Hirano
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Miho Hirano)'
+
+- name: Mikalojus Konstantinas Ciurlionis
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mikalojus Konstantinas Ciurlionis)'
+
+- name: Mike Campau
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mike Campau)'
+
+- name: Mike Deodato
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mike Deodato)'
+
+- name: Mike Mayhew
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mike Mayhew)'
+
+- name: Mike Mignola
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mike Mignola)'
+
+- name: Mike Winkelmann (Beeple)
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mike Winkelmann (Beeple))'
+
+- name: Mike Worrall
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mike Worrall)'
+
+- name: Mikhail Larionov
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mikhail Larionov)'
+
+- name: Mikhail Nesterov
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mikhail Nesterov)'
+
+- name: Mikhail Vrubel
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mikhail Vrubel)'
+
+- name: Mikko Lagerstedt
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mikko Lagerstedt)'
+
+- name: Milo Manara
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Milo Manara)'
+
+- name: Milton Avery
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Milton Avery)'
+
+- name: Milton Caniff
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Milton Caniff)'
+
+- name: Milton Glaser
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Milton Glaser)'
+
+- name: Miriam Schapiro
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Miriam Schapiro)'
+
+- name: Moebius
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Moebius)'
+
+- name: Mordecai Ardon
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mordecai Ardon)'
+
+- name: Mort Kunstler
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Mort Kunstler)'
+
+- name: Muxxi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Muxxi)'
+
+- name: Méret Oppenheim
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Méret Oppenheim)'
+
+- name: NC Wyeth
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of NC Wyeth)'
+
+- name: NHK Animation
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of NHK Animation)'
+
+- name: Nagel Patrick
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Nagel Patrick)'
+
+- name: Nan Goldin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Nan Goldin)'
+
+- name: Naoki Urasawa
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Naoki Urasawa)'
+
+- name: Naoko Takeuchi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Naoko Takeuchi)'
+
+- name: Naomi Okubo
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Naomi Okubo)'
+
+- name: Naoto Hattori
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Naoto Hattori)'
+
+- name: Natalia Goncharova
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Natalia Goncharova)'
+
+- name: Nathan Coley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Nathan Coley)'
+
+- name: Nathan Wirth
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Nathan Wirth)'
+
+- name: Neil Boyle
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Neil Boyle)'
+
+- name: Neil Welliver
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Neil Welliver)'
+
+- name: Nele Zirnite
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Nele Zirnite)'
+
+- name: Ni Chuanjing
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ni Chuanjing)'
+
+- name: Nicholas Roerich
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Nicholas Roerich)'
+
+- name: Nick Knight
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Nick Knight)'
+
+- name: Nick Sharratt
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Nick Sharratt)'
+
+- name: Nick Silva
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Nick Silva)'
+
+- name: Nicola Samori
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Nicola Samori)'
+
+- name: Nicolas Delort
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Nicolas Delort)'
+
+- name: Nicolas Mignard
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Nicolas Mignard)'
+
+- name: Nicolas de Stael
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Nicolas de Stael)'
+
+- name: Nikolai Ge
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Nikolai Ge)'
+
+- name: Nikolina Petolas
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Nikolina Petolas)'
+
+- name: Noah Bradley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Noah Bradley)'
+
+- name: Nobuyoshi Araki
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Nobuyoshi Araki)'
+
+- name: Noelle Stevenson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Noelle Stevenson)'
+
+- name: Noriyoshi Ohrai
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Noriyoshi Ohrai)'
+
+- name: Norman Ackroyd
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Norman Ackroyd)'
+
+- name: Norman Bluhm
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Norman Bluhm)'
+
+- name: Norman Foster
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Norman Foster)'
+
+- name: Norman Rockwell
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Norman Rockwell)'
+
+- name: OSGEMEOS
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of OSGEMEOS)'
+
+- name: Octavio Ocampo
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Octavio Ocampo)'
+
+- name: Odd Nerdrum
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Odd Nerdrum)'
+
+- name: Odilon Redon
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Odilon Redon)'
+
+- name: Ogawa Kazumasa
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ogawa Kazumasa)'
+
+- name: Ohara Koson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ohara Koson)'
+
+- name: Olafur Eliasson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Olafur Eliasson)'
+
+- name: Oleg Oprisco
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Oleg Oprisco)'
+
+- name: Olga Skomorokhova
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Olga Skomorokhova)'
+
+- name: Olivier Bonhomme
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Olivier Bonhomme)'
+
+- name: Olivier Valsecchi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Olivier Valsecchi)'
+
+- name: Ollie Hoff
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ollie Hoff)'
+
+- name: Os Gemeos
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Os Gemeos)'
+
+- name: Osamu Tezuka
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Osamu Tezuka)'
+
+- name: Oskar Fischinger
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Oskar Fischinger)'
+
+- name: Oskar Kokoschka
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Oskar Kokoschka)'
+
+- name: Ossip Zadkine
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ossip Zadkine)'
+
+- name: Otto Dix
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Otto Dix)'
+
+- name: Otto Marseus van Schrieck
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Otto Marseus van Schrieck)'
+
+- name: Pablo Picasso
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Pablo Picasso)'
+
+- name: Pamela Colman Smith
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Pamela Colman Smith)'
+
+- name: Paolo Roversi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Paolo Roversi)'
+
+- name: Paolo Veronese
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Paolo Veronese)'
+
+- name: Pascal Blanche
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Pascal Blanche)'
+
+- name: Pascale Campion
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Pascale Campion)'
+
+- name: Patrice Murciano
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Patrice Murciano)'
+
+- name: Patricia Polacco
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Patricia Polacco)'
+
+- name: Patrick Brown
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Patrick Brown)'
+
+- name: Patrick Caulfield
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Patrick Caulfield)'
+
+- name: Patrick Dougherty
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Patrick Dougherty)'
+
+- name: Patrick Heron
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Patrick Heron)'
+
+- name: Patrick Woodroffe
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Patrick Woodroffe)'
+
+- name: Paul Barson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Paul Barson)'
+
+- name: Paul Chadeisson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Paul Chadeisson)'
+
+- name: Paul Corfield
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Paul Corfield)'
+
+- name: Paul Cézanne
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Paul Cézanne)'
+
+- name: Paul Delvaux
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Paul Delvaux)'
+
+- name: Paul Gauguin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Paul Gauguin)'
+
+- name: Paul Gustav Fischer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Paul Gustav Fischer)'
+
+- name: Paul Henry
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Paul Henry)'
+
+- name: Paul Klee
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Paul Klee)'
+
+- name: Paul Laffoley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Paul Laffoley)'
+
+- name: Paul Lehr
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Paul Lehr)'
+
+- name: Paul Ranson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Paul Ranson)'
+
+- name: Paul Strand
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Paul Strand)'
+
+- name: Paul Wonner
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Paul Wonner)'
+
+- name: Paula Modersohn-Becker
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Paula Modersohn-Becker)'
+
+- name: Paulus Potter
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Paulus Potter)'
+
+- name: Pawel Kuczynski
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Pawel Kuczynski)'
+
+- name: Peter Andrew Jones
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Peter Andrew Jones)'
+
+- name: Peter Bagge
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Peter Bagge)'
+
+- name: Peter De Seve
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Peter De Seve)'
+
+- name: Peter Doig
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Peter Doig)'
+
+- name: Peter Elson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Peter Elson)'
+
+- name: Peter Gric
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Peter Gric)'
+
+- name: Peter Holme III
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Peter Holme III)'
+
+- name: Peter Howson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Peter Howson)'
+
+- name: Peter Kemp
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Peter Kemp)'
+
+- name: Peter Max
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Peter Max)'
+
+- name: Peter Milligan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Peter Milligan)'
+
+- name: Peter Mohrbacher
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Peter Mohrbacher)'
+
+- name: Peter Paul Rubens
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Peter Paul Rubens)'
+
+- name: Peter Sculthorpe
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Peter Sculthorpe)'
+
+- name: Peter Wileman
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Peter Wileman)'
+
+- name: Peter Zumthor
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Peter Zumthor)'
+
+- name: Phil Foglio
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Phil Foglio)'
+
+- name: Phil Jimenez
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Phil Jimenez)'
+
+- name: Phil Koch
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Phil Koch)'
+
+- name: Phil Noto
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Phil Noto)'
+
+- name: Philip Guston
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Philip Guston)'
+
+- name: Philippe Druillet
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Philippe Druillet)'
+
+- name: Philippe Parreno
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Philippe Parreno)'
+
+- name: Pierre Bonnard
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Pierre Bonnard)'
+
+- name: Pierre Puvis de Chavannes
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Pierre Puvis de Chavannes)'
+
+- name: Pierre-Auguste Renoir
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Pierre-Auguste Renoir)'
+
+- name: Piet Hein Eek
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Piet Hein Eek)'
+
+- name: Piet Mondrian
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Piet Mondrian)'
+
+- name: Pieter Aertsen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Pieter Aertsen)'
+
+- name: Pieter Bruegel The Elder
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Pieter Bruegel The Elder)'
+
+- name: Pieter Claesz
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Pieter Claesz)'
+
+- name: Pieter Jansz Saenredam
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Pieter Jansz Saenredam)'
+
+- name: Pieter de Hooch
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Pieter de Hooch)'
+
+- name: Piotr Jabłoński
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Piotr Jabłoński)'
+
+- name: Pipilotti Rist
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Pipilotti Rist)'
+
+- name: Pixar
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Pixar)'
+
+- name: Pixar Concept Artists
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Pixar Concept Artists)'
+
+- name: Posuka Demizu
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Posuka Demizu)'
+
+- name: Qian Xuan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Qian Xuan)'
+
+- name: Qing Han
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Qing Han)'
+
+- name: Quentin Blake
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Quentin Blake)'
+
+- name: Quentin Tarantino
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Quentin Tarantino)'
+
+- name: Quint Buchholz
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Quint Buchholz)'
+
+- name: RETNA (Marquis Lewis)
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of RETNA (Marquis Lewis))'
+
+- name: RHADS
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of RHADS)'
+
+- name: ROA
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of ROA)'
+
+- name: Rafael Albuquerque
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Rafael Albuquerque)'
+
+- name: Rafał Olbiński
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Rafał Olbiński)'
+
+- name: Raffaello Sanizo
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Raffaello Sanizo)'
+
+- name: Raina Telgemeier
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Raina Telgemeier)'
+
+- name: Raja Ravi Varma
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Raja Ravi Varma)'
+
+- name: Ralph Horsley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ralph Horsley)'
+
+- name: Ralph McQuarrie
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ralph McQuarrie)'
+
+- name: Ralph Steadman
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ralph Steadman)'
+
+- name: Ramon Casas
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ramon Casas)'
+
+- name: Randolph Caldecott
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Randolph Caldecott)'
+
+- name: Raphael
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Raphael)'
+
+- name: Raphael Lacoste
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Raphael Lacoste)'
+
+- name: Raphaelle Peale
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Raphaelle Peale)'
+
+- name: Ravi Zupa
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ravi Zupa)'
+
+- name: Ray Caesar
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ray Caesar)'
+
+- name: Ray Donley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ray Donley)'
+
+- name: Raymond Briggs
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Raymond Briggs)'
+
+- name: Raymond Duchamp-Villon
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Raymond Duchamp-Villon)'
+
+- name: Raymond Leech
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Raymond Leech)'
+
+- name: Raymond Swanland
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Raymond Swanland)'
+
+- name: Rayner Alencar
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Rayner Alencar)'
+
+- name: Rebeca Saray
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Rebeca Saray)'
+
+- name: Rebecca Guay
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Rebecca Guay)'
+
+- name: Rebecca Louise Law
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Rebecca Louise Law)'
+
+- name: Rebecca Sugar
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Rebecca Sugar)'
+
+- name: Reginald Marsh
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Reginald Marsh)'
+
+- name: Rembrandt Van Rijn
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Rembrandt Van Rijn)'
+
+- name: Remedios Varo
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Remedios Varo)'
+
+- name: Rene Laloux
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Rene Laloux)'
+
+- name: Rene Magritte
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Rene Magritte)'
+
+- name: René Lalique
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of René Lalique)'
+
+- name: Reylia Slaby
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Reylia Slaby)'
+
+- name: Rich Davies
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Rich Davies)'
+
+- name: Richard Burlet
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Richard Burlet)'
+
+- name: Richard Corben
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Richard Corben)'
+
+- name: Richard Dadd
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Richard Dadd)'
+
+- name: Richard Deacon
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Richard Deacon)'
+
+- name: Richard Diebenkorn
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Richard Diebenkorn)'
+
+- name: Richard Doyle
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Richard Doyle)'
+
+- name: Richard Eurich
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Richard Eurich)'
+
+- name: Richard Hamilton
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Richard Hamilton)'
+
+- name: Richard Lindner
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Richard Lindner)'
+
+- name: Richard McGuire
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Richard McGuire)'
+
+- name: Richard Misrach
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Richard Misrach)'
+
+- name: Richard S. Johnson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Richard S. Johnson)'
+
+- name: Richard Scarry
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Richard Scarry)'
+
+- name: Rick Guidice
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Rick Guidice)'
+
+- name: Rob Gonsalves
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Rob Gonsalves)'
+
+- name: Rob Liefeld
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Rob Liefeld)'
+
+- name: Robby Cavanaugh
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Robby Cavanaugh)'
+
+- name: Robert Antoine Pinchon
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Robert Antoine Pinchon)'
+
+- name: Robert Chew
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Robert Chew)'
+
+- name: Robert Childress
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Robert Childress)'
+
+- name: Robert Crumb
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Robert Crumb)'
+
+- name: Robert Farkas
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Robert Farkas)'
+
+- name: Robert Hagan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Robert Hagan)'
+
+- name: Robert Irwin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Robert Irwin)'
+
+- name: Robert M Cunningham
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Robert M Cunningham)'
+
+- name: Robert Maguire
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Robert Maguire)'
+
+- name: Robert McCall
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Robert McCall)'
+
+- name: Robert Mcginnis
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Robert Mcginnis)'
+
+- name: Robert Motherwell
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Robert Motherwell)'
+
+- name: Robert Neubecker
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Robert Neubecker)'
+
+- name: Robert Rauschenberg
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Robert Rauschenberg)'
+
+- name: Robert S. Duncanson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Robert S. Duncanson)'
+
+- name: Robert Stivers
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Robert Stivers)'
+
+- name: Robert Vonnoh
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Robert Vonnoh)'
+
+- name: Robert William Hume
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Robert William Hume)'
+
+- name: Robert Williams
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Robert Williams)'
+
+- name: Roberto Ferri
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Roberto Ferri)'
+
+- name: Roberto Matta
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Roberto Matta)'
+
+- name: Roberto Parada
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Roberto Parada)'
+
+- name: Rockwell Kent
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Rockwell Kent)'
+
+- name: Rodney Matthews
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Rodney Matthews)'
+
+- name: Rodríguez ARS
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Rodríguez ARS)'
+
+- name: Roger Ballen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Roger Ballen)'
+
+- name: Roger Dean
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Roger Dean)'
+
+- name: Roger de La Fresnaye
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Roger de La Fresnaye)'
+
+- name: Rolf Armstrong
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Rolf Armstrong)'
+
+- name: Romero Britto
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Romero Britto)'
+
+- name: Ron Mueck
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ron Mueck)'
+
+- name: Ron Walotsky
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ron Walotsky)'
+
+- name: Ronald Balfour
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ronald Balfour)'
+
+- name: Ross Tran
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ross Tran)'
+
+- name: Roy Gjertson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Roy Gjertson)'
+
+- name: Roy Lichtenstein
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Roy Lichtenstein)'
+
+- name: Roz Chast
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Roz Chast)'
+
+- name: Ruan Jia
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ruan Jia)'
+
+- name: Rudolf Freund
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Rudolf Freund)'
+
+- name: Rufino Tamayo
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Rufino Tamayo)'
+
+- name: Rumiko Takahashi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Rumiko Takahashi)'
+
+- name: Russ Mills
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Russ Mills)'
+
+- name: Russell Ayto
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Russell Ayto)'
+
+- name: Ruth Bernhard
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ruth Bernhard)'
+
+- name: Ruxing Gao
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ruxing Gao)'
+
+- name: Ryan Hewett
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ryan Hewett)'
+
+- name: Ryan McGinley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ryan McGinley)'
+
+- name: Ryan Stegman
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ryan Stegman)'
+
+- name: Ryohei Hase
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ryohei Hase)'
+
+- name: Sacha Goldberger
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sacha Goldberger)'
+
+- name: Sailor Moon
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sailor Moon)'
+
+- name: Sakai Hōitsu
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sakai Hōitsu)'
+
+- name: Sally Mann
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sally Mann)'
+
+- name: Salomon van Ruysdael
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Salomon van Ruysdael)'
+
+- name: Salvador Dali
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Salvador Dali)'
+
+- name: Sam Bosma
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sam Bosma)'
+
+- name: Sam Kieth
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sam Kieth)'
+
+- name: Sam Spratt
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sam Spratt)'
+
+- name: Samuel Earp
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Samuel Earp)'
+
+- name: Samuel Melton Fisher
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Samuel Melton Fisher)'
+
+- name: Samuel and Joseph Newsom
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Samuel and Joseph Newsom)'
+
+- name: Sandra Chevrier
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sandra Chevrier)'
+
+- name: Sandro Botticelli
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sandro Botticelli)'
+
+- name: Sandy Skoglund
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sandy Skoglund)'
+
+- name: Saner Edgar
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Saner Edgar)'
+
+- name: Sanford Kossin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sanford Kossin)'
+
+- name: Sangyeob Park
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sangyeob Park)'
+
+- name: Santiago Calatrava
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Santiago Calatrava)'
+
+- name: Santiago Caruso
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Santiago Caruso)'
+
+- name: Sara Wollfalk
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sara Wollfalk)'
+
+- name: Sarah Lucas
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sarah Lucas)'
+
+- name: Satoshi Kon
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Satoshi Kon)'
+
+- name: Saturno Butto
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Saturno Butto)'
+
+- name: Saul Bass
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Saul Bass)'
+
+- name: Saul Steinberg
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Saul Steinberg)'
+
+- name: Saul Tepper
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Saul Tepper)'
+
+- name: Scarlett Hooft Graafland
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Scarlett Hooft Graafland)'
+
+- name: Scott Brundage
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Scott Brundage)'
+
+- name: Scott Listfield
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Scott Listfield)'
+
+- name: Scott Naismith
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Scott Naismith)'
+
+- name: Sean Scully
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sean Scully)'
+
+- name: Sean Yoro
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sean Yoro)'
+
+- name: Seb Mckinnon
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Seb Mckinnon)'
+
+- name: Sebastian Errazuriz
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sebastian Errazuriz)'
+
+- name: Serge Marshennikov
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Serge Marshennikov)'
+
+- name: Shaddy Safadi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Shaddy Safadi)'
+
+- name: Shaun Tan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Shaun Tan)'
+
+- name: Shawn Coss
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Shawn Coss)'
+
+- name: Sheilah Beckett
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sheilah Beckett)'
+
+- name: Shepard Fairey
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Shepard Fairey)'
+
+- name: Sherree Valentine Daines
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sherree Valentine Daines)'
+
+- name: Shin Jeongho
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Shin Jeongho)'
+
+- name: Shinji Aramaki
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Shinji Aramaki)'
+
+- name: Shintaro Kago
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Shintaro Kago)'
+
+- name: Shohei Otomo
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Shohei Otomo)'
+
+- name: Shotaro Ishinomori
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Shotaro Ishinomori)'
+
+- name: Shusei Nagaoko
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Shusei Nagaoko)'
+
+- name: Sidney Nolan
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sidney Nolan)'
+
+- name: Silvestro Lega
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Silvestro Lega)'
+
+- name: Simeon Solomon
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Simeon Solomon)'
+
+- name: Simon Birch
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Simon Birch)'
+
+- name: Simon Bisley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Simon Bisley)'
+
+- name: Simon Stalenhag
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Simon Stalenhag)'
+
+- name: Simone Martini
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Simone Martini)'
+
+- name: Sir James Guthrie
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sir James Guthrie)'
+
+- name: Siya Oum
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Siya Oum)'
+
+- name: Skottie Young
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Skottie Young)'
+
+- name: Slim Aarons
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Slim Aarons)'
+
+- name: Sofonisba Anguissola
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sofonisba Anguissola)'
+
+- name: Sonia Delaunay
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sonia Delaunay)'
+
+- name: Sou Fujimoto
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sou Fujimoto)'
+
+- name: Sparth
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sparth)'
+
+- name: Squeak Carnwath
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Squeak Carnwath)'
+
+- name: Stan And Jan Berenstain
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Stan And Jan Berenstain)'
+
+- name: Stan Lee
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Stan Lee)'
+
+- name: Stanislav Poltavsky
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Stanislav Poltavsky)'
+
+- name: Stanisław Szukalski
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Stanisław Szukalski)'
+
+- name: Stanley Donwood
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Stanley Donwood)'
+
+- name: Stephan Martiniere
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Stephan Martiniere)'
+
+- name: Stephen Gammell
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Stephen Gammell)'
+
+- name: Stephen Oakley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Stephen Oakley)'
+
+- name: Stephen Shore
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Stephen Shore)'
+
+- name: Stevan Dohanos
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Stevan Dohanos)'
+
+- name: Steve Argyle
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Steve Argyle)'
+
+- name: Steve Dillon
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Steve Dillon)'
+
+- name: Steve Ditko
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Steve Ditko)'
+
+- name: Steve Henderson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Steve Henderson)'
+
+- name: Steve Lieber
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Steve Lieber)'
+
+- name: Steve McCurry
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Steve McCurry)'
+
+- name: Steven Belledin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Steven Belledin)'
+
+- name: Storm Thorgerson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Storm Thorgerson)'
+
+- name: Stuart Davis
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Stuart Davis)'
+
+- name: Stuart Haygarth
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Stuart Haygarth)'
+
+- name: Stuart Immonen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Stuart Immonen)'
+
+- name: Studio Ghibli
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Studio Ghibli)'
+
+- name: Sue Bryce
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sue Bryce)'
+
+- name: Susan Luo
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Susan Luo)'
+
+- name: Susan Seddon Boulet
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Susan Seddon Boulet)'
+
+- name: Sven Nordqvist
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sven Nordqvist)'
+
+- name: Syd Mead
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Syd Mead)'
+
+- name: Sydney Edmunds
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sydney Edmunds)'
+
+- name: Sydney Prior Hall
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Sydney Prior Hall)'
+
+- name: Tadao Ando
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tadao Ando)'
+
+- name: Taiyō Matsumoto
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Taiyō Matsumoto)'
+
+- name: Takashi Murakami
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Takashi Murakami)'
+
+- name: Takato Yamamoto
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Takato Yamamoto)'
+
+- name: Takeshi Obata
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Takeshi Obata)'
+
+- name: Tamara Lempicka
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tamara Lempicka)'
+
+- name: Tan Zhi Hui
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tan Zhi Hui)'
+
+- name: Tara McPherson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tara McPherson)'
+
+- name: Tari Márk Dávid
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tari Márk Dávid)'
+
+- name: Tatsuro Kiuchi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tatsuro Kiuchi)'
+
+- name: Ted Nasmith
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ted Nasmith)'
+
+- name: Ted Wallace
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ted Wallace)'
+
+- name: Teophilus Tetteh
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Teophilus Tetteh)'
+
+- name: Terada Katsuya
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Terada Katsuya)'
+
+- name: Teresa Ramos
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Teresa Ramos)'
+
+- name: Terry Oakes
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Terry Oakes)'
+
+- name: Terry Redlin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Terry Redlin)'
+
+- name: Tex Avery
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tex Avery)'
+
+- name: Theo van Rysselberghe
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Theo van Rysselberghe)'
+
+- name: Thomas Allom
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Thomas Allom)'
+
+- name: Thomas Benjamin Kennington
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Thomas Benjamin Kennington)'
+
+- name: Thomas Blackshear
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Thomas Blackshear)'
+
+- name: Thomas Cole
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Thomas Cole)'
+
+- name: Thomas Dodd
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Thomas Dodd)'
+
+- name: Thomas Eakins
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Thomas Eakins)'
+
+- name: Thomas Gainsborough
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Thomas Gainsborough)'
+
+- name: Thomas Moran
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Thomas Moran)'
+
+- name: Thomas Rowlandson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Thomas Rowlandson)'
+
+- name: Thomas Saliot
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Thomas Saliot)'
+
+- name: Thomas Struth
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Thomas Struth)'
+
+- name: Thomas Visscher
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Thomas Visscher)'
+
+- name: Thomas W Schaller
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Thomas W Schaller)'
+
+- name: Thornton Oakley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Thornton Oakley)'
+
+- name: Théodore Géricault
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Théodore Géricault)'
+
+- name: Tibor Nagy
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tibor Nagy)'
+
+- name: Till Freitag
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Till Freitag)'
+
+- name: Tim Burton
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tim Burton)'
+
+- name: Tim Doyle
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tim Doyle)'
+
+- name: Tim Hildebrandt
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tim Hildebrandt)'
+
+- name: Tim White
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tim White)'
+
+- name: Tintoretto
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tintoretto)'
+
+- name: Titian
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Titian)'
+
+- name: Todd McFarlane
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Todd McFarlane)'
+
+- name: Todd Schorr
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Todd Schorr)'
+
+- name: Toei Animations
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Toei Animations)'
+
+- name: Tokujin Yoshioka
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tokujin Yoshioka)'
+
+- name: Tom Bagshaw
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tom Bagshaw)'
+
+- name: Tom Hammick
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tom Hammick)'
+
+- name: Tom Lovell
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tom Lovell)'
+
+- name: Tom Roberts
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tom Roberts)'
+
+- name: Tom Thomson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tom Thomson)'
+
+- name: Tom Whalen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tom Whalen)'
+
+- name: Tomasz Alen Kopera
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tomasz Alen Kopera)'
+
+- name: Tomer Hanuka
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tomer Hanuka)'
+
+- name: Tomi Ungerer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tomi Ungerer)'
+
+- name: Tomma Abts
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tomma Abts)'
+
+- name: Tomokazu Matsuyama
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tomokazu Matsuyama)'
+
+- name: Tony DiTerlizzi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tony DiTerlizzi)'
+
+- name: Tony Moore
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tony Moore)'
+
+- name: Toshiharu Mizutani
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Toshiharu Mizutani)'
+
+- name: Toumas Korpi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Toumas Korpi)'
+
+- name: Tove Jansson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tove Jansson)'
+
+- name: Tracey Emin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tracey Emin)'
+
+- name: Travis Louie
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Travis Louie)'
+
+- name: Tristan Eaton
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tristan Eaton)'
+
+- name: Tsutomu Nihei
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tsutomu Nihei)'
+
+- name: Tyler Edlin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tyler Edlin)'
+
+- name: Tyler Shields
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tyler Shields)'
+
+- name: Tyler West
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Tyler West)'
+
+- name: Ub Iwerks
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ub Iwerks)'
+
+- name: Uemura Shoen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Uemura Shoen)'
+
+- name: Ul Di Rico
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Ul Di Rico)'
+
+- name: Umberto Boccioni
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Umberto Boccioni)'
+
+- name: Utagawa Hiroshige
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Utagawa Hiroshige)'
+
+- name: Valerie Hegarty
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Valerie Hegarty)'
+
+- name: Vhils
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Vhils)'
+
+- name: Victo Ngai
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Victo Ngai)'
+
+- name: Victor Adame Minguez
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Victor Adame Minguez)'
+
+- name: Victor Brauner
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Victor Brauner)'
+
+- name: Victor Medina
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Victor Medina)'
+
+- name: Victor Moscoso
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Victor Moscoso)'
+
+- name: Victor Nizovtsev
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Victor Nizovtsev)'
+
+- name: Victor Vasarely
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Victor Vasarely)'
+
+- name: Victoria Crowe
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Victoria Crowe)'
+
+- name: Viktor Vasnetsov
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Viktor Vasnetsov)'
+
+- name: Viktoria Gavrilenko
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Viktoria Gavrilenko)'
+
+- name: Vincent Di Fate
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Vincent Di Fate)'
+
+- name: Vincent Tanguay
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Vincent Tanguay)'
+
+- name: Vincent Van Gogh
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Vincent Van Gogh)'
+
+- name: Virgil Finlay
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Virgil Finlay)'
+
+- name: Vito Acconci
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Vito Acconci)'
+
+- name: Vittorio Matteo Corcos
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Vittorio Matteo Corcos)'
+
+- name: Vivian Maier
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Vivian Maier)'
+
+- name: Viviane Sassen
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Viviane Sassen)'
+
+- name: Vivienne Westwood
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Vivienne Westwood)'
+
+- name: Vladimir Kush
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Vladimir Kush)'
+
+- name: W. Heath Robinson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of W. Heath Robinson)'
+
+- name: W.W. Denslow
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of W.W. Denslow)'
+
+- name: Wadim Kashin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Wadim Kashin)'
+
+- name: Walt Disney
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Walt Disney)'
+
+- name: Walt Kelly
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Walt Kelly)'
+
+- name: Walter Crane
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Walter Crane)'
+
+- name: Walter Kim
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Walter Kim)'
+
+- name: Walter Langley
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Walter Langley)'
+
+- name: Walter Percy Day
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Walter Percy Day)'
+
+- name: Wangechi Mutu
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Wangechi Mutu)'
+
+- name: Warren Ellis
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Warren Ellis)'
+
+- name: Warwick Globe
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Warwick Globe)'
+
+- name: Wassily Kandinsky
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Wassily Kandinsky)'
+
+- name: Wayne Barlowe
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Wayne Barlowe)'
+
+- name: Wendy Froud
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Wendy Froud)'
+
+- name: Wes Anderson
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Wes Anderson)'
+
+- name: Wilfredo Lam
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Wilfredo Lam)'
+
+- name: Will Barnet
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Will Barnet)'
+
+- name: Will Eisner
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Will Eisner)'
+
+- name: Willem de Kooning
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Willem de Kooning)'
+
+- name: Willem van Haecht
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Willem van Haecht)'
+
+- name: William Blake
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of William Blake)'
+
+- name: William Eggleston
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of William Eggleston)'
+
+- name: William Etty
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of William Etty)'
+
+- name: William Gropper
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of William Gropper)'
+
+- name: William Henry Hunt
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of William Henry Hunt)'
+
+- name: William Hogarth
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of William Hogarth)'
+
+- name: William Holman Hunt
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of William Holman Hunt)'
+
+- name: William Kentridge
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of William Kentridge)'
+
+- name: William Morris
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of William Morris)'
+
+- name: William S. Burroughs
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of William S. Burroughs)'
+
+- name: William Steig
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of William Steig)'
+
+- name: William Stout
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of William Stout)'
+
+- name: William Wegman
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of William Wegman)'
+
+- name: William Zorach
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of William Zorach)'
+
+- name: William-Adolphe Bouguereau
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of William-Adolphe Bouguereau)'
+
+- name: Wim Crouwel
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Wim Crouwel)'
+
+- name: Wim Wenders
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Wim Wenders)'
+
+- name: Winslow Homer
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Winslow Homer)'
+
+- name: Winsor McCay
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Winsor McCay)'
+
+- name: Wojciech Ostrycharz
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Wojciech Ostrycharz)'
+
+- name: Wolf Kahn
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Wolf Kahn)'
+
+- name: Wolfgang Tillmans
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Wolfgang Tillmans)'
+
+- name: Worthington Whittredge
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Worthington Whittredge)'
+
+- name: Yaacov Agam
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Yaacov Agam)'
+
+- name: Yang Jialun
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Yang Jialun)'
+
+- name: Yanjun Cheng
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Yanjun Cheng)'
+
+- name: Yasuo Kuniyoshi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Yasuo Kuniyoshi)'
+
+- name: Yasushi Nirasawa
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Yasushi Nirasawa)'
+
+- name: Yasutomo Oka
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Yasutomo Oka)'
+
+- name: Yayi Morales
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Yayi Morales)'
+
+- name: Yayoi Kusama
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Yayoi Kusama)'
+
+- name: Yiannis Moralis
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Yiannis Moralis)'
+
+- name: Yinka Shonibare
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Yinka Shonibare)'
+
+- name: Yohann Schepacz
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Yohann Schepacz)'
+
+- name: Yoji Shinkawa
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Yoji Shinkawa)'
+
+- name: Yoshitaka Amano
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Yoshitaka Amano)'
+
+- name: Yoshiyuki Tomino
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Yoshiyuki Tomino)'
+
+- name: Yue Minjun
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Yue Minjun)'
+
+- name: Yuri Ivanovich Pimenov
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Yuri Ivanovich Pimenov)'
+
+- name: Yuumei
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Yuumei)'
+
+- name: Yves Klein
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Yves Klein)'
+
+- name: Yves Tanguy
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Yves Tanguy)'
+
+- name: Zack Snyder
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Zack Snyder)'
+
+- name: Zaha Hadid
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Zaha Hadid)'
+
+- name: Zanele Muholi
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Zanele Muholi)'
+
+- name: Zdzisław Beksiński
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Zdzisław Beksiński)'
+
+- name: Zeen Chin
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Zeen Chin)'
+
+- name: Zhang Kechun
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Zhang Kechun)'
+
+- name: Zhelong Xu
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Zhelong Xu)'
+
+- name: Zhichao Cai
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Zhichao Cai)'
+
+- name: Zinaida Serebriakova
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Zinaida Serebriakova)'
+
+- name: teamLab
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of teamLab)'
+
+- name: theCHAMBA
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of theCHAMBA)'
+
+- name: tokyogenso
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of tokyogenso)'
+
+- name: Élisabeth Vigée Le Brun
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Élisabeth Vigée Le Brun)'
+
+- name: Émile Bernard
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Émile Bernard)'
+
+- name: Émile Gallé
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Émile Gallé)'
+
+- name: Étienne-Louis Boullée
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of Étienne-Louis Boullée)'
+
+- name: “Friedensreich Regentag
+ negative_prompt: ''
+ prompt: '{prompt} (in the style of “Friedensreich Regentag)'
+
diff --git a/Styles/basic.json b/Styles/basic.json
new file mode 100644
index 0000000..30c3e6c
--- /dev/null
+++ b/Styles/basic.json
@@ -0,0 +1,332 @@
+[
+ {
+ "name": "3d-model",
+ "prompt": "professional 3d model of {prompt}. octane render, highly detailed, volumetric, dramatic lighting",
+ "negative_prompt": "ugly, deformed, noisy, low poly, blurry, painting"
+ },
+ {
+ "name": "abstract",
+ "prompt": "abstract style of {prompt}. non-representational, colors and shapes, expression of feelings, imaginative, highly detailed",
+ "negative_prompt": "realistic, photographic, figurative, concrete"
+ },
+ {
+ "name": "analog",
+ "prompt": "analog film photo of {prompt}. faded film, desaturated, 35mm photo, grainy, vignette, vintage, Kodachrome, Lomography, stained, highly detailed, found footage",
+ "negative_prompt": "painting, drawing, illustration, glitch, deformed, mutated, cross-eyed, ugly, disfigured"
+ },
+ {
+ "name": "anime",
+ "prompt": "anime artwork of {prompt}. anime style, key visual, vibrant, studio anime, highly detailed",
+ "negative_prompt": "photo, deformed, black and white, realism, disfigured, low contrast"
+ },
+ {
+ "name": "arcade",
+ "prompt": "retro arcade style of {prompt}. 8-bit, pixelated, vibrant, classic video game, old school gaming, reminiscent of 80s and 90s arcade games",
+ "negative_prompt": "modern, ultra-high resolution, photorealistic, 3D"
+ },
+ {
+ "name": "architectural",
+ "prompt": "architectural style of {prompt}. clean lines, geometric shapes, minimalist, modern, architectural drawing, highly detailed",
+ "negative_prompt": "curved lines, ornate, baroque, abstract, grunge"
+ },
+ {
+ "name": "art-deco",
+ "prompt": "art deco style of {prompt}. geometric shapes, bold colors, luxurious, elegant, decorative, symmetrical, ornate, detailed",
+ "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, realism, photorealistic, modernist, minimalist"
+ },
+ {
+ "name": "automotive",
+ "prompt": "automotive advertisement style of {prompt}. sleek, dynamic, professional, commercial, vehicle-focused, high-resolution, highly detailed",
+ "negative_prompt": "noisy, blurry, unattractive, sloppy, unprofessional"
+ },
+ {
+ "name": "biomechanics",
+ "prompt": "biomechanical cyberpunk of {prompt}. cybernetics, human-machine fusion, dystopian, organic meets artificial, dark, intricate, highly detailed",
+ "negative_prompt": "natural, colorful, deformed, sketch, low contrast, watercolor"
+ },
+ {
+ "name": "child's-drawing",
+ "prompt": "hand drawing of {prompt}. cute, crayon, pencil, crayola, scribble, sketch, paper, vibrant, colorful, loosely colored, unsophisticated",
+ "negative_prompt": "cgi, 3D, photoreal, out of focus, glitch, photorealistic, realistic"
+ },
+ {
+ "name": "cinematic",
+ "prompt": "cinematic film still of {prompt}. shallow depth of field, vignette, highly detailed, high budget, bokeh, cinemascope, moody, epic, gorgeous, film grain, grainy",
+ "negative_prompt": "anime, cartoon, graphic, text, painting, crayon, graphite, abstract, glitch, deformed, mutated, ugly, disfigured"
+ },
+ {
+ "name": "clay",
+ "prompt": "play-doh style of {prompt}. sculpture, clay art, centered composition, Claymation, plasticine",
+ "negative_prompt": "sloppy, messy, grainy, highly detailed, ultra textured, photo"
+ },
+ {
+ "name": "comic-book",
+ "prompt": "comic of {prompt}. graphic illustration, comic art, graphic novel art, vibrant, highly detailed",
+ "negative_prompt": "photograph, deformed, glitch, noisy, realistic, stock photo"
+ },
+ {
+ "name": "constructivist",
+ "prompt": "constructivist style of {prompt}. geometric shapes, bold colors, dynamic composition, propaganda art style",
+ "negative_prompt": "realistic, photorealistic, low contrast, plain, simple, abstract expressionism"
+ },
+ {
+ "name": "corporate",
+ "prompt": "corporate branding style of {prompt}. professional, clean, modern, sleek, minimalist, business-oriented, highly detailed",
+ "negative_prompt": "noisy, blurry, grungy, sloppy, cluttered, disorganized"
+ },
+ {
+ "name": "cubist",
+ "prompt": "cubist artwork of {prompt}. cubism, geometric shapes, abstract, innovative, revolutionary, picasso",
+ "negative_prompt": "anime, photorealistic, 35mm film, deformed, glitch, low contrast, noisy"
+ },
+ {
+ "name": "cute",
+ "prompt": "kawaii style of {prompt}. cute, adorable, brightly colored, cheerful, anime influence, highly detailed",
+ "negative_prompt": "dark, scary, realistic, monochrome, abstract"
+ },
+ {
+ "name": "cyber-punk",
+ "prompt": "cyberpunk cityscape of {prompt}. neon lights, dark alleys, skyscrapers, futuristic, vibrant colors, high contrast, highly detailed",
+ "negative_prompt": "natural, rural, deformed, low contrast, black and white, sketch, watercolor"
+ },
+ {
+ "name": "cybernetic",
+ "prompt": "biomechanical style of {prompt}. blend of organic and mechanical elements, futuristic, cybernetic, detailed, intricate",
+ "negative_prompt": "natural, rustic, primitive, organic, simplistic"
+ },
+ {
+ "name": "digital-painting",
+ "prompt": "concept art of {prompt}. digital artwork, illustrative, painterly, matte painting, highly detailed",
+ "negative_prompt": "photo, photorealistic, realism, ugly"
+ },
+ {
+ "name": "dreamscape",
+ "prompt": "dreamscape of {prompt}. surreal, ethereal, dreamy, mysterious, fantasy, highly detailed",
+ "negative_prompt": "realistic, concrete, ordinary, mundane"
+ },
+ {
+ "name": "dystopian",
+ "prompt": "dystopian style of {prompt}. bleak, post-apocalyptic, somber, dramatic, highly detailed",
+ "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, cheerful, optimistic, vibrant, colorful"
+ },
+ {
+ "name": "expressionist",
+ "prompt": "expressionist painting of {prompt}. energetic brushwork, bold colors, abstract forms, expressive, emotional",
+ "negative_prompt": "realistic, photorealistic, low contrast, plain, simple, monochrome"
+ },
+ {
+ "name": "fantasy",
+ "prompt": "ethereal fantasy concept art of {prompt}. magnificent, celestial, ethereal, painterly, epic, majestic, magical, fantasy art, cover art, dreamy",
+ "negative_prompt": "photographic, realistic, realism, 35mm film, dslr, cropped, frame, text, deformed, glitch, noise, noisy, off-center, deformed, cross-eyed, closed eyes, bad anatomy, ugly, disfigured, sloppy, duplicate, mutated, black and white"
+ },
+ {
+ "name": "fashion",
+ "prompt": "fashion editorial style of {prompt}. high fashion, trendy, stylish, editorial, magazine style, professional, highly detailed",
+ "negative_prompt": "outdated, blurry, noisy, unattractive, sloppy"
+ },
+ {
+ "name": "film-noir",
+ "prompt": "film noir style of {prompt}. monochrome, high contrast, dramatic shadows, 1940s style, mysterious, cinematic",
+ "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, realism, photorealistic, vibrant, colorful"
+ },
+ {
+ "name": "food",
+ "prompt": "food photography style of {prompt}. appetizing, professional, culinary, high-resolution, commercial, highly detailed",
+ "negative_prompt": "unappetizing, sloppy, unprofessional, noisy, blurry"
+ },
+ {
+ "name": "food-(gourmet)",
+ "prompt": "gourmet food photo of {prompt}. soft natural lighting, macro details, vibrant colors, fresh ingredients, glistening textures, bokeh background, styled plating, wooden tabletop, garnished, tantalizing, editorial quality",
+ "negative_prompt": "cartoon, anime, sketch, grayscale, dull, overexposed, cluttered, messy plate, deformed"
+ },
+ {
+ "name": "futuristic",
+ "prompt": "futuristic style of {prompt}. sleek, modern, ultramodern, high tech, detailed",
+ "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, realism, photorealistic, vintage, antique"
+ },
+ {
+ "name": "glamour",
+ "prompt": "glamorous photo of {prompt}. high fashion, luxurious, extravagant, stylish, sensual, opulent, elegance, stunning beauty, professional, high contrast, detailed",
+ "negative_prompt": "ugly, deformed, noisy, blurry, distorted, grainy, sketch, low contrast, dull, plain, modest"
+ },
+ {
+ "name": "gothic",
+ "prompt": "gothic style of {prompt}. dark, mysterious, haunting, dramatic, ornate, detailed",
+ "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, realism, photorealistic, cheerful, optimistic"
+ },
+ {
+ "name": "horror",
+ "prompt": "horror-themed of {prompt}. eerie, unsettling, dark, spooky, suspenseful, grim, highly detailed",
+ "negative_prompt": "cheerful, bright, vibrant, light-hearted, cute"
+ },
+ {
+ "name": "hyperreal",
+ "prompt": "hyperrealistic art of {prompt}. extremely high-resolution details, photographic, realism pushed to extreme, fine texture, incredibly lifelike",
+ "negative_prompt": "simplified, abstract, unrealistic, impressionistic, low resolution"
+ },
+ {
+ "name": "impressionist",
+ "prompt": "impressionist painting of {prompt}. loose brushwork, vibrant color, light and shadow play, captures feeling over form",
+ "negative_prompt": "anime, photorealistic, 35mm film, deformed, glitch, low contrast, noisy"
+ },
+ {
+ "name": "isometric",
+ "prompt": "isometric style of {prompt}. vibrant, beautiful, crisp, detailed, ultra detailed, intricate",
+ "negative_prompt": "deformed, mutated, ugly, disfigured, blur, blurry, noise, noisy, realistic, photographic"
+ },
+ {
+ "name": "kirigami",
+ "prompt": "kirigami representation of {prompt}. 3D, paper folding, paper cutting, Japanese, intricate, symmetrical, precision, clean lines",
+ "negative_prompt": "painting, drawing, 2D, noisy, blurry, deformed"
+ },
+ {
+ "name": "line-art",
+ "prompt": "line art drawing of {prompt}. professional, sleek, modern, minimalist, graphic, line art, vector graphics",
+ "negative_prompt": "anime, photorealistic, 35mm film, deformed, glitch, blurry, noisy, off-center, deformed, cross-eyed, closed eyes, bad anatomy, ugly, disfigured, mutated, realism, realistic, impressionism, expressionism, oil, acrylic"
+ },
+ {
+ "name": "long-exposure",
+ "prompt": "long exposure photo of {prompt}. Blurred motion, streaks of light, surreal, dreamy, ghosting effect, highly detailed",
+ "negative_prompt": "static, noisy, deformed, shaky, abrupt, flat, low contrast"
+ },
+ {
+ "name": "lovecraftian",
+ "prompt": "lovecraftian horror of {prompt}. eldritch, cosmic horror, unknown, mysterious, surreal, highly detailed",
+ "negative_prompt": "light-hearted, mundane, familiar, simplistic, realistic"
+ },
+ {
+ "name": "low-poly",
+ "prompt": "low-poly style of {prompt}. low-poly game art, polygon mesh, jagged, blocky, wireframe edges, centered composition",
+ "negative_prompt": "noisy, sloppy, messy, grainy, highly detailed, ultra textured, photo"
+ },
+ {
+ "name": "luxury",
+ "prompt": "luxury product style of {prompt}. elegant, sophisticated, high-end, luxurious, professional, highly detailed",
+ "negative_prompt": "cheap, noisy, blurry, unattractive, amateurish"
+ },
+ {
+ "name": "manga",
+ "prompt": "manga style of {prompt}. vibrant, high-energy, detailed, iconic, Japanese comic style",
+ "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, realism, photorealistic, Western comic style"
+ },
+ {
+ "name": "minimalist",
+ "prompt": "minimalist style of {prompt}. simple, clean, uncluttered, modern, elegant",
+ "negative_prompt": "ornate, complicated, highly detailed, cluttered, disordered, messy, noisy"
+ },
+ {
+ "name": "monochrome",
+ "prompt": "monochrome of {prompt}. black and white, contrast, tone, texture, detailed",
+ "negative_prompt": "colorful, vibrant, noisy, blurry, deformed"
+ },
+ {
+ "name": "neon-punk",
+ "prompt": "neonpunk style of {prompt}. cyberpunk, vaporwave, neon, vibes, vibrant, stunningly beautiful, crisp, detailed, sleek, ultramodern, magenta highlights, dark purple shadows, high contrast, cinematic, ultra detailed, intricate, professional",
+ "negative_prompt": "\"painting\""
+ },
+ {
+ "name": "origami",
+ "prompt": "origami style of {prompt}. paper art, pleated paper, folded, origami art, pleats, cut and fold, centered composition",
+ "negative_prompt": "noisy, sloppy, messy, grainy, highly detailed, ultra textured, photo"
+ },
+ {
+ "name": "paper-mache",
+ "prompt": "paper mache representation of {prompt}. 3D, sculptural, textured, handmade, vibrant, fun",
+ "negative_prompt": "2D, flat, photo, sketch, digital art, deformed, noisy, blurry"
+ },
+ {
+ "name": "papercraft",
+ "prompt": "papercraft style of {prompt}. mixed media, layered, textural, detailed, paper, clean cuts, sharp edges",
+ "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, realism, photorealistic"
+ },
+ {
+ "name": "papercut",
+ "prompt": "flat papercut style of {prompt}. silhouette, clean cuts, paper, sharp edges, minimalist, color block",
+ "negative_prompt": "3D, high detail, noise, grainy, blurry, painting, drawing, photo, disfigured"
+ },
+ {
+ "name": "papercut-(stacked)",
+ "prompt": "stacked papercut art of {prompt}. 3D, layered, dimensional, depth, precision cut, stacked layers, papercut, high contrast",
+ "negative_prompt": "2D, flat, noisy, blurry, painting, drawing, photo, deformed"
+ },
+ {
+ "name": "pixel-art",
+ "prompt": "pixel-art of {prompt}. low-res, blocky, pixel art style, 8-bit graphics",
+ "negative_prompt": "sloppy, messy, blurry, noisy, highly detailed, ultra textured, photo, realistic"
+ },
+ {
+ "name": "pointillism",
+ "prompt": "pointillism style of {prompt}. composed entirely of small, distinct dots of color, vibrant, highly detailed",
+ "negative_prompt": "line drawing, smooth shading, large color fields, simplistic"
+ },
+ {
+ "name": "pop",
+ "prompt": "pop art style of {prompt}. bright colors, bold outlines, popular culture themes, ironic or kitsch",
+ "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, realism, photorealistic, minimalist"
+ },
+ {
+ "name": "product",
+ "prompt": "advertising poster style of {prompt}. Professional, modern, product-focused, commercial, eye-catching, highly detailed",
+ "negative_prompt": "noisy, blurry, amateurish, sloppy, unattractive"
+ },
+ {
+ "name": "professional",
+ "prompt": "cinematic photo of {prompt}. 35mm photograph, film, bokeh, professional, 4k, highly detailed",
+ "negative_prompt": "drawing, painting, crayon, sketch, graphite, impressionist, noisy, blurry, soft, deformed, ugly"
+ },
+ {
+ "name": "psychedelic",
+ "prompt": "psychedelic style of {prompt}. vibrant colors, swirling patterns, abstract forms, surreal, trippy",
+ "negative_prompt": "monochrome, black and white, low contrast, realistic, photorealistic, plain, simple"
+ },
+ {
+ "name": "real-estate",
+ "prompt": "real estate photography style of {prompt}. professional, inviting, well-lit, high-resolution, property-focused, commercial, highly detailed",
+ "negative_prompt": "dark, blurry, unappealing, noisy, unprofessional"
+ },
+ {
+ "name": "renaissance",
+ "prompt": "renaissance style of {prompt}. realistic, perspective, light and shadow, religious or mythological themes, highly detailed",
+ "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, modernist, minimalist, abstract"
+ },
+ {
+ "name": "retro-futurism",
+ "prompt": "retro-futuristic of {prompt}. vintage sci-fi, 50s and 60s style, atomic age, vibrant, highly detailed",
+ "negative_prompt": "contemporary, realistic, rustic, primitive"
+ },
+ {
+ "name": "robotics",
+ "prompt": "cybernetic robot of {prompt}. android, AI, machine, metal, wires, tech, futuristic, highly detailed",
+ "negative_prompt": "organic, natural, human, sketch, watercolor, low contrast"
+ },
+ {
+ "name": "sci-fi",
+ "prompt": "sci-fi style of {prompt}. futuristic, technological, alien worlds, space themes, advanced civilizations",
+ "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, realism, photorealistic, historical, medieval"
+ },
+ {
+ "name": "steampunk",
+ "prompt": "steampunk style of {prompt}. antique, mechanical, brass and copper tones, gears, intricate, detailed",
+ "negative_prompt": "deformed, glitch, noisy, low contrast, anime, photorealistic"
+ },
+ {
+ "name": "surreal",
+ "prompt": "surrealist art of {prompt}. dreamlike, mysterious, provocative, symbolic, intricate, detailed",
+ "negative_prompt": "anime, photorealistic, realistic, deformed, glitch, noisy, low contrast"
+ },
+ {
+ "name": "tilt-shift",
+ "prompt": "tilt-shift photo of {prompt}. selective focus, miniature effect, blurred background, highly detailed, vibrant, perspective control",
+ "negative_prompt": "blurry, noisy, deformed, flat, low contrast, unrealistic, oversaturated, underexposed"
+ },
+ {
+ "name": "vaporwave",
+ "prompt": "vaporwave style of {prompt}. retro aesthetic, cyberpunk, vibrant, neon colors, vintage 80s and 90s style, highly detailed",
+ "negative_prompt": "monochrome, muted colors, realism, rustic, minimalist, dark"
+ },
+ {
+ "name": "watercolor",
+ "prompt": "watercolor painting of {prompt}. vibrant, beautiful, painterly, detailed, textural, artistic",
+ "negative_prompt": "anime, photorealistic, 35mm film, deformed, glitch, low contrast, noisy"
+ }
+]
\ No newline at end of file
diff --git a/Styles/camera.yaml b/Styles/camera.yaml
new file mode 100644
index 0000000..7a8c919
--- /dev/null
+++ b/Styles/camera.yaml
@@ -0,0 +1,539 @@
+# It is recommended not to modify this file,
+# as it serves as the initialization file for the node.
+#
+# Instead, create a copy, place it in the same folder,
+# and the iTools Prompt Styler node will read all your style files from there.
+#
+# Ensure that the formatting is kept the same as in this file.
+# Indents in YAML are critical. Ensure proper indentation, as incorrect spacing can cause errors.
+#
+# Best approach is to copy a block of name, negative_prompt and a prompt and then replace their values
+# Note that your text_positive will be added in this part {prompt}
+# Adding - name: random will allow the node to pick random name from this file
+
+- name: none
+ negative_prompt: ''
+ prompt: ''
+
+- name: random
+ negative_prompt: ''
+ prompt: ''
+
+- name: Canon EOS 90D
+ negative_prompt: slow shooting, inaccurate capture, static subjects
+ prompt: Photograph of {prompt}, captured on a (Canon EOS 90D)
+
+- name: Canon EOS M50
+ negative_prompt: imbalanced quality
+ prompt: Photograph of {prompt}, captured on a (Canon EOS M50)
+
+- name: Canon EOS M50 Mark II
+ negative_prompt: complex, non-vlogging, specialized photography
+ prompt: Photograph of {prompt}, captured on a (Canon EOS M50 Mark II)
+
+- name: Canon EOS M6 Mark II
+ negative_prompt: professionals, poor image quality, slow capture, specialized
+ prompt: Photograph of {prompt}, captured on a (Canon EOS M6 Mark II)
+
+- name: Canon EOS R5
+ negative_prompt: inferior capture, lack of stabilization, amateur use
+ prompt: Photograph of {prompt}, captured on a (Canon EOS R5)
+
+- name: Canon EOS R5 (Unique Variant)
+ negative_prompt: low-resolution, basic video, amateurs, single field
+ prompt: Photograph of {prompt}, captured on a (Canon EOS R5)
+
+- name: Canon EOS RP
+ negative_prompt: cropped frame, amateur quality, professionals
+ prompt: Photograph of {prompt}, captured on a (Canon EOS RP)
+
+- name: Canon EOS Rebel T8i
+ negative_prompt: professional-level
+ prompt: Photograph of {prompt}, captured on a (Canon EOS Rebel T8i), characterized
+ by (vibrant colors, sharp details)
+
+- name: Canon EOS Rebel T8i (Unique Variant)
+ negative_prompt: professional-level
+ prompt: Photograph of {prompt}, captured on a (Canon EOS Rebel T8i)
+
+- name: Canon EOS-1D X Mark III
+ negative_prompt: slow speed, inaccuracy
+ prompt: Photograph of {prompt}, captured on a (Canon EOS-1D X Mark III)
+
+- name: Canon EOS-1D X Mark III (Unique Dynamic Capture Variant)
+ negative_prompt: amateur, portrait photographers, slow shooting, inaccurate capture,
+ static scenes
+ prompt: Photograph of {prompt}, captured on a (Canon EOS-1D X Mark III)
+
+- name: Canon EOS-1D X Mark III (Unique Dynamic Scenes Variant)
+ negative_prompt: amateur, slow shooting, unreliable capture, still life, passive
+ scenes
+ prompt: Photograph of {prompt}, captured on a (Canon EOS-1D X Mark III)
+
+- name: Canon PowerShot G7 X Mark III
+ negative_prompt: complex, poor vlogging, HD video
+ prompt: Photograph of {prompt}, captured on a (Canon PowerShot G7 X Mark III)
+
+- name: Canon PowerShot G7 X Mark III (Unique Specific Variant)
+ negative_prompt: photographers, video limitations, professional recording
+ prompt: Photograph of {prompt}, captured on a (Canon PowerShot G7 X Mark III)
+
+- name: Canon PowerShot G7 X Mark III (Unique Variant)
+ negative_prompt: still photography, HD video, traditional photographers, stationary
+ prompt: Photograph of {prompt}, captured on a (Canon PowerShot G7 X Mark III )
+
+- name: Fujifilm FinePix XP140
+ negative_prompt: indoor use, shock-prone
+ prompt: Photograph of {prompt}, captured on a (Fujifilm FinePix XP140)
+
+- name: Fujifilm GFX 100
+ negative_prompt: low resolution, color inconsistency, amateurish quality
+ prompt: Photograph of {prompt}, captured on a (Fujifilm GFX 100)
+
+- name: Fujifilm GFX 100 (Unique Specific Variant)
+ negative_prompt: low resolution, lack of stabilization, blurred images
+ prompt: Photograph of {prompt}, captured on a (Fujifilm GFX 100)
+
+- name: Fujifilm GFX 100 (Unique Variant)
+ negative_prompt: low resolution, lack of detail, limited range, amateur
+ prompt: Photograph of {prompt}, captured on a (Fujifilm GFX 100 )
+
+- name: Fujifilm GFX 50S
+ negative_prompt: low resolution, poor tones, casual snapfocus
+ prompt: Photograph of {prompt}, captured on a (Fujifilm GFX 50S)
+
+- name: Fujifilm Instax Mini 11
+ negative_prompt: serious, complex, professional events, solitude, digital storage
+ prompt: Photograph of {prompt}, captured on a (Fujifilm Instax Mini 11)
+
+- name: Fujifilm X-E4
+ negative_prompt: dull color, studio photography
+ prompt: Photograph of {prompt}, captured on a (Fujifilm X-E4)
+
+- name: Fujifilm X-E4 (Unique Variant)
+ negative_prompt: studio, portrait photographers
+ prompt: Photograph of {prompt}, captured on a (Fujifilm X-E4)
+
+- name: Fujifilm X-Pro3
+ negative_prompt: viewfinder, digital look, modern images
+ prompt: Photograph of {prompt}, captured on a (Fujifilm X-Pro3)
+
+- name: Fujifilm X-Pro3 (Unique Variant)
+ negative_prompt: viewfinder, digital look, modern experience, digital aesthetics
+ prompt: Photograph of {prompt}, captured on a (Fujifilm X-Pro3)
+
+- name: Fujifilm X-T200
+ negative_prompt: complex, dull color, professionals, low-quality images
+ prompt: Photograph of {prompt}, captured on a (Fujifilm X-T200)
+
+- name: Fujifilm X-T4
+ negative_prompt: slowness, lack of stabilization, amateur videography
+ prompt: Photograph of {prompt}, captured on a (Fujifilm X-T4)
+
+- name: Fujifilm X-T4 (Unique Strong Stabilization)
+ negative_prompt: weak stabilization, specialized performance, photography only,
+ videography only
+ prompt: Photograph of {prompt}, captured on a (Fujifilm X-T4)
+
+- name: Fujifilm X100V
+ negative_prompt: digital look, contemporary images
+ prompt: Photograph of {prompt}, captured on a (Fujifilm X100V)
+
+- name: Fujifilm X100V (Unique Variant)
+ negative_prompt: modern looks, average image quality, studio photography
+ prompt: Photograph of {prompt}, captured on a (Fujifilm X100V)
+
+- name: GoPro HERO9 Black
+ negative_prompt: shaky footage, static scenes
+ prompt: Photograph of {prompt}, captured on a (GoPro HERO9 Black)
+
+- name: Hasselblad 907X 50C
+ negative_prompt: modern aesthetics, poor detail
+ prompt: Photograph of {prompt}, captured on a (Hasselblad 907X 50C)
+
+- name: Hasselblad 907X 50C (Unique Large Format)
+ negative_prompt: poor image quality
+ prompt: Photograph of {prompt}, captured on a (Hasselblad 907X 50C)
+
+- name: Hasselblad H5D-50c
+ negative_prompt: lack of detail, color inaccuracy
+ prompt: Photograph of {prompt}, captured on a (Hasselblad H5D-50c)
+
+- name: Hasselblad H6D-100c
+ negative_prompt: low resolution, amateur work
+ prompt: Photograph of {prompt}, captured on a (Hasselblad H6D-100c)
+
+- name: Hasselblad X1D II 50C
+ negative_prompt: limited detail, narrow dynamic range, dull colors
+ prompt: Photograph of {prompt}, captured on a (Hasselblad X1D II 50C)
+
+- name: Hasselblad X1D II 50C (Unique High Resolution)
+ negative_prompt: low resolution, color inaccuracy, amateur portraits
+ prompt: Photograph of {prompt}, captured on a (Hasselblad X1D II 50C)
+
+- name: Hasselblad XCD 4/45P
+ negative_prompt: average , harsh bokeh
+ prompt: Photograph of {prompt}, captured on a (Hasselblad XCD 4/45P)
+
+- name: Leica CL
+ negative_prompt: average optics, soft images
+ prompt: Photograph of {prompt}, captured on a (Leica CL)
+
+- name: Leica M-D
+ negative_prompt: DSLR, enhanced photography
+ prompt: Photograph of {prompt}, captured on a (Leica M-D)
+
+- name: Leica M10 Monochrom
+ negative_prompt: color photography, flat tones, contemporary look
+ prompt: Photograph of {prompt}, captured on a (Leica M10 Monochrom)
+
+- name: Leica M10 Monochrom (Unique Variant)
+ negative_prompt: color photography, conventional, non-artists, color enthusiasts
+ prompt: Photograph of {prompt}, captured on a (Leica M10 Monochrom)
+
+- name: Leica M10-R
+ negative_prompt: mediocre quality, lack of detail, snapshot photography
+ prompt: Photograph of {prompt}, captured on a (Leica M10-R)
+
+- name: Leica M11
+ negative_prompt: ''
+ prompt: Photograph of {prompt}, captured on a (Leica M11)
+
+- name: Leica Q-P
+ negative_prompt: attention-grabbing, studio photographers
+ prompt: Photograph of {prompt}, captured on a (Leica Q-P)
+
+- name: Leica Q2
+ negative_prompt: cropped sensor, lack of , low
+ prompt: Photograph of {prompt}, captured on a (Leica Q2)
+
+- name: Leica Q2 Monochrom
+ negative_prompt: color photography, complex approach, low-resolution, color enthusiasts
+ prompt: Photograph of {prompt}, captured on a (Leica Q2 Monochrom)
+
+- name: Leica S3
+ negative_prompt: mediocre image quality, basic build, low-end commercial
+ prompt: Photograph of {prompt}, captured on a (Leica S3)
+
+- name: Leica SL2
+ negative_prompt: low-quality images, cheap feel
+ prompt: Photograph of {prompt}, captured on a (Leica SL2)
+
+- name: Leica SL2 (Unique Variant)
+ negative_prompt: cropped sensor, mediocre quality, snap, budget advertising
+ prompt: Photograph of {prompt}, captured on a (Leica SL2)
+
+- name: Leica SL2-S
+ negative_prompt: cropped-frame, basic build, specialization, photography only, videography
+ only
+ prompt: Photograph of {prompt}, captured on a (Leica SL2-S)
+
+- name: Nikon Coolpix P950
+ negative_prompt: limited zoom, lack of stabilization, close-up photography
+ prompt: Photograph of {prompt}, captured on a (Nikon Coolpix P950)
+
+- name: Nikon Coolpix P950 (Unique Variant)
+ negative_prompt: limited zoom, no stabilization, close-up subjects
+ prompt: Photograph of {prompt}, captured on a (Nikon Coolpix P950)
+
+- name: Nikon Coolpix W300
+ negative_prompt: studio, , HD video
+ prompt: Photograph of {prompt}, captured on a (Nikon Coolpix W300)
+
+- name: Nikon D3500
+ negative_prompt: poor image quality
+ prompt: Photograph of {prompt}, captured on a (Nikon D3500), characterized by (rich
+ colors, smooth tonal transitions)
+
+- name: Nikon D6
+ negative_prompt: amateur, slowness, inaccuracy, still life photography, static scenes
+ prompt: Photograph of {prompt}, captured on a (Nikon D6)
+
+- name: Nikon D780
+ negative_prompt: poor low-light, limited video, low-detail images
+ prompt: Photograph of {prompt}, captured on a (Nikon D780)
+
+- name: Nikon D850
+ negative_prompt: low resolution, slow performance
+ prompt: Photograph of {prompt}, captured on a (Nikon D850)
+
+- name: Nikon D850 (Unique High Resolution)
+ negative_prompt: cropped-frame, low resolution, specialized performance, amateur,
+ narrow range
+ prompt: Photograph of {prompt}, captured on a (Nikon D850)
+
+- name: Nikon Z5
+ negative_prompt: cropped-frame, imbalance, poor performance, expensive, beginners,
+ high-end professionals
+ prompt: Photograph of {prompt}, captured on a (Nikon Z5)
+
+- name: Nikon Z50
+ negative_prompt: complex, dull images
+ prompt: Photograph of {prompt}, captured on a (Nikon Z50)
+
+- name: Nikon Z50 (Unique Variant)
+ negative_prompt: complex, professionals, stationary photography
+ prompt: Photograph of {prompt}, captured on a (Nikon Z50)
+
+- name: Nikon Z6
+ negative_prompt: cropped sensor, poor low-light performance, noisy images
+ prompt: Photograph of {prompt}, captured on a (Nikon Z6)
+
+- name: Nikon Z6 II
+ negative_prompt: poor low-light, slow capture, static , day scenes
+ prompt: Photograph of {prompt}, captured on a (Nikon Z6 II)
+
+- name: Nikon Z7 II
+ negative_prompt: low-resolution, slow shooting, lack of detail, static scenes
+ prompt: Photograph of {prompt}, captured on a (Nikon Z7 II)
+
+- name: Nikon Z7 II (Unique Variant)
+ negative_prompt: poor resolution, limited range, portrait photographers, vague details
+ prompt: Photograph of {prompt}, captured on a (Nikon Z7 II)
+
+- name: Olympus E-M1X
+ negative_prompt: weak stabilization, slow capture, still life, passive scenes
+ prompt: Photograph of {prompt}, captured on a (Olympus E-M1X)
+
+- name: Olympus OM-D E-M1 Mark II
+ negative_prompt: slow capture, action, missed timing
+ prompt: Photograph of {prompt}, captured on a (Olympus OM-D E-M1 Mark II)
+
+- name: Olympus OM-D E-M10 Mark IV
+ negative_prompt: heavy, fixed location, shaky images
+ prompt: Photograph of {prompt}, captured on a (Olympus OM-D E-M10 Mark IV)
+
+- name: Olympus OM-D E-M10 Mark IV (Unique Variant)
+ negative_prompt: complex, professional-level
+ prompt: Photograph of {prompt}, captured on a (Olympus OM-D E-M10 Mark IV)
+
+- name: Olympus OM-D E-M1X
+ negative_prompt: amateur, still life, basic stabilization, non-weather-sealed, controlled
+ conditions
+ prompt: Photograph of {prompt}, captured on a (Olympus OM-D E-M1X)
+
+- name: Olympus OM-D E-M5 Mark III
+ negative_prompt: weak stabilization, studio photography
+ prompt: Photograph of {prompt}, captured on a (Olympus OM-D E-M5 Mark III)
+
+- name: Olympus OM-D E-M5 Mark III (Unique Variant)
+ negative_prompt: heavy, non-weather-sealed, indoor photography, controlled weather
+ prompt: Photograph of {prompt}, captured on a (Olympus OM-D E-M5 Mark III)
+
+- name: Olympus PEN E-PL10
+ negative_prompt: technical photographers, images
+ prompt: Photograph of {prompt}, captured on a (Olympus PEN E-PL10)
+
+- name: Olympus PEN-F
+ negative_prompt: poor color reproduction, dull photos
+ prompt: Photograph of {prompt}, captured on a (Olympus PEN-F)
+
+- name: Olympus PEN-F (Unique Specific Variant)
+ negative_prompt: fixed , limited creativity, studio photography
+ prompt: Photograph of {prompt}, captured on a (Olympus PEN-F)
+
+- name: Olympus PEN-F (Unique Variant)
+ negative_prompt: modern-styled, controls, non-artists, lack of style, limited functionality
+ prompt: Photograph of {prompt}, captured on a (Olympus PEN-F )
+
+- name: Olympus Tough TG-6
+ negative_prompt: not waterproof, indoor photography
+ prompt: Photograph of {prompt}, captured on a (Olympus Tough TG-6)
+
+- name: Olympus Tough TG-6 (Unique Variant)
+ negative_prompt: studio, , shock-prone
+ prompt: Photograph of {prompt}, captured on a (Olympus Tough TG-6)
+
+- name: Panasonic Lumix DC-G100
+ negative_prompt: photographers, external microphone required, poor audio
+ prompt: Photograph of {prompt}, captured on a (Panasonic Lumix DC-G100)
+
+- name: Panasonic Lumix DC-G9
+ negative_prompt: videographers, low-resolution, slow burst, still life, static scenes
+ prompt: Photograph of {prompt}, captured on a (Panasonic Lumix DC-G9)
+
+- name: Panasonic Lumix DC-GH5
+ negative_prompt: HD video, basic features, photographers, non-cinematic content
+ prompt: Photograph of {prompt}, captured on a (Panasonic Lumix DC-GH5)
+
+- name: Panasonic Lumix DC-S1R
+ negative_prompt: low-resolution, build, landscapes, amateur indoor
+ prompt: Photograph of {prompt}, captured on a (Panasonic Lumix DC-S1R)
+
+- name: Panasonic Lumix DC-S5
+ negative_prompt: photo-only, limited video, specialization, single-format creators
+ prompt: Photograph of {prompt}, captured on a (Panasonic Lumix DC-S5)
+
+- name: Panasonic Lumix DC-S5 (Unique Variant)
+ negative_prompt: cropped-frame, imbalance, poor image quality, limited video, specialized
+ creators
+ prompt: Photograph of {prompt}, captured on a (Panasonic Lumix DC-S5)
+
+- name: Panasonic Lumix DMC-FZ300
+ negative_prompt: variable aperture, non-weather-sealed, indoor photography
+ prompt: Photograph of {prompt}, captured on a (Panasonic Lumix DMC-FZ300), characterized
+ by (fast autofocus, great macro capabilities)
+
+- name: Panasonic Lumix DMC-FZ300 (Unique Variant)
+ negative_prompt: fixed , studio photographers, non-adventurous
+ prompt: Photograph of {prompt}, captured on a (Panasonic Lumix DMC-FZ300)
+
+- name: Panasonic Lumix DMC-LX100 II
+ negative_prompt: budget, slow , HD video, studio work, specialized photography
+ prompt: Photograph of {prompt}, captured on a (Panasonic Lumix DMC-LX100 II)
+
+- name: Panasonic Lumix FZ1000 II
+ negative_prompt: limited zoom, HD video, single-purpose
+ prompt: Photograph of {prompt}, captured on a (Panasonic Lumix FZ1000 II)
+
+- name: Panasonic Lumix G100
+ negative_prompt: still photography, HD video, fixed , limited framing
+ prompt: Photograph of {prompt}, captured on a (Panasonic Lumix G100)
+
+- name: Panasonic Lumix GH5 II
+ negative_prompt: still photography, shaky footage, low frame rates, amateur video
+ prompt: Photograph of {prompt}, captured on a (Panasonic Lumix GH5 II)
+
+- name: Panasonic Lumix S1
+ negative_prompt: still photography, photographers, indoor videography
+ prompt: Photograph of {prompt}, captured on a (Panasonic Lumix S1)
+
+- name: Panasonic Lumix S1R
+ negative_prompt: low resolution, lack of detail, amateur use
+ prompt: Photograph of {prompt}, captured on a (Panasonic Lumix S1R)
+
+- name: Panasonic Lumix S5
+ negative_prompt: HD video, non-vlogging
+ prompt: Photograph of {prompt}, captured on a (Panasonic Lumix S5)
+
+- name: Pentax 645Z
+ negative_prompt: lack of detail, limited range, amateur portraits
+ prompt: Photograph of {prompt}, captured on a (Pentax 645Z)
+
+- name: Pentax 645Z (Unique Large Format)
+ negative_prompt: average image quality, limited range, amateur, action, on-the-go
+ prompt: Photograph of {prompt}, captured on a (Pentax 645Z)
+
+- name: Pentax K-1 Mark II
+ negative_prompt: soft , limited dynamic range
+ prompt: Photograph of {prompt}, captured on a (Pentax K-1 Mark II)
+
+- name: Pentax KP
+ negative_prompt: build, non-weather-sealed, indoor photography
+ prompt: Photograph of {prompt}, captured on a (Pentax KP)
+
+- name: Phase One XF IQ4 150MP
+ negative_prompt: low-end, low resolution, amateur, lack of detail
+ prompt: Photograph of {prompt}, captured on a (Phase One XF IQ4 150MP)
+
+- name: Phase One XT
+ negative_prompt: studio camera, action, portrait, lack of detail, disconnected system
+ prompt: Photograph of {prompt}, captured on a (Phase One XT)
+
+- name: Ricoh GR III
+ negative_prompt: soft , shaky , handheld images
+ prompt: Photograph of {prompt}, captured on a (Ricoh GR III)
+
+- name: Ricoh GR III (Unique Steady Focus)
+ negative_prompt: soft , studio photography
+ prompt: Photograph of {prompt}, captured on a (Ricoh GR III)
+
+- name: Ricoh GR III (Unique Variant)
+ negative_prompt: studio photography, softness
+ prompt: Photograph of {prompt}, captured on a (Ricoh GR III)
+
+- name: Ricoh Theta Z1
+ negative_prompt: photography, flat images, limited views
+ prompt: Photograph of {prompt}, captured on a (Ricoh Theta Z1)
+
+- name: Ricoh Theta Z1 (Unique Variant)
+ negative_prompt: camera, flat images, non-VR, limited angles
+ prompt: Photograph of {prompt}, captured on a (Ricoh Theta Z1)
+
+- name: Sigma SD Quattro H
+ negative_prompt: traditional sensor, blended color, soft
+ prompt: Photograph of {prompt}, captured on a (Sigma SD Quattro H)
+
+- name: Sigma fp
+ negative_prompt: limited versatility, soft images, jittery video
+ prompt: Photograph of {prompt}, captured on a (Sigma fp)
+
+- name: Sigma fp (Unique Specific Variant)
+ negative_prompt: rigidity, limited scenarios
+ prompt: Photograph of {prompt}, captured on a (Sigma fp)
+
+- name: Sigma fp (Unique Variant)
+ negative_prompt: cropped-frame, bulkiness, specialization, photo only, video only
+ prompt: Photograph of {prompt}, captured on a (Sigma fp )
+
+- name: Sigma fp L
+ negative_prompt: low resolution, limited creativity
+ prompt: Photograph of {prompt}, captured on a (Sigma fp L)
+
+- name: Sony A6000
+ negative_prompt: poor capture, studio photography, staged
+ prompt: Photograph of {prompt}, captured on a (Sony A6000)
+
+- name: Sony A6400
+ negative_prompt: slowness, capture inaccuracy, still photography
+ prompt: Photograph of {prompt}, captured on a (Sony A6400)
+
+- name: Sony A7R IV
+ negative_prompt: low resolution, limited range, lack of detail, portraits, casual
+ snapfocus
+ prompt: Photograph of {prompt}, captured on a (Sony A7R IV)
+
+- name: Sony A7S III
+ negative_prompt: poor low-light, HD video, non-filmmakers, daytime photography
+ prompt: Photograph of {prompt}, captured on a (Sony A7S III)
+
+- name: Sony A9 II
+ negative_prompt: poor capture, single shot, action
+ prompt: Photograph of {prompt}, captured on a (Sony A9 II)
+
+- name: Sony Alpha 1
+ negative_prompt: entry-level, slow speed, amateur quality
+ prompt: Photograph of {prompt}, captured on a (Sony Alpha 1)
+
+- name: Sony Alpha 1 (Unique Variant)
+ negative_prompt: amateur, still life, slow subjects, slow burst, imprecise capture
+ prompt: Photograph of {prompt}, captured on a (Sony Alpha 1)
+
+- name: Sony Alpha A7 III
+ negative_prompt: overpriced, average quality images, unreliable performance, beginners,
+ casual users
+ prompt: Photograph of {prompt}, captured on a (Sony Alpha A7 III)
+
+- name: Sony Alpha A9 II
+ negative_prompt: amateur, slow shooting, unreliable capture, still life photography
+ prompt: Photograph of {prompt}, captured on a (Sony Alpha A9 II)
+
+- name: Sony Cyber-shot DSC-RX10 IV
+ negative_prompt: short zoom, poor video, portrait photography, close-up subjects
+ prompt: Photograph of {prompt}, captured on a (Sony Cyber-shot DSC-RX10 IV)
+
+- name: Sony Cyber-shot DSC-W800
+ negative_prompt: professional-level, expensive, expert photographers, primary camera
+ prompt: Photograph of {prompt}, captured on a (Sony Cyber-shot DSC-W800)
+
+- name: Sony Cyber-shot RX100 VII
+ negative_prompt: large-sized, limited zoom, studio work, specialized photography,
+ compromise quality
+ prompt: Photograph of {prompt}, captured on a (Sony Cyber-shot RX100 VII)
+
+- name: Sony RX10 IV
+ negative_prompt: limited zoom, poor capture, close-up photography
+ prompt: Photograph of {prompt}, captured on a (Sony RX10 IV)
+
+- name: Sony RX100 VII
+ negative_prompt: slow capture, limited zoom, images
+ prompt: Photograph of {prompt}, captured on a (Sony RX100 VII)
+
+- name: Sony RX100 VII (Unique Fast Capture)
+ negative_prompt: budget, slow , basic capture, studio photography, static scenes
+ prompt: Photograph of {prompt}, captured on a (Sony RX100 VII)
+
+- name: Sony ZV-1
+ negative_prompt: general use, slow , poor capture, videos
+ prompt: Photograph of {prompt}, captured on a (Sony ZV-1)
+
diff --git a/Styles/mood.yaml b/Styles/mood.yaml
new file mode 100644
index 0000000..bc908d7
--- /dev/null
+++ b/Styles/mood.yaml
@@ -0,0 +1,163 @@
+# It is recommended not to modify this file,
+# as it serves as the initialization file for the node.
+#
+# Instead, create a copy, place it in the same folder,
+# and the iTools Prompt Styler node will read all your style files from there.
+#
+# Ensure that the formatting is kept the same as in this file.
+# Indents in YAML are critical. Ensure proper indentation, as incorrect spacing can cause errors.
+#
+# Best approach is to copy a block of name, negative_prompt and a prompt and then replace their values
+# Note that your text_positive will be added in this part {prompt}
+# Adding - name: random will allow the node to pick random name from this file
+
+- name: none
+ negative_prompt: ''
+ prompt: ''
+
+- name: random
+ negative_prompt: ''
+ prompt: ''
+
+- name: Abyssal Silence
+ negative_prompt: Unsilenced, ordinary, lacking darkness, uninhabited, mundane.
+ prompt: A profound and eerie mood of deep silence, where the world is shrouded in
+ darkness and an overwhelming sense of isolation prevails.
+
+- name: Aggressive
+ negative_prompt: calm
+ prompt: aggressive {prompt}
+
+- name: Bittersweet Nostalgia
+ negative_prompt: Unbittersweet, ordinary, lacking nostalgia, unreflective, mundane.
+ prompt: A bittersweet and nostalgic mood where the world is tinged with memories
+ of the past, evoking a sense of longing and reflection.
+
+- name: Calm
+ negative_prompt: energetic
+ prompt: calm {prompt}
+
+- name: Celestial Harmony
+ negative_prompt: Unharmonious, ordinary, lacking celestial bodies, uncosmic, mundane.
+ prompt: A harmonious and celestial mood where the world is adorned with celestial
+ bodies, and a sense of cosmic unity and serenity prevails.
+
+- name: Chaos and Discord
+ negative_prompt: Unchaotic, ordinary, lacking discord, unharmonious, mundane.
+ prompt: A chaotic and discordant mood where the world is filled with cacophonous
+ sounds and jarring visuals, creating a sense of disarray and confusion.
+
+- name: Chaotic
+ negative_prompt: serene
+ prompt: chaotic {prompt}
+
+- name: Dark, Brooding Atmosphere
+ negative_prompt: Unbrooding, ordinary, lacking darkness, ununeasy, mundane.
+ prompt: A moody and ominous mood where shadows loom large, and a sense of foreboding
+ and tension hangs in the air, creating a sense of unease and suspense.
+
+- name: Dreamy Serenity
+ negative_prompt: Undreamy, ordinary, lacking serenity, unsoothing, mundane.
+ prompt: A dreamlike and serene mood where the world is bathed in soft, pastel colors,
+ and a sense of calm and tranquility pervades, creating a soothing and dreamy atmosphere.
+
+- name: Dystopian Desolation
+ negative_prompt: Undystopian, ordinary, lacking desolation, unhopeful, mundane.
+ prompt: A mood of dystopian desolation where the world is a bleak and desolate landscape,
+ and a sense of despair and isolation hangs in the air.
+
+- name: Enchanted Whispers
+ negative_prompt: Unenchanted, ordinary, lacking whispers, unmysterious, mundane.
+ prompt: A mystical and enchanting mood where the world is hushed, and whispers of
+ magic and wonder are carried on the wind, igniting a sense of enchantment and
+ mystery.
+
+- name: Energetic
+ negative_prompt: relaxed
+ prompt: energetic {prompt}
+
+- name: Enigmatic Wonder
+ negative_prompt: Unenigmatic, ordinary, lacking wonders, uncurious, mundane.
+ prompt: A mysterious and awe-inspiring mood where the world is filled with enigmatic
+ phenomena and hidden wonders waiting to be uncovered, inspiring curiosity and
+ fascination.
+
+- name: Eternal Twilight
+ negative_prompt: Untwilight, ordinary, lacking light, untimeless, mundane.
+ prompt: A perpetual twilight mood where the world is bathed in soft, muted light,
+ evoking a sense of timeless serenity and contemplation.
+
+- name: Ethereal Tranquility
+ negative_prompt: Untranquil, ordinary, lacking music, unrelaxing, mundane.
+ prompt: A serene and otherworldly mood where soft, ambient music plays, and the
+ world seems to slow down, evoking a sense of peace and relaxation.
+
+- name: Frenetic Energy
+ negative_prompt: Unfrenetic, ordinary, lacking energy, unexciting, mundane.
+ prompt: A high-energy and frenetic mood where the world pulsates with vitality and
+ motion, creating a sense of exhilaration and excitement.
+
+- name: Gothic Elegance
+ negative_prompt: Ungothic, ordinary, lacking elegance, unbeguiling, mundane.
+ prompt: A mood of dark and gothic elegance, where the world is adorned with intricate
+ architecture, opulent decor, and a sense of brooding beauty.
+
+- name: Happy
+ negative_prompt: sad
+ prompt: happy {prompt}
+
+- name: Hushed Reverence
+ negative_prompt: Unreverent, ordinary, lacking silence, unawe-inspiring, mundane.
+ prompt: A reverent and tranquil mood where silence reigns, and the world is filled
+ with a sense of awe and sacredness, inviting contemplation and meditation.
+
+- name: Joyful Celebration
+ negative_prompt: Unjoyful, ordinary, lacking celebration, uncamaraderie, mundane.
+ prompt: A festive and celebratory mood where the world is alive with music, dancing,
+ and laughter, evoking a sense of joy and camaraderie.
+
+- name: Melancholic Reflection
+ negative_prompt: Unmelancholic, ordinary, lacking reflection, unreflective, mundane.
+ prompt: A contemplative and melancholic mood where the world is bathed in soft,
+ muted colors, and a sense of nostalgia and introspection fills the air.
+
+- name: Mysterious
+ negative_prompt: clear
+ prompt: mysterious {prompt}
+
+- name: Relaxed
+ negative_prompt: excited
+ prompt: relaxed {prompt}
+
+- name: Romantic
+ negative_prompt: depressed
+ prompt: romantic {prompt}
+
+- name: Sad
+ negative_prompt: happy
+ prompt: sad {prompt}
+
+- name: Serene
+ negative_prompt: chaotic
+ prompt: serene {prompt}
+
+- name: Spectral Whispers
+ negative_prompt: Unspectral, ordinary, lacking whispers, unhaunted, mundane.
+ prompt: A spectral and haunting mood where ghostly whispers fill the air, and the
+ world is haunted by the echoes of the past, creating an eerie and ethereal atmosphere.
+
+- name: Surreal Euphoria
+ negative_prompt: Uneuphoric, ordinary, lacking surrealism, undreamlike, mundane.
+ prompt: A surreal and euphoric mood where the boundaries of reality are blurred,
+ and a sense of euphoria and elation fills the world, creating a dreamlike and
+ euphoric experience.
+
+- name: Tense, Suspenseful Ambiance
+ negative_prompt: Untense, ordinary, lacking suspense, unintriguing, mundane.
+ prompt: A tense and suspenseful mood where every moment is charged with anticipation
+ and uncertainty, creating a sense of adrenaline and intrigue.
+
+- name: Whimsical Delight
+ negative_prompt: Unwhimsical, ordinary, lacking playfulness, unjoyful, mundane.
+ prompt: A playful and lighthearted mood where the world is filled with whimsical
+ characters, magical creatures, and joyful surprises, inviting laughter and joy.
diff --git a/Styles/original.yaml b/Styles/original.yaml
new file mode 100644
index 0000000..a26c68c
--- /dev/null
+++ b/Styles/original.yaml
@@ -0,0 +1,554 @@
+# It is recommended not to modify this file,
+# as it serves as the initialization file for the node.
+#
+# Instead, create a copy, place it in the same folder,
+# and the iTools Prompt Styler node will read all your style files from there.
+#
+# Ensure that the formatting is kept the same as in this file.
+# Indents in YAML are critical. Ensure proper indentation, as incorrect spacing can cause errors.
+#
+# Best approach is to copy a block of name, negative_prompt and a prompt and then replace their values
+# Note that your text_positive will be added in this part {prompt}
+# Adding - name: random will allow the node to pick random name from this file
+
+- name: none
+ negative_prompt: ''
+ prompt: ''
+
+- name: random
+ negative_prompt: ''
+ prompt: ''
+
+- name: ads-advertising
+ negative_prompt: noisy, blurry, amateurish, sloppy, unattractive
+ prompt: Advertising poster style of {prompt}. Professional, modern, product-focused,
+ commercial, eye-catching, highly detailed
+
+- name: ads-automotive
+ negative_prompt: noisy, blurry, unattractive, sloppy, unprofessional
+ prompt: Automotive advertisement style of {prompt}. Sleek, dynamic, professional,
+ commercial, vehicle-focused, high-resolution, highly detailed
+
+- name: ads-corporate
+ negative_prompt: noisy, blurry, grungy, sloppy, cluttered, disorganized
+ prompt: Corporate branding style of {prompt}. Professional, clean, modern, sleek,
+ minimalist, business-oriented, highly detailed
+
+- name: ads-fashion editorial
+ negative_prompt: outdated, blurry, noisy, unattractive, sloppy
+ prompt: Fashion editorial style of {prompt}. High fashion, trendy, stylish, editorial,
+ magazine style, professional, highly detailed
+
+- name: ads-food photography
+ negative_prompt: unappetizing, sloppy, unprofessional, noisy, blurry
+ prompt: Food photography style of {prompt}. Appetizing, professional, culinary,
+ high-resolution, commercial, highly detailed
+
+- name: ads-luxury
+ negative_prompt: cheap, noisy, blurry, unattractive, amateurish
+ prompt: Luxury product style of {prompt}. Elegant, sophisticated, high-end, luxurious,
+ professional, highly detailed
+
+- name: ads-real estate
+ negative_prompt: dark, blurry, unappealing, noisy, unprofessional
+ prompt: Real estate photography style of {prompt}. Professional, inviting, well-lit,
+ high-resolution, property-focused, commercial, highly detailed
+
+- name: ads-retail
+ negative_prompt: noisy, blurry, amateurish, sloppy, unattractive
+ prompt: Retail packaging style of {prompt}. Vibrant, enticing, commercial, product-focused,
+ eye-catching, professional, highly detailed
+
+- name: artstyle-abstract
+ negative_prompt: realistic, photographic, figurative, concrete
+ prompt: abstract style of {prompt}. non-representational, colors and shapes, expression
+ of feelings, imaginative, highly detailed
+
+- name: artstyle-abstract expressionism
+ negative_prompt: realistic, photorealistic, low contrast, plain, simple, monochrome
+ prompt: abstract expressionist painting of {prompt}. energetic brushwork, bold colors,
+ abstract forms, expressive, emotional
+
+- name: artstyle-art deco
+ negative_prompt: ugly, deformed, noisy, blurry, low contrast, realism, photorealistic,
+ modernist, minimalist
+ prompt: Art Deco style of {prompt}. geometric shapes, bold colors, luxurious, elegant,
+ decorative, symmetrical, ornate, detailed
+
+- name: artstyle-art nouveau
+ negative_prompt: ugly, deformed, noisy, blurry, low contrast, realism, photorealistic,
+ modernist, minimalist
+ prompt: Art Nouveau style of {prompt}. elegant, decorative, curvilinear forms, nature-inspired,
+ ornate, detailed
+
+- name: artstyle-constructivist
+ negative_prompt: realistic, photorealistic, low contrast, plain, simple, abstract
+ expressionism
+ prompt: constructivist style of {prompt}. geometric shapes, bold colors, dynamic
+ composition, propaganda art style
+
+- name: artstyle-cubist
+ negative_prompt: anime, photorealistic, 35mm film, deformed, glitch, low contrast,
+ noisy
+ prompt: cubist artwork of {prompt}. geometric shapes, abstract, innovative, revolutionary
+
+- name: artstyle-expressionist
+ negative_prompt: realism, symmetry, quiet, calm, photo
+ prompt: expressionist of {prompt}. raw, emotional, dynamic, distortion for emotional
+ effect, vibrant, use of unusual colors, detailed
+
+- name: artstyle-graffiti
+ negative_prompt: ugly, deformed, noisy, blurry, low contrast, realism, photorealistic
+ prompt: graffiti style of {prompt}. street art, vibrant, urban, detailed, tag, mural
+
+- name: artstyle-hyperrealism
+ negative_prompt: simplified, abstract, unrealistic, impressionistic, low resolution
+ prompt: hyperrealistic art of {prompt}. extremely high-resolution details, photographic,
+ realism pushed to extreme, fine texture, incredibly lifelike
+
+- name: artstyle-impressionist
+ negative_prompt: anime, photorealistic, 35mm film, deformed, glitch, low contrast,
+ noisy
+ prompt: impressionist painting of {prompt}. loose brushwork, vibrant color, light
+ and shadow play, captures feeling over form
+
+- name: artstyle-pointillism
+ negative_prompt: line drawing, smooth shading, large color fields, simplistic
+ prompt: pointillism style of {prompt}. composed entirely of small, distinct dots
+ of color, vibrant, highly detailed
+
+- name: artstyle-pop art
+ negative_prompt: ugly, deformed, noisy, blurry, low contrast, realism, photorealistic,
+ minimalist
+ prompt: Pop Art style of {prompt}. bright colors, bold outlines, popular culture
+ themes, ironic or kitsch
+
+- name: artstyle-psychedelic
+ negative_prompt: monochrome, black and white, low contrast, realistic, photorealistic,
+ plain, simple
+ prompt: psychedelic style of {prompt}. vibrant colors, swirling patterns, abstract
+ forms, surreal, trippy
+
+- name: artstyle-renaissance
+ negative_prompt: ugly, deformed, noisy, blurry, low contrast, modernist, minimalist,
+ abstract
+ prompt: Renaissance style of {prompt}. realistic, perspective, light and shadow,
+ religious or mythological themes, highly detailed
+
+- name: artstyle-steampunk
+ negative_prompt: deformed, glitch, noisy, low contrast, anime, photorealistic
+ prompt: steampunk style of {prompt}. antique, mechanical, brass and copper tones,
+ gears, intricate, detailed
+
+- name: artstyle-surrealist
+ negative_prompt: anime, photorealistic, realistic, deformed, glitch, noisy, low
+ contrast
+ prompt: surrealist art of {prompt}. dreamlike, mysterious, provocative, symbolic,
+ intricate, detailed
+
+- name: artstyle-typography
+ negative_prompt: ugly, deformed, noisy, blurry, low contrast, realism, photorealistic
+ prompt: typographic art of {prompt}. stylized, intricate, detailed, artistic, text-based
+
+- name: artstyle-watercolor
+ negative_prompt: anime, photorealistic, 35mm film, deformed, glitch, low contrast,
+ noisy
+ prompt: watercolor painting of {prompt}. vibrant, beautiful, painterly, detailed,
+ textural, artistic
+
+- name: futuristic-biomechanical
+ negative_prompt: natural, rustic, primitive, organic, simplistic
+ prompt: biomechanical style of {prompt}. blend of organic and mechanical elements,
+ futuristic, cybernetic, detailed, intricate
+
+- name: futuristic-biomechanical cyberpunk
+ negative_prompt: natural, colorful, deformed, sketch, low contrast, watercolor
+ prompt: biomechanical cyberpunk of {prompt}. cybernetics, human-machine fusion,
+ dystopian, organic meets artificial, dark, intricate, highly detailed
+
+- name: futuristic-cybernetic
+ negative_prompt: ugly, deformed, noisy, blurry, low contrast, realism, photorealistic,
+ historical, medieval
+ prompt: cybernetic style of {prompt}. futuristic, technological, cybernetic enhancements,
+ robotics, artificial intelligence themes
+
+- name: futuristic-cybernetic robot
+ negative_prompt: organic, natural, human, sketch, watercolor, low contrast
+ prompt: cybernetic robot of {prompt}. android, AI, machine, metal, wires, tech,
+ futuristic, highly detailed
+
+- name: futuristic-cyberpunk cityscape
+ negative_prompt: natural, rural, deformed, low contrast, black and white, sketch,
+ watercolor
+ prompt: cyberpunk cityscape of {prompt}. neon lights, dark alleys, skyscrapers,
+ futuristic, vibrant colors, high contrast, highly detailed
+
+- name: futuristic-futuristic
+ negative_prompt: ugly, deformed, noisy, blurry, low contrast, realism, photorealistic,
+ vintage, antique
+ prompt: futuristic style of {prompt}. sleek, modern, ultramodern, high tech, detailed
+
+- name: futuristic-retro cyberpunk
+ negative_prompt: modern, desaturated, black and white, realism, low contrast
+ prompt: retro cyberpunk of {prompt}. 80's inspired, synthwave, neon, vibrant, detailed,
+ retro futurism
+
+- name: futuristic-retro futurism
+ negative_prompt: contemporary, realistic, rustic, primitive
+ prompt: retro-futuristic of {prompt}. vintage sci-fi, 50s and 60s style, atomic
+ age, vibrant, highly detailed
+
+- name: futuristic-sci-fi
+ negative_prompt: ugly, deformed, noisy, blurry, low contrast, realism, photorealistic,
+ historical, medieval
+ prompt: sci-fi style of {prompt}. futuristic, technological, alien worlds, space
+ themes, advanced civilizations
+
+- name: futuristic-vaporwave
+ negative_prompt: monochrome, muted colors, realism, rustic, minimalist, dark
+ prompt: vaporwave style of {prompt}. retro aesthetic, cyberpunk, vibrant, neon colors,
+ vintage 80s and 90s style, highly detailed
+
+- name: game-bubble bobble
+ negative_prompt: realistic, modern, photorealistic, violent, horror
+ prompt: Bubble Bobble style of {prompt}. 8-bit, cute, pixelated, fantasy, vibrant,
+ reminiscent of Bubble Bobble game
+
+- name: game-cyberpunk game
+ negative_prompt: historical, natural, rustic, low detailed
+ prompt: cyberpunk game style of {prompt}. neon, dystopian, futuristic, digital,
+ vibrant, detailed, high contrast, reminiscent of cyberpunk genre video games
+
+- name: game-fighting game
+ negative_prompt: peaceful, calm, minimalist, photorealistic
+ prompt: fighting game style of {prompt}. dynamic, vibrant, action-packed, detailed
+ character design, reminiscent of fighting video games
+
+- name: game-gta
+ negative_prompt: realistic, black and white, low contrast, impressionist, cubist,
+ noisy, blurry, deformed
+ prompt: GTA-style artwork of {prompt}. satirical, exaggerated, pop art style, vibrant
+ colors, iconic characters, action-packed
+
+- name: game-mario
+ negative_prompt: realistic, modern, horror, dystopian, violent
+ prompt: Super Mario style of {prompt}. vibrant, cute, cartoony, fantasy, playful,
+ reminiscent of Super Mario series
+
+- name: game-minecraft
+ negative_prompt: smooth, realistic, detailed, photorealistic, noise, blurry, deformed
+ prompt: Minecraft style of {prompt}. blocky, pixelated, vibrant colors, recognizable
+ characters and objects, game assets
+
+- name: game-pokemon
+ negative_prompt: realistic, modern, horror, dystopian, violent
+ prompt: Pokémon style of {prompt}. vibrant, cute, anime, fantasy, reminiscent of
+ Pokémon series
+
+- name: game-retro arcade
+ negative_prompt: modern, ultra-high resolution, photorealistic, 3D
+ prompt: retro arcade style of {prompt}. 8-bit, pixelated, vibrant, classic video
+ game, old school gaming, reminiscent of 80s and 90s arcade games
+
+- name: game-retro game
+ negative_prompt: realistic, photorealistic, 35mm film, deformed, glitch, low contrast,
+ noisy
+ prompt: retro game art of {prompt}. 16-bit, vibrant colors, pixelated, nostalgic,
+ charming, fun
+
+- name: game-rpg fantasy game
+ negative_prompt: sci-fi, modern, urban, futuristic, low detailed
+ prompt: role-playing game (RPG) style fantasy of {prompt}. detailed, vibrant, immersive,
+ reminiscent of high fantasy RPG games
+
+- name: game-strategy game
+ negative_prompt: first-person view, modern, photorealistic
+ prompt: strategy game style of {prompt}. overhead view, detailed map, units, reminiscent
+ of real-time strategy video games
+
+- name: game-streetfighter
+ negative_prompt: 3D, realistic, modern, photorealistic, turn-based strategy
+ prompt: Street Fighter style of {prompt}. vibrant, dynamic, arcade, 2D fighting
+ game, highly detailed, reminiscent of Street Fighter series
+
+- name: game-zelda
+ negative_prompt: sci-fi, modern, realistic, horror
+ prompt: Legend of Zelda style of {prompt}. vibrant, fantasy, detailed, epic, heroic,
+ reminiscent of The Legend of Zelda series
+
+- name: misc-architectural
+ negative_prompt: curved lines, ornate, baroque, abstract, grunge
+ prompt: architectural style of {prompt}. clean lines, geometric shapes, minimalist,
+ modern, architectural drawing, highly detailed
+
+- name: misc-disco
+ negative_prompt: minimalist, rustic, monochrome, contemporary, simplistic
+ prompt: disco-themed of {prompt}. vibrant, groovy, retro 70s style, shiny disco
+ balls, neon lights, dance floor, highly detailed
+
+- name: misc-dreamscape
+ negative_prompt: realistic, concrete, ordinary, mundane
+ prompt: dreamscape of {prompt}. surreal, ethereal, dreamy, mysterious, fantasy,
+ highly detailed
+
+- name: misc-dystopian
+ negative_prompt: ugly, deformed, noisy, blurry, low contrast, cheerful, optimistic,
+ vibrant, colorful
+ prompt: dystopian style of {prompt}. bleak, post-apocalyptic, somber, dramatic,
+ highly detailed
+
+- name: misc-fairy tale
+ negative_prompt: realistic, modern, ordinary, mundane
+ prompt: fairy tale of {prompt}. magical, fantastical, enchanting, storybook style,
+ highly detailed
+
+- name: misc-gothic
+ negative_prompt: ugly, deformed, noisy, blurry, low contrast, realism, photorealistic,
+ cheerful, optimistic
+ prompt: gothic style of {prompt}. dark, mysterious, haunting, dramatic, ornate,
+ detailed
+
+- name: misc-grunge
+ negative_prompt: smooth, clean, minimalist, sleek, modern, photorealistic
+ prompt: grunge style of {prompt}. textured, distressed, vintage, edgy, punk rock
+ vibe, dirty, noisy
+
+- name: misc-horror
+ negative_prompt: cheerful, bright, vibrant, light-hearted, cute
+ prompt: horror-themed of {prompt}. eerie, unsettling, dark, spooky, suspenseful,
+ grim, highly detailed
+
+- name: misc-kawaii
+ negative_prompt: dark, scary, realistic, monochrome, abstract
+ prompt: kawaii style of {prompt}. cute, adorable, brightly colored, cheerful, anime
+ influence, highly detailed
+
+- name: misc-lovecraftian
+ negative_prompt: light-hearted, mundane, familiar, simplistic, realistic
+ prompt: lovecraftian horror of {prompt}. eldritch, cosmic horror, unknown, mysterious,
+ surreal, highly detailed
+
+- name: misc-macabre
+ negative_prompt: bright, cheerful, light-hearted, cartoonish, cute
+ prompt: macabre style of {prompt}. dark, gothic, grim, haunting, highly detailed
+
+- name: misc-manga
+ negative_prompt: ugly, deformed, noisy, blurry, low contrast, realism, photorealistic,
+ Western comic style
+ prompt: manga style of {prompt}. vibrant, high-energy, detailed, iconic, Japanese
+ comic style
+
+- name: misc-metropolis
+ negative_prompt: rural, natural, rustic, historical, simple
+ prompt: metropolis-themed of {prompt}. urban, cityscape, skyscrapers, modern, futuristic,
+ highly detailed
+
+- name: misc-minimalist
+ negative_prompt: ornate, complicated, highly detailed, cluttered, disordered, messy,
+ noisy
+ prompt: minimalist style of {prompt}. simple, clean, uncluttered, modern, elegant
+
+- name: misc-monochrome
+ negative_prompt: colorful, vibrant, noisy, blurry, deformed
+ prompt: monochrome of {prompt}. black and white, contrast, tone, texture, detailed
+
+- name: misc-nautical
+ negative_prompt: landlocked, desert, mountains, urban, rustic
+ prompt: nautical-themed of {prompt}. sea, ocean, ships, maritime, beach, marine
+ life, highly detailed
+
+- name: misc-space
+ negative_prompt: earthly, mundane, ground-based, realism
+ prompt: space-themed of {prompt}. cosmic, celestial, stars, galaxies, nebulas, planets,
+ science fiction, highly detailed
+
+- name: misc-stained glass
+ negative_prompt: ugly, deformed, noisy, blurry, low contrast, realism, photorealistic
+ prompt: stained glass style of {prompt}. vibrant, beautiful, translucent, intricate,
+ detailed
+
+- name: misc-techwear fashion
+ negative_prompt: vintage, rural, colorful, low contrast, realism, sketch, watercolor
+ prompt: techwear fashion of {prompt}. futuristic, cyberpunk, urban, tactical, sleek,
+ dark, highly detailed
+
+- name: misc-tribal
+ negative_prompt: modern, futuristic, minimalist, pastel
+ prompt: tribal style of {prompt}. indigenous, ethnic, traditional patterns, bold,
+ natural colors, highly detailed
+
+- name: misc-zentangle
+ negative_prompt: colorful, representative, simplistic, large fields of color
+ prompt: zentangle of {prompt}. intricate, abstract, monochrome, patterns, meditative,
+ highly detailed
+
+- name: papercraft-collage
+ negative_prompt: ugly, deformed, noisy, blurry, low contrast, realism, photorealistic
+ prompt: collage style of {prompt}. mixed media, layered, textural, detailed, artistic
+
+- name: papercraft-flat papercut
+ negative_prompt: 3D, high detail, noise, grainy, blurry, painting, drawing, photo,
+ disfigured
+ prompt: flat papercut style of {prompt}. silhouette, clean cuts, paper, sharp edges,
+ minimalist, color block
+
+- name: papercraft-kirigami
+ negative_prompt: painting, drawing, 2D, noisy, blurry, deformed
+ prompt: kirigami representation of {prompt}. 3D, paper folding, paper cutting, Japanese,
+ intricate, symmetrical, precision, clean lines
+
+- name: papercraft-paper mache
+ negative_prompt: 2D, flat, photo, sketch, digital art, deformed, noisy, blurry
+ prompt: paper mache representation of {prompt}. 3D, sculptural, textured, handmade,
+ vibrant, fun
+
+- name: papercraft-paper quilling
+ negative_prompt: photo, painting, drawing, 2D, flat, deformed, noisy, blurry
+ prompt: paper quilling art of {prompt}. intricate, delicate, curling, rolling, shaping,
+ coiling, loops, 3D, dimensional, ornamental
+
+- name: papercraft-papercut collage
+ negative_prompt: photo, 3D, realistic, drawing, painting, high detail, disfigured
+ prompt: papercut collage of {prompt}. mixed media, textured paper, overlapping,
+ asymmetrical, abstract, vibrant
+
+- name: papercraft-papercut shadow box
+ negative_prompt: painting, drawing, photo, 2D, flat, high detail, blurry, noisy,
+ disfigured
+ prompt: 3D papercut shadow box of {prompt}. layered, dimensional, depth, silhouette,
+ shadow, papercut, handmade, high contrast
+
+- name: papercraft-stacked papercut
+ negative_prompt: 2D, flat, noisy, blurry, painting, drawing, photo, deformed
+ prompt: stacked papercut art of {prompt}. 3D, layered, dimensional, depth, precision
+ cut, stacked layers, papercut, high contrast
+
+- name: papercraft-thick layered papercut
+ negative_prompt: 2D, flat, thin paper, low stack, smooth texture, painting, drawing,
+ photo, deformed
+ prompt: thick layered papercut art of {prompt}. deep 3D, volumetric, dimensional,
+ depth, thick paper, high stack, heavy texture, tangible layers
+
+- name: photo-alien
+ negative_prompt: earthly, mundane, common, realistic, simple
+ prompt: alien-themed of {prompt}. extraterrestrial, cosmic, otherworldly, mysterious,
+ sci-fi, highly detailed
+
+- name: photo-film noir
+ negative_prompt: ugly, deformed, noisy, blurry, low contrast, realism, photorealistic,
+ vibrant, colorful
+ prompt: film noir style of {prompt}. monochrome, high contrast, dramatic shadows,
+ 1940s style, mysterious, cinematic
+
+- name: photo-hdr
+ negative_prompt: flat, low contrast, oversaturated, underexposed, overexposed, blurred,
+ noisy
+ prompt: HDR photo of {prompt}. High dynamic range, vivid, rich details, clear shadows
+ and highlights, realistic, intense, enhanced contrast, highly detailed
+
+- name: photo-long exposure
+ negative_prompt: static, noisy, deformed, shaky, abrupt, flat, low contrast
+ prompt: long exposure photo of {prompt}. Blurred motion, streaks of light, surreal,
+ dreamy, ghosting effect, highly detailed
+
+- name: photo-neon noir
+ negative_prompt: bright, sunny, daytime, low contrast, black and white, sketch,
+ watercolor
+ prompt: neon noir of {prompt}. cyberpunk, dark, rainy streets, neon signs, high
+ contrast, low light, vibrant, highly detailed
+
+- name: photo-silhouette
+ negative_prompt: ugly, deformed, noisy, blurry, low contrast, color, realism, photorealistic
+ prompt: silhouette style of {prompt}. high contrast, minimalistic, black and white,
+ stark, dramatic
+
+- name: photo-tilt-shift
+ negative_prompt: blurry, noisy, deformed, flat, low contrast, unrealistic, oversaturated,
+ underexposed
+ prompt: tilt-shift photo of {prompt}. Selective focus, miniature effect, blurred
+ background, highly detailed, vibrant, perspective control
+
+- name: sai-anime
+ negative_prompt: photo, deformed, black and white, realism, disfigured, low contrast
+ prompt: anime artwork of {prompt}. anime style, key visual, vibrant, studio anime, highly
+ detailed
+
+- name: sai-cinematic
+ negative_prompt: anime, cartoon, graphic, text, painting, crayon, graphite, abstract,
+ glitch, deformed, mutated, ugly, disfigured
+ prompt: cinematic film still of {prompt}. shallow depth of field, vignette, highly
+ detailed, high budget, bokeh, cinemascope, moody, epic, gorgeous, film grain,
+ grainy
+
+- name: sai-comic book
+ negative_prompt: photograph, deformed, glitch, noisy, realistic, stock photo
+ prompt: comic of {prompt}. graphic illustration, comic art, graphic novel art, vibrant,
+ highly detailed
+
+- name: sai-craft clay
+ negative_prompt: sloppy, messy, grainy, highly detailed, ultra textured, photo
+ prompt: play-doh style of {prompt}. sculpture, clay art, centered composition, Claymation
+
+- name: sai-digital art
+ negative_prompt: photo, photorealistic, realism, ugly
+ prompt: concept art of {prompt}. digital artwork, illustrative, painterly, matte
+ painting, highly detailed
+
+- name: sai-enhance
+ negative_prompt: ugly, deformed, noisy, blurry, distorted, grainy
+ prompt: breathtaking of {prompt}. award-winning, professional, highly detailed
+
+- name: sai-fantasy art
+ negative_prompt: photographic, realistic, realism, 35mm film, dslr, cropped, frame,
+ text, deformed, glitch, noise, noisy, off-center, deformed, cross-eyed, closed
+ eyes, bad anatomy, ugly, disfigured, sloppy, duplicate, mutated, black and white
+ prompt: ethereal fantasy concept art of {prompt}. magnificent, celestial, ethereal,
+ painterly, epic, majestic, magical, fantasy art, cover art, dreamy
+
+- name: sai-isometric
+ negative_prompt: deformed, mutated, ugly, disfigured, blur, blurry, noise, noisy,
+ realistic, photographic
+ prompt: isometric style of {prompt}. vibrant, beautiful, crisp, detailed, ultra
+ detailed, intricate
+
+- name: sai-line art
+ negative_prompt: anime, photorealistic, 35mm film, deformed, glitch, blurry, noisy,
+ off-center, deformed, cross-eyed, closed eyes, bad anatomy, ugly, disfigured,
+ mutated, realism, realistic, impressionism, expressionism, oil, acrylic
+ prompt: line art drawing of {prompt}. professional, sleek, modern, minimalist, graphic,
+ line art, vector graphics
+
+- name: sai-lowpoly
+ negative_prompt: noisy, sloppy, messy, grainy, highly detailed, ultra textured,
+ photo
+ prompt: low-poly style of {prompt}. low-poly game art, polygon mesh, jagged, blocky,
+ wireframe edges, centered composition
+
+- name: sai-neonpunk
+ negative_prompt: painting, drawing, illustration, glitch, deformed, mutated, cross-eyed,
+ ugly, disfigured
+ prompt: neonpunk style of {prompt}. cyberpunk, vaporwave, neon, vibes, vibrant,
+ stunningly beautiful, crisp, detailed, sleek, ultramodern, magenta highlights,
+ dark purple shadows, high contrast, cinematic, ultra detailed, intricate, professional
+
+- name: sai-origami
+ negative_prompt: noisy, sloppy, messy, grainy, highly detailed, ultra textured,
+ photo
+ prompt: origami style of {prompt}. paper art, pleated paper, folded, origami art,
+ pleats, cut and fold, centered composition
+
+- name: sai-photographic
+ negative_prompt: drawing, painting, crayon, sketch, graphite, impressionist, noisy,
+ blurry, soft, deformed, ugly
+ prompt: cinematic photo of {prompt}. 35mm photograph, film, bokeh, professional,
+ 4k, highly detailed
+
+- name: sai-pixel art
+ negative_prompt: sloppy, messy, blurry, noisy, highly detailed, ultra textured,
+ photo, realistic
+ prompt: pixel-art of {prompt}. low-res, blocky, pixel art style, 8-bit graphics
+
+- name: sai-texture
+ negative_prompt: ugly, deformed, noisy, blurry
+ prompt: texture of {prompt}top down close-up
+
diff --git a/__init__.py b/__init__.py
index 5710c80..07a18c1 100644
--- a/__init__.py
+++ b/__init__.py
@@ -1,12 +1,35 @@
-from .WF_nodes import NODE_CLASS_MAPPINGS as DENOISE_NODE_CLASS_MAPPINGS, NODE_DISPLAY_NAME_MAPPINGS as DENOISE_NODE_DISPLAY_NAME_MAPPINGS
-from .ModelParamsNode import NODE_CLASS_MAPPINGS as MODEL_NODE_CLASS_MAPPINGS, NODE_DISPLAY_NAME_MAPPINGS as MODEL_NODE_DISPLAY_NAME_MAPPINGS
-
+import traceback
+# Ініціалізація порожніх словників
NODE_CLASS_MAPPINGS = {}
NODE_DISPLAY_NAME_MAPPINGS = {}
-NODE_CLASS_MAPPINGS.update(DENOISE_NODE_CLASS_MAPPINGS)
-NODE_CLASS_MAPPINGS.update(MODEL_NODE_CLASS_MAPPINGS)
-NODE_DISPLAY_NAME_MAPPINGS.update(DENOISE_NODE_DISPLAY_NAME_MAPPINGS)
-NODE_DISPLAY_NAME_MAPPINGS.update(MODEL_NODE_DISPLAY_NAME_MAPPINGS)
\ No newline at end of file
+
+print(f"--- Initializing MultiModel --- ")
+
+try:
+ # Спробуємо імпортувати ноди з ModelParamsNode.py
+ from .ModelParamsNode import NODE_CLASS_MAPPINGS as MODEL_NODE_CLASS_MAPPINGS
+ from .ModelParamsNode import NODE_DISPLAY_NAME_MAPPINGS as MODEL_NODE_DISPLAY_NAME_MAPPINGS
+
+ # Оновлення словників даними з ModelParamsNode.py
+ NODE_CLASS_MAPPINGS.update(MODEL_NODE_CLASS_MAPPINGS)
+ NODE_DISPLAY_NAME_MAPPINGS.update(MODEL_NODE_DISPLAY_NAME_MAPPINGS)
+
+ print("✅ MultiModel: Mappings imported and updated successfully.")
+
+except ImportError as e:
+ print(f"❌ MultiModel: Failed to import from ModelParamsNode. ImportError: {e}")
+ print(traceback.format_exc())
+except Exception as e:
+ print(f"❌ MultiModel: An unexpected error occurred during initialization: {e}")
+ print(traceback.format_exc())
+
+# Видалено блок імпорту для logic.py, оскільки файли видалено
+
+# Вказуємо ComfyUI, що в папці js є веб-файли
+WEB_DIRECTORY = "js"
+
+# Цей рядок залишиться, щоб показати, чи дійшов __init__.py до кінця
+print(f"--- MultiModel initialization finished (check for errors above) --- ")
\ No newline at end of file
diff --git a/js/ModelParamsNode.js b/js/ModelParamsNode.js
new file mode 100644
index 0000000..8ce9077
--- /dev/null
+++ b/js/ModelParamsNode.js
@@ -0,0 +1,121 @@
+import { app } from "/scripts/app.js";
+
+// Simple test log to confirm the file is loaded
+// console.log("SIMPLE TEST: js/ModelParamsNode.js executed!");
+
+console.log("%c[ModelParamsNode] JS файл завантажився! (v2-dynamic-inputs)", "color: white; background: #007acc; font-weight: bold; padding: 2px 8px; border-radius: 3px;");
+// --- Loading js/ModelParamsNode.js --- v2-dynamic-inputs
+
+// Helper function to fetch style names from the backend
+async function fetchStyleNames(filename) {
+ // Return empty array immediately if filename is 'None' or invalid
+ if (!filename || filename === "None") {
+ return [];
+ }
+ try {
+ const response = await fetch('/multi_model/get_style_names', {
+ method: 'POST',
+ headers: {
+ 'Content-Type': 'application/json',
+ },
+ body: JSON.stringify({ filename: filename })
+ });
+ if (!response.ok) {
+ throw new Error(`HTTP error! status: ${response.status} - ${await response.text()}`);
+ }
+ const data = await response.json();
+ // console.log("Received style names:", data); // Keep commented
+ return data.style_names || []; // Return empty array on failure or no names
+ } catch (error) {
+ console.error(`[MultiModel Extension] Error fetching style names for ${filename}:`, error);
+ return []; // Return empty array on error
+ }
+}
+
+const ext = {
+ name: "MultiModel.PromptBuilderNode.StyleUpdater",
+ async setup(app) {
+ // console.log("MultiModel.PromptBuilderNode.StyleUpdater extension setup called");
+ },
+
+ async nodeCreated(node) {
+ // console.log(`MultiModel Extension: nodeCreated called for node: ${node.getTitle()} (Type: ${node.constructor.type})`);
+
+ // Check if this is the target node type we want to modify
+ if (node.constructor.type === "PromptBuilder") {
+ // console.log(`MultiModel Extension: Found target node type 'PromptBuilderNode': ${node.getTitle()}`);
+
+ const styleFileWidget = node.widgets.find(w => w.name === "style_file");
+ const styleNameWidget = node.widgets.find(w => w.name === "style_name");
+
+ if (!styleFileWidget) {
+ console.error("[MultiModel Extension] Could not find 'style_file' widget on PromptBuilderNode!");
+ return;
+ }
+ if (!styleNameWidget) {
+ console.error("[MultiModel Extension] Could not find 'style_name' widget on PromptBuilderNode!");
+ return;
+ }
+
+ // Force the widget type to combo, even if Python defined it as STRING
+ styleNameWidget.type = "combo";
+ // Ensure options object exists for combo box properties
+ if (!styleNameWidget.options) { styleNameWidget.options = {}; }
+
+ // Add a callback to handle selection changes for the style_name widget itself
+ styleNameWidget.callback = (value) => {
+ // Explicitly set the widget's value on selection
+ styleNameWidget.value = value;
+ console.log(`[MultiModel Extension] style_name selected and value set to: ${styleNameWidget.value}`);
+ // Optional: Force redraw if the value change doesn't update visually
+ // node.setDirtyCanvas(true, false);
+ };
+
+ // console.log("MultiModel Extension: Found 'style_file' and 'style_name' widgets.");
+
+ // Function to update style_name options
+ const updateStyleNames = async (selectedFilename) => {
+ const names = await fetchStyleNames(selectedFilename);
+ if (styleNameWidget.options) {
+ // console.log(`[MultiModel Extension] Updating styleNameWidget.options.values to:`, names);
+ styleNameWidget.options.values = names;
+
+ // Встановлюємо значення: або поточне (якщо воно є в новому списку), або перший елемент нового списку
+ // console.log(`[MultiModel Extension] Before setting value - current styleNameWidget.value: ${styleNameWidget.value}, styleNames includes current value: ${names.includes(styleNameWidget.value)}`);
+ styleNameWidget.value = names.includes(styleNameWidget.value) ? styleNameWidget.value : names[0];
+ // console.log(`[MultiModel Extension] After setting value - new styleNameWidget.value: ${styleNameWidget.value}`);
+
+ // Додаємо колбек, якщо його ще немає
+ if (!styleNameWidget.callback) {
+ styleNameWidget.callback = (value) => {
+ styleNameWidget.value = value;
+ console.log(`[MultiModel Extension] style_name selected and value set to: ${styleNameWidget.value}`);
+ };
+ }
+ } else {
+ console.error("[MultiModel Extension] 'style_name' widget does not have accessible options.");
+ }
+ };
+
+ const originalCallback = styleFileWidget.callback;
+
+ styleFileWidget.callback = async (value) => {
+ // console.log(`MultiModel Extension: style_file changed to: ${value}`);
+ await updateStyleNames(value);
+ if (originalCallback) {
+ originalCallback.call(styleFileWidget, value);
+ }
+ };
+
+ if (styleFileWidget.value) {
+ // console.log(`MultiModel Extension: Initializing style_names for file: ${styleFileWidget.value}`);
+ setTimeout(() => updateStyleNames(styleFileWidget.value), 100); // Keep timeout for initialization
+ } else {
+ console.warn("[MultiModel Extension] 'style_file' widget has no initial value on creation.");
+ }
+ }
+ }
+};
+
+app.registerExtension(ext);
+
diff --git a/js/ModelParamsNodeExt.js b/js/ModelParamsNodeExt.js
new file mode 100644
index 0000000..5f7294a
--- /dev/null
+++ b/js/ModelParamsNodeExt.js
@@ -0,0 +1,237 @@
+// js/ModelParamsNodeExt.js
+// Розширення для ModelParamsPipeNode, щоб він повідомляв про свої зміни
+
+import { app } from "/scripts/app.js";
+
+const TARGET_NODE_TYPE = "ModelParamsPipe"; // Цільовий тип вузла, який ми розширюємо
+
+console.log("%c[ModelParamsNodeExt] JS файл завантажився! (v2-dynamic-inputs)", "color: white; background: #007acc; font-weight: bold; padding: 2px 8px; border-radius: 3px;");
+// --- Loading js/ModelParamsNodeExt.js --- v2-dynamic-inputs
+
+console.log(`--- Loading extension for ${TARGET_NODE_TYPE} ---`);
+
+app.registerExtension({
+ name: "MultiModel.ModelParamsPipeNode.Notifier",
+
+ // Додатковий трекінг для діагностики
+ newNodesDetected: false,
+
+ // Додаємо базову ініціалізацію та прямий пошук вузлів
+ async setup() {
+ console.log(`[${TARGET_NODE_TYPE} Notifier] SETUP starting...`);
+
+ // Перевіряємо наявність сервісу одразу
+ if (app.HubNodesService) {
+ console.log(`[${TARGET_NODE_TYPE} Notifier] HubNodesService found during setup`);
+ } else {
+ console.error(`[${TARGET_NODE_TYPE} Notifier] HubNodesService NOT found during setup!`);
+ }
+
+ // Зачекаємо, доки граф буде завантажено, і потім проскануємо його
+ const checkForGraph = () => {
+ if (app.graph) {
+ console.log(`[${TARGET_NODE_TYPE} Notifier] Graph found in setup`);
+
+ // Додаємо обробник зміни графу
+ if (app.graph.onNodeAdded && !app.graph._notifier_attached) {
+ const origNodeAdded = app.graph.onNodeAdded;
+
+ app.graph.onNodeAdded = function(node) {
+ console.log(`[${TARGET_NODE_TYPE} Notifier] Graph onNodeAdded called for node ID: ${node.id}, type: ${node.type}`);
+
+ if (origNodeAdded) {
+ origNodeAdded.call(this, node);
+ }
+
+ // Перевіряємо, чи це наш цільовий тип
+ if (node.type === TARGET_NODE_TYPE) {
+ console.log(`[${TARGET_NODE_TYPE} Notifier] Target node added to graph: ID ${node.id}`);
+
+ // Викликаємо наш обробник
+ const extension = app.extensions.find(ext => ext.name === "MultiModel.ModelParamsPipeNode.Notifier");
+ if (extension) {
+ extension.setupNodeMonitoring(node);
+
+ if (app.HubNodesService) {
+ console.log(`[${TARGET_NODE_TYPE} Notifier] Notifying service about new graph node: ID ${node.id}`);
+ app.HubNodesService.notifyHubAdded(node);
+
+ // Пробуємо різні методи оновлення інтерфейсу
+ if (typeof app.HubNodesService.forceUpdates === 'function') {
+ app.HubNodesService.forceUpdates();
+ } else if (typeof app.HubNodesService.updateWidgets === 'function') {
+ app.HubNodesService.updateWidgets();
+ } else if (app.HubNodesService.refreshUI && typeof app.HubNodesService.refreshUI === 'function') {
+ app.HubNodesService.refreshUI();
+ }
+ }
+ }
+ }
+ };
+
+ app.graph._notifier_attached = true;
+ console.log(`[${TARGET_NODE_TYPE} Notifier] Attached graph.onNodeAdded handler`);
+ }
+
+ // Зробимо сканування графу з невеликою затримкою для певності
+ setTimeout(() => {
+ if (!app.graph || !app.graph._nodes) {
+ console.log(`[${TARGET_NODE_TYPE} Notifier] No graph nodes found yet`);
+ return;
+ }
+
+ const targetNodes = app.graph._nodes.filter(node => node.type === TARGET_NODE_TYPE);
+ console.log(`[${TARGET_NODE_TYPE} Notifier] Initial graph scan found ${targetNodes.length} target nodes`);
+
+ const extension = app.extensions.find(ext => ext.name === "MultiModel.ModelParamsPipeNode.Notifier");
+ if (!extension) {
+ console.error(`[${TARGET_NODE_TYPE} Notifier] Extension not found in array!`);
+ return;
+ }
+
+ // Обробляємо знайдені вузли
+ for (const node of targetNodes) {
+ extension.setupNodeMonitoring(node);
+
+ // Якщо знайшли хоча б один вузол, спробуємо оновити інтерфейс
+ if (app.HubNodesService) {
+ console.log(`[${TARGET_NODE_TYPE} Notifier] Found existing node in scan: ID ${node.id}`);
+ }
+ }
+
+ // Якщо було знайдено вузли, форсуємо оновлення
+ if (targetNodes.length > 0 && app.HubNodesService) {
+ console.log(`[${TARGET_NODE_TYPE} Notifier] Forcing update after scan found ${targetNodes.length} nodes`);
+
+ if (typeof app.HubNodesService.forceUpdates === 'function') {
+ app.HubNodesService.forceUpdates();
+ } else if (typeof app.HubNodesService.updateWidgets === 'function') {
+ app.HubNodesService.updateWidgets();
+ } else if (app.HubNodesService.refreshUI && typeof app.HubNodesService.refreshUI === 'function') {
+ app.HubNodesService.refreshUI();
+ }
+ }
+ }, 500);
+ } else {
+ console.log(`[${TARGET_NODE_TYPE} Notifier] Graph not available yet, will retry...`);
+ setTimeout(checkForGraph, 500);
+ }
+ };
+
+ // Запускаємо перевірку графу
+ checkForGraph();
+
+ console.log(`[${TARGET_NODE_TYPE} Notifier] SETUP completed`);
+ },
+
+ // Встановлення моніторингу title/видалення для вузла
+ setupNodeMonitoring(node, appInstance = app) {
+ if (!node) return false;
+ console.log(`[${TARGET_NODE_TYPE} Notifier] Setting up monitoring for node ID: ${node.id}`);
+
+ // --- Встановлюємо моніторинг title ---
+ if (!node.__title_monitored) {
+ console.log(`[${TARGET_NODE_TYPE} Notifier] Setting up title monitoring for node ID: ${node.id}`);
+
+ try {
+ const originalTitle = node.title;
+
+ // Зберігаємо оригінальне значення
+ Object.defineProperty(node, '_monitored_title', {
+ value: originalTitle,
+ writable: true
+ });
+
+ // Перевизначаємо геттер/сеттер для title
+ Object.defineProperty(node, 'title', {
+ get: function() {
+ return this._monitored_title;
+ },
+ set: function(newTitle) {
+ console.log(`---> [${TARGET_NODE_TYPE} Notifier] title property CHANGED: "${this._monitored_title}" → "${newTitle}" for node ID: ${this.id}`);
+
+ // Якщо значення не змінилось, не виконуємо додаткові дії
+ if (this._monitored_title === newTitle) {
+ console.log(` Title not changed (same value), skipping notification.`);
+ return;
+ }
+
+ // Зберігаємо нове значення
+ this._monitored_title = newTitle;
+
+ // Повідомляємо сервіс про перейменування з невеликою затримкою
+ setTimeout(() => {
+ if (appInstance.HubNodesService) {
+ console.log(` Notifying service about rename for node ID: ${this.id}`);
+ appInstance.HubNodesService.notifyHubRenamed(this);
+ } else {
+ console.error(` HubNodesService not found! Cannot notify rename.`);
+ }
+ }, 0);
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ node.__title_monitored = true;
+ console.log(`[${TARGET_NODE_TYPE} Notifier] Title property monitored for node ID: ${node.id}`);
+ } catch (error) {
+ console.error(`[${TARGET_NODE_TYPE} Notifier] Error setting up title monitoring:`, error);
+ }
+ }
+
+ // --- Встановлюємо перехоплення видалення ---
+ if (!node.onRemoved || !node.onRemoved.__isNotifierOverridden) {
+ try {
+ const originalOnRemoved = node.onRemoved;
+
+ node.onRemoved = function() {
+ console.log(`[${TARGET_NODE_TYPE} Notifier] Node removed: ID ${this.id}`);
+
+ // Повідомляємо сервіс про видалення
+ if (appInstance.HubNodesService) {
+ console.log(` Notifying service about removal for node ID: ${this.id}`);
+ appInstance.HubNodesService.notifyHubRemoved(this);
+ } else {
+ console.error(` HubNodesService not found! Cannot notify removal.`);
+ }
+
+ // Викликаємо оригінальний метод, якщо він існує
+ if (originalOnRemoved) {
+ originalOnRemoved.apply(this, arguments);
+ }
+ };
+
+ node.onRemoved.__isNotifierOverridden = true;
+ console.log(`[${TARGET_NODE_TYPE} Notifier] onRemoved overridden for node ID: ${node.id}`);
+ } catch (error) {
+ console.error(`[${TARGET_NODE_TYPE} Notifier] Error overriding onRemoved:`, error);
+ }
+ }
+
+ return true;
+ },
+
+ // Для логування проблемних випадків
+ async nodeCreated(node) {
+ console.log(`[${TARGET_NODE_TYPE} Notifier] nodeCreated called for node type: ${node ? node.type : 'undefined'}, ID: ${node ? node.id : 'undefined'}`);
+ },
+
+ // Для логування проблемних випадків
+ async onNodeAdded(node) {
+ console.log(`[${TARGET_NODE_TYPE} Notifier] onNodeAdded called for node type: ${node ? node.type : 'undefined'}, ID: ${node ? node.id : 'undefined'}`);
+ },
+
+ // Хук для обробки вузлів, що вже існують при завантаженні
+ async loadedGraphNode(node, appInstance) {
+ if (!node) return;
+ console.log(`[${TARGET_NODE_TYPE} Notifier] loadedGraphNode called for node type: ${node.type}, ID: ${node.id}`);
+
+ if (node.type === TARGET_NODE_TYPE) {
+ // Встановлюємо моніторинг для існуючого вузла
+ this.setupNodeMonitoring(node, appInstance);
+ }
+ }
+});
+
+console.log(`--- Extension for ${TARGET_NODE_TYPE} loaded ---`);
\ No newline at end of file
diff --git a/js/MultiModelSwitch.js b/js/MultiModelSwitch.js
new file mode 100644
index 0000000..b579e50
--- /dev/null
+++ b/js/MultiModelSwitch.js
@@ -0,0 +1,127 @@
+import { app } from "../../../scripts/app.js";
+import { ComfyWidgets } from "../../../scripts/widgets.js";
+
+// Simple debounce function
+function debounce(func, delay) {
+ let timeoutId;
+ return function(...args) {
+ clearTimeout(timeoutId);
+ timeoutId = setTimeout(() => {
+ func.apply(this, args);
+ }, delay);
+ };
+}
+
+// Use the class name registered in NODE_CLASS_MAPPINGS
+const nodeClassName = "MySwitchIndex";
+
+app.registerExtension({
+ name: "MultiModel.MySwitchIndex",
+ async beforeRegisterNodeDef(nodeType, nodeData, app) {
+ // Compare with the class name
+ if (nodeData.name === nodeClassName) {
+ console.log(`[MultiModel] Patching ${nodeClassName}`);
+
+ const onNodeCreated = nodeType.prototype.onNodeCreated;
+ nodeType.prototype.onNodeCreated = function() {
+ onNodeCreated?.apply(this, arguments);
+ console.log(`[MultiModel] ${nodeClassName} created`);
+
+ // Find widgets (should exist based on Python definition)
+ const modeWidget = this.widgets.find(w => w.name === "mode");
+ const indexWidget = this.widgets.find(w => w.name === "index");
+
+ if (!modeWidget) {
+ console.error(`[MultiModel] ${nodeClassName}: 'mode' widget not found! Cannot apply dynamic visibility.`);
+ return;
+ }
+ if (!indexWidget) {
+ console.error(`[MultiModel] ${nodeClassName}: 'index' widget not found! Cannot apply dynamic visibility.`);
+ return;
+ }
+
+ // Function to update index widget visibility
+ const updateVisibility = (modeValue) => {
+ if (indexWidget) {
+ const shouldBeHidden = (modeValue !== "index"); // Поле повинно бути приховане, якщо режим НЕ "index"
+ // Завжди встановлюємо правильний стан `hidden`
+ indexWidget.hidden = shouldBeHidden;
+ console.log(`[MultiModel] ${nodeClassName}: Setting index widget hidden to: ${indexWidget.hidden} (mode is ${modeValue})`);
+ // Запитуємо перемалювання, щоб зміни відобразились
+ app.graph.setDirtyCanvas(true, false);
+ // Можливо, знадобиться примусове оновлення розміру, якщо ComfyUI не робить це автоматично при зміні hidden
+ // this.computeSize();
+ }
+ };
+
+ // Store original callback and wrap it
+ const originalModeCallback = modeWidget.callback;
+ modeWidget.callback = (value) => {
+ console.log(`[MultiModel] ${nodeClassName}: Mode widget callback triggered with value: ${value}`);
+ // Викликаємо оригінальний callback, якщо він існує
+ originalModeCallback?.apply(modeWidget, [value]);
+ updateVisibility(value);
+ };
+
+ // Set initial visibility based on the current mode value
+ // Викликаємо відразу після ініціалізації віджетів
+ console.log(`[MultiModel] ${nodeClassName}: Setting initial visibility for mode: ${modeWidget.value}`);
+ updateVisibility(modeWidget.value);
+
+ // --- Keep dynamic input logic ---
+ // We might want this active even in 'index' mode if the user wants
+ // to visually see which inputs are available, though they aren't used
+ // for selection in that mode.
+ this.updateInputs(); // Initial call to potentially add the first input
+ };
+
+ // --- Dynamic input logic (kept mostly as is) ---
+ const onConnectionsChange = nodeType.prototype.onConnectionsChange;
+ nodeType.prototype.onConnectionsChange = function(type, index, connected, link_info, slot) {
+ onConnectionsChange?.apply(this, arguments);
+ this.scheduleUpdateInputs();
+ };
+
+ nodeType.prototype.scheduleUpdateInputs = debounce(function() {
+ this.updateInputs();
+ }, 100);
+
+ nodeType.prototype.updateInputs = function() {
+ const prefix = "input_";
+ const minInputs = 1;
+
+ let lastConnectedIndex = -1;
+ for (let i = 0; i < this.inputs.length; i++) {
+ if (this.inputs[i].name.startsWith(prefix) && this.inputs[i].link != null) {
+ lastConnectedIndex = i;
+ }
+ }
+
+ let removalIndex = this.inputs.length - 1;
+ while (removalIndex > lastConnectedIndex && this.inputs.length > minInputs && removalIndex >= 0) {
+ if (this.inputs[removalIndex].name.startsWith(prefix) && this.inputs[removalIndex].link == null) {
+ if(this.inputs.length > minInputs) {
+ console.log(`[MultiModel] Removing input ${this.inputs[removalIndex].name}`);
+ this.removeInput(removalIndex);
+ } else {
+ break;
+ }
+ } else {
+ break;
+ }
+ removalIndex--;
+ }
+
+ // Add a new input if the last one is connected OR if there are no inputs yet
+ if (this.inputs.length === 0 || (this.inputs[this.inputs.length - 1].name.startsWith(prefix) && this.inputs[this.inputs.length - 1].link != null)) {
+ const nextIndex = this.inputs.length + 1; // 1-based index for name
+ const name = `${prefix}${nextIndex}`;
+ console.log(`[MultiModel] Adding input ${name}`);
+ this.addInput(name, "*");
+ }
+
+ app.graph.setDirtyCanvas(true, true);
+ };
+ }
+ },
+});
\ No newline at end of file
diff --git a/js/active_model.js b/js/active_model.js
new file mode 100644
index 0000000..435a6de
--- /dev/null
+++ b/js/active_model.js
@@ -0,0 +1,738 @@
+console.log("%c[ActiveModel] JS файл завантажився! (v2-dynamic-inputs)", "color: white; background: #007acc; font-weight: bold; padding: 2px 8px; border-radius: 3px;");
+// --- Loading js/active_model.js --- v2-dynamic-inputs
+import { app } from "/scripts/app.js"; // Виправлено шлях на абсолютний
+
+// Цільовий тип вузла, який ми шукаємо
+const TARGET_NODE_TYPE = "ModelParamsPipe";
+// Режими роботи вузлів ComfyUI/LiteGraph
+const MODE_ALWAYS = 0; // Завжди активний
+const MODE_BYPASS = 4; // Режим обходу (Bypass)
+const NODE_TITLE = "Active Model"; // Змінено заголовок
+const NODE_TYPE = "ActiveModel"; // І тип
+
+class ActiveModel {
+
+ // Налаштування для LiteGraph
+ constructor() {
+ // Цей вузол є переважно контейнером для дій
+ this.properties = {};
+ console.log(`[${ActiveModel.title}] CONSTRUCTOR CALLED.`);
+ // Спробуємо знайти та вивести вузли одразу при створенні
+ this.logTargetNodeNames();
+ }
+
+ // Статичні властивості для визначення типу вузла
+ static title = "Active Model";
+ static type = "ActiveModel"; // Унікальний тип для цього вузла
+
+ // Функція для пошуку та логування імен цільових вузлів
+ logTargetNodeNames() {
+ console.log(`[${ActiveModel.title}] Searching for nodes of type '${TARGET_NODE_TYPE}'...`);
+ const nodes = app.graph._nodes.filter(node => node.type === TARGET_NODE_TYPE);
+ console.log(`[${ActiveModel.title}] Found ${nodes.length} nodes:`);
+ if (nodes.length > 0) {
+ nodes.forEach(n => console.log(` - Node ID: ${n.id}, Title: ${n.title}, Current mode: ${n.mode}`));
+ } else {
+ console.log(` (No nodes found)`);
+ }
+ return nodes; // Повертаємо для можливого використання в onAction
+ }
+
+ // Метод для встановлення режиму для всіх знайдених цільових вузлів
+ setHubsMode(mode) {
+ const nodes = this.logTargetNodeNames();
+ if (nodes.length === 0) {
+ console.log(`[${ActiveModel.title}] No target nodes found to set mode.`);
+ return; // Виходимо, якщо немає цільових вузлів
+ }
+ const modeStr = mode === MODE_ALWAYS ? "ALWAYS" : (mode === MODE_BYPASS ? "BYPASS" : mode);
+ console.log(`[${ActiveModel.title}] Attempting to set mode to ${modeStr} for ${nodes.length} nodes.`);
+
+ let changed = false;
+ for (const node of nodes) {
+ console.log(` - Processing Node ID: ${node.id}, Title: ${node.title}, Current mode: ${node.mode}`);
+ if (node.mode !== mode) {
+ node.mode = mode;
+ console.log(` - Mode set to: ${node.mode}`);
+ changed = true;
+ } else {
+ console.log(` - Mode already set to ${node.mode}. Skipping.`);
+ }
+ }
+
+ if (changed) {
+ console.log(`[${ActiveModel.title}] Triggering canvas redraw.`);
+ app.graph.setDirtyCanvas(true, true);
+ } else {
+ console.log(`[${ActiveModel.title}] No modes were changed. Skipping redraw.`);
+ }
+ }
+
+ // Спрощена обробка дій для тестування
+ onAction(action) {
+ console.log(`[${ActiveModel.title}] === onAction ENTERED === Action: ${action}`);
+ // Просто логуємо знайдені вузли ще раз при виклику дії
+ this.logTargetNodeNames();
+ // Логіку зміни режимів поки що прибрали
+ // if (action === "Bypass All Hubs") { ... }
+ }
+
+ // Цей вузол не виконує обчислень, тому onExecute може бути порожнім
+ onExecute() {
+ // console.log(`[${ActiveModel.title}] Executed (likely no-op).`);
+ }
+
+ // Статичний метод для налаштування та реєстрації вузла
+ static setUp(clazz) {
+ // Явно встановлюємо статичні властивості, які потрібні LiteGraph
+ clazz.title = ActiveModel.title;
+ clazz.type = ActiveModel.type;
+ clazz.title_mode = LiteGraph.NORMAL_TITLE;
+ clazz.collapsable = true;
+ clazz.size = [240, 50];
+ clazz.category = "MultiModel"; // Змінюємо категорію на основну
+
+ console.log(`[${ActiveModel.title}] Attempting to register node type via setUp: ${clazz.type}`);
+ try {
+ // Реєструємо сам клас
+ LiteGraph.registerNodeType(clazz.type, clazz);
+ console.log(`[${ActiveModel.title}] Node type registration via setUp SUCCESSFUL.`);
+ } catch (e) {
+ console.error(`[${ActiveModel.title}] Node type registration via setUp FAILED:`, e);
+ }
+ }
+}
+
+// Визначаємо дії, доступні в контекстному меню
+ActiveModel.exposedActions = ["Log Hub Names", "Enable All Hubs", "Bypass All Hubs", "Toggle All Hubs"];
+// Визначаємо статичні властивості title та type тут, щоб вони були доступні для setUp
+ActiveModel.title = "Active Model";
+ActiveModel.type = "ActiveModel";
+
+// --- Допоміжні функції --- //
+
+// Функція пошуку цільових вузлів (тепер отримує їх з сервісу)
+function findTargetNodes() {
+ return HubNodesService.getHubNodes();
+}
+
+// Функція зміни режиму ОДНОГО вузла
+function setHubMode(targetNode, mode) {
+ if (!targetNode) return;
+ const currentMode = targetNode.mode;
+ const modeStr = mode === MODE_ALWAYS ? "ON" : "OFF";
+ console.log(`[${NODE_TITLE}] Setting Node ID ${targetNode.id} ('${targetNode.title}') to mode ${modeStr}`);
+
+ // Якщо ми вмикаємо вузол (MODE_ALWAYS), і при цьому поточний режим НЕ MODE_ALWAYS
+ // (тобто вузол був вимкнений, а тепер ми його вмикаємо)
+ if (mode === MODE_ALWAYS && currentMode !== MODE_ALWAYS) {
+ // Потрібно перевірити, чи є інші активні вузли, і вимкнути їх
+ const allHubNodes = HubNodesService.getHubNodes();
+ const otherActiveNodes = allHubNodes.filter(n => n.id !== targetNode.id && n.mode === MODE_ALWAYS);
+
+ if (otherActiveNodes.length > 0) {
+ console.log(`[${NODE_TITLE}] Found ${otherActiveNodes.length} other active nodes, disabling them...`);
+ otherActiveNodes.forEach(node => {
+ node.mode = MODE_BYPASS;
+ console.log(`[${NODE_TITLE}] Disabled node ID ${node.id} ('${node.title}')`);
+
+ // Оновлюємо віджети всіх байпасерів для цього вузла
+ updateAllBypasserWidgets(node);
+ });
+ }
+ }
+
+ // Змінюємо режим цільового вузла, незалежно від того, чи є інші активні вузли
+ if (currentMode !== mode) {
+ targetNode.mode = mode;
+ app.graph.setDirtyCanvas(true, true);
+
+ // Також оновлюємо віджети для цього вузла
+ updateAllBypasserWidgets(targetNode);
+ }
+}
+
+// Нова функція для оновлення віджетів у всіх байпасерах для конкретного вузла
+function updateAllBypasserWidgets(targetNode) {
+ if (!targetNode) return;
+
+ console.log(`[${NODE_TITLE}] Updating widgets for node ID: ${targetNode.id} in all bypassers`);
+ const bypassers = HubNodesService.bypasserNodes;
+
+ bypassers.forEach(bypasser => {
+ if (!bypasser || !bypasser.widgets) return;
+
+ const widgetName = `hub_${targetNode.id}`;
+ const widget = bypasser.widgets.find(w => w.name === widgetName);
+
+ if (widget) {
+ // Оновлюємо значення віджета
+ const isBypassed = targetNode.mode === MODE_BYPASS;
+ const newValue = !isBypassed;
+
+ // Оновлюємо також заголовок, щоб він відповідав новому формату
+ const newLabel = `${targetNode.title || '(Untitled)'}`;
+
+ let changed = false;
+
+ if (widget.value !== newValue) {
+ console.log(`[${NODE_TITLE}] Updating widget value in bypasser ID: ${bypasser.id} for node ID: ${targetNode.id} to: ${newValue}`);
+ widget.value = newValue;
+ changed = true;
+ }
+
+ if (widget.label !== newLabel) {
+ console.log(`[${NODE_TITLE}] Updating widget label in bypasser ID: ${bypasser.id} for node ID: ${targetNode.id} to: "${newLabel}"`);
+ widget.label = newLabel;
+ changed = true;
+ }
+
+ if (changed) {
+ bypasser.graph.setDirtyCanvas(true, false);
+ }
+ }
+ });
+}
+
+// --- Сервіс для керування вузлами --- //
+const HubNodesService = {
+ hubNodes: [],
+ bypasserNodes: [],
+ updateTimeout: null,
+ updateDelay: 100,
+ app: null, // Додано для доступу до app
+
+ registerBypasserNode(node) {
+ if (!this.bypasserNodes.find(n => n.id === node.id)) {
+ console.log(`[HubNodesService] Registering bypasser node ID: ${node.id}`);
+ this.bypasserNodes.push(node);
+ this.scheduleUpdate(`registerBypasser_${node.id}`);
+ }
+ },
+
+ unregisterBypasserNode(node) {
+ const index = this.bypasserNodes.findIndex(n => n.id === node.id);
+ if (index !== -1) {
+ console.log(`[HubNodesService] Unregistering bypasser node ID: ${node.id}`);
+ this.bypasserNodes.splice(index, 1);
+ // Оновлення не потрібне при видаленні самого байпасера
+ } else {
+ console.log(`[HubNodesService] Node ID ${node.id} not found for unregistration.`);
+ }
+ },
+
+ getHubNodes() {
+ return [...this.hubNodes];
+ },
+
+ // --- Нові методи для сповіщень від Hub --- //
+ notifyHubAdded(node) {
+ if (!node) return;
+ console.log(`[HubNodesService] Hub node added notification received: ID ${node.id}`);
+ if (!this.hubNodes.find(n => n.id === node.id)) {
+ this.hubNodes.push(node);
+ this.hubNodes.sort((a, b) => a.id - b.id); // Підтримуємо сортування
+ this.scheduleUpdate(`notifyHubAdded_${node.id}`);
+ } else {
+ console.log(`[HubNodesService] Hub node ID ${node.id} already exists.`);
+ }
+ },
+
+ notifyHubRemoved(node) {
+ if (!node) return;
+ console.log(`[HubNodesService] Hub node removed notification received: ID ${node.id}`);
+ const index = this.hubNodes.findIndex(n => n.id === node.id);
+ if (index !== -1) {
+ this.hubNodes.splice(index, 1);
+ this.scheduleUpdate(`notifyHubRemoved_${node.id}`);
+ } else {
+ console.log(`[HubNodesService] Hub node ID ${node.id} not found for removal notification.`);
+ }
+ },
+
+ notifyHubRenamed(node) {
+ if (!node) return;
+ console.log(`[HubNodesService] Hub node rename notification received: ID ${node.id}`);
+ // Сам список hubNodes містить посилання на об'єкти вузлів,
+ // тому оновлювати список не потрібно, зміна title вже відбулася.
+ // Просто плануємо оновлення віджетів, щоб відобразити нову назву.
+ this.scheduleUpdate(`notifyHubRenamed_${node.id}`);
+ },
+ // --- Кінець нових методів --- //
+
+ scheduleUpdate(reason = "unknown") {
+ console.log(`[HubNodesService] Scheduling update. Reason: ${reason}`);
+ if (this.updateTimeout) {
+ clearTimeout(this.updateTimeout);
+ }
+ this.updateTimeout = setTimeout(() => {
+ console.log("[HubNodesService] Timeout reached. Running update...");
+ this.updateTimeout = null;
+ // Оновлення списку hubNodes більше не потрібне тут
+ // this.refreshHubNodes();
+ this.bypasserNodes.forEach(node => {
+ if (node.refreshWidgets) {
+ console.log(`[HubNodesService] Refreshing widgets for bypasser node ID: ${node.id}`);
+ node.refreshWidgets();
+ } else {
+ console.warn(`[HubNodesService] Bypasser node ID: ${node.id} missing refreshWidgets method.`);
+ }
+ });
+ console.log("[HubNodesService] Update finished.");
+ }, this.updateDelay);
+ }
+};
+
+app.registerExtension({
+ name: "MultiModel.ActiveModel.ServiceDriven", // Оновлено назву розширення
+
+ setup(appInstance) {
+ console.log(`[${NODE_TITLE}] === Extension setup CALLED ===`);
+ // Реєструємо сервіс, щоб він був доступний іншим розширенням
+ appInstance.HubNodesService = HubNodesService;
+ HubNodesService.app = appInstance;
+
+ // Додаємо перехоплення onNodeAdded для відстеження додавання нашої ноди
+ if (appInstance.graph && !appInstance.graph._activemodel_onNodeAdded_attached) {
+ const origNodeAdded = appInstance.graph.onNodeAdded;
+
+ appInstance.graph.onNodeAdded = function(node) {
+ // Спочатку викликаємо оригінальний обробник
+ if (origNodeAdded) {
+ origNodeAdded.call(this, node);
+ }
+
+ // Перевіряємо, чи це наша нода ActiveModel
+ if (node.type === NODE_TYPE) {
+ console.log(`[${NODE_TITLE}] Our node type was added to graph: ID ${node.id}`);
+
+ // Викликаємо обробку ноди для додавання віджетів
+ const extension = appInstance.extensions.find(ext => ext.name === "MultiModel.ActiveModel.ServiceDriven");
+ if (extension) {
+ // Конфігуруємо ноду
+ extension.loadedGraphNode(node, appInstance);
+
+ // Оновлюємо віджети з невеликою затримкою
+ setTimeout(() => {
+ if (node.refreshWidgets) {
+ console.log(`[${NODE_TITLE}] Running refreshWidgets for newly added node ID: ${node.id}`);
+ node.refreshWidgets();
+ }
+ }, 100);
+ }
+ }
+ };
+
+ appInstance.graph._activemodel_onNodeAdded_attached = true;
+ console.log(`[${NODE_TITLE}] Attached our onNodeAdded handler to graph`);
+ }
+
+ // Початкове сканування потрібне, щоб знайти вузли, які вже існують при завантаженні
+ setTimeout(() => {
+ console.log("[HubNodesService] Initial node scan after setup.");
+ // Знаходимо існуючі Hub та Bypasser ноди і реєструємо їх
+ let initialHubsFound = 0;
+ let initialBypassersFound = 0;
+ appInstance.graph._nodes.forEach(node => {
+ if (node.type === TARGET_NODE_TYPE) {
+ HubNodesService.notifyHubAdded(node);
+ initialHubsFound++;
+ } else if (node.type === NODE_TYPE) {
+ // Реєстрація bypasser'а відбувається також у loadedGraphNode,
+ // але продублюємо тут на випадок проблем з порядком
+ HubNodesService.registerBypasserNode(node);
+ initialBypassersFound++;
+
+ // Додаємо додаткову ініціалізацію для вже існуючих Bypasser нод
+ this.loadedGraphNode(node, appInstance);
+ }
+ });
+ console.log(`[HubNodesService] Initial scan found ${initialHubsFound} hubs and ${initialBypassersFound} bypassers.`);
+
+ // Додаємо окремий виклик для оновлення віджетів для всіх bypassers з більшою затримкою
+ if (initialBypassersFound > 0) {
+ setTimeout(() => {
+ console.log(`[${NODE_TITLE}] Refreshing widgets for ${initialBypassersFound} bypassers after initial scan`);
+ HubNodesService.bypasserNodes.forEach(node => {
+ if (node && node.refreshWidgets) {
+ node.refreshWidgets();
+ }
+ });
+ }, 500);
+ }
+
+ // Оновлення віджетів запланується всередині notifyHubAdded/registerBypasserNode
+ }, 500);
+ },
+
+ // loadedGraphNode тепер відповідає ТІЛЬКИ за конфігурацію САМОГО ActiveModel
+ loadedGraphNode(node, appInstance) {
+ if (node.type === NODE_TYPE) {
+ console.log(`[${NODE_TITLE}] Configuring node instance ID: ${node.id}`);
+ node.app = appInstance;
+ node.IS_BYPASSER_NODE = true;
+ delete node.onAction; // Видаляємо, бо додамо getActions
+
+ // Визначаємо refreshWidgets
+ node.refreshWidgets = function() {
+ console.log(`[${NODE_TITLE} ID: ${this.id}] Running refreshWidgets...`);
+ const targetNodes = findTargetNodes(); // Отримуємо з сервісу
+ console.log(`[${NODE_TITLE} ID: ${this.id}] Got ${targetNodes.length} target nodes from service.`);
+
+ // Додаємо детальну діагностику
+ if (targetNodes.length === 0) {
+ console.log(`[${NODE_TITLE} ID: ${this.id}] No target nodes found. HubNodesService state:`,
+ {hubNodesCount: HubNodesService.hubNodes.length,
+ bypassersCount: HubNodesService.bypasserNodes.length});
+ } else {
+ console.log(`[${NODE_TITLE} ID: ${this.id}] Target nodes details:`,
+ targetNodes.map(n => ({id: n.id, title: n.title, mode: n.mode})));
+ }
+
+ // --- Подальша логіка залишається ТАКОЮ Ж САМОЮ, як і раніше ---
+ // (Порівняння віджетів, додавання, видалення, оновлення)
+ const currentWidgets = this.widgets ? [...this.widgets] : [];
+ let widgetsChanged = false;
+ const activeWidgetNames = new Set();
+
+ // Add/Update widgets
+ targetNodes.forEach(targetNode => {
+ if (!targetNode) {
+ console.warn(`[${NODE_TITLE} ID: ${this.id}] Found a null/undefined targetNode in the list from service. Skipping.`);
+ return; // Пропускаємо невалідні ноди
+ }
+ const widgetName = `hub_${targetNode.id}`;
+ // Прибираємо ID ноди з заголовка
+ const widgetLabel = `${targetNode.title || '(Untitled)'}`;
+ const isBypassed = targetNode.mode === MODE_BYPASS;
+ const widgetValue = !isBypassed;
+
+ activeWidgetNames.add(widgetName);
+
+ let existingWidget = this.widgets?.find(w => w.name === widgetName);
+
+ if (existingWidget) {
+ let labelChanged = false;
+ if (existingWidget.label !== widgetLabel) {
+ existingWidget.label = widgetLabel;
+ labelChanged = true;
+ }
+ if (existingWidget.value !== widgetValue) {
+ existingWidget.value = widgetValue;
+ widgetsChanged = true;
+ }
+ if (labelChanged) widgetsChanged = true;
+
+ if (!existingWidget.callback) {
+ existingWidget.callback = (value) => {
+ // Нова логіка: якщо перемикач вмикається, вимикаємо всі інші
+ // якщо вимикається - просто вимикаємо
+ const nodeToChange = app.graph.getNodeById(targetNode.id);
+ if (nodeToChange) setHubMode(nodeToChange, value ? MODE_ALWAYS : MODE_BYPASS);
+ };
+ widgetsChanged = true;
+ }
+ } else {
+ this.addWidget(
+ "toggle", widgetName, widgetValue,
+ (value) => {
+ // Нова логіка: дозволяємо будь-які переключення
+ const nodeToChange = app.graph.getNodeById(targetNode.id);
+ if (nodeToChange) setHubMode(nodeToChange, value ? MODE_ALWAYS : MODE_BYPASS);
+ else this.refreshWidgets();
+ },
+ { on: "ON", off: "OFF" }
+ );
+ this.widgets[this.widgets.length - 1].label = widgetLabel;
+ widgetsChanged = true;
+ }
+ });
+
+ // Remove outdated widgets
+ let removedWidgets = false;
+ if (this.widgets) {
+ for (let i = this.widgets.length - 1; i >= 0; i--) {
+ const widget = this.widgets[i];
+ if (widget.name?.startsWith("hub_") && !activeWidgetNames.has(widget.name)) {
+ this.widgets.splice(i, 1);
+ widgetsChanged = true;
+ removedWidgets = true;
+ }
+ }
+ }
+
+ // Resize node only if widgets were added/removed
+ if (widgetsChanged) {
+ // ... (логіка зміни розміру залишається такою ж) ...
+ const baseHeight = LiteGraph.NODE_TITLE_HEIGHT + 5;
+ const widgetHeight = LiteGraph.NODE_WIDGET_HEIGHT;
+ const spacing = 4;
+ const hubWidgets = this.widgets?.filter(w => w.name?.startsWith("hub_")) || [];
+ const numWidgets = hubWidgets.length;
+ const requiredHeight = baseHeight + numWidgets * (widgetHeight + spacing) + (numWidgets > 0 ? spacing : 0);
+ const computedSize = this.computeSize();
+ const newHeight = Math.max(computedSize[1], requiredHeight);
+ if (Math.abs(this.size[1] - newHeight) > 2 || removedWidgets) {
+ this.size[1] = newHeight;
+ this.graph.setDirtyCanvas(true, true);
+ } else if (widgetsChanged) {
+ this.graph.setDirtyCanvas(true, false);
+ }
+ }
+
+ // Перевірка на кількість активних вузлів після оновлення віджетів
+ setTimeout(() => {
+ const activeNodes = targetNodes.filter(node => node.mode === MODE_ALWAYS);
+ console.log(`[${NODE_TITLE} ID: ${this.id}] After refresh: ${activeNodes.length} active nodes`);
+
+ // Якщо більше одного активного вузла, залишаємо тільки перший
+ // Але не активуємо автоматично вузли, якщо всі вимкнені
+ if (activeNodes.length > 1) {
+ console.log(`[${NODE_TITLE} ID: ${this.id}] Multiple active nodes (${activeNodes.length}), keeping only the first one...`);
+ // Залишаємо перший вузол активним, інші вимикаємо
+ for (let i = 1; i < activeNodes.length; i++) {
+ setHubMode(activeNodes[i], MODE_BYPASS);
+
+ // Оновлюємо відповідний віджет
+ const widgetName = `hub_${activeNodes[i].id}`;
+ const widget = this.widgets?.find(w => w.name === widgetName);
+ if (widget) {
+ widget.value = false;
+ }
+ }
+ this.graph.setDirtyCanvas(true, false);
+ }
+ }, 100);
+
+ console.log(`[${NODE_TITLE} ID: ${this.id}] refreshWidgets finished.`);
+ };
+
+ // Визначаємо дії для контекстного меню
+ node.getActions = function() {
+ const actions = [];
+ if (this.widgets?.some(w => w.name.startsWith("hub_"))) {
+ actions.push({ name: "Activate First Hub", callback: () => this.setAllHubsMode(MODE_ALWAYS) });
+ actions.push({ name: "Switch To Next Hub", callback: () => this.toggleAllHubsMode() });
+ }
+ actions.push({ name: "Log Hub Names (Console)", callback: () => this.logTargetNodeNames() });
+ return actions;
+ };
+ node.logTargetNodeNames = function() { // Додаємо метод до екземпляра
+ console.log(`[${NODE_TITLE} ID: ${this.id}] Logging target node names...`);
+ const nodes = HubNodesService.getHubNodes();
+ console.log(` Found ${nodes.length} nodes via service:`);
+ if (nodes.length > 0) {
+ nodes.forEach(n => console.log(` - Node ID: ${n.id}, Title: ${n.title}, Current mode: ${n.mode}`));
+ } else {
+ console.log(` (No nodes found)`);
+ }
+ };
+
+ // Оновлений метод для встановлення режиму всіх хабів
+ node.setAllHubsMode = function(mode) {
+ console.log(`[${NODE_TITLE} ID: ${this.id}] setAllHubsMode called with mode: ${mode}`);
+ const hubNodes = HubNodesService.getHubNodes();
+
+ if (hubNodes.length === 0) {
+ console.log(`[${NODE_TITLE} ID: ${this.id}] No hub nodes found to set mode.`);
+ return;
+ }
+
+ if (mode === MODE_ALWAYS) {
+ // Активуємо тільки перший вузол, інші вимикаємо
+ console.log(`[${NODE_TITLE} ID: ${this.id}] Enabling only the first hub node, disabling others.`);
+
+ hubNodes.forEach((node, index) => {
+ const newMode = index === 0 ? MODE_ALWAYS : MODE_BYPASS;
+
+ if (node.mode !== newMode) {
+ node.mode = newMode;
+ updateAllBypasserWidgets(node);
+ }
+ });
+
+ app.graph.setDirtyCanvas(true, true);
+ } else if (mode === MODE_BYPASS) {
+ // Якщо режим BYPASS, вимикаємо всі вузли
+ console.log(`[${NODE_TITLE} ID: ${this.id}] Disabling all hub nodes.`);
+
+ let changed = false;
+ hubNodes.forEach(node => {
+ if (node.mode !== MODE_BYPASS) {
+ node.mode = MODE_BYPASS;
+ updateAllBypasserWidgets(node);
+ changed = true;
+ }
+ });
+
+ if (changed) {
+ app.graph.setDirtyCanvas(true, true);
+ }
+ }
+ };
+
+ // Оновлений метод для перемикання вузлів
+ node.toggleAllHubsMode = function() {
+ console.log(`[${NODE_TITLE} ID: ${this.id}] toggleAllHubsMode called`);
+ const hubNodes = HubNodesService.getHubNodes();
+
+ if (hubNodes.length === 0) {
+ console.log(`[${NODE_TITLE} ID: ${this.id}] No hub nodes found to toggle.`);
+ return;
+ }
+
+ // Перевіряємо, чи є хоча б один активний вузол
+ const activeNodes = hubNodes.filter(n => n.mode === MODE_ALWAYS);
+
+ if (activeNodes.length === 0) {
+ // Якщо немає активних вузлів, активуємо перший
+ console.log(`[${NODE_TITLE} ID: ${this.id}] No active nodes, activating the first one.`);
+ if (hubNodes.length > 0) {
+ const node = hubNodes[0];
+ node.mode = MODE_ALWAYS;
+ updateAllBypasserWidgets(node);
+ app.graph.setDirtyCanvas(true, true);
+ }
+ } else {
+ // Якщо є активний вузол, знаходимо його індекс і активуємо наступний
+ const activeNode = activeNodes[0];
+ const currentIndex = hubNodes.findIndex(n => n.id === activeNode.id);
+
+ // Вимикаємо поточний активний вузол
+ activeNode.mode = MODE_BYPASS;
+ updateAllBypasserWidgets(activeNode);
+
+ // Знаходимо наступний вузол (або переходимо до першого, якщо це останній)
+ const nextIndex = (currentIndex + 1) % hubNodes.length;
+ const nextNode = hubNodes[nextIndex];
+
+ console.log(`[${NODE_TITLE} ID: ${this.id}] Toggling from node ID ${activeNode.id} to node ID ${nextNode.id}`);
+
+ // Активуємо наступний вузол
+ nextNode.mode = MODE_ALWAYS;
+ updateAllBypasserWidgets(nextNode);
+
+ app.graph.setDirtyCanvas(true, true);
+ }
+ };
+
+ // Реєстрація/видалення самого bypasser'а в сервісі
+ node.onAdded = function() {
+ console.log(`[${NODE_TITLE} ID: ${this.id}] Bypasser node added to graph. Registering with service.`);
+ if (appInstance.HubNodesService) { // Перевіряємо наявність сервісу
+ appInstance.HubNodesService.registerBypasserNode(this);
+ } else {
+ console.error(`[${NODE_TITLE} ID: ${this.id}] Cannot register bypasser, HubNodesService not found!`);
+ }
+ };
+ node.onRemoved = function() {
+ console.log(`[${NODE_TITLE} ID: ${this.id}] Bypasser node removed from graph. Unregistering from service.`);
+ if (appInstance.HubNodesService) {
+ appInstance.HubNodesService.unregisterBypasserNode(this);
+ } else {
+ console.error(`[${NODE_TITLE} ID: ${this.id}] Cannot unregister bypasser, HubNodesService not found!`);
+ }
+ };
+
+ // Початкова реєстрація, якщо вузол вже існує при завантаженні
+ if (appInstance.HubNodesService) {
+ appInstance.HubNodesService.registerBypasserNode(node);
+ } else {
+ // Якщо сервіс ще не створено (малоймовірно, але можливо),
+ // реєстрація відбудеться пізніше через onAdded
+ console.warn(`[${NODE_TITLE} ID: ${node.id}] Initial registration deferred, HubNodesService not yet available.`);
+ }
+
+ // Початкове оновлення віджетів для цього конкретного вузла
+ setTimeout(() => { if (node.refreshWidgets) node.refreshWidgets(); }, 50);
+ }
+ },
+
+ getExtraMenuOptions(_, options) {
+ options.push({
+ content: "Add Active Model",
+ callback: () => {
+ const node = LiteGraph.createNode(NODE_TYPE);
+ // Записуємо текст для коментаря, щоб показати функціональність
+ node.properties.desc = "Controls the flow of Model Parameters Pipe Hubs";
+ app.graph.add(node);
+
+ // Розміщення вузла в центрі видимої області
+ const canvas = app.canvas;
+ const visible_rect = canvas.visible_area;
+ node.pos[0] = visible_rect[0] + visible_rect[2] * 0.5 - node.size[0] * 0.5;
+ node.pos[1] = visible_rect[1] + visible_rect[3] * 0.5 - node.size[1] * 0.5;
+
+ console.log(`[${NODE_TITLE}] Node created from menu with ID: ${node.id}`);
+
+ // Явно налаштуємо ноду після створення з меню
+ if (app.HubNodesService) {
+ // Отримуємо розширення
+ const extension = app.extensions.find(ext => ext.name === "MultiModel.ActiveModel.ServiceDriven");
+ if (extension) {
+ // Конфігуруємо ноду
+ console.log(`[${NODE_TITLE}] Manually configuring node created from menu`);
+ extension.loadedGraphNode(node, app);
+
+ // Оновлюємо віджети з затримкою
+ setTimeout(() => {
+ if (node.refreshWidgets) {
+ console.log(`[${NODE_TITLE}] Refreshing widgets for node created from menu`);
+ node.refreshWidgets();
+ }
+ }, 100);
+ }
+ }
+ }
+ });
+ },
+
+ nodeRegistered(type, clazz) {
+ console.log(`[${NODE_TITLE}] nodeRegistered called for type: ${type}`);
+ if (type === NODE_TYPE) {
+ try {
+ console.log(`[${NODE_TITLE}] Running additional setup for our node type`);
+ ActiveModel.setUp(clazz);
+ } catch (e) {
+ console.error(`[${NODE_TITLE}] Error in additional node setup:`, e);
+ }
+ }
+ },
+
+ // Додаємо обробники створення ноди для максимального покриття
+ nodeCreated(node) {
+ console.log(`[${NODE_TITLE}] nodeCreated called for node type: ${node?.type || 'undefined'}, ID: ${node?.id || 'undefined'}`);
+
+ if (node && node.type === NODE_TYPE) {
+ console.log(`[${NODE_TITLE}] Our node created, configuring it...`);
+ this.loadedGraphNode(node, app);
+
+ // Запускаємо оновлення віджетів з затримкою
+ setTimeout(() => {
+ if (node.refreshWidgets) {
+ console.log(`[${NODE_TITLE}] Refreshing widgets after node creation`);
+ node.refreshWidgets();
+ }
+ }, 100);
+ }
+ },
+
+ onNodeAdded(node) {
+ console.log(`[${NODE_TITLE}] onNodeAdded callback called for node type: ${node?.type || 'undefined'}, ID: ${node?.id || 'undefined'}`);
+
+ if (node && node.type === NODE_TYPE) {
+ console.log(`[${NODE_TITLE}] Our node added via onNodeAdded, configuring it...`);
+ this.loadedGraphNode(node, app);
+
+ // Запускаємо оновлення віджетів з затримкою
+ setTimeout(() => {
+ if (node.refreshWidgets) {
+ console.log(`[${NODE_TITLE}] Refreshing widgets after node was added`);
+ node.refreshWidgets();
+ }
+ }, 100);
+ }
+ }
+});
+
+console.log(`[${NODE_TITLE}] JS file loaded`);
\ No newline at end of file