Bring your apps, games and agents to life with Mini avatars.

A Mini is a 3D chibi avatar built from a few lines of JSON. Use one as a person in your product, a character in your game, or the face of an agent. Web and Expo today; Swift coming.

Looks, talks, reacts, idles.

Give it audio or text and it talks; give it a feeling and it reacts; point it somewhere and it looks; leave it alone and it idles. Nothing to animate by hand. Hover one and it notices you; click and it does it again.

  • looks

    Eyes lead, the head follows. Point it at a cursor, a speaker, or a spot.

  • talks

    Procedural jaw from audio, or a viseme timeline from your TTS.

  • reacts

    Happy, surprised, laugh, smug, sad, angry — blended, not switched.

  • idles

    Blinks, breathes, glances around. Leave a Mini alone and it stays alive.

Any Mini, from JSON.

Describe a Mini in a small document — one of about two trillion. The same document always rebuilds the same Mini, so it travels: a profile row, a URL, a body on the island.

Click any value and pick another.

{
  "v": 1, "seed": ,
  "head": , "skin": ,
  "hair": { "style": , "color":  },
  "eyes": { "color": , "shape":  },
  "brows": , "nose": ,
  "facialHair": ,
  "glasses": { "style": , "color":  },
  "hat": { "style":  },
  "ears": { "style":  },
  "extra": { "style":  },
  "blush": , "freckles": 
}

Every kind of face.

Skins, hair, beards, glasses, hats, earrings, headphones, freckles — everything composes with everything else. Move the cursor; they all follow it.

PreviewIn the two demos below, not the SDK.

And a body.

The same JSON, a whole figure: an outfit from its palette, a rig that walks, runs and jumps, and gestures from a word — wave, shrug, dab. Heads for a chat bubble, bodies for a world; plenty of apps only need the head.

Three figures, three gestures, each on its own clock.

Take one for a spin.

Island and course need a keyboard for now; on a phone, try the party.

In your UI, not in a canvas.

Minis anchor to elements in your layout — a chat bubble, a player card, a contact row — and follow them through scroll and resize. No package at all? The HTTP API hands any stack a .glb and a .png.

Swift

Now

MinimojiKit — SwiftUI heads on Metal or RealityKit, the editor model and the API client. iOS 18.

Web

Now

@minimoji/react — one <MinimojiStage>, heads anchored to any element. React 19, three.js.

Expo

Coming

The same components on iOS and Android through react-three-fiber and expo-gl — a spike today.

Get an API key.

Sign in, mint a key, save an avatar, show it anywhere — the API is open today. The React package ships on request; leave an email for that.