Visual LoRA Loader - Neurad
Your LoRA folder, but with cover images and trigger words on tap
- model
- clip
- MODEL
- CLIP
- active_loras_info
If your models/loras folder is a hundred files deep and you keep squinting at filenames to remember which LoRA does what, this node is for you. NeuradVisualLora (the "Visual LoRA Loader - Neurad" node in this pack) replaces the stock text-droplist LoRA loader with a full visual library: a floating grid of your LoRAs with cover images, CivitAI-fetched metadata and trigger words, per-project tabs, and strength sliders - all inside the graph, no separate app.
It's a young, single-maintainer project with essentially no community footprint yet (you won't find it discussed on Reddit as of writing), so weigh that before you trust it with a serious workflow. If you run a handful of LoRAs, the stock loader or rgthree's Power Lora Loader is honestly less to break. If your library is a swamp, this is the pitch: browse by image, not by filename.
How the loading actually works
The "visual" part is all frontend. When the workflow runs, the node reads a hidden lora_data JSON widget, resolves each entry to a file under your loras folder, then chains ComfyUI's own stock LoraLoader internally - one LoRA at a time, in order, each applying its strength on top of the last. Same math you'd get stacking five stock loaders by hand, so outputs are predictable and nothing about the inference path is experimental.
Metadata comes from CivitAI the same way rgthree's Power Lora Loader does it: the server hashes the .safetensors file and hits https://civitai.com/api/v1/model-versions/by-hash/<hash> to pull the name, trigger words, and example images, then caches the result in ComfyUI/user/neurad_cache/ so it only pays that round-trip once per file. Files CivitAI doesn't know about show a "Get Info" placeholder, and you can edit metadata by hand instead.
Inputs and outputs that matter
model(MODEL) andclip(CLIP) - your checkpoint's model and clip, exactly like any LoRA loader. Chain them from your checkpoint loader.lora_data(STRING, hidden widget) - you don't type here; the library UI writes the JSON array of selected LoRAs with per-entry strengths into this widget. Because it's a normal widget, the selection rides along when you save or share the workflow.
Outputs: MODEL and CLIP wire into your sampler just like a stock loader's. active_loras_info (STRING) is a comma-separated readout of what actually applied (name (0.8), ...) - informational, handy to feed a text node if you want the applied stack visible, but nothing downstream needs it. Note that each entry carries a model strength plus a clip strength that defaults to the model value.
Installing it
ComfyUI Manager (search "Visual LoRA Loader"), or the manual route:
cd ComfyUI/custom_nodes
git clone https://github.com/DarthNeurad/ComfyUI-Visual-LoRA-Loader.git
Then restart ComfyUI completely. There's no requirements.txt - the backend only leans on requests and aiohttp, both of which ship with ComfyUI, so no pip step and no version fights. Python 3.10+, MIT licensed.
The gotchas that will bite you
- NSFW auto-filter. Anything with "nsfw" in its name or path is hidden by default. Type "nsfw" in the search field to surface it - a real "why is half my library missing" moment.
- Global vs per-node. Metadata (names, trigger words, covers) is shared across every node instance; tabs and the active/on selection are per-node and travel when you copy the node. It's the right split once you know it's there.
- Silent skips. If a LoRA file is missing or the path is wrong, the node logs
[Neurad] Load errorto the console and carries on - no error popup. If a LoRA "does nothing," check the console, then the trigger word, then base-model compatibility (a Flux LoRA will never work on SDXL, and anime LoRAs often want CLIP skip 2). The node gives you the trigger words, but it can't fix the prompt or the base. - Clear Cache is hidden. Hover the button in the modal's top-left for a second and it turns red and clickable; it wipes the server-side backups, so use it with intent, not curiosity.
Open the library from the node, click cards to activate, set strength, close the modal. For anyone with a big unweildy LoRA collection, it's the closest thing to LoRa Manager's browser that lives inside the graph instead of next to it.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | — | |
| clip | CLIP | — | |
| lora_data | STRING | [] | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| MODEL | MODEL | — |
| CLIP | CLIP | — |
| active_loras_info | STRING | — |