Description
A lightweight library to help you navigate in compose with well typed functions.
TypedNavigation alternatives and similar packages
Based on the "Navigation" category.
Alternatively, view TypedNavigation alternatives based on common mentions on social networks and blogs.
-
Compose Destinations
Annotation processing library for type-safe Jetpack Compose navigation with no boilerplate. -
Bubble Navigation
๐ [Android Library] A light-weight library to easily make beautiful Navigation Bar with ton of ๐จ customization option. -
AnimatedBottomBar
A customizable and easy to use BottomBar navigation view with sleek animations, with support for ViewPager, ViewPager2, NavController, and badges. -
Alligator
Alligator is Android navigation library that will help to organize your navigation code in clean and testable way. -
PagerSlidingTabStrip
An interactive indicator to navigate between the different pages of a ViewPager -
Okuki
Okuki is a simple, hierarchical navigation bus and back stack for Android, with optional Rx bindings, and Toothpick DI integration. -
Dual-color-Polyline-Animation
This library will help to show the polyline in dual color similar as Uber. -
Facilis
A sleek, out of the box, easy to understand and use, swipe gesture based Navigational Library for android. -
AndroidBriefActions
DISCONTINUED. Android library for sending and observing non persistent actions such as showing a message; nice readable way to call navigation actions from ViewModel or Activity/Fragment.
InfluxDB - Power Real-Time Data Analytics at Scale
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of TypedNavigation or a related project?
README
TypedNavigation
A lightweight library to help you navigate in compose with well typed functions.
Installation:
You can add this library to your project by just adding the following code to your root build.gradle
allprojects {
repositories {
// ...
maven { url 'https://jitpack.io' }
}
}
Then import the library in your app build.gradle
file.
implementation 'com.github.xmartlabs:TypedNavigation:0.0.2'
Usage:
You just have to define your screens and the arguments they receive:
object Router {
val default = TypedNavigation.E("default")
val sample = TypedNavigation.A3("sample", NavType.StringType, NavType.StringType, NavType.StringType)
}
And after that the library will provide you with the following functions:
To add your screen to the NavHost
:
setContent {
val navigationController: NavHostController = rememberNavController()
NavHost(navController = navigationController, startDestination = Router.default.url) {
composable(Router.default) {
Default(navigationController = navigationController)
}
composable(Router.sample) { a: String?, b: String?, c: String? ->
Sample(a, b, c)
}
}
}
To navigate from one screen to another:
navigationController.navigate(Router.sample.route("a", "b", "c"))
Add deep linking to your screen by setting up the correct path to the url:
val sample =
TypedNavigation.A3("sample", NavType.StringType, NavType.StringType, NavType.StringType,
listOf { a1, a2, a3 -> // a1, a2 and a3 contains the keys for the attributes previously defined
"www.example.com/$a1/$a2/$a3"
}
)
For more examples you can check out our sample app.
About
Made with โค๏ธ by XMARTLABS