Ino String To Alphabetic String
Turn any string into a stable, letters-only ID
- string
Ever need a short, filename-safe, letters-only key derived from some arbitrary string - a Civitai model ID, a seed, a URL - and found yourself writing a hashing routine inside a workflow? Ino String To Alphabetic String is that routine as a node. It hashes whatever string you feed it and emits a fixed-length, lowercase-a–z identifier that's deterministic: same input in, same output out, every single time.
It's part of the ComfyUI Ino Nodes pack (nobandegani/ComfyUI-InoNodes).
How it works
The mechanism is simple and worth knowing, because it explains everything about the output:
- It takes the SHA-256 hash of the input string.
- Base-32 encodes that digest.
- Maps the encoded characters onto the alphabet
a–z(digits become letters), so the result contains only letters. - Truncates to your chosen
length.
So mjp043n85se4z (the default input, which looks suspiciously like a Civitai ID) becomes an 8-letter string by default. Bump length up to 64 for a longer key - the input field ranges from 1 to 64. Two inputs, one string output.
Why you'd reach for it
Two properties make it worth having. Deterministic: run the same model ID through it in five different workflows and you get the same key, so it works as a stable naming scheme. Letters-only: the output is safe in contexts that reject digits or special characters - a filename component, a URL slug, an identifier in a system with strict character rules.
It's a niche tool, and the honest note is that for most people the "alphabetic-only" requirement never actually comes up - a plain hash or the pack's other string ops cover you. But the moment you're building a naming convention across automated runs (batch folders, S3 keys, dataset labels), a stable 8-letter slug from a messy input is quietly very convenient. It's also not reversible - it's a hash, not an encoding, so don't expect to recover the original string from it.
Install
# ComfyUI Manager: search "ComfyUI Ino Nodes", install, restart
# or manually:
cd ComfyUI/custom_nodes
git clone https://github.com/nobandegani/ComfyUI-InoNodes.git
cd ComfyUI-InoNodes
pip install -r requirements.txt
Restart ComfyUI after. No models, no services - requirements.txt installs the pack's core dependency inopyutils. The pack runs on ComfyUI's V3 schema, so keep ComfyUI current (v0.18.1+); and the README's cd comfyui_ino_nodes is a typo for the ComfyUI-InoNodes folder.
If your keys come out shorter than you set, that's expected at the edge - the truncation happens after hashing, so length is a cap, not a guarantee of fresh entropy beyond the hash's range. For the intended use (stable IDs from arbitrary input) it's fine; just don't use a tiny length if you need collision resistance across thousands of items.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| input_string | STRING | mjp043n85se4z | — |
| length | INT | 81–64 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| string | STRING | — |