Yvonne Wong

Staff Android Engineer at Airbnb

Talk Title

Trio: Compose Architecture with Mavericks


Paris Room




10:20 > 40 min


on Twitter

At Airbnb, we have developed a framework for Jetpack Compose screen architecture, which we call Trio. Trio is built on our open-source library, Mavericks, and it uniquely maintains navigation state within the ViewModel, co-locating navigation and business logic.

Trio has been refined over the past two years and has been in use in production for over a year, now powering more than 150 screens.

In this talk, we will discuss the challenges of Compose-based architecture and how Trio has addressed these issues. We will explore:
* Type-safe navigation between feature modules
* Storing navigation state in a ViewModel
* Communication between Compose-based screens, including opening screens for results and two-way communication between screens
* Compile-time validation of navigation and communication interfaces
* Testing screens with automated screenshot and interaction tests
* Developer tools created to support Trio workflows

Join us as we share our experience with Trio and demonstrate how it has improved the Android development process at Airbnb.

Speaker Bio

Currently working on the Android Platform team at Airbnb. Previously worked on Android at Cash App, Lyft, and Cyanogen.