Echo
A chat, voice, and video app with phone-number sign-in and six runtime themes, built on Stream's real-time infrastructure.
- Client
- Personal project
- Year
- 2025
- Role
- Product design, Full-stack engineering
- Stack
- React 19, TypeScript, Express, Stream, Twilio Verify

Echo is a complete communication app: channels with threads and attachments, voice notes, live voice calls, and video rooms. Sign-in is a phone number and a one-time code through Twilio Verify, with tokens issued server-side.
I built it to understand what it takes to ship real-time communication properly: auth, presence, media, and the hundred small states in between.
Theming as a feature, not a toggle
Echo ships six runtime palettes, each tuned for both light and dark appearance. Building them forced the entire UI onto semantic tokens; no component knows its colors, only its roles. Swapping themes touches one provider.
That discipline paid off in the hard surfaces: call screens, message states, and attachment previews all restyle correctly because nothing was ever hard-coded.
