While the engineering community is excited about adopting Jetpack Compose, in reality, we all have existing codebases that rely on a legacy UI stack.
In this talk, I will share how we designed a Jetpack Compose architecture at Turo that provides seamless integration in the existing fragment-based codebase. It is now available as Nibel - an open-source navigation library.
I will cover how we leveraged the power of Kotlin Symbol Processing (KSP) API to build an abstraction over the navigation that enables easy multi-module navigation out-of-the-box and covers the following navigation scenarios:
• fragment to compose
• compose to compose
• compose to fragment