An awesome list that curates the best KMM libraries, tools and more.

Overview

Awesome KMM

Pull request Awesome GitHub Repo stars Maven Central

Kotlin Multiplatform Mobile (KMM) is an SDK designed to simplify creating cross-platform mobile applications. With the help of KMM, you can share common code between iOS and Android apps and write platform-specific code only where itโ€™s necessary. For example, to implement a native UI or when working with platform-specific APIs.

Resources

๐Ÿ–ผ KMM website
๐Ÿ“œ KMM blog
๐Ÿ“บ KMM YouTube
๐Ÿ“‹ KMM Documentation
๐Ÿคฉ KMM Samples

Contents

๐Ÿ›  Tooling ๐Ÿ“‹ Log ๐ŸŒŽ Network
๐Ÿ“ฆ Storage ๐Ÿ“ฑ Device ๐Ÿ’‰ Dependency Injection
๐Ÿ— Architecture ๐Ÿ” Analytics ๐Ÿฉบ Test
๐Ÿ”‘ Crypto ๐Ÿ“ File ๐Ÿš€ Language extentions
๐Ÿ—ƒ Serializer โฐ Date-Time โžฟ Asynchronous
๐ŸŽต Audio ๐ŸŽจ Graphics ๐Ÿงฉ Service SDK
๐Ÿงฎ Arithmetic ๐Ÿ”ง Utils

Tooling

๐Ÿ›  Kotlin Multiplatform Mobile plugin for Android Studio

The Kotlin Multiplatform Mobile (KMM) plugin helps you develop applications that work on both Android and iOS.

๐Ÿ›  Kotlin Multiplatform Mobile plugin for AppCode

The Kotlin Multiplatform Mobile (KMM) plugin for AppCode helps you develop applications for Android and iOS using the unified Gradle project model.

๐Ÿ›  CocoaPods integration

Kotlin/Native provides integration with the CocoaPods dependency manager. You can add dependencies on Pod libraries as well as use a multiplatform project with native targets as a CocoaPods dependency (Kotlin Pod).

๐Ÿ›  MOKO KSwift gradle plugin

KSwift it's gradle plugin for generation Swift-friendly API for Kotlin/Native framework.

๐Ÿ›  CompleteKotlin gradle plugin

Gradle Plugin to enable auto-completion and symbol resolution for all Kotlin/Native platforms.

๐Ÿ›  BuildKonfig gradle plugin

BuildConfig for Kotlin Multiplatform Project

๐Ÿ›  Kotlin Native Xcode Support

Plugin to facilitate debugging iOS applications using Kotlin Native in Xcode. Defines Kotlin files as source code, with basic highlighting. Allows you to set breakpoints and includes llvm support to view data in the debug window. Xcode does not officially support custom language definitions, but they also don't explicitly block them.

๐Ÿ›  Dokka documentation generation tool

Dokka is a documentation engine for Kotlin, performing the same function as javadoc for Java. Just like Kotlin itself, Dokka fully supports mixed-language Java/Kotlin projects. It understands standard Javadoc comments in Java files and KDoc comments in Kotlin files, and can generate documentation in multiple formats including standard Javadoc, HTML and Markdown.

Libraries

๐Ÿ“‹ Log

Napier - logger GitHub Repo stars Maven Central

Napier is a logger library for Kotlin Multiplatform. It supports for the Android, Darwin(iOS, macOS, watchOS, tvOS), JVM, JavaScript. Logs written in common module are displayed on logger viewer of each platform.

Kermit - logger GitHub Repo stars Maven Central

Kermit is a Kotlin Multiplatform logging utility with composable log outputs. The library provides prebuilt loggers for outputting to platform logging tools such as Logcat and NSLog.

Kodein-Log - logger GitHub Repo stars Maven Central

Kodein-Log is a lightweight Kotlin/Multiplatform logging library with a simple API, that works on JVM, Android, JavaScript, iOS, as well as for all Kotlin/Native targets.

Klogger - logger GitHub Repo stars Maven Central

Klogger is a logger library for multiplatform Kotlin. This library provides a simple interface to do logging into suitable outputs like javascriptโ€™s console, or stdout/stderr.

Cabret - logger GitHub Repo stars Maven Central

This is an Kotlin Library that enables Annotation-triggered method call logging for Kotlin Multiplatform.

KmLogging - logger GitHub Repo stars Maven Central

Kotlin multiplatform logging. High performance, composable and simple to use.

Kydra Log - logger GitHub Repo stars Maven Central

Kotlin Multiplatform Library that allows to write logs in common module.

๐ŸŒŽ Network

Ktor - http client GitHub Repo stars Maven Central

Ktor includes a multiplatform asynchronous HTTP client, which allows you to make requests and handle responses, extend its functionality with plugins (formerly known as features), such as authentication, JSON serialization, and so on.

Apollo GraphQL - GraphQL client GitHub Repo stars Maven Central

A strongly-typed, caching GraphQL client for the JVM, Android, and Kotlin multiplatform.

kgql - GraphQL Document wrapper generator GitHub Repo stars Maven Central

GraphQL Document wrapper generator for Kotlin Multiplatform Project. Currently, available for JVM/Android/iOS

WebRTC KMP - WebRTC client GitHub Repo stars Maven Central

WebRTC Kotlin Multiplatform SDK

Krossbow - WebSocket client GitHub Repo stars Maven Central

A coroutine-based Kotlin multi-platform WebSocket client and STOMP 1.2 client over web sockets.

MOKO SocketIo - Socket.IO implementation GitHub Repo stars Maven Central

This is a Kotlin Multiplatform library that provides real-time, event-based communication for iOS and Android.

rsocket - RSocket Kotlin multi-platform implementation GitHub Repo stars Maven Central

RSocket is a binary protocol for use on byte stream transports such as TCP, WebSockets and Aeron.

๐Ÿ“ฆ Storage

Multiplatform-Settings - Key-Value preferences GitHub Repo stars Maven Central

This is a Kotlin library for Multiplatform apps, so that common code can persist key-value data

KVault - secure key-value storage GitHub Repo stars Maven Central

It acts as an iOS Keychain wrapper and implements encrypted SharedPreferences for Android.

SQLDelight - SQLite database GitHub Repo stars Maven Central

SQLDelight generates typesafe kotlin APIs from your SQL statements. It verifies your schema, statements, and migrations at compile-time and provides IDE features like autocomplete and refactoring which make writing and maintaining SQL simple.

Realm - NoSQL database GitHub Repo stars Maven Central

Realm is a mobile database that runs directly inside phones, tablets or wearables. This repository holds the source code for the Kotlin SDK for Realm, which runs on Kotlin Multiplatform and Android.

cache4k - In-memory Cache GitHub Repo stars Maven Central

Provides a simple in-memory key-value cache for Kotlin Multiplatform, with support for time-based (expiration) and size-based evictions.

SQLiter - SQLite driver GitHub Repo stars Maven Central

SQLiter is a SQLite driver for Kotlin Native, currently Apple and Windows variants. It is designed to serve as a driver to power user-friendly libraries rather than something to use directly. Currently SQLiter powers the SQLDelight library on native clients.

Kodein-DB - NoSQL database GitHub Repo stars Maven Central

Kodein-DB is a Kotlin/Multiplatform embedded NoSQL database that works on JVM, Android, Kotlin/Native and iOS. It is suited for client or mobile applications.

๐Ÿ“ฑ Device

MOKO Permissions - System permissions manager GitHub Repo stars Maven Central

Kotlin Multiplatform library for providing runtime permissions on iOS & Android

MOKO Resources - System resources manager GitHub Repo stars Maven Central

This is a Kotlin Multiplatform library that provides access to the resources on iOS & Android with the support of the default system localization.

MOKO Geo - Location manager GitHub Repo stars Maven Central

Geolocation access for mobile (android & ios) Kotlin Multiplatform development

MOKO Biometry - System biometry manager GitHub Repo stars Maven Central

This is a Kotlin Multiplatform library that provides authentication by FaceId and TouchId (Fingerprint)

MOKO Media - System media manager GitHub Repo stars Maven Central

This is a Kotlin Multiplatform library that provides media picking in common code (photo/video) and video player controls.

MOKO Maps - Google/Mapbox maps manager GitHub Repo stars Maven Central

This is a Kotlin Multiplatform library that provides controls of maps to common code.

Kable - Coroutines-powered API for interacting with Bluetooth Low Energy devices. GitHub Repo stars Maven Central

Kotlin Asynchronous Bluetooth Low Energy provides a simple Coroutines-powered API for interacting with Bluetooth Low Energy devices.

Blue-Falcon - A Bluetooth kotlin multiplatform library for iOS and Android GitHub Repo stars Maven Central

A Bluetooth "Cross Platform" Kotlin Multiplatform library for iOS, Android, MacOS, Raspberry Pi and Javascript. Bluetooth in general has the same functionality for all platforms, e.g. connect to device, fetch services, fetch characteristics.

Connectivity status - Multiplatform connectivity status GitHub Repo stars Maven Central

This Kotlin multiplatform mobile utility library allows monitoring the internet connection status of the device. You can use it from shared code as well as directly from Android or iOS code.

๐Ÿ’‰ Dependency Injection

Koin - DI framework GitHub Repo stars Maven Central

A pragmatic lightweight dependency injection framework for Kotlin developers. Koin is a DSL, a light container and a pragmatic API

Kodein - DI framework GitHub Repo stars Maven Central

Kodein-DI is a very simple and yet very useful dependency retrieval container.

PopKorn - DI framework GitHub Repo stars Maven Central

PopKorn is a simple, powerful and lightweight Kotlin Multiplatform Dependency Injector. It doesn't need any modules or components, just use it without writing a single extra file! It supports AND, IOS, JVM, JS and NATIVE.

๐Ÿ— Architecture

MVI Kotlin - MVI framework GitHub Repo stars Maven Central

MVIKotlin is a Kotlin Multiplatform framework that provides a way of (not only) writing shared code using MVI pattern. It also includes powerful debug tools like logging and time travel.

Redux Kotlin - Redux framework GitHub Repo stars Maven Central

Redux implementation for Kotlin (supports multiplatform JVM, native, JS, WASM)

FlowRedux - Statemachine library with nice DSL GitHub Repo stars Maven Central

Building async. running Kotlin Multiplatform state machine made easy with a DSL and coroutines.

Mobius.kt - Mobius Framework GitHub Repo stars Maven Central

Kotlin Multiplatform Mobius implementation.

MOKO MVVM - MVVM framework GitHub Repo stars Maven Central

This is a Kotlin Multiplatform library that provides architecture components of Model-View-ViewModel for UI applications. Components are lifecycle-aware on Android.

Oolong - MVU for Kotlin Multiplatform GitHub Repo stars Maven Central

Oolong is an Elm inspired Model-View-Update (MVU) implementation for Kotlin multiplatform.

Summer - Share ViewModels between iOS, Android and Web apps GitHub Repo stars Maven Central

Summer is a presentation level library with kotlin-multiplatform support. It can be used to share viewModels between iOS, Android and Web apps. Summer does not use code generation and thus have not significant effort on compilation time and odd build-time errors. Project aims to have out-of-box support of Android Framework, Jetpack Compose, UIKit and SwiftUI without any adapters and platform-specific limitations.

Decompose - componentization and navigation GitHub Repo stars Maven Central

Decompose is a Kotlin Multiplatform library for breaking down your code into lifecycle-aware business logic components (aka BLoC), with routing functionality and pluggable UI (Jetpack Compose, Android Views, SwiftUI, JS React, etc.)

multiplatform-paging - Pagination library for KMM GitHub Repo stars Maven Central

A Kotlin Multiplatform library for pagination.

๐Ÿ” Analytics

MOKO Crash Reporting - reporting to Crashlytics GitHub Repo stars Maven Central

Fatal and Non-Fatal reporting to Crashlytics for Kotlin Multiplatform Mobile

CrashKiOS - Crash reporting for Kotlin/Native iOS applications GitHub Repo stars Maven Central

Thin library that provides symbolicated crash reports for Kotlin code on iOS.

๐Ÿฉบ Test

Kotest - test framework GitHub Repo stars Maven Central

Powerful, elegant and flexible test framework for Kotlin with additional assertions, property testing and data driven testing

๐Ÿ”‘ Crypto

Libsodium - Libsodium bindings for Kotlin Multiplatform GitHub Repo stars Maven Central

Libsodium bindings project uses libsodium c sources and libsodium.js to provide a kotlin multiplatform wrapper library for libsodium.

Krypto - Pure Kotlin cryptography library GitHub Repo stars Maven Central

SecureRandom, Hash (MD5/SHA1/SHA256), AES

cryptohash - A set of cryptographic (and not so cryptographic) hashing functions GitHub Repo stars Maven Central

xxHash, Blake, HMAC, Keccak, MD5, SHA, etc

๐Ÿ“ File

Okio - access, store, and process your data GitHub Repo stars Maven Central

Okio is a library that complements java.io and java.nio to make it much easier to access, store, and process your data.

KorIO - access, store, and process your data GitHub Repo stars Maven Central

KorIO is a library for Charsets, Encodings, Checksums, Compression, I/O, Streams, Virtual File System, Networking, Http, WebSockets, Serializationโ€ฆ

Suparnatural FS - file system i/o GitHub Repo stars Maven Central

Kotlin multiplatform file system i/o for android, iOS, Java and NodeJS

๐Ÿš€ Language extentions

Arrow - Functional companion to Kotlin's Standard Library GitHub Repo stars Maven Central

Arrow aims to provide a lingua franca of interfaces and abstractions across Kotlin libraries. For this, it includes the most popular data types such as Option, Either, Validated etc and functional operators such as traverse and computation blocks to empower users to write pure FP apps and libraries built atop higher order abstractions.

Result - success/failure result GitHub Repo stars Maven Central

This is a tiny framework for modelling success/failure of operations in Kotlin. In short, it is a model in type of Result<V: Any?, E : Throwable>.

๐Ÿ—ƒ Serializer

kotlinx.serialization - JSON serialization GitHub Repo stars Maven Central

Kotlin serialization consists of a compiler plugin, that generates visitor code for serializable classes, runtime library with core serialization API and support libraries with various serialization formats.

MOKO Parcelize - Parcelize in common code GitHub Repo stars Maven Central

This is a Kotlin Multiplatform library that supports Parcelize in common code.

Pbandk - Kotlin code generator and runtime for Protocol Buffers. GitHub Repo stars Maven Central

It has the core set of protobuf features implemented and is being used in production.

โฐ Date-Time

Kotlinx DateTime - Date & Time library GitHub Repo stars Maven Central

A multiplatform Kotlin library for working with date and time.

Klock - Date & Time library GitHub Repo stars Maven Central

Klock is a Date & Time library for Multiplatform Kotlin. It is designed to be as allocation-free as possible using Kotlin inline classes, to be consistent and portable across targets since all the code is written in Common Kotlin, and to provide an API that is powerful, fun and easy to use.

Island Time - Date & Time library GitHub Repo stars Maven Central

A Kotlin Multiplatform library for working with dates and times, heavily inspired by the java.time library.

โžฟ Asynchronous

Kotlinx Coroutines - Kotlin coroutines GitHub Repo stars Maven Central

Library support for Kotlin coroutines

Reaktive - Reactive Extensions GitHub Repo stars Maven Central

Kotlin multiplatform implementation of Reactive Extensions.

Kotlinx Atomicfu - atomic operations GitHub Repo stars Maven Central

The idiomatic way to use atomic operations in Kotlin.

Stately - Kotlin Multiplatform State Library GitHub Repo stars Maven Central

Stately is a state utility library to facilitate state management in Kotlin Multiplatform.

CoroutineWorker - Workers for Kotlin Native GitHub Repo stars Maven Central

Kotlin Coroutine-based workers for native

Koru - Coroutine wrappers for Kotlin Native GitHub Repo stars Maven Central

Automatically generates wrappers for suspend functions and Flow for easy access from Swift code in Kotlin Multiplatform projects.

KMP-NativeCoroutines - Swift wrapper for Kotlin Coroutines GitHub Repo stars Maven Central

Library to use Kotlin Coroutines from Swift code in KMP apps

๐ŸŽต Audio

Korau - Kotlin cORoutines AUdio GitHub Repo stars Maven Central

Pure Kotlin WAV, MP3 and OGG vorbis decoders

๐ŸŽจ Graphics

MOKO Graphics - Graphics primitives GitHub Repo stars Maven Central

This is a Kotlin Multiplatform library that provides graphics primitives to common code.

Korim - Imaging utilities GitHub Repo stars Maven Central

Kotlin cORoutines IMaging, Bitmap and Vector graphics for Multiplatform Kotlin

๐Ÿงฉ Service SDK

Firebase Kotlin SDK - A Kotlin-first SDK for Firebase GitHub Repo stars Maven Central

The Firebase Kotlin SDK is a Kotlin-first SDK for Firebase. It's API is similar to the Firebase Android SDK Kotlin Extensions but also supports multiplatform projects, enabling you to use Firebase directly from your common source targeting iOS, Android or JS.

VK SDK Kotlin - Unofficial VK SDK GitHub Repo stars Maven Central

Create a chat-bot for VK.com in a few lines of code, use the API and forget about the limitations

bitcoin-kmp - Kotlin Multiplatform Bitcoin Library GitHub Repo stars Maven Central

This is a simple Kotlin Multiplatform library which implements most of the bitcoin protocol

MOKO Tensorflow - Mobile Kotlin TensorFlow GitHub Repo stars Maven Central

This is a Kotlin MultiPlatform library that provides access to TensorFlow-Lite functionality from common source set.

qBittorrent - wrapper for the qBittorrent Web API GitHub Repo stars Maven Central

Multiplatform Kotlin wrapper for the qBittorrent Web API using Ktor.

Cognito-idp - AWS Cognito Identity Provider GitHub Repo stars Maven Central

Lightweight AWS Cognito Identity Provider client for Kotlin Multiplatform and Typescript projects.

TMDb API - access to TMDb API GitHub Repo stars Maven Central

This library gives access to TMDb API version 3 and 4 for mobile, desktop, and web applications. It supports Swift, Kotlin, and JavaScript by setting up as a Kotlin Multiplatform project.

๐Ÿงฎ Arithmetic

KBigNum - Big Numbers GitHub Repo stars Maven Central

Library for Big Numbers

BigNum - Big Numbers GitHub Repo stars Maven Central

Kotlin Multiplatform BigNum library is a pure kotlin implementation of arbitrary precision arithmetic operations. It follows the same approach as Kotlin does on JVM to keep the interface familiar.

๐Ÿ”ง Utils

UUID - UUID generator GitHub Repo stars Maven Central

Kotlin Multiplatform UUID generator

Colormath - Multiplatform Kotlin color conversion and manipulation GitHub Repo stars Maven Central

Colormath is a Kotlin Multiplatform library for color manipulation and conversion.

GEOK - Kotlin geometry library GitHub Repo stars Maven Central

Small geometry library for Java and Kotlin. Contains useful basic utilities that require on most application.

fluid-currency - currency library GitHub Repo stars Maven Central

Kotlin multiplatform currency library.

fluid-country - country library GitHub Repo stars Maven Central

Kotlin multiplatform country library.

Kmem - Data primitives GitHub Repo stars Maven Central

Kmem is bit, array and fast memory utilities library for multiplatform Kotlin

KaseChange - convert strings between various case formats GitHub Repo stars Maven Central

Multiplatform Kotlin library to convert strings between various case formats including Camel Case, Snake Case, Pascal Case and Kebab Case

FuzzyWuzzy-Kotlin - Fuzzy string matching for Kotlin GitHub Repo stars Maven Central

Useful for selecting the closest matching string from a collection of strings. Various algorithms are available.

Suggest your an idea

What libraries are you missing?

Authors

https://github.com/terrakok/kmm-awesome/graphs/contributors

Contribution guide

Feel free to contribute. Follow common style and welcome! :)

License

MIT License

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
You might also like...
Demo for Jetbrains webinar on "How to share data layer in KMM"

RealmDemo Demo application demostrating how to share data layer in an KMM project using Realm Kotlin SDK and Atlas App Service. Webinar Link : https:/

An Awesome Kotlin Location library to retrieve location merely in 3 lines of code
An Awesome Kotlin Location library to retrieve location merely in 3 lines of code

An Awesome Kotlin Location library to retrieve location merely in 3 lines of code

KaMP Kit by Touchlab is a collection of code and tools designed to get your mobile team started quickly with Kotlin Multiplatform.
KaMP Kit by Touchlab is a collection of code and tools designed to get your mobile team started quickly with Kotlin Multiplatform.

KaMP Kit Welcome to the KaMP Kit! About Goal The goal of the KaMP Kit is to facilitate your evaluation of Kotlin Multiplatform (aka KMP). It is a coll

๐Ÿ“š  Sample Android Components Architecture on a modular word focused on the scalability, testability and maintainability written in Kotlin, following best practices using Jetpack.
๐Ÿ“š Sample Android Components Architecture on a modular word focused on the scalability, testability and maintainability written in Kotlin, following best practices using Jetpack.

Android Components Architecture in a Modular Word Android Components Architecture in a Modular Word is a sample project that presents modern, 2020 app

๐Ÿš€ Sample Android Clean Architecture on JetRorty App focused on the scalability, testability and maintainability written in Kotlin, following best practices using Jetpack with Compose.
๐Ÿš€ Sample Android Clean Architecture on JetRorty App focused on the scalability, testability and maintainability written in Kotlin, following best practices using Jetpack with Compose.

Android Clean Architecture in Rorty is a sample project that presents modern, approach to Android application development using Kotlin and latest tech-stack.

๐ŸผDebug Bottle is an Android runtime debug / develop tools written using kotlin language.
๐ŸผDebug Bottle is an Android runtime debug / develop tools written using kotlin language.

๐Ÿ‡จ๐Ÿ‡ณ ไธญๆ–‡ / ๐Ÿ‡ฏ๐Ÿ‡ต ๆ—ฅๆœฌ่ชž / ๐Ÿ‡ฌ๐Ÿ‡ง English ๐Ÿผ Debug Bottle An Android debug / develop tools written using Kotlin language. All the features in Debug bottle are

REST countries sample app that loads information from REST countries API V3 to show an approach to using some of the best practices in Android Development.
REST countries sample app that loads information from REST countries API V3 to show an approach to using some of the best practices in Android Development.

MAJORITY assignment solution in Kotlin via MVVM Repository Pattern. REST countries sample app that loads information from REST countries API V3 to sho

Main goal of this project is to find the best route from one country to another

Route-service Main goal of this project is to find the best route from one country to another. Data is presented as json format. I've implemented A* p

 Sample Android Clean Architecture on App focused on written in Kotlin, following best practices using Jetpack with Compose.
Sample Android Clean Architecture on App focused on written in Kotlin, following best practices using Jetpack with Compose.

Rick And Morty Jetpack Compose Sample App Table of Contents About the Project Architecture Features Environment Setup Contact About The Project This S

Releases(#8)
  • #8(Jan 4, 2023)

    New awesome libraries and SDK

    kmp-xlog - logger GitHub Repo stars Maven Central

    KMP wrapper for tencent mars xlog.

    Store 5 - Kotlin Library for Async Data Loading and Caching GitHub Repo stars Maven Central

    A Store is responsible for managing a particular data request. When you create an implementation of a Store, you provide it with a Fetcher, a function that defines how data will be fetched over network. You can also define how your Store will cache data in-memory and on-disk.

    Flower - Flower simplifies networking and database caching on Android/Multiplatform. GitHub Repo stars Maven Central

    Flower is a Kotlin multi-platform library that makes networking and database caching easy. It enables developers to fetch network resources and use them as is OR combine them with local database at single place with fault-tolerant architecture.

    SQLlin - Low-level API for SQLite in Kotlin Multiplatform GitHub Repo stars Maven Central

    SQLlin is a Kotlin Multiplatform SQLite library that based on DSL and KSP. You can write SQL statements with your Kotlin code and these can be verified by Kotlin compiler.

    KMM-ViewModel - KMM ViewModels GitHub Repo stars Maven Central

    A library that allows you to share ViewModels between Android and iOS.

    Ballast - State Management framework GitHub Repo stars Maven Central

    Opinionated Application State Management framework for Kotlin Multiplatform

    Diglol Crypto - Diglol Crypto for Kotlin Multiplatform. GitHub Repo stars Maven Central

    Lots of crypto algorithms for Kotlin Multiplatform.

    XmlUtil - Component of the XMLUtil library GitHub Repo stars Maven Central

    XmlUtil is a set of packages that supports multiplatform XML in Kotlin.

    Sentry SDK - Sentry Kotlin Multiplatform SDK GitHub Repo stars

    This project is an experimental SDK for Kotlin Multiplatform. This SDK is a wrapper around different platforms such as JVM, Android, iOS, macOS, watchOS, tvOS that can be used on Kotlin Multiplatform.

    ConfigCat - Kotlin Multiplatform SDK for ConfigCat GitHub Repo stars Maven Central

    Kotlin Multiplatform SDK for ConfigCat, a feature flag, feature toggle, and configuration management service. That lets you launch new features and change your software configuration remotely without actually (re)deploying code. ConfigCat even helps you do controlled roll-outs like canary releases and blue-green deployments.

    Uri KMP - A library for working with URIs in Kotlin Multiplatform GitHub Repo stars Maven Central

    A library for working with URIs in Kotlin Multiplatform

    Diglol Encoding - Common encodings for Kotlin Multiplatform. GitHub Repo stars Maven Central

    Diglol Encoding provides Hex/Base16, Base32, Base64 encodings for Kotlin Multiplatform.

    Diglol Id - A global Id generator for Kotlin Multiplatform. GitHub Repo stars Maven Central

    A global Id generator for Kotlin Multiplatform. It modifies the timestamp to 5 bytes based on Xid.

    Source code(tar.gz)
    Source code(zip)
  • #7(Dec 8, 2022)

    New awesome book

    ๐Ÿ“š Simplifying Application Development with Kotlin Multiplatform Mobile

    New awesome libraries and SDK

    KStore - File-based object storage GitHub Repo stars Maven Central

    A Kotlin multiplatform library that assists in saving and restoring objects to and from disk

    Kotlin Bloc - UI framework for Kotlin Multiplatform GitHub Repo stars Maven Central

    Kotlin Bloc is a simple, predictable and composable UI framework for Kotlin Multiplatform supporting Android, iOS and JVM.

    Analytics - analytics facade GitHub Repo stars Maven Central

    Kotlin Multiplatform library as a simple facade or abstraction for analytics.

    zipline - Run Kotlin/JS libraries in Kotlin/JVM and Kotlin/Native programs GitHub Repo stars Maven Central

    Zipline works by embedding the QuickJS JavaScript engine in your Kotlin/JVM or Kotlin/Native program. It's a small and fast JavaScript engine that's well-suited to embedding in applications.

    Source code(tar.gz)
    Source code(zip)
  • #6(Nov 18, 2022)

    New awesome tools

    ๐Ÿ›  gradle-buildconfig-plugin gradle plugin

    A plugin for generating BuildConstants for any kind of Gradle projects: Java, Kotlin, Groovy, etc. Designed for KTS scripts.

    ๐Ÿ›  KDoctor command-line tool

    KDoctor is a command-line tool that helps to set up the environment for Kotlin Multiplatform Mobile app development. It ensures that all required components are properly installed and ready for use. If something is missed or not configured Kdoctor highlights the problem and suggests how to fix the problem.

    New awesome libraries and SDK

    Ktorfit - Retrofit for Kotlin Multiplatform on KTS GitHub Repo stars Maven Central

    HTTP client / Kotlin Symbol Processor for Kotlin Multiplatform (Android,Js, Jvm , Native, iOS) using KSP and Ktor clients inspired by Retrofit https://foso.github.io/Ktorfit

    VisualFSM - FSM-based MVI framework GitHub Repo stars MavenCentral

    VisualFSM is a Kotlin Multiplatform library for implements an FSM-based (Finite-state machine) MVI pattern and a set of tools for visualization and analysis of FSM's diagram of states.

    multiplatform-paging - Pagination library for KMM by Cash App GitHub Repo stars Maven Central

    A Kotlin Multiplatform library for pagination with the same API as AndroidX Paging

    Turbine - test library GitHub Repo stars Maven Central

    A small testing library for kotlinx.coroutines Flow

    Kontrol - Debug menu GitHub Repo stars Maven Central

    Kotlin Multiplatform library for creating a debugging menu.

    Source code(tar.gz)
    Source code(zip)
  • #5(Mar 21, 2022)

    New awesome link

    ๐Ÿ“š KMM Book

    New awesome tools

    ๐Ÿ›  Swift Package integration ๐Ÿ›  Carthage integration

    New awesome libraries and SDK

    CoRed - Opinionated Redux-like implementation GitHub Repo stars Maven Central

    CoRed is Redux-like implementation that maintains the benefits of Redux's core idea without the boilerplate. No more action types, action creators, switch statements or complicated setup. It is Kotlin and it has coroutine supported right out-of-the-box.

    Kotlin Object Notation - Lightweight DSL to build fluid JSON trees GitHub Repo stars Maven Central

    Kotlin Object Notation - Lightweight DSL to build fluid JSON trees

    Growth Book SDK - GrowthBook Kotlin SDK GitHub Repo stars Maven Central

    GrowthBook is an open-source platform for feature flagging and a/b testing built for data teams, engineers, and product managers. It's great whether you're looking to just analyze experiment results or looking to make it easier to deploy code.

    ByteBuffer - Kotlin Multiplatform bytebuffer/byte[] wrapper GitHub Repo stars Maven Central

    A kotlin multiplatform library that allows you to allocate and modify byte[] natively using an API similar to Java's ByteBuffer API.

    Kase64 - Base64 encoder/decoder GitHub Repo stars Maven Central

    Base64 encoder/decoder for Kotlin/Multiplatform. Supports Android, iOS, JavaScript and plain JVM environments.

    Source code(tar.gz)
    Source code(zip)
  • #4(Feb 2, 2022)

  • #3(Jan 5, 2022)

  • #2(Nov 21, 2021)

  • #1(Oct 6, 2021)

    First Release!

    Added a huge number of tools and libraries for Kotlin multiplatform mobile development.

    Source code(tar.gz)
    Source code(zip)
Owner
Konstantin
Kotlin developer
Konstantin
An awesome collaborative collection of Kotlin Multiplatform libraries

Awesome Kotlin Multiplatform Awesome Projects Updated 33 November 21, 2021 Contents Guides Dependency Injection Database NoSQL SQL Extension Reactive

Matteo Crippa 5 Dec 12, 2022
A collaborative list of awesome jetpack compose resources.

Awesome Jetpack compose A collaborative list of awesome jetpack compose resources. Featured in Content Official Documentation Conference talks Article

Naveen T P 289 Nov 15, 2022
Ricky and Morty episode guide using KMM and Apollo GraphQL Native

Ricky And Morty Episodes - Kmm Ricky and Morty episode guide using KMM and Apollo GraphQL Native This is a simple guide on how to create an KMM projec

Julio Ribeiro 2 Apr 15, 2022
Template (pure) for KMM application with DI support

KMM di template Template (pure) for KMM application with DI support. Uses Multiplatform-DI for Dependency Injection Features Common architecture (VIP)

Anna Zharkova 8 Oct 18, 2022
use kmm to write a flutter plugin

use KMM to write a flutter plugin The reference plugin_codelab example plugin that accompanies the How to write a Flutter plugin codelab. I changed pl

libill 8 Nov 9, 2022
An unofficial Mangadex app using KMM

Mochi An unofficial Mangadex app using KMM. The app uses Mangadex new Public API, which may change at any time. โ˜ข๏ธ !!!Currently in Production. Not int

Michael24884 2 Jan 25, 2022
KMM RSS Reader: an open-source, mobile, cross-platform application built with Kotlin Multiplatform Mobile.

KMM RSS Reader This is an open-source, mobile, cross-platform application built with Kotlin Multiplatform Mobile. It's a simple RSS reader, and you ca

Kotlin 1.4k Jan 4, 2023
Kamper - a small KMM/KMP library that provides performance monitoring for your app.

?? Kamper Kamper is a KMP/KMM library that implements a unified way to track application performances. The solution is based on plugin design patterns

S. Mellouk 31 Jun 10, 2022
Example KMM app for showing about layered architecture

Layered Architecture in a Kotlin Multiplatform project This project was created by a series of posts you can find on my blog https://jflavio.com The d

Jose Flavio Quispe Irrazรกbal 13 Oct 10, 2022
A simple KMM app

Getting Ready Install latest Android Studio version (Iโ€™m using RC Dolphin). Make sure your Kotlin Plugin has 1.7.x version. Make sure you have Ruby ge

Lena Stepanova 2 Sep 20, 2022