II.
Framework JSON
Structured · liveframework:talkinghead-js
TalkingHead.js json
Inspect the normalized record payload exactly as the atlas UI reads it.
{
"id": "framework:talkinghead-js",
"_kind": "Framework",
"_file": "domain/frameworks/realtime-avatar-frameworks.yaml",
"_cluster": "domain",
"attributes": {
"displayName": "TalkingHead.js",
"homepageUrl": "https://github.com/met4citizen/TalkingHead",
"belongsToLanguageId": "language:typescript",
"category": "realtime-avatar-rendering",
"license": "MIT",
"selfHostable": true,
"rendering": "webgl-threejs",
"avatarFormat": "ready-player-me-glb",
"visemeSets": [
"oculus",
"arkit"
],
"description": "Browser avatar renderer: renders a Ready Player Me GLB on Three.js with a\nready-made control API for posture, expression, gaze, gesture and visemes\n(52 ARKit + 15 Oculus). Recommended renderer for the realtime animated-avatar\nagent harness, run inside the kradle headless-Chromium Jitsi sidecar; its\ncanvas is captureStream()'d and published as the agent video track. Ship your\nown licensed RPM avatar (the sample is CC BY-NC). 2D alternative: Live2D via\npixi-live2d-display (proprietary Cubism Core). Server-side fidelity upgrade:\nNVIDIA Audio2Face-3D (MIT SDK, audio->blendshapes). See\ndocs/research/realtime-voice-agent-stack.md Part II + Appendix D.\n"
},
"outgoingEdges": [
{
"from": "framework:talkinghead-js",
"to": "language:typescript",
"kind": "belongs_to_language",
"attributes": {}
},
{
"from": "framework:talkinghead-js",
"to": "skill-area:ai-agent-development",
"kind": "used_by_skill_area",
"attributes": {}
}
],
"incomingEdges": []
}