5 min read

Kotlin Multiplatform Newsletter #16

We tackle the big question: Is Kotlin Multiplatform actually worth using in 2026? We dive into a step-by-step guide for migrating to Koin Annotations in multi-module projects, the impact of Swift Export with proper enum support in Kotlin 2.3.0, and a deep technical look at the mental models of concurrency and parallelism. Plus, we explore Haze 2.0's pluggable visual effects engine, a guide to building production-ready KMP SDKs, and a unique OTX Runtime Engineer role at Salvo Software.

The Main Thread

Community's most insightful threads, curated from social media platforms and websites.

Is Kotlin Multiplatform (KMP) actually worth using in 2026?

Explore this Reddit discussion on the pros and cons of KMP and learn from the real-world experiences of fellow developers.

Expect Actual

Technical deep dives, or solving the "how-the-hell-do-I-test-this" problems.

🪙
Migrating from Koin DSL to Koin Annotations in a Multimodule Project: A Step-by-Step Guide

Today we’re going to explore how to migrate a Compose Multiplatform multi-module project from Koin DSL to Koin Annotations. We’ll take a hands-on approach, diving deep into a project example built by the CodandoTV community.
✂️
Managing Gradle Daemons while Coding with AI

How to use a PreToolUse hook to automatically prune stale Java processes and reclaim your RAM.
🚦
Threads, Mutexes, Semaphores, Dispatchers & Parallelism: The Mental Model Most Engineers Are Still Missing

You use them every day. You know their names. But do you truly understand why they exist, what they cost and how your CPU has been quietly lying to you the whole time?
🛠️
Building a Production-Ready Kotlin Multiplatform SDK for Android & iOS

If you’re a mid-to-senior Android or iOS engineer who has heard the Kotlin Multiplatform (KMP) buzz but isn’t sure what a production-grade shared SDK actually looks like — this article is for you. We’ll go well beyond “Hello KMP” and walk through the architecture, patterns, and hard-won decisions behind a real SDK that ships .aar to Android and .xcframework to iOS.
🏎️
The Clean Line: Swift Export for KMP

Kotlin 2.3.0 shipped Swift Export with proper enum support. This article covers the before, the after, and the things you need to know before you flip the switch.

LazyColumn

Compose Multiplatform tips, tricks, and code snippets.

Compose Performance Skills

A curated library of Agent Skills focused on Jetpack Compose performance - highly applicable to Compose Multiplatform performance as well.
🫨
Haze 2.0: A Pluggable Visual Effects Engine

Haze is a library for backdrop-style visual effects in Jetpack Compose and Compose Multiplatform. Up until now, blur has been the headline feature and the architecture has been built around that assumption.

The Dependency Graph

Curated libraries, tools and plugins that won't break your Gradle build.

  • Pulsar
    Rich and ready-to-use haptics library.
  • Colormath
    Colormath is a Kotlin Multiplatform library for color manipulation and conversion.
  • KMPUtils
    KMP Utils is a collection of all the things that are missing from Kotlin STL, popular KMP libraries & platform SDKs.

Target: Production

Showcase of real-world apps proving KMP is ready for prime time.

OptyMacros - Optimize your diet. Eat what you want.
Opty makes planning and tracking effortless. Plan your day, adjust as needed, and track progress automatically with exact quantities.

CMP app with custom canvas widgets for charts and other visual elements.

GitHub - terrakok/CozySpace
Contribute to terrakok/CozySpace development by creating an account on GitHub.

A minimal, distraction-free tray app bringing ambient sounds to your desktop. Perfect for deep work, reading, or meditation.

Better: Gym & Calorie Tracker - Apps on Google Play
Gym log & calorie tracker in one app. Track lifts, macros, and nutrition.

Reddit discussion about shipping the app to production.

Careers

Kotlin Multiplatform job postings and opportunities.

🚗
OTX Runtime Engineer at Salvo Software

We are looking for a Senior OTX Runtime Engineer to design and ship a production-grade runtime for the ISO 13209 Open Test sequence eXchange (OTX) standard. This is a deeply technical, high-ownership role at the core of Salvo's diagnostic toolchain. The work demands equal fluency in language-implementation concepts, Kotlin Multiplatform engineering, and automotive diagnostic protocols.

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