A few lines of JSON. A head that talks and emotes.
Save an avatar document, get a key. Ask for its .glb and your app plays a head that blinks, looks around and lip-syncs; ask for its .png and it goes anywhere an image goes.
npx minimoji loginRather use the browser? Get an API key or read the docs.
POST /avatars
{
"seed": 2001,
"head": "round",
"skin": "porcelain",
"hair": { "style": "long", "color": "mint" },
"brows": "flat",
"nose": "dot",
"extra": { "style": "hoops", "color": "gold" },
"blush": false,
"eyes": { "color": "blue" }
}→ { avatarKey, glb, png }
Four commands to a talking head
Sign in, make one, see it, and teach your coding agent the SDK. In your app’s folder, npx minimoji init writes a publishable key where the app reads one.
npx minimoji loginSigns this terminal in: approve the code in your browser.
npx minimoji generate "red curls, round glasses"Makes a Mini avatar from words and prints its avatarKey.
npx minimoji preview <avatarKey>Opens it on minimoji.com/preview, talking.
npx minimoji skills addTeaches your coding agent the SDK.
iOS & macOS
A Swift package, for partners by request: plain Swift on Metal, no web view and no third-party code. 1.8 MB to play a head.
MinimojiMetalHeadView(document: try await service.head(forKey: key))Web
React and three.js, by request, or one script with no build step. The heads on this site are drawn by it.
<MinimojiHead avatar={doc} anchor={ref} />Everywhere else
The .glb plays in any glTF renderer; the .png goes in bots, widgets, notifications and email.
GET /avatars/<key>.png?size=256
