The fastest path is non-streaming lipsync: give the API an audio URL and an avatar, get back a rendered MP4 URL. No streaming, no playback code.
1

Get an API key

Create one in the dashboard. Sandbox keys (tic_test_…) are free; production keys are tic_live_…. See Authentication.
2

Install the SDK

npm install realtime-avatar
3

Lipsync an audio URL

import { RealtimeAvatarClient } from "realtime-avatar";

const client = RealtimeAvatarClient.platform({
  apiKey: process.env.REALTIME_AVATAR_API_KEY!,
});

const { url, durationSeconds } = await client.lipsync({
  audioUrl: "https://example.com/speech.mp3",
  avatarId: "ava_…", // an avatar you created — or pass portraitUrl
});

console.log(url); // public MP4 URL

Next: live, streaming turns

For real-time conversation, stream a turn and play it on a canvas. See Realtime turns and Web playback.

Don't have an avatar yet?

Create one from a portrait image or a source video first.