Tier 2 of talking avatars: they now speak out loud with lips synced to the words.
Added
cast-avatar/speak—speak(target, text, opts?)readstextwith the browser's native Web Speech API (no dependency) and flaps the mouth of an avatar rendered withanimate: 'talk'in time with it;stopSpeaking(target?)cancels. Returns aPromisethat resolves when speech ends. SSR-safe (a no-op with no speech engine) and respectsprefers-reduced-motion(speaks, but skips mouth motion). The mouth rests still once speech ends.<cast-avatar>gains a.speak(text, opts?)method and now accepts ananimateattribute (so<cast-avatar animate="talk">is speakable).
🤖 Generated with Claude Code