Kotlin Multiplatform Newsletter #22
In this briefing: We look at the launch of the 2026 Kotlin Foundation Grant Program offering financial support for KMP and AI library authors. We also dive into the future of iOS interop, comparing Swift Export vs. SKIE, and explore real-world lessons from building a production Kotlin/JS & Wasm web app. Plus, we highlight the magic of caching with Coil 3, a visual navigation mapper for Compose, and feature heavy-hitting Senior/Staff roles at Quo and Cantina.
The Log
The only Kotlin Multiplatform and Compose Multiplatform news you actually need to know.
The program provides financial support to developers who create and maintain open-source libraries, tools, and frameworks that strengthen the Kotlin ecosystem. We continue to welcome projects related to Kotlin Multiplatform, as well as libraries focused on AI and large language models.
The Main Thread
Community's most insightful threads, curated from social media platforms and websites.
Hello, I just finished most of the development of my first Kotlin/JS & Kotlin/WASM app (5KLOC, ~100 hours of dev in the last 6 months) and I wanted to share my experience with you. It's a web application my wedding guests could use to post their wedding pictures, post their "guestbook" messages on, and play some games together.
Looking for honest, experience-based answers — not marketing speak. If you've shipped a KMP app in production, especially in India, your perspective would mean a lot.
Expect Actual
Technical deep dives, or solving the "how-the-hell-do-I-test-this" problems.
Stop treating Kotlin like a black box! 🧠
To build truly performant multiplatform apps, writing code that just "works" isn't enough. We need to understand what the compiler is actually doing under the hood.
That’s why I highly recommend Practical Kotlin Deep Dive by skydoves. This isn't a basic syntax guide, it breaks down Kotlin internals, bytecode, and coroutines. It’s been a total game-changer for me when writing and optimizing shared code.
If you want to level up your Kotlin and KMP skills to a senior standard, you need this on your desk.
Kotlin's new Swift Export feature promises to eliminate the Objective-C middleman and generate native Swift APIs directly from your KMP code. But with SKIE already solving many of the same pain points in production today, which approach should your team bet on? We break down the capabilities, limitations, and tradeoffs of both.
The Kotlin programming language itself doesn't give strong rules on the order in which parameters should be declared. Yet, there is an order that is better than the others.
Interoperability with Swift is often the biggest pain point in KMP. Historically, Kotlin has been exposed to Swift indirectly through an Objective-C bridge: the Kotlin/Native compiler generates Objective-C headers that Swift imports, with mangled names and unidiomatic underscores.
LazyColumn
Compose Multiplatform tips, tricks, and code snippets.
Coil 3 is Kotlin Multiplatform. One
AsyncImage call in commonMain renders on Android, iOS, desktop, and web. No expect/actual. No second library. The same memory cache, the same disk cache, the same loading code.The Dependency Graph
Curated libraries, tools and plugins that won't break your Gradle build.
- Compose Navigation Graph
Compose Navigation Graph turns your entire app flow into one living map: every screen as a rendered existing@Previewthumbnail, every transition an arrow you can follow. It works with Navigation 3, Navigation 2, any other Compose navigation libraries, and even plain Activities. - AdaptiveNavBar
A Compose Multiplatform adaptive navigation bar — Material 3 on Android, glassy floating bar with FAB on iOS - Compose Stability Analyzer 0.10.0
Diagnostic tools for Jetpack Compose recomposition - now introducing Stability Doctor and Trace-All Mode. - OpenSavvy Spine
Share your Ktor endpoints between multiplatform clients and server. - KSensor
Live Sensors/States data from Android & iOS targets - KGML
The Kotlin Graphics Maths Library for Kotlin Multiplatform. A GLM/JOML inspired library with a touch of idiomatic Kotlin. - Kompress
Compression and archiver APIs for Kotlin Multiplatform.
Target: Production
Showcase of real-world apps proving KMP is ready for prime time.
Revolut • This is your bank, redefined.
Get powerful daily banking and global freedom. Sign up for free in a tap. Join 75+ million customers worldwide and 13 million in the UK.

GitHub repository available here.
GitHub repository available here.
Careers
Kotlin Multiplatform job postings and opportunities.
hackajob • Meet Archer, your AI job matching agent
5x more interviews. Zero guesswork. Archer works 24/7 to match you with roles that fit your stack and seniority. You review the matches, not the job boards.
Remote - United States & Canada
We're looking for a Senior Engineering Manager to lead our Foundations team, the group that builds and scales the technical and organizational infrastructure the rest of Quo's engineering org is built on.
Foundations is a uniquely cross-disciplinary team of mobile, web, and backend engineers responsible for the core systems everything else depends on: our GraphQL platform, client data sync, mobile frameworks (Kotlin Multiplatform), CI and testing platforms, and the core architecture of our client systems.
Los Angeles or San Francisco; California; Remote (U.S. or Canada); Sunnyvale
As a Kotlin Multiplatform Engineer at Cantina, you’ll be the architect of our shared-code strategy — building the foundation that powers our experiences across Android, iOS, and web from a single Kotlin codebase. You’ll work at the cutting edge of the KMP ecosystem, shipping production code to real users on multiple platforms, while keeping platform-specific layers feeling truly native.
🚀 Get Featured!
Got something interesting to share with the Kotlin Multiplatform community? Submit your link for a chance to get featured in the next issue of commonMain.dev.
🤝 Support the Build
commonMain.dev is made possible by our partners. If you have a tool or service that helps KMP developers ship to production faster, we’d love to help you reach our community. Collaborate with us.
✍ Code Review
This newsletter is curated and written by a real human being. I’m always looking for ways to optimize the build. Was there something you liked or disliked in particular? Or did you find a bug in this issue? Simply reply to this email - I read every comment from the community and take your feedback into account for the next release.
Until next time,
Stay platform-independent!
Bogdan • Founder of commonMain.dev
