Zattoo supports its direct-to-consumer service and white-label apps across many devices, operating systems, countries, and customer brands. Separate platform teams and codebases duplicated work, made release schedules uneven, and created small differences in the user experience. One pause-button behavior once required more than ten people from frontend and backend teams to align.
From Native to React Native for TV The Zattoo Case
Speakers
Zattoo’s Bogdan and Pavo discuss their move from native apps to React Native for TV, joined by Callstack’s host and Ada, Head of Growth at CloudCast, during a webinar streamed from Warsaw.
After finding limits in PWAs and WebViews, Zattoo revisited cross-platform options but initially stopped at a small proof of concept. In late 2022, Amazon invited Zattoo to build for Vega OS, whose primary app development approach was React Native. Two engineers tested whether they could reuse web projects, shared JavaScript logic, and infrastructure in the company’s monorepo while making login and streaming work.
Zattoo added a universal TV project to its monorepo and reused configuration, translations, and business logic. The team starts with abstract files and uses platform-specific overrides when behavior differs, such as for input fields. It reported roughly 95 to 99 percent code sharing for UI functionality, while playback and some integrations remain platform-specific.
Zattoo moved from platform teams toward stream-aligned teams for content and search, playback, and sign-up and accounts, supported by platform and infrastructure work. Teams combine engineers with web, Android, and Apple experience; the company estimated losing 10 to 15 percent of engineers during the transition. It adapted Playwright tests for multiple platforms and now ships dozens of app variations every two weeks, with platform-specific rollouts.
The first React Native release lacked some features, and user ratings dipped when features used by a small share of customers were left out. The team used telemetry to find Android device-specific playback issues among more than 800 device types, then iterated on performance; it reported faster TV guide behavior than in the previous native app. React Native apps were live on Android TV and Vega, with Fire TV, tvOS, and web-based smart TVs in progress; mobile apps were a future challenge.
Takeaways
- Pilot the cross-platform approach on a real product path, and test critical flows such as login and playback early.
- Reuse platform-neutral logic first, then isolate device differences with explicit platform overrides.
- Bring experienced React Native support into the team and retain native expertise for platform-specific work.
- Invest early in shared tooling, automated tests, and device telemetry to shorten feedback loops and find issues across hardware.
- Track feature parity and user feedback during migration; low usage numbers can miss features that matter strongly to a small group.
Mentioned in this talk
Search inside this talk
What was claimed 12
- built
“they were already working on this OS”
0:20inWhy Amazon Built a React Native OSYouTube Verified2 sources· Talk
- role at
“I'm Head of Growth at CloudCast”
YouTube Unverified1 source· Talk
- useswhite-labels applications with customer branding and content
“For white-label customers, we can white-label pretty much any of our applications.”
YouTube Unverified1 source· Talk
- uses
“Amazon was building a new operating system with React Native as the primary way to develop applications”
YouTube Unverified1 source· Talk
- usesZattoo uses React Native
“we decided to make yet another project inside this monorepo”
YouTube Unverified1 source· Talk
- integrates with
“The same was true for Sentry: we could compare crash-rate reporting”
YouTube Unverified1 source· Talk
- uses
“The same was true for Sentry: we could compare crash-rate reporting because the data was unified.”
YouTube Unverified1 source· Talk
- usesZattoo uses Playwright MCP
“we took our Playwright tests because we love Playwright and already had a lot of coverage with it”
YouTube Unverified1 source· Talk







