Vladimir HlobchastyiSoftware Engineer
Back to work
Case Study
WebRTC calling app

ClaraTalks

A private, realtime emotional-support calling platform built with React Native, WebRTC and on-device speech-to-text.

Role

React Native Engineer

Focus

Realtime audio/video calls, on-device transcription, secure onboarding & identity verification, and calm crisis-safety flows.

Stack

React NativeExpoTypeScriptWebRTCDaily.coSocket.ioWebSocketsWhisper.rnAI / LLMPersonaFirebaseTanStack QueryReanimatedMMKVi18nextZod
Preview & Screenshots
01 / 05
ClaraTalks — image 1
ClaraTalks — image 2
ClaraTalks — image 3
ClaraTalks — image 4
ClaraTalks — image 5

Overview

ClaraTalks is a confidential, realtime support product for iOS and Android. It connects people who need to talk with trained peer listeners ("sisters") over secure audio and video calls. The app spans a full call lifecycle — topic selection, matching and waiting, pre-call, incoming and active calls, and post-call decompression — on top of WebRTC and Daily.co, with Socket.io handling signaling and session state. Sensitive context shaped every decision: a client-side AI agent processes the conversation in real time (live transcription, auto-mute and safety cues) with speech-to-text running on-device via Whisper, identity is verified through Persona, and data is kept in secure storage.

Challenge

Realtime calling is unforgiving — connection setup, permissions, proximity handling, network drops and call state all have to feel instant and reliable. On top of that, the product operates in an emotionally sensitive, privacy-critical context: transcription has to stay on-device, identity must be verified without friction, and crisis situations need clear, calm, fail-safe flows rather than clever UI.

Outcome

A reliable, private support-calling app with a smooth end-to-end call experience, on-device transcription, verified onboarding and dedicated crisis-protocol and immediate-help flows — a product where the engineering stays invisible so the conversation can come first.

Responsibilities

05 areas
01

Realtime calling

Built the full call lifecycle — pre-call, incoming, active and post-call screens — on WebRTC and Daily.co, including permissions, in-call proximity handling and graceful recovery from network changes.

02

Client-side realtime AI agent

Added an on-client AI agent that processes the live conversation in real time — driving live transcription, auto-mute and safety cues — with whisper.rn speech-to-text running entirely on the device to keep audio private.

03

Onboarding & verification

Implemented role- and mission-based onboarding with Persona identity verification and secure storage (expo-secure-store / MMKV).

04

Signaling & session state

Wired Socket.io signaling with matching, waiting/queue and session lifecycle, coordinating server state through TanStack Query.

05

Safety flows

Built crisis-protocol, immediate-help and support-decompression experiences with deliberately calm, predictable UX for high-stress moments.