Hands-on Android and Flutter tutorials from building real production apps. Covering Kotlin, Jetpack Compose, MVVM, Room, Coroutines, Riverpod, and more — with code you can actually use.
The real-world Jetpack Compose dark mode implementation: three-way user override, ViewModel persistence across restarts, AppCompatDelegate sync for XML views, and a custom brand color system beyond M3's 30 roles.
CameraX 1.6's Feature Group API lets you check if camera feature combinations work before enabling them. No more crashing when you try to combine HDR with 60 FPS on unsupported devices.
Every Flutter screen has three states: loading, error, success. Most apps get this wrong. Here's the production pattern I use with Riverpod — including the mistakes I shipped and what I do differently now.
Skip the Activity recreate hack. Use Android 13's per-app language API with an AppCompat backport — switch languages at runtime in Compose without losing state.
I've built production screens with all four layout types. Row, Column, and Box handle 90% of cases — but knowing when to reach for ConstraintLayout saves you from nested layout nightmares.
A practical guide to Jetpack Navigation 3 covering type-safe routes, bottom navigation with multiple back stacks, deep link handling, shared ViewModels, and step-by-step migration from Navigation 2.