Mobile

Zuzu: Real-Time Mobile Livestreaming

Overview

Zuzu is a cross-platform livestreaming app built to showcase NUS Technology’s expertise in real-time mobile development, WebRTC video streaming, and resilient session management.

Users can start a livestream directly from their phone or discover and watch active streams from other users. While watching, they can chat, send heart reactions, and see viewer activity update in real time.

Overlapping squaresWhat We Built

A Complete Host-and-Viewer Livestreaming Experience

Zuzu combines both hosting and viewing experiences within a single iOS and Android app. Any signed-in user can start a stream or join another user’s broadcast.

Hosts can preview their stream before going live, switch between front and rear cameras, mute the microphone, and end the broadcast. Viewers can browse a live-updating stream list, join broadcasts, send messages and reactions, and see the current viewer count.

Behind these workflows, the app manages livestream state, connectivity changes, recovery, and session cleanup for both hosts and viewers.

image
Overlapping squaresTech & Architecture

A Cross-Platform Architecture Built for Real-Time Communication

The mobile app uses a shared Flutter codebase across iOS and Android, supported by a Node.js backend and LiveKit as the real-time communication layer.

Host and viewer sessions have separate lifecycle management. The host flow covers preview, media setup, publishing, reconnection, stream termination, and cleanup. The viewer flow manages stream discovery, joining, media subscription, host availability, interaction, reconnection, and cleanup.

LiveKit handles video and audio publishing and subscription, stream discovery, participant presence, viewer counts, chat messages, reactions, and other live events.

Tech diagram

Technology Stack

  • Mobile: Flutter and Dart

  • State management and dependency injection: GetX

  • Backend: Node.js, Express, and TypeScript

  • Data access: Prisma

  • Real-time communication: LiveKit

  • Media streaming: WebRTC

  • Supported platforms: iOS and Android

Overlapping squaresTechnical Highlights

Engineering for Reliable Mobile Livestreaming

Green tick circle

Real-time streaming with LiveKit and WebRTC: Hosts publish video and audio directly from their mobile device, while viewers subscribe to those streams in real time.

The same LiveKit-based architecture also powers stream discovery, chat, heart reactions, participant presence, and viewer counts, keeping the core livestream experience within a unified real-time layer.

Green tick circle

Dedicated host and viewer lifecycles: Hosting and viewing introduce different states and failure conditions, so Zuzu manages them independently.

Host lifecycle handling covers preview, publishing, reconnecting, ending a stream, and cleanup. Viewer handling covers discovery, subscription, host state, reconnection, and leaving the session.

This separation makes livestream state easier to manage when connectivity or application state changes unexpectedly.

Green tick circle

Fast host-offline detection: Zuzu uses a heartbeat mechanism over LiveKit Data Channels to help viewers determine quickly when a host is no longer available.

This reduces reliance on connection timeouts and allows the viewer interface to react sooner when a broadcast has effectively ended.

Green tick circle

Stream recovery and device transfer: Active stream state and device identification are used to support livestream recovery and device-transfer scenarios.

This allows the application to distinguish between starting a new broadcast and recovering or continuing an existing livestream session after an interruption.

Green tick circle

Mobile network resilience: Zuzu accounts for common mobile connectivity and application lifecycle conditions, including:

  • reconnection after network interruptions

  • debounce handling for temporary offline states

  • foreground and background transitions

  • recovery when the app resumes

  • wakelock while actively broadcasting

Explore More Labs

ClearHear: Real-Time Offline Live Captioning
Mobile

ClearHear: Real-Time Offline Live Captioning

ClearHear is a cross-platform mobile application built to showcase NUS Technology's expertise in on-device AI, real-time speech recognition, and responsive mobile application development.

The app captures microphone audio and generates live captions entirely on the device, without requiring an internet connection. As users speak, captions appear immediately, update continuously with partial recognition results, and finalize in real time. Sessions are stored locally, can be searched and exported, and are automatically summarized using an on-device language model.

The primary engineering goal was simple: deliver offline captions that keep pace with live speech while maintaining a polished, production-quality mobile experience.

Need a Similar Solution?

Let’s discuss your operational challenges and build a solution that fits your business.

Schedule a Strategy Session
CodeMonitorGrid with light