Kaya Music Island (Ravanova Music)

A cross-platform music streaming & creator-discovery app I built end-to-end in React Native. Currently rebranding from Kaya Music Island to Ravanova Music — Android already migrated, iOS rename in App Store review.

Live on iOS & Android 5K+ Android installs v2.3 · React Native
RoleSole Developer
StackReact Native, Expo, REST API
PlatformsiOS · Android
ReleasedAugust 2025
StatusLive · Rebranding to Ravanova Music

What does Kaya Music Island do?

Kaya Music Island — rebranding to Ravanova Music — is a video-first music discovery platform where music lovers watch creator-uploaded performances and follow talented artists from around the world. Creators upload videos, manage profiles, collaborate with other artists, and grow audiences inside the app. The platform combines streaming, social discovery, and creator tooling into a single cross-platform app — built once in React Native, shipped to both iOS and Android stores.

Why build a music streaming app in React Native?

The client needed iOS and Android shipped together inside a tight budget. A native-per-platform approach would have doubled the codebase, doubled QA cycles, and slowed every feature change by a factor of two. React Native gave us one codebase, two stores, and one CI pipeline — with native modules used selectively for the parts that demanded them: video playback, background audio, and in-app purchase.

The harder question was whether React Native could handle video-heavy UX on lower-end Android hardware. Two prototypes confirmed it could — provided we tuned the player module, cached aggressively, and kept the JS thread free of render work during scroll. That validation locked the stack.

How was the architecture put together?

One codebase, two stores

A single React Native codebase deploys to both Apple App Store and Google Play. Expo manages the build pipeline; ejected native modules handle media playback and in-app purchase where the managed workflow can't reach.

Creator tooling

Video upload, profile management, follower system, and direct creator-to-creator collaboration flows — every screen designed for touch first. No web-style hover affordances anywhere.

Video-first UX

Optimised playback with adaptive quality presets, background audio support, and offline-friendly caching. The v2.3 release shipped sound-quality controls that bumped retention.

Brand migration

Coordinated rebrand from Kaya Music Island to Ravanova Music across stores, push topics, deep links, and existing user base — Android live, iOS in review.

App preview

Kaya Music Island app icon
Ravanova Music feature graphic on Google Play

iOS App Store screenshots forthcoming with the Ravanova Music rebrand release.

How was the Kaya → Ravanova Music rebrand handled?

The Android side flipped first. The original package name was preserved to keep existing 5K+ installs intact, so the rebrand happened in-place: new app name in the Play Console, updated feature graphic, refreshed listing copy. Push topics were renamed in two stages — first registering the new topic, then silently migrating live subscribers, then deprecating the old one. Zero churn from existing users.

iOS is more conservative. Apple's review process requires the new name to pass review under the existing bundle ID. The submission is in review at time of writing. Until it clears, the iOS app still shows the legacy name — but the underlying app is the same React Native build.

Tools & technologies

React Native Expo TypeScript REST API App Store Connect Google Play Console Push Notifications In-App Purchase Deep Linking