Skip to content
← cd ../projects
shipped2024·tool⌘ PINNED

Polskie Radio — national broadcaster app

Mobile engineer (playback + native)

React NativeTypeScriptKotlinSwiftCarPlayAndroid AutoChromecast
PROBLEMProblem

The Polish national broadcaster needed one app that plays live radio and on-demand episodes, handles downloads offline, and hands off cleanly to car head units and Chromecast. Existing stacks fragmented those surfaces across three codebases.

APPROACHApproach

Custom playback service written in TypeScript on top of Kotlin + iOS native modules. An event-driven bus sits between the UI and native side. Two state machines drive the whole thing: one for playback (idle → buffering → playing → paused → error), one for background downloads (queued → downloading → paused → complete → failed). CarPlay, Android Auto, and Chromecast integrate behind a single abstraction.

ARCHITECTUREArchitecture
[RN UI] ⇄ [Event Bus] ⇄ [Playback FSM] ⇄ [Native: Kotlin / iOS]
                       ⇄ [Download FSM] ⇄ [Cast · CarPlay · AA]
RESULTResult

Shipped to production. Stable playback across phone, car, and TV. Download queue survives app kills and OS-level process death. Cut per-platform playback code by roughly 60%.