Member-only story
How does Compose’s rendering pipeline work under the hood?
Jetpack Compose’s rendering pipeline is one of the biggest shifts from the traditional Android View system. Under the hood, it’s a declarative, state-driven UI engine that efficiently updates only what changed — not the whole screen.
🧠 Big Picture: How Compose Thinks About UI
Compose does NOT redraw the entire UI like Views.
Instead:
UI = Function(State)
When state changes → Compose recomposes only affected parts → updates only necessary pixels.
🏗️ Compose Rendering Pipeline — Step by Step
1️⃣ Composition — Building the UI Tree
@Composable
fun Greeting(name: String) {
Text("Hello $name")
}This creates a Composition Tree, not Views.
📌 This tree describes:
- What UI should exist
- How it’s structured
- What depends on what state
2️⃣ Slot Table — Tracking UI Structure
Compose stores the UI structure in a Slot Table:
- Tracks composables
- Tracks state dependencies









