Give your users and agents a cozy, talking face.

Mini avatars lip-sync to any voice and emote along with every word. Press play and watch eight of them talk.

Sound on · 8 voices · under a minute

Preparing the cast…

Conversation transcript
  1. Mini: Okay, team. Where should we go for our first adventure?
  2. Dog: A walk? Count me in!
  3. D.A.S.H.: I vote for the moon. Excellent views. Very questionable snacks.
  4. Alien: The moon? My cousin lives there! Terrible Wi-Fi, though.
  5. Ginger cat: I am supervising this sunbeam.
  6. Mini: That sounds like a no. Any ideas a little closer to home?
  7. Rabbit: Picnic! Race you to the park.
  8. Rafael: A picnic? Now that is a plan I can get behind.
  9. Monkey: Finally. A mission for my bananas.
  10. D.A.S.H.: Mission updated. Park, picnic, bananas. Probability of fun: excellent.
  11. Dog: Let’s go!
  12. Rafael: Then it is settled! I will bring the blanket. Best group chat ever.

Every character speaks with a prerecorded ElevenLabs voice. Captions follow the spoken words; expressions and listener reactions are timed to the recording.

Coming soon

Vibe code your own cast members and avatar parts. Bring them to life with the Minimoji SDK.

Already shipping

Made with Minimoji.

Making music. Hanging out. Saying how you feel. See how a Mini avatar becomes part of the moment.

  • Fizz FM — your avatar sings what you play.
  • Bunch — bring your conversations to life.
  • Minimoji Avatar Demo — give your status a voice.

Actual app screens, recorded with demo interactions. All previews are silent.

  • Fizz FM — Your avatar sings what you play.
  • Bunch — Bring your conversations to life.
  • Minimoji Avatar Demo — Give your status a voice.

How it works.

  1. Step 1: Lip sync

    Auto-synced to lips.

    Lips that follow every word.

    “Wait, did that actually work?”

    Any voice: your TTS, a recording, a live mic. The mouth follows every word.

    0.0 / 7.9s

    Preparing the speaker…

    Full transcript

    Wait, did that actually work? We did it! I knew we could figure it out. Okay, give me one tiny victory dance.

    Recorded with ElevenLabs. Mouth shapes follow the audio; expressions and emotes are timed to the words.

  2. Step 2: Emote sync

    Auto-synced to emotions.

    Faces that feel the moment.

    Tap a moment and D.A.S.H. says it.

    Cue a feeling and the expression, the gesture and the bursts arrive together. Here D.A.S.H. says each one out loud.

    Preparing D.A.S.H.…

    Explore every mood →
  3. Step 3: AI edit · Built-in avatar editor

    Integrate our avatar editor, or build your own.

    AI can edit avatars from photos and prompts.

    Drop the editor into your app and users get a Mini avatar of themselves from a selfie in about a second. Then they tweak every part by hand, or just ask for a change.

    “give me curly red hair”or start from a selfie
    1. 1Selfie in, Mini avatar out — about a second
    2. 2Tap to tweak — skin, hair, glasses, hats
    3. 3AI edit — “give me curly red hair”
    Try the editorIn MinimojiKit today
    Recorded in the iOS Simulator with a generated face; waits for the service are sped up.
  4. Step 4: Coming soon

    Bring your own parts.

    Vibe code your own avatar parts.

    Robots, aliens, creatures or one new hat: your agent writes the parts with Claude Code or Codex, and our player locks them in, so they lip-sync, emote and get a body like every other Mini avatar.

    • Your design, the same lip sync and emotes
    • Plays on web and Swift without new renderer code
    • Mix your parts with ours
    // illustrative — the SDK’s API isn’t final
    export default part({
      slot: "head",
      name: "dome-bot",
      build(kit) { /* your shapes */ },
      face: { mouth: "screen", eyes: "led" },
    })
    Get early access
PreviewIn the demos, not the SDK yet.

Every Mini avatar comes with a body.

The same JSON builds the whole figure: an outfit from its palette, a rig that walks, runs and jumps, and gestures from a word.

Open the body playground

The SDK

Tiny, native, and in your UI.

Mini avatars attach to elements in your layout, like a chat bubble, a player card or a contact row, and follow them through scroll and resize. No game engine and no web view.

1.8 MB
MinimojiKit installed, to play a head on iOS
0
dependencies. Plain Swift on Metal
67 KB
the web engine, gzipped, on top of three.js
~2 MB
a head, cached after its first load

Every Mini avatar is a few lines of JSON, small enough for any agent to write, store and send.

Sizes from a release build of MinimojiKit 9.12. The footprint, measured

Start building

Give your users and agents a cozy, talking face.

Get a key and have a talking Mini avatar in your app today.

Read the docsAdd MinimojiKit or @minimoji/reactGive your agent the skill

The React package ships on request. Leave an email and we’ll send the install.