Dynamic App Content: An Introduction to Truly Native Apps
Article Summary
Zalando faced an impossible triangle: daily content updates, premium native UX, and distributed teams without native experience. Their solution? Server-driven UI before it was cool.
Back in 2016, Zalando's engineering team built Truly Native Apps (TNA), a custom framework that renders JSON layouts as native components across iOS, Android, and Windows Phone. This predates many modern server-driven UI approaches and solved real production challenges at scale.
Key Takeaways
- Custom JSON format describes UI elements rendered natively on three platforms
- Flexible Layout Kit renders without JavaScript VM (lighter than React Native)
- App Layout Service aggregates content from CMS, ads, brand shops in real time
- Decouples release cycles: app updates in weeks, content updates daily
- Content teams avoid learning native development while maintaining premium UX
Zalando built a lightweight, server-driven UI system that delivers daily content updates through native rendering across three mobile platforms without requiring JavaScript.
About This Article
Zalando's home screen needed input from multiple teams who didn't have native development experience. They also wanted to keep a premium look while pushing out updates every week, which wasn't enough time for daily content changes.
Zalando built a declarative JSON UI language that the Flexible Layout Kit SDK could process on Android, iOS, and Windows Phone. The App Layout Service pulled content from the CMS, ads, and brand shops into different slots.
Content providers could update home screen elements every day without knowing native development or waiting for app releases. The system rendered everything natively without needing a JavaScript virtual machine.