Eli Hart

Android Platform 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

Eli is a Software Engineer at Airbnb, where he works on the Android Platform team. He’s been heavily involved in Airbnb’s open source projects, including the Epoxy and Mavericks libraries.