Lona: Scaling Server-driven UI
summary
Airbnb describes a concrete system: a Kotlin-powered DSL that defines a versioned server-driven UI spec, generates JSON and JSON schema validation, and builds type-safe artifacts so backends and three clients stay in sync. The team reports moving from ten bespoke systems to modular Lona spec modules, adding runtime checks and property-based tests, and shipping pages that update instantly on Android iOS and web without app-store delays using a Kotlin DSL.
AI-written summary · about
chapters (11)
- 0:00Start
- 3:37Airbnb's DLS
- 4:15Row components
- 6:09Consistency
- 8:39Button Row Title Row
- 12:40Challenges of SDUI
- 14:03Keeping clients in sync
- 15:59Documentation
- 16:50The Lona Spec
- 19:02Backend team using Java
- 30:51Challenges of server-driven UI
related talks
29mUsing server-driven UI to rapidly iterate across platforms
24mUsing Server Driven UI to rapidly iterate on Android and Across Platforms
49mLife is too short to develop only for Android - A journey to Server-driven UI
33mA page out of Server driven UI on Android
35mLife is too short to develop only for Android – A journey to Server-driven UI
50mNeo's Adventure: Leveling Up with Server-Driven UIs
45mNext Level DSLs
37mLeveraging Kotlin to write maintainable UI tests
