Skip to main content

Real-Time Voice Translation with Falaí

company

Real-Time Voice Translation with Falaí

At bosq, we enjoy turning complex ideas into simple, focused, real-world-ready products. Falaí was born from that same drive: a simultaneous voice translator built for in-person conversations between two people who speak different languages, with an interface reduced to a single gesture, rotate, hold, and speak.

What Falaí Is

Falaí is an open-source real-time voice translation app designed for face-to-face conversations between two people. The entire experience revolves around a single dial on the screen: the user selects a language by rotating the control, holds to speak, and the translation comes out as audio in the other language, no extra buttons, no technical panels, and no jargon like "source" or "target" getting in the way.

The project was built with Vite, React, TypeScript, Tailwind CSS, Framer Motion, and the browser's native WebRTC. The final build is fully static, just HTML, CSS, and JavaScript, with no backend, no API routes, no serverless functions, no database, no authentication, and no analytics.

Why We Built This at bosq

At bosq, our approach combines clarity of scope, incremental execution, and verifiable deliverables. Falaí is a concrete example of that philosophy in action: how do you deliver simultaneous voice translation with the smallest possible technical footprint, no key custody, no proprietary servers, no friction for the end user?

Rather than treating AI as a "magic" layer buried inside a heavy stack, we prefer designing products where every architectural decision has a clear purpose. In Falaí, that translates into a browser-only architecture where the browser communicates directly with OpenAI's Realtime API, no intermediaries.

Browser-Only Architecture and BYOK

Falaí adopts the BYOK (Bring Your Own Key) model: the user provides their own OpenAI API key directly in the browser, and all usage costs are billed to that key. This is a deliberate choice with meaningful implications:

  • The key lives in memory only.
  • It is never saved to localStorage, sessionStorage, or cookies.
  • It never passes through Falaí's servers, because Falaí has no servers.
  • It is wiped when the page is refreshed or closed.

The browser connects directly to OpenAI using navigator.mediaDevices.getUserMedia, RTCPeerConnection, and the oai-events data channel for caption deltas. Translated audio is played back through an <audio autoplay /> element, and the model used in the MVP is gpt-realtime-translate, purpose-built for real-time speech-to-speech translation.

The Conversation Dial: Interface as Product

One of the core elements of Falaí is the Conversation Dial. The control displays the active language, and interaction happens through two gestures: drag horizontally to rotate the dial and switch languages, and hold to speak. The current direction is shown clearly and directly, for example, Português → English.

There are no separate buttons for "Person A" and "Person B." The main interface uses no terms like source, target, input, or output. This reduction is intentional: the product is a voice interpreter, not a technical playground. The simplicity of the screen is precisely what makes it possible to use the app in the middle of a real conversation without breaking the flow of dialogue.

PWA and Static Distribution

Falaí includes a manifest.webmanifest, an icon, and a static service worker at public/sw.js. After the build, the dist/ folder can be deployed to any static hosting provider, Netlify, Vercel static, Cloudflare Pages, GitHub Pages, or any CDN, and the app can be installed as a PWA with microphone access over HTTPS.

This decision follows the same logic as BYOK: zero infrastructure, zero recurring cost, zero custody of user data. The app is literally a set of static files served by a CDN, and each user runs their own session directly from the browser.

What This Project Demonstrates

More than a translator, Falaí showcases a construction pattern we consider genuinely valuable:

  • Browser-only architecture when the use case allows for it;
  • BYOK as a real alternative to third-party key custody;
  • Aggressive interface reduction down to the essential gesture;
  • Direct use of realtime APIs without reinventing intermediary layers;
  • An open-source foundation ready for evolution, forking, and experimentation.

This pattern can be applied to many other scenarios: specialized voice assistants, field copilots, accessibility tools, travel apps, and any situation where conversational latency matters more than backend sophistication.

Limitations and Production Considerations

Falaí is, by design, an MVP. Without a backend, there is no way to hide a default key inside the app, so BYOK is the natural choice, and users should generate a dedicated key for Falaí with appropriate limits and permissions. Real-world compatibility depends on browser support, microphone availability, HTTPS, and OpenAI's current policies for direct browser calls. iOS Safari and Android Chrome should be tested on physical devices.

For a larger-scale production scenario, the more secure architecture involves a minimal backend to generate ephemeral client secrets and avoid exposing keys in the browser. This version deliberately opts out of that in order to keep the app publishable as a static site/PWA with no infrastructure cost. The upgrade path is clearly documented in the README itself.

Explore the Project

If you want to try Falaí, study the browser-only architecture, or use this codebase as a starting point for a real-time voice product, the repository is worth exploring:

If your company is looking to turn complex interactions into simple, focused products, with the right architecture for the use case, reach out to bosq. We build modules, copilots, automations, and pipelines that move from concept to real-world operation.


Tags: #VoiceTranslation #ArtificialIntelligence #OpenAI #OpenSource #BYOK #BrowserOnly #PWA #ReactJS #TypeScript #WebRTC #SimultaneousTranslation #ViteJS #TailwindCSS #FramerMotion #FrontendArchitecture #VoiceApp #RealtimeAPI #WebDevelopment #Bosq #Falai