Room, Retrofit, OkHttp, offline-first patterns, and data management
WorkManager stores tasks in a Room database and uses system APIs to run them. It covers WorkDatabase tables (WorkSpec, Constraint, Dependency), schedu...
Room generates real implementation classes at compile time — no reflection. This guide opens Room's hood: what AppDatabase_Impl and ArticleDao_I...
Loading images means downloading, decoding, resizing, caching, and error handling — libraries do it in one line. This step-by-step guide covers ...
WorkManager guarantees background work even if the app closes or the phone restarts. This step-by-step guide covers the mental model (postal service),...
Load 10,000 items 20 at a time as the user scrolls. This step-by-step guide covers the mental model, network-only PagingSource with load/getRefreshKey...
HTTP request passes through OkHttp interceptors. This step-by-step guide covers the mental model (airport checkpoints), how interceptors work, applica...
Retrofit generates HTTP client code from annotated Kotlin interfaces. This step-by-step guide covers the mental model, DTOs with Gson/Moshi, the API i...
Your database schema will change — migrations handle it without losing data. Your data model has connections — relations handle them clean...
Room wraps SQLite with a type-safe, compile-time validated, Kotlin-native API. This step-by-step guide covers the mental model, Entity with @PrimaryKe...
SharedPreferences blocks the main thread, has no type safety, and silently fails. DataStore fixes everything with Flow, suspend functions, and typed k...