Skip to content
Blobz docs

Generated customization

Customize frames, palettes, and individual generated choices while preserving deterministic output.

Frames

<Avatar name="Janaki" frame="rounded" />
<Avatar name="Janaki" frame="circle" />
<Avatar name="Janaki" frame="square" />
Blob avatar for janakiBlob avatar for janakiBlob avatar for janaki

Palettes

The first colour is the background and the second is the blob body:

<Avatar name="Janaki" palette={["#eef9ff", "#38bdf8"]} />

Any six-digit hex colours are accepted by the renderer. Keep sufficient contrast between the body, the generated ink colour, and the surrounding interface.

Pin only selected features

choices uses zero-based indexes. Every omitted or invalid field falls back to the seed-generated choice, so you can pin one feature without taking ownership of the entire face.

<Avatar
  name="Janaki"
  choices={{
    shapeI: 16,
    eyeI: 6,
    mouthI: 10,
    browI: 5,
  }}
/>
Blob avatar for janaki
FieldValid indexesMeaning
shapeI0–2021 blob shapes
eyeI0–1314 eye styles
lookI0–4centre, left, right, up, down
mouthI0–1011 mouth styles
browI0–89 brow styles
gapI0–2close, medium, wide eye spacing
tiltI0–14body tilt from −14° to 14° in 2° steps
faceTiltI0–24face angle from −12° to 12°
dxI0–4horizontal face position from −2 to 2
dyI0–2vertical face position from −1 to 1
flip0–1normal or mirrored

Indexed overrides are compact and useful for procedural systems. For stored user choices or human-edited configuration, prefer the semantic CustomAvatar definition.