AIGODLIKE ComfyUI Translation

A plugin for multilingual translation of ComfyUI,This plugin implements translation of resident menu bar/search bar/right-click context menu/node, etc

1755
137
JavaScript

AIGODLIKE-ComfyUI-Translation

A plugin for multilingual translation of ComfyUI,This plugin implements translation of resident menu bar/search bar/right-click context menu/node, etc

2024/09/06 Support the latest ComfyUI interface

https://github.com/user-attachments/assets/9418fba8-f499-4414-9c7f-4d548ff77c49

ComfyUI users in other languages, I need your help

I hope ComfyUI can support more languages besides Chinese and English, such as French, German, Japanese, Korean, etc. However, I believe that translation should be done by native speakers of each language. So I need your help, let’s go fight for ComfyUI together!

[Korean] Korean translation needs help~

[Japanese] Japanese translation needs help~

Language supported

COMFYUI Translation 简体中文 繁體中文 English 日本語 한국어 Русский Your language
Menu TODO
NodeCategory TODO
Nodes TODO

Function

  1. Translate all UI of ComfyUI
    image
    image
    image
  2. Direct language switching (limitation: custom names will be removed)
    https://github.com/AIGODLIKE/AIGODLIKE-COMFYUI-TRANSLATION/assets/116185401/e43182b7-8932-4358-bc65-ade7bddf27c5
  3. Support for adding other languages
  4. Support translation custom nodes
  5. (2023/8/16) Support one-click switching between English/currently set language
  6. (2023/8/19) Support for multilingual translation of custom nodes * (in production)
Custom Node Name 简中 繁中 English 日本語 한국어 Русский
3D-MeshTool TODO TODO TODO TODO
3D-Pack TODO TODO TODO TODO
Advanced Encode TODO TODO TODO
Advanced ControlNet TODO TODO TODO
AGL-ComfyUI-Translation TODO TODO
AlekPet Nodes TODO TODO
AnimateAnyone TODO TODO TODO TODO
AnimateDiff TODO TODO
AnimateDiff-Evolved TODO TODO TODO
AnyLine TODO TODO TODO TODO
AnyText TODO TODO TODO TODO
Automatic CFG TODO TODO TODO TODO
BiRefNet TODO TODO TODO TODO
BiRefNet Hugo TODO TODO TODO TODO
BitsandBytes NF4 TODO TODO TODO TODO
BrushNet (kijai) TODO TODO TODO TODO
BrushNet (nullquant) TODO TODO TODO TODO
Bxb TODO TODO TODO TODO
CCSR TODO TODO TODO TODO
Champ TODO TODO TODO TODO
CLIP Seg TODO TODO
CogVideo TODO TODO TODO TODO
ComfyRoll TODO TODO TODO
ControlNet LLLite TODO TODO TODO
ControlNet Preprocessors TODO TODO
ControlNet Preprocessors AUX TODO TODO
ControlNeXt SVD TODO TODO TODO TODO
Crystools TODO TODO TODO
Cutoff TODO TODO
Custom-Scripts TODO TODO TODO
cg-use-everywhere TODO TODO TODO TODO
cg-image-picker TODO TODO TODO TODO
Davemane42 Nodes TODO TODO
Dagthomas Nodes TODO TODO
Derfuu Nodes TODO TODO TODO TODO
DynamiCrafter (kijai) TODO TODO TODO TODO
DynamiCrafter (ExponentialML) TODO TODO TODO TODO
DynamicThresholding TODO TODO TODO
EasyAnimate (chaojie) TODO TODO TODO TODO
EasyAnimate (kijai) TODO TODO TODO TODO
Easy Tools TODO TODO TODO TODO
Easy Use TODO TODO TODO TODO
Eesahes Nodes TODO TODO TODO TODO
Efficiency Nodes TODO TODO
ELLA (ExponentialML) TODO TODO TODO TODO
ELLA (Tencent) TODO TODO TODO TODO
EllangoK Postprocessing TODO TODO TODO
Essentials TODO TODO TODO TODO
Execution-Inversion TODO TODO TODO TODO
ExLlama nodes TODO TODO TODO
experiments TODO TODO TODO
Face Analysis TODO TODO TODO TODO
Fast Decode TODO TODO
Florence2 TODO TODO TODO TODO
Flowty CRM TODO TODO TODO TODO
Flowty TripoSR TODO TODO TODO TODO
Frame Interpolation TODO TODO TODO TODO
FreeU Advanced TODO TODO TODO TODO
IC-Light (kijai) TODO TODO TODO TODO
IC-Light-Wrapper (kijai) TODO TODO TODO TODO
IF AI tools TODO TODO TODO TODO
Image Resize TODO TODO TODO TODO
Instant Mesh TODO TODO TODO TODO
IPAdapter TODO TODO TODO
IPAdapter_plus TODO TODO TODO
Image Grid TODO TODO TODO
Impact Pack TODO TODO TODO
Impact Subpack TODO TODO TODO
Inpaint CropAndStitch TODO TODO TODO TODO
Inpaint Nodes TODO TODO TODO TODO
Inspire Pack TODO TODO TODO
InstantID (cubiq) TODO TODO TODO TODO
InstantID (ZHO) TODO TODO TODO TODO
Joy Caption TODO TODO TODO TODO
KJ Nodes TODO TODO TODO TODO
kkTranslator TODO TODO TODO TODO
Kolors (kijai) TODO TODO TODO TODO
Kolors (MinusZone) TODO TODO TODO TODO
LaMa Preprocessor TODO TODO TODO TODO
Latent2RGB TODO TODO
LayerDiffuse TODO TODO TODO TODO
LayerStyle TODO TODO TODO TODO
LCM TODO TODO TODO TODO
Literals TODO TODO TODO TODO
LivePortrait(KJ) TODO TODO TODO TODO
LivePortrait-Advanced TODO TODO TODO TODO
LoadLoraWithTags TODO TODO TODO TODO
Logic TODO TODO TODO TODO
LoraAutoTrigger TODO TODO TODO TODO
MagicClothing TODO TODO TODO TODO
Manager TODO TODO
Marigold TODO TODO TODO TODO
Masquerade Nodes TODO TODO TODO
Math TODO TODO TODO TODO
Mixlab Nodes TODO TODO TODO TODO
MoonDream TODO TODO TODO TODO
MotionCtrl TODO TODO TODO TODO
MotionCtrl-SVD TODO TODO TODO TODO
MTB TODO TODO TODO TODO
N-Sidebar TODO TODO TODO TODO
Noise TODO TODO TODO
NormalLighting TODO TODO TODO TODO
Paint By Example TODO TODO TODO TODO
Perturbed-Attention TODO TODO TODO TODO
Portrai Master TODO TODO TODO TODO
Power Noise Suite TODO TODO TODO TODO
Prompt Composer TODO TODO TODO TODO
Prompt MZ TODO TODO TODO TODO
Prompt Reader TODO TODO TODO TODO
PuLID (cubiq) TODO TODO TODO TODO
QR TODO TODO TODO
Quick Connections TODO TODO TODO TODO
Omost TODO TODO TODO TODO
OneButtonPrompt TODO TODO TODO TODO
ReActor TODO TODO TODO TODO
ResAdapter TODO TODO TODO TODO
Restart-Sampling TODO TODO TODO
Roop TODO TODO TODO TODO
rgthree TODO TODO TODO TODO
SD-Latent-Interposer TODO TODO TODO TODO
SDXL_prompt_styler TODO TODO TODO
SeargeSDXL TODO TODO TODO
Segment Anything TODO TODO TODO TODO
Segment Anything 2 TODO TODO TODO TODO
StabilityNodes TODO TODO TODO
SUPIR TODO TODO TODO TODO
TiledDiffusion TODO TODO TODO TODO
TiledKSampler TODO TODO
TinyTerra TODO TODO TODO TODO
ToonCrafter TODO TODO TODO TODO
TripoAPI TODO TODO TODO TODO
UltimateSDUpscale TODO TODO TODO
Vextra Nodes TODO TODO TODO
Video Matting TODO TODO TODO TODO
Visual Style Prompting TODO TODO TODO TODO
VLM Nodes TODO TODO TODO TODO
WAS Suite TODO TODO TODO
WD14-Tagger TODO TODO TODO
zfkun TODO TODO TODO TODO

The above only includes translations for the UI. If you are a developer and need me to help you translate your interface, you can go directly to the ComfyUI Plugins List to add your custom node project, or send an issue, as long as I can see it, I will translate it (it will take some time)

How to install

AIGODLIKE-COMFYUI-TRANSLATION is equivalent to a custom node, you can use any method you like, just put it in folder custom_nodes
Then run:

cd ComfyUI/custom_nodes
git clone https://github.com/AIGODLIKE/AIGODLIKE-COMFYUI-TRANSLATION.git

image

How to use

For new UI:
1481d583968e3b626e366d2ad2faf62c

For legacy UI:
image

How to add other languages(translator)

  1. Create a new ‘Language Name’ folder in the plugin directory (e.g. example folder)
    image

  2. Find the LocaleMap.js file and add the language code with the same name as the first step folder in it
    image

    export const LOCALES = {
        "zh-CN": {
            "nativeName": "中文",
            "englishName": "Chinese Simplified"
        },
        "en-US": {
            "nativeName": "English (US)",
            "englishName": "English (US)"                    
        },
        "example": {
            "nativeName": "exampleDisplayName",
            "englishName": "enName"
        },
    }
    
  3. After completing the above two steps, restart the ComfyUI service to find the ‘exampleDisplayName’ language type in the ‘AGLTranslation language’ settings bar
    image

How to add custom node translations(translator)

  1. Translation files are currently divided into three types
    1. Node information translation (including node name, node connector, node component) corresponding translation file Your language folder/Nodes/somenode.json
    2. Node classification information (used for right-click the new node menu) corresponds to the translation file Your language folder/NodeCategory.json
    3. Menu information (including resident menu, settings panel, right-click context menu, search menu, etc.) corresponds to translated files Your language folder/Menu.json
  2. Node information translation can be placed in multiple JSON files under ‘Your language folder/Nodes/’ based on different nodes
  3. All translation files are in JSON format, please fill in strictly according to the JSON file format

Translation examples

  1. Node Translation Format
    {
        "KSampler": {
            "title": "KSampler[example translation]",
            "inputs": {
                "model": "模型",
                "positive": "正向提示词",
                "negative": "反向提示词",
                "latent_image": "潜空间"
            },
            "widgets": {
                "seed": "随机种",
                "control_after_generate": "运行后操作",
                "steps": "步数",
                "cfg": "CFG",
                "sampler_name": "采样器",
                "scheduler": "调度器",
                "denoise": "降噪"
            },
            "outputs": {
                "LATENT": "潜空间",
            }
        },
        "Load VAE": {}
    }
    
  2. Node classification translation format
    {
        "Add Node": "Add Node[example]",
        "Add Group": "Add Group[example]",
        "Search": "Search[example]",
        "Queue size:": "Queue size[example]:",
        "Queue Prompt": "Queue Prompt[example]",
        "Extra options": "Extra options[example]"
    }
    
  3. Menu information translation format
    {
        "conditioning": "conditioning[example]",
        "latent": "latent[example]",
        "loaders": "loaders[example]",
        "image": "image[example]"
    }
    

Limitations

  1. Supports direct switching of any language node to the target language, but will lose custom names
  2. A small portion of options that use Enum type data cannot be translated
    image