Ship live translations
with confidence

A production-ready full-stack Node.js + React application for seamless EN↔RU↔UK live auto-detect translation with voice synthesis.

Installation

Set up the project locally with Docker, Redis, and LibreTranslate in minutes.

Architecture

Understand the STT → Translation → TTS pipeline and real-time Socket.io communication.

Live Translation

Stream from YouTube or microphone with automatic EN/RU/UK language detection and voice output.

📜

Biblical Simulator

Test the full pipeline with AI-generated biblical passages in King James, Church Slavonic, or Ukrainian style.

🎤

Voice Training

Clone custom voices from microphone recordings or YouTube videos using ElevenLabs IVC.

💡
Looking for examples?

Check the Quickstart guide for a complete walkthrough, or jump to the API Reference for endpoint documentation.

Settings Reference

Setting Range Default Description
stability 0.0 – 1.0 0.5 Controls variability of voice output; lower = more expressive & dynamic, higher = more stable & consistent.
similarity_boost 0.0 – 1.0 0.75 How closely the voice adheres to the original voice clone; higher = more similar to target voice.
style 0.0 – 1.0 0.0 Exaggeration of voice style; 0 = neutral, higher = more theatrical & expressive delivery.
speed 0.5 – 2.0 1.0 Playback speed; 0.5 = half speed, 2.0 = double speed, 1.0 = normal.
use_speaker_boost true | false true When enabled, applies speaker boost optimization for improved voice clarity & presence.

Configuration File

Default TTS settings are defined in application.yaml:

elevenlabs:
  api_key: "${ELEVENLABS_API_KEY}"
  default_voice_id: "kxj9qk6u5PfI0ITgJwO0"
  tts_model: "eleven_multilingual_v2"
  tts_settings:
    stability: 0.5
    similarity_boost: 0.75
    style: 0.0
    speed: 1.0
    use_speaker_boost: true
  stt_model: "scribe_v2_realtime"

Runtime Behavior

TTS settings are loaded from application.yaml at startup, then can be overridden via the admin REST API. Changes persist in Redis and apply immediately to all new TTS requests. The ElevenLabs SDK uses these settings when synthesizing audio via textToSpeechStream() and textToSpeechBuffer().