Android · Kotlin · Compose · Architecture

Mastering Android

In-depth tutorials, deep dives, and field notes on shipping production Android apps — from a 14+ year engineering veteran.

Jetpack Compose Coroutines & Flows Clean Architecture Testing System Design Performance

Featured

Latest

Jetpack Compose

Compose Theming

Theming in Compose uses Kotlin objects and CompositionLocal instead of XML styles. This guide covers MaterialTheme setup, ColorScheme with 30 semantic...

Jetpack Compose

Compose vs XML

Should you use Compose or XML? This guide gives an honest comparison (15-feature table), where Compose wins (less boilerplate, declarative state, prev...

Jetpack Compose

Compose Side Effects

Composable functions should be pure — but real apps need side effects. This guide covers every effect handler with precise keyword identificatio...

Jetpack Compose

Compose Navigation

Compose Navigation replaces Fragment-based navigation with code-first, type-safe routes. This guide covers NavHost and NavController, string routes an...

Jetpack Compose

Compose ConstraintLayout

ConstraintLayout in Compose is a power tool for complex interdependent layouts — not a default choice. This guide covers setup, createRef/create...

Jetpack Compose

Compose Layouts

Column arranges vertically, Row horizontally, Box stacks, LazyColumn handles lists. This guide covers every layout composable with precise keyword ide...

Jetpack Compose

Compose State Management

State drives Compose — when state changes, UI updates automatically. This guide covers mutableStateOf and optimised variants, remember vs rememb...

Jetpack Compose

Jetpack Compose Basics

Jetpack Compose is Android's declarative UI toolkit — functions replace XML, state triggers automatic re-rendering. This guide covers composable...

Architecture & Patterns

Android ViewModel

ViewModel survives rotation — but how? This guide covers the internals (ViewModelStore, ViewModelProvider, NonConfigurationInstance), ViewModel ...

Android Core

Android Launch Modes & Back Stack

Launch modes control how Activities are created and placed in the back stack. This guide covers all five launch modes with visual back stack diagrams,...