Have you ever wanted to navigate between two Composables? Do you wish it were as easy as backstack.goTo(SomeScreen(arg1, arg2)) and you would go there?

Good news, because now that seems to be possible with Simple-Stack’s Compose integration — which I consider BETA for now, but nonetheless, it’s possible.

What it looks like

Initial setup and dependencies:

First, you…

I’ve been meaning to write this article in a while.

Hopefully, the following tips and style recommendations (in no particular order) will help you write better Kotlin!

Let’s get on with it, shall we?

For 2 or more constructor arguments, prefer not to keep the properties on the same line as the class name in the constructor definition

class MyClass(
val a: A,
val b: B,

): MyParentClass(a, b), MyInterface {
// ...
}

Top-level “domain” module is a code smell.

Merry Christmas to all!

The subject of this article is one that has been on my mind for a very long time. After all, “Clean Architecture” is often seen as the end goal, the hallmark of the finest of Android application code structure — it is the best of the…

Google created Jetpack Navigation to simplify navigation between destinations (such as fragment destinations) and allow defining logical scopes between these destinations using shared navigation graphs.

We can scope ViewModels to the associated NavBackStackEntry of these navigation graphs, and even persist their state across process death using the SavedStateHandle.

However, as…

Gabor Varadi

Android dev. Zhuinden, or EpicPandaForce @ SO. Extension function fan #Kotlin, dislikes multiple Activities/Fragment backstack.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store