1.9 KiB
title, emoji, colorFrom, colorTo, sdk, app_port, pinned, short_description, hf_oauth
| title | emoji | colorFrom | colorTo | sdk | app_port | pinned | short_description | hf_oauth |
|---|---|---|---|---|---|---|---|---|
| HF Realtime Voice | 🎙️ | indigo | purple | docker | 7860 | false | Voice chat over WebSocket against a HF speech-to-speech | true |
Realtime voice client
Browser voice-chat UI and FastAPI server for an OpenAI Realtime-compatible speech-to-speech backend. The browser streams microphone audio over WebSocket, plays assistant audio, displays transcripts, and offers Spanish controls.
The complete usage guide covers local startup, connection modes, Docker, settings, and usage limits. See the documentation index, architecture, and change history for implementation details and history.
Assistant replies render Markdown with Marked and DOMPurify. Their pinned,
checked-in browser modules are served from vendor/, including upstream
licenses, so the UI does not require a CDN or a Node.js runtime. To refresh the
browser dependencies with Node.js 20 or newer after updating package.json:
cd s2s-client
npm install --ignore-scripts
npm run vendor
Commit package-lock.json and the generated vendor/ files together. Existing
locked versions can be restored with npm ci --ignore-scripts.
Build from the repository root so the container includes the documentation:
docker build -f s2s-client/Dockerfile -t s2s-client .
FastAPI's API explorer remains at /docs. Project documents are served as files below
/docs/client/, /docs/speech/, /docs/adr/, /docs/examples/, and
/docs/proposals/. The historical /project/ and /public/docs.html URLs
redirect to the retained architecture proposal. Markdown remains source text;
documentation directories are not browsable rendered pages. Start from the
repository documentation index or request /docs/README.md explicitly.