Remote Compose looks promising
Article Summary
Costa Fotiadis from Just Eat Takeaway just tested Google's Remote Compose in production scenarios, and the results are surprisingly good. Could this alpha library finally kill WebViews for server-driven UI?
Just Eat Takeaway handles millions of users across global markets and needs to update UI components like offer cards and promo banners without app releases. Their senior Android engineer put Remote Compose through its paces, building a proof-of-concept that serializes Compose UI into binaries served over the wire and rendered natively.
Key Takeaways
- Remote Compose serializes UI nodes to binary format for native rendering without app releases
- Animations work out of the box with time-based expressions encoded in static files
- Design system components replicate cleanly but custom fonts require low-level API workarounds
- One document adapts to any screen density and size through runtime re-measurement
- Android-only support is the biggest blocker, no multiplatform despite alpha promise
Remote Compose delivers native performance and design system fidelity for server-driven UI, but lacks multiplatform support and has rough edges around fonts, images, and adaptive layouts in its current alpha state.
About This Article
Costa Fotiadis found that RemoteDensity.Host crashes when layouts get complex and use spacedBy, clip, and RemoteRoundedCornerShape modifiers together. This breaks adaptive layouts across different device densities.
The team worked around the density issues by setting density constants at capture time instead of using runtime expressions. The downside is that layouts no longer adapt properly across different screen densities.
When documents were captured at a fixed 160 dpi density, they appeared too small on modern high-density screens. This shows the tradeoff between keeping things stable and supporting adaptive rendering in the current alpha version.