Kotlin Multiplatform
Articles on Kotlin Multiplatform performance, shared code architecture, and KMP adoption strategies.
Kotlin Multiplatform engineering articles 31–55 of 55
Should I continue learning Flutter or start with KMM?
Flutter or KMM? If you're building cross-platform mobile apps in 2024, this question is keeping a lot of engineering leaders up at night.
Poko goes multiplatform
Drew Hamilton just took Poko, the Kotlin compiler plugin that generates equals/hashCode/toString, fully multiplatform. This solves a real API compatibility headache for library authors.
Multiplatform image loading: Coil 3.0
Colin White reveals how Coil 3.0 is breaking free from Android to become truly multiplatform. The image loading library that powers countless Android apps is making a bold leap to iOS, web, and desktop.
From Hacking to Shipping: Kotlin Multiplatform Mobile at Hootsuite
Hootsuite's mobile team shipped a major product rewrite using Kotlin Multiplatform Mobile—sharing business logic across iOS and Android while keeping native UIs. Here's how they went from hackathon experiment t...
Native UI and multiplatform Compose with Redwood
Cash App just open-sourced Redwood, their answer to the multiplatform UI problem. Unlike other solutions, it renders with native UI toolkits instead of recreating them.
Kotlin Flows in Android Development
Beratcan Güreş breaks down Kotlin Flows, the reactive programming tool that's changing how Android developers handle asynchronous data streams. If you're still wrestling with callback hell or blocking operation...
Kotlin Multiplatform Money Formatter
Patrick Tyska and Terry Yiu from Cash App reveal how the same $1,000 needs to display four different ways across their app. Their solution? Kotlin Multiplatform to consolidate 10 separate money formatters into ...
Announcing Multiplatform Paging
Veyndan Stuart from Cash App just open-sourced a solution to one of mobile development's most annoying problems: writing pagination logic twice for Android and iOS.
The Beginner's Guide to Kotlin Coroutine Internals
Sonic Wang from DoorDash breaks down Kotlin coroutines from bytecode to scheduler. If you've ever wondered what actually happens when you call 'suspend', this deep dive reveals the magic.
Kotlin Multiplatform: Shared Test Resources
Victoria Gonda from Square tackles a tricky KMP problem: Kotlin/Native doesn't support I/O, yet your shared tests need to read fixture files. Here's the workaround that makes it possible.
Publishing Native Artifacts from Kotlin Multiplatform Projects
Guillermo Mazzola from Glovo cracked a problem most teams avoid: using Kotlin Multiplatform without forcing everyone into a monorepo. His solution? Publishing native CocoaPods and NPM packages directly from KMP...
Kotlin Multiplatform Mobile Development at Glovo
Guillermo Mazzola from Glovo turned a Friday afternoon experiment into a production system that solved a problem most multi-platform teams don't even realize they can fix.
Netflix Android and iOS Studio Apps — now powered by Kotlin Multiplatform
Netflix just went all-in on Kotlin Multiplatform for their production studio apps. Here's why they're betting on shared code over platform-specific rewrites.
MVI Architecture in Kotlin Multiplatform - Part 3
Arkadii Ivanov from Bumble Tech tackles the biggest challenge in Kotlin Multiplatform testing: no mocking frameworks. His solution? Embrace it as a feature, not a bug.
MVI Architecture in Kotlin Multiplatform - Part 2
Arkadii Ivanov from Bumble shows how to bridge Kotlin Multiplatform MVI architecture with native iOS and Android UI. The iOS integration reveals surprising complexity that most KMP tutorials skip.
Mastering Kotlin Conventions: Get, Set, and Range Operations
Gopinath Langote from N26 shows how Kotlin's operator overloading can transform verbose getter/setter code into elegant, readable syntax. Instead of date.getMonth() or date.setMonth(6), what if you could just w...
Mastering Kotlin Conventions: Operators and Arithmetic Operations
Gopinath Langote from N26 shows how Kotlin's operator overloading turns verbose code like Number(1).plus(Number(2)) into elegant Number(1) + Number(2). This isn't just syntactic sugar—it's a fundamental shift i...
What We've Learned at KotlinConf 2018
Rares Musina from N26 shares how their mobile bank went all-in on Kotlin—and what they learned at KotlinConf 2018. Spoiler: coroutines, DSLs, and faster backends are changing everything.
Building Reactive Component Systems with Kotlin
Zsolt Kocsi from Bumble reveals how his team tamed the chaos of reactive Android components. The secret? Two minimal interfaces and a powerful abstraction that makes subscription management disappear.
A Modern Kotlin-Based MVI Architecture
Zsolt Kocsi from Badoo reveals how their chat module kept losing first messages despite a full Clean Architecture rewrite. The culprit? Uncontrolled state mutations in a massively asynchronous app.
5 Reasons Why N26 Is Moving to Kotlin
Pat Kua from N26 shares how the fintech company moved from Java to Kotlin for backend services. Their pragmatic, incremental approach turned a language migration into a productivity win.
Kotlin at Trello: Mobile Development Best Practices
Vishnu Rajeevan from Trello shares how his team went from 0% to 30.8% Kotlin in just over a year. Their strategy? Start with tests, then make every new feature Kotlin-only.
Kotlin: An Exploration of Sealed Classes
James Shephard from BBC explores how Kotlin's sealed classes can fundamentally reshape your Android architecture. What if callbacks aren't the answer to async operations?
How To Configure Kotlin In Your Project
Natalia Ukhorskaya from JetBrains shows how Kotlin's seamless Java interop makes adoption frictionless. Just create a .kt file and let IntelliJ do the heavy lifting.
Working With Kotlin In Android Studio
JetBrains made history in 2013 by bringing Kotlin to Android Studio for the first time. This walkthrough from the early days shows just how far Android development has come.