Writing
Blog
kotlin-multiplatformandroidiossqldelightoffline-first
Building an Offline-First App — No Backend, No Auth, No Cloud
BoxIndex is a home inventory app with no login screen, no server, and no subscription. Here's what that forces you to think about as a developer.
April 11, 2026Read →
kotlin-multiplatformcompose-multiplatformandroidiosdeep-linking
End-to-End QR Deep Linking in a Kotlin Multiplatform App
How we wired QR code generation, custom URL schemes, and cross-platform deep link routing in BoxIndex — a KMP app built with Compose Multiplatform.
April 8, 2026Read →
jetpack-composecompose-multiplatformandroidkotlindebugging
Why I Threw Away Material Slider — and the Stale Closure Bug That Made Me
Building a custom gradient slider in Jetpack Compose Multiplatform, and the one-liner that fixed a subtle, maddening bug.
April 3, 2026Read →
kotlin-multiplatformcompose-multiplatformandroidioshaptics
Cross-Platform Haptics in Kotlin Multiplatform: One Interface, Two Engines
How PickPerfect calls hapticTick() from shared Compose code while each platform does its own thing under the hood.
April 1, 2026Read →