2.2 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 backend and retained static client
FastAPI server and retained static voice-chat UI 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 root start_ui.sh now serves the React frontend with
Vite on public port 8420, proxying backend requests here on loopback port
8421. This directory's static UI remains available when FastAPI is run
directly or through the existing Docker image.
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.
The retained static client's 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.