top of page
Explore What
Lies Beyond
All Posts
Compose Navigation in KMP: Patterns That Scale
Navigation in Compose Multiplatform is evolving fast. After trying Voyager, Decompose, and the official Compose Navigation, here are the patterns we settled on at MBS for our production apps. The Navigation Challenge in KMP Unlike single-platform apps, KMP navigation must work across Android (with its back stack), iOS (with swipe-to-go-back), and Desktop (with window management). The solution must handle deep links, state restoration, and type-safe argument passing — all in s
Mobile Byte Sensei
Mar 271 min read
Building Offline-First Apps with KMP
Users expect apps to work without internet. At MBS, every product we build is offline-first by default. Here are the architecture patterns and implementation strategies we use in Kotlin Multiplatform. The Offline-First Architecture Our pattern is simple: local database is the single source of truth. UI reads from local storage (SQLDelight). Network requests update local storage. The UI reactively updates via Kotlin Flows. This means the app works instantly on launch, even wit
Mobile Byte Sensei
Mar 271 min read
Koin vs Dagger in KMP: A Practical Comparison
Dependency injection is critical for maintainable KMP apps. We've used both Koin and Dagger/Hilt extensively in production. Here's when to choose each, with real examples from our apps. Koin: The KMP-First Choice Koin is multiplatform from the ground up. No annotation processing, no code generation, no platform-specific setup. Define modules in shared code and they work everywhere. The DSL is intuitive, testing is straightforward with checkModules(), and the learning curve is
Mobile Byte Sensei
Mar 271 min read
The State of Kotlin Multiplatform in 2026: A Production Perspective
After 4 years of shipping KMP apps to production, here's our honest assessment of what works, what doesn't, and where the ecosystem is heading. Mobile Byte Sensei has built 6 products with KMP — this is what we've learned. What Works Brilliantly Shared business logic is KMP's killer feature. Networking (Ktor), serialization (kotlinx.serialization), DI (Koin), and local storage (SQLDelight) all work flawlessly across platforms. Compose Multiplatform for shared UI has reached p
Mobile Byte Sensei
Mar 271 min read
SQLDelight Migration Guide: Room to Multiplatform
Migrating from Room to SQLDelight is one of the most common steps when adopting Kotlin Multiplatform. At MBS, we've migrated three production apps. Here's the step-by-step guide we wish we had when we started. Why SQLDelight? Room is Android-only. SQLDelight generates Kotlin code from SQL statements and works across Android, iOS, Desktop, and Web. It gives you type-safe queries, automatic schema migrations, and coroutine/flow support — all shared across platforms. Step 1: Map
Mobile Byte Sensei
Mar 271 min read
Why We Chose KMP Over Flutter for Mood Movies
When we started building Mood Movies at Mobile Byte Sensei, we evaluated every major cross-platform framework. Flutter, React Native, and Kotlin Multiplatform were all strong contenders. We chose KMP — and after 2 years of production experience, we'd make the same choice again. Here's why. The Decision Framework Our criteria were: native performance on all platforms, ability to share business logic without compromising UX, access to the full Kotlin ecosystem, and a migration
Mobile Byte Sensei
Mar 271 min read
Getting Started with Compose Multiplatform in 2026
Compose Multiplatform has matured significantly in 2026, making it the go-to choice for shared UI across Android, iOS, Desktop, and Web. At Mobile Byte Sensei, we've been building production apps with Compose MP since its early days. Here's your complete guide to getting started. Why Compose Multiplatform? Traditional cross-platform frameworks force compromises. Flutter uses its own rendering engine. React Native bridges to native views. Compose Multiplatform takes a differen
Mobile Byte Sensei
Mar 271 min read
Building a Production-Ready KMP App: Lessons from Mood Movies
Mood Movies is our flagship KMP app — a cross-platform movie discovery experience that matches recommendations to your current mood. Building it taught us invaluable lessons about shipping production-quality KMP apps. Here's what we learned. Architecture That Scales We adopted a clean architecture with shared domain and data layers, platform-specific UI where needed, and Koin for dependency injection across all targets. The key was designing the module structure early — share
Mobile Byte Sensei
Mar 261 min read
Why We Chose Compose Multiplatform for Our Products
When we started building products at Mobile Byte Sensei, we faced a critical decision: how to handle UI across platforms. After evaluating Flutter, React Native, and native development, we chose Compose Multiplatform. Here's why. The Problem with Cross-Platform UI Traditional cross-platform frameworks force you into a single rendering engine that approximates native look and feel. This works for simple apps but breaks down when you need platform-specific behaviors, animations
Mobile Byte Sensei
Mar 261 min read
Getting Started with Kotlin Multiplatform in 2026
Kotlin Multiplatform (KMP) has evolved from an experimental feature to a production-ready framework that powers apps across Android, iOS, desktop, and web. At Mobile Byte Sensei, we've been building with KMP since its early days, and 2026 is the best time to start your KMP journey. Why KMP in 2026? The KMP ecosystem has matured significantly. Compose Multiplatform now supports Android, iOS, desktop, and web with a single UI codebase. Libraries like Ktor, Koin, and SQLDelight
Mobile Byte Sensei
Mar 261 min read


Jetpack Compose Basics
When we talk basics of Jetpack Compose, we need to understand the building blocks. What small pieces help to build a composable function?...
Mobile Byte Sensei
Feb 25, 20253 min read


How to Secure Your API Keys with the Secrets Gradle Plugin
Where should I start about hiding the API keys? It has been coming for a long time that we Android developers try to hide the key by...
Mobile Byte Sensei
Feb 25, 20252 min read


Mastering Android Development: Advanced Tips for Leveraging Kotlin Fundamentals
As technology continually evolves, so too does the landscape of mobile app development. For developers looking to enhance their skills,...
Mobile Byte Sensei
Feb 25, 20254 min read
Limited Time: Save 20% on All Courses - Enroll Today! | Use Coupon Code: MBSSALE20 at Checkout
bottom of page
.png)