Overview:
The Compose Destinations library is a KSP (Kotlin Symbol Processing) library that simplifies navigation in Android apps using Jetpack Compose Navigation. It eliminates the need to write complex, non-type-safe, and boilerplate code and provides a simpler and safer way to handle navigation. The library offers features such as typesafe navigation arguments, easy setup of navigation graphs, navigation with results, integration with Accompanist Navigation-Material for bottom sheet screens, deep linking, Wear OS support, and more.
Features:
- Typesafe navigation arguments: Allows for easy declaration and retrieval of navigation arguments, supporting Parcelable, Serializable, Enum, and classes annotated with kotlinx.serialization.Serializable.
- Simple but configurable navigation graphs setup: Provides a straightforward way to set up navigation graphs for your app.
- Navigating back with a result: Enables navigation back to a previous screen with a result in a simple and type-safe manner.
- Getting navigation arguments from SavedStateHandle and NavBackStackEntry: Allows for retrieving navigation arguments in a type-safe way, especially useful in ViewModels.
- Navigation animations: Offers support for navigation animations, including integration with Accompanist Navigation-Material for bottom sheet screens.
- Easy deep linking to screens: Simplifies the process of implementing deep linking to specific screens in your app.
- Wear OS support: Provides support for Wear OS devices starting from version 1.x.30.
- Integration with Jetpack Compose Navigation: Offers all the features and functionalities of Official Jetpack Compose Navigation but in a simpler and safer way.