StringArea
A real multiline text box for ComfyUI
- STRING
ComfyUI's stock STRING widget is a single line, which is fine for a filename and painful for anything longer - a paragraph of notes, a JSON blob, a batch of items you want one per line. StringArea is the fix: it's a multiline textarea that outputs a STRING, nothing more complicated than that, and it's one of the more quietly useful nodes in this pack because so many other nodes need exactly this kind of input.
What it is
There's no mechanism to explain beyond what it looks like: a resizable multiline text box. It doesn't parse, validate, or transform what you type - whatever's in the box comes out as a single STRING, newlines and all. The value is entirely in the editing experience: writing or pasting several lines into a box you can actually see and resize, instead of one cramped single-line field.
Inputs and outputs that matter
value(required, multiline, default empty) - the text box itself. That's the whole node.
Output: a single STRING - the box's contents, unchanged.
Where it actually earns its place
On its own this looks almost too simple to write about, but it's the standard front end for a few other nodes in the same pack. Pair it with SplitStringToList (set method to LF) to write one item per line and get a clean list out - that's a much more comfortable way to enter a batch of prompts, tags, or URLs than typing them all onto one comma-separated line. It also works well as the source for LoadJsonStrToList or GetValueFromJsonObj if you want to paste a JSON blob straight into a workflow for testing, without wiring up a file-load node first. And because LoadImageFromURL/LoadMaskFromURL in this same pack expect one URL per line, StringArea is the natural place to paste a batch of image URLs before splitting or feeding them in directly.
Installing it
Through ComfyUI Manager, search comfyui-easyapi-nodes. By hand:
cd ComfyUI/custom_nodes
git clone https://github.com/lldacing/comfyui-easyapi-nodes.git
cd comfyui-easyapi-nodes
pip install -r requirements.txt
Restart ComfyUI. Nothing to download, no dependencies specific to this node - it's a widget wrapper.
Where people get tripped up
There's not much to break here, which is the appeal, but two small things: first, the output is always a plain STRING, so if the node you're wiring it into expects a specific typed value (an INT, a LIST, a JSON object) rather than raw text, you need a conversion node in between - SplitStringToList, LoadJsonStrToList, or ConvertTypeToAny from the same pack, depending on what you're actually holding. Second, if you're building an API-format export of the workflow, remember StringArea's contents get baked into the exported JSON as a literal default value - if you want a caller to override that text per-request rather than reusing whatever you last typed into the box, you need to make sure the field is exposed as an overridable input in the API payload, not just left as the node's static default.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| value | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| STRING | STRING | — |