Tag: iOS
All the articles with the tag "iOS".
-
Torque Spec: Shared Form State and Validation in KMP
The spec says 120 Nm and you already knew that. Knowing the number was never the hard part. My validation rules were already shared. The sixty lines of state around them were not.
-
Change the Map: Feature Flags and Remote Config in Kotlin Multiplatform
A driver changes the engine map from the wheel, mid-race, no pit stop required. Feature flags do the same for your app: change behaviour without shipping a build. Here's how I structure flags and remote config once, in commonMain, for both platforms.
-
The Same System: Advanced expect/actual in KMP
expect/actual is easy until you leave the trivial expect fun behind. Here's what bites with expect classes, constructors, actual typealiases, and the compiler rules nobody warns you about.
-
Safety Car: Coroutine Exception Handling in KMP
An uncaught coroutine exception crashes your KMP app on both platforms, and the platform safety nets don't extend to iOS. Here's how I build crash boundaries in commonMain.
-
Through the Lens: Barcode Scanning in Compose Multiplatform
expect/actual isn't just for business logic. Here's how to build a shared barcode scanner Composable that reads through any platform's lens.
-
KMP Splash: How I Stopped Opening Xcode for Splash Screens
The pit crew was always there. I just had to build it: a Gradle plugin that automates iOS and Android splash screen setup from a single config block.
-
Drop the Clutch: Three Metro DI Patterns Every KMP Developer Should Know
Metro drops the clutch on runtime DI errors. Three patterns in a real KMP app: binding contributions, platform graphs, and child scopes.
-
The Clean Line: Swift Export for KMP
Objective-C headers turned your Kotlin enums into class wrappers and your function signatures into noise. Swift Export sends the same data over a cleaner channel.
-
Clean Lap: UI Testing in Compose Multiplatform
Before the car hits the grid, telemetry confirms every sector. Before your UI ships, runComposeUiTest confirms every composable.
-
Crossing the Finish Line: StateFlow & SharedFlow in Kotlin Multiplatform
StateFlow is your lap timer — always showing the latest lap. SharedFlow is the race radio — you only hear what's broadcasted while you're tuned in.