In this article, We will learn about NavigationRailView finally which hits the stable channel 🎉 🎉

NavigationRailView : It is a side navigation component that displays 3 to 7 app destinations and, optionally, a Floating Action Button.

Let’s see it in action 👨‍💻😍


I have created the sample project…

Splash screen Android12 logo

Today we will explore Splash screen API which is introduced in Android 12.

Splash screen

Splash screen components

In this article, We will learn about AppSearch library which provides Document based storage solution.


With the help of AppSearch applications can offer custom in-app search capabilities, allowing users to search for content even while offline.

Major features

Platform Storage vs Local Storage

AppSearch offers two storage solutions:

Story header

Today, We will learn about the hidden costs of hiding fragments over replacing fragments.

Recently, I found an issue with following code in one of my sample project so, I have decided to share it with you.

Fragment transaction

What happens when we call hide on any fragment transaction :

onHiddenChanged method

It just hides the views, fragment is still in RESUMED state 🤯🤯🤯🤯

How it can effects the performance of the App :

Image header

Today, I will share with you my experience of building countdown ⏰ timer Week2 challenge of JetpackCompose.

Thanks to Qatar Airways 🛩 for providing Super Wifi during my flight from Montreal to Doha, 🙌 which helps me to complete this challenge on time.

Image header

Today, I will share with you my experience of building Puppy 🐶 adoption app AndroidDevChallenge week1.

Requirements of challenge

All the UI of the app must be written using Jetpack compose.

Major components that I have used to build the UI are following

NavHost, composable, Column, Image, Text, LazyColumn, Row, and Spacer

I created the data class called Pet which holds the data for each puppy item

data class Pet(
val id: Int = 0,
val name: String,
val breed: String…

Distributing apps for testing is the only thing I found hard so far with this.

Story Header

In this article, We will learn about the SMS verification using SMS verification API.

Article Header

The App Startup library provides a straightforward, performant way to initialize components at application startup.

It can be used by library developers as well as app developers to streamline startup sequences and explicitly set the order of initialization.

Instead of defining separate content providers for each component that you want to initialize, App Startup allows you to define component initializers that share a single content provider. This can significantly improve app startup time.

If you have a bit of experience of using Firebase/WorkManager in your android apps. …


Today, We will learn how we can use Android-KTX library to write more concise code in Android codebase.

Android KTX is a set of Kotlin extensions that are included with Android Jetpack and other Android libraries.

KTX extensions provide concise, idiomatic Kotlin to Jetpack, Android platform, and other APIs.

These extensions leverage several Kotlin language features, including the following:

Let’s see it in action

Nav Singh

Mobile Software Engineer at Manulife. GDG Organizer at GDG Montreal.

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