← all projects

learn this topic (theory + diagrams) →

Learn-Kotlin-Flow

Master Kotlin Flow through real Android examples — operators, network, Room, instant search, retry, and error handling.

View on GitHub ↗Kotlinupdated 2d ago

KotlinFlowRetrofitRoomCoroutines

High-level design

A menu of 17 runnable Flow examples, each isolating one operator or pattern — the same learn-by-example shape as the Coroutines repo, applied to reactive streams.

data/api

Retrofit ApiHelper/ApiService, RetrofitBuilder

data/local

Room AppDatabase, UserDao, DatabaseHelper

ui/retrofit

single / series / parallel network calls via Flow

ui/search

instant search: debounce + filter + distinctUntilChanged + flatMapLatest

ui/retry

retry / retryWhen / exponential backoff

ui/operators

map, filter, reduce, completion, flowOn

ui/errorhandling

catch and emitAll fallbacks

Low-level design

Each example is a self-contained Activity + ViewModel pair; the index table links straight to the source.

  • Instant search is the flagship: debounce + distinctUntilChanged + flatMapLatest collapse the whole 'search as you type' recipe into one screen
  • Parallel network calls via zip — two independent flows combined pairwise
  • Retry with exponential backoff is shown as a runnable example, not a paragraph