A FAMILIAR FACE. A SIMPLE API.
Faces, for
your agent.
One browser SDK. Add a character, give it an expression, and connect it to your AI agent in any web framework.
Live SDK
@allpersonas/coreMAKE IT YOURS
Use this face in your app
import { createFace } from '@allpersonas/core';
export function mountAssistant(host: HTMLElement) {
Object.assign(host.style, { width: '280px', height: '340px' });
const face = createFace(host, {
avatar: "ruby",
expression: "attentive",
});
// Update when your agent's state changes.
// face.update({ thinking: true });
return () => face.destroy();
}A face, in a few lines
The SDK handles the face. Your app decides what to say and how to feel. Call this function with a DOM host, then call its cleanup when the view is removed.
import { createFace } from '@allpersonas/core';
export function mountAssistant(host: HTMLElement) {
host.style.width = '280px';
host.style.height = '340px';
const face = createFace(host, {
avatar: 'ruby',
expression: 'attentive',
});
face.update({ thinking: true });
// When your agent responds:
face.update({ thinking: false, expression: 'joyful' });
// Call the returned function when your view unmounts.
return () => face.destroy();
}One SDK, any framework
Built for your stack
Use your existing model and backend. Core handles rendering and browser speech; your application supplies conversation text and chooses when to call a provider.
This website installs
@allpersonas/core from npm. Its live previews and playground use the same published SDK you install in your own app.All six characters are included. Connect your provider in the playground to see them respond in conversation.