Files
vocero-client/s2s-client
..
2026-10-05 11:43:34 -03:00

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.