• Stars
    star
    2,040
  • Rank 22,678 (Top 0.5 %)
  • Language
  • Created over 5 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Kotlin Multiplatform Libraries. Welcome PR if you find or create new Kotlin Multiplatform Library.

Kotlin Multiplatform Libraries

Libraries

Network

Http

  • Ktor - Framework for quickly creating connected applications in Kotlin with minimal effort
    badge badge badge badge badge badge badge

  • ktor-client-oauth-feature - Ktor Client Feature for handling OAuth token refreshes
    badge badge

  • kmp-tor - Embed Tor into your application.
    badge badge

  • Ktorfit - HTTP client / Kotlin Symbol Processor for Kotlin Multiplatform (Js, Jvm, Android, Native, iOS) using KSP and Ktor clients inspired by Retrofit
    badge badge badge badge badge badge badge

  • fuel - The easiest HTTP networking library for Kotlin backed by Kotlinx Coroutines.
    badge badge

GraphQL

  • apollo - Multiplatform official GraphQL client.
    badge badge badge

  • suparnatural-graphql - Strict type safe GraphQL client with support for composable links.
    badge badge badge

  • kgql - GraphQL Document wrapper generator for Kotlin Multiplatform Project and Android

Real-time communication

JSON-RPC

  • apollo -JSON-RPC Kotlin Multiplatform client.
    badge badge badge badge

Stomp

  • krossbow - A Kotlin multiplatform coroutine-based STOMP client over websockets
    badge badge badge

Utility

  • Connectivity status - Monitor the internet connection status of your device on Android and iOS.
    badge badge

Authentication

  • cognito-idp - Lightweight AWS Cognito Identity Provider client for Kotlin Multiplatform projects.
    badge badge badge badge

Repository

  • Store - A Kotlin Multiplatform library for building network-resilient applications.
    badge badge badge badge

Serializer

  • kotlinx.serialization (official) - Kotlin multiplatform / multi-format serialization
    badge badge badge badge badge badge badge badge badge badge

  • YAKL - A YAML 1.2 processor
    badge badge

  • KoAP - CoAP encoder/decoder with support for UDP (RFC 7252), TCP (RFC 8323) and Observe (RFC 7641).
    badge badge

  • Pbandk - Kotlin code generator and runtime for Protocol Buffers
    badge badge badge badge badge badge

  • Kase64 - Base64 encoder/decoder for Kotlin/Multiplatform. Supports standard and URL-safe encodings.
    badge badge badge badge badge badge badge badge badge

  • Kex - Hex string encoder/decoder for Kotlin/Multiplatform.
    badge badge badge badge badge badge badge badge badge

  • Ktoml - MPP serialization library (decoder/encoder) for TOML format.
    badge badge badge badge badge badge badge badge badge

  • encoding - Rfc 4648 Section 4-8 compliant encoding (Base 16, 32 Crockford, 32 Default, 32 Hex, 64 Default, 64 Url Safe).
    badge badge badge badge badge badge badge badge badge badge badge badge badge badge

  • parcelize - Implement Android Parcelable from common code.
    badge badge badge badge badge badge badge badge badge badge badge badge badge badge

Storage

RDB

  • SQLDelight - Generates typesafe Kotlin APIs from SQL.
    badge badge badge badge badge badge badge badge badge

  • SQLiter - Minimal multiplatform sqlite library
    badge badge badge badge badge badge

  • Door - Room for Kotlin Multiplatform.
    badge badge badge

NoSQL

  • Realm - Kotlin Multiplatform and Android SDK for the Realm Mobile Database: Build Better Apps Faster.
    badge badge

  • Kodein-DB - Embedded NoSQL database
    badge badge badge badge badge badge badge

KVS

  • multiplatform-settings - A Kotlin Multiplatform library for saving simple key-value data.
    badge badge badge badge badge badge badge badge badge

  • KVault - Secure key-value storage for Kotlin Multiplatform projects.
    badge badge

  • Kissme - Kissme: Kotlin Secure Storage Multiplatform
    badge badge

  • Multiplatform-Preferences - Kotlin Multi Platform Preferences, for android an ios : SharedPreferences & NSUserDefault.
    badge badge

  • kds - Multiplatform coroutine-based kotlin library for saving Serializables with kotlinx.serialization and delegates.
    badge badge badge badge

  • Kottage - Kotlin Multiplatform Key-Value Store Local Cache Storage for Single Source of Truth.
    badge badge badge badge badge badge badge badge badge

FILE

  • okio - A modern I/O library for Android, Java, and Kotlin Multiplatform.
    badge badge badge badge

  • suparnatural-fs - Kotlin Multi Platform File System access library for iOS and Android.
    badge badge

  • suparnatural-cache - A superfast, thread safe in-memory cache with configurable hashing schemes backed by persistent stores with blocking/non-blocking I/O.
    badge badge

  • KStore - A tiny Kotlin multiplatform library that assists in saving and restoring objects to and from disk using kotlinx.coroutines, kotlinx.serialisation and okio.
    badge badge badge badge badge badge badge badge badge badge

File System

  • Kfswatch - Kotlin Multiplatform File System Watcher
    badge badge badge badge badge badge badge badge badge

DI

  • Kodein-DI - Painless Kotlin Dependency Injection
    badge badge badge badge badge badge badge badge badge badge

  • Koin - A pragmatic lightweight dependency injection framework for Kotlin
    badge badge badge badge badge badge badge badge badge

  • PopKorn - Forget about modules and components. DI can be simple.
    badge badge badge badge badge

  • kotlin-inject - Dependency injection lib for kotlin.
    badge badge badge badge badge badge badge badge

  • Koject - DI Container library for Kotlin Multiplatform.
    badge badge badge badge badge badge badge badge badge

Image

  • korim - Kotlin cORoutines IMaging, Bitmap and Vector graphics for Multiplatform Kotlin
    badge badge badge badge badge badge badge badge badge

Audio

  • korau - Pure Kotlin WAV, MP3 and OGG vorbis decoders
    badge badge badge badge badge badge badge badge badge

Bluetooth

  • Blue-Falcon - A Bluetooth kotlin multiplatform "Cross-Platform" library for iOS and Android
    badge badge badge

  • Kable - Simple Coroutines-powered API for interacting with Bluetooth Low Energy devices.
    badge badge badge badge

Reactive

Rx

  • Reaktive - Kotlin multi-platform implementation of Reactive Extensions
    badge badge badge badge badge badge badge badge badge

  • RxCommon - Multiplatform implementation of ReactiveX providing a common way to build one set of business logic for native, iOS, Javascript, Android, JVM, and other platforms
    badge badge badge badge

LiveData(Android)

Utility

Asynchronous

  • coroutine (official) - Support for Kotlin coroutine.
    badge badge badge badge badge badge badge badge badge

  • suparnatural-concurrency - Unified APIs such as Workers, Schedulers for cross-platform multithreading on iOS and Android.
    badge badge

  • Koru - Coroutine wrappers for Kotlin Native generated from annotations.
    badge badge badge badge badge badge

  • KMP-NativeCoroutines - Library to use Kotlin Coroutines from Swift code in KMP apps.
    badge badge badge badge

  • FlowExt - Kotlinx Coroutines Flow Extensions. Extensions to the Kotlin Flow library.
    badge badge badge badge badge badge badge badge badge

Date, Time

  • kotlinx-datetime - Official date and time library
    badge badge badge badge badge badge badge badge badge

  • klock - Multiplatform Date and time library for Kotlin
    badge badge badge badge badge badge badge badge badge

  • island-time - A Kotlin Multiplatform library for working with dates and times
    badge badge badge badge badge badge badge

  • time - Type-safe time calculations in Kotlin, on any platform
    badge badge badge badge badge badge

  • time - Type-safe time periods for the Kotlinx-datetime multiplatform date/time library
    badge badge badge badge badge badge badge

  • fluid-time - Kotlin multiplatform date & time library
    badge badge badge

  • kcron - Kotlin multiplatform Cron library
    badge badge badge badge

Semantic Versioning

  • SemVer-KMP - A Kotlin library for Semantic Versioning with ranges and other features.
    badge badge badge badge badge

  • kotlin-semver - Semantic Versioning library for Kotlin Multiplatform.
    badge badge badge badge badge badge badge badge badge badge badge badge badge

EventBus

  • Multiplatform-Bus - Kotlin event-bus compatible with Android & native iOS.
    badge badge

  • Event4k - MultiPlatform Kotlin EventBus library - simple, bidirectional, concurrent.
    badge badge badge badge badge badge badge badge badge badge badge badge badge

Number

Hashing

  • kotlinx-murmurhash - Multiplatform library for MurmurHash, a non-cryptographic hash function for general hash-based lookup focused on simplicity and performance.
    badge badge badge badge badge badge badge ![badge][badge-macos] badge badge

Cipher

  • krypt - Cryptography library. Support for SecureRandom, Hash(MD5/SHA1/SHA256), AES.
    badge badge badge badge badge badge badge

  • kotlin-multiplatform-libsodium - A Kotlin Multiplatform wrapper for Libsodium cryptography library.
    badge badge badge badge badge badge badge badge badge

String Utils

  • FuzzyWuzzy-Kotlin - Fuzzy string matching on collections. Port of python & java library.

badge badge badge badge badge badge badge badge

  • kasechange - Multiplatform Kotlin library to convert strings between various case formats including Camel Case, Snake Case, Pascal Case and Kebab Case.
    badge badge badge badge badge badge badge badge badge badge

  • kotlin-multiplatform-diff - Multiplatform Kotlin library for calculating text differences.
    badge badge badge badge badge

  • doistx-normalize -- Kotlin Multiplatform library for string unicode normalization (UAX #15).
    badge badge badge badge badge badge badge badge badge

Input/Output

  • keyboard-mouse-kt - Multiplatform Kotlin library for interacting with global keyboard and mouse events and states.
    badge badge badge badge

Analytics

Atomic

  • AtomicFu - The idiomatic way to use atomic operations in Kotlin
    badge badge badge badge badge badge badge badge badge

UUID

  • uuid - Kotlin Multiplatform UUID
    badge badge badge badge badge badge badge

Paging

Kotlin/Native

  • Stately - The library is set of multithreaded collection classes that will allow multithreaded mutation in Kotlin/Native.
    badge badge badge badge badge badge

  • coroutineworker - Kotlin Coroutine-based workers for native
    badge badge badge badge

Units

  • Measured - Intuitive, type-safe units of measure.
    badge badge

Monads

  • Kotlin utilities - Scala utility types: Option, Either, Try for Kotlin Multiplatform.
    badge badge badge badge badge badge badge badge badge badge

  • kotlin-result - A multiplatform Result monad for modelling success or failure operations.
    badge badge badge badge badge badge badge badge badge

  • Résultat - A fork of Kotlin Result with a loading state.
    badge badge badge badge badge badge badge badge

  • value-clazz - Functionally equivalent to a Kotlin value class that implements an interface, but inheritance based and compiles to platform code.
    badge badge badge badge badge badge badge badge badge badge badge badge badge badge

Debug

Logging

  • Napier - Logging library for Kotlin Multiplatform.
    badge badge badge badge badge badge badge badge badge badge

  • KmLogging - High performance, composable multiplatform logging.
    badge badge badge badge badge badge badge

  • klogger - Logging library for Kotlin Multiplatform.
    badge badge badge badge badge badge badge

  • Multiplatform-Log - Logging library for Kotlin Multiplatform.
    badge badge

  • Kermit - Kotlin Multiplatform logging utility with composable log outputs and prebuilt loggers.
    badge badge badge badge badge badge badge

  • Log4k - Logging library for Kotlin Multiplatform.
    badge badge badge badge badge badge badge

  • Cabret-Log - Method call logging for Kotlin Multiplatform
    badge badge badge badge badge

  • KmmAnkoLogger - fork of the AnkoLogger for use it with Kotlin Multiplatform Mobile
    badge badge badge

Test

  • Atrium - A multiplatform assertion library for Kotlin.
    badge badge badge

  • konform - Portable validations.
    badge badge

  • kotest-assertions - Multiplatform assertions and test utilities.
    badge badge badge badge badge badge badge badge badge

  • kotest-framework - Multiplatform test framework for Kotlin.
    badge badge

  • mockk - Mocking library for test.
    badge badge

  • Mockative - Mocking for Kotlin/Native and Kotlin Multiplatform using the Kotlin Symbol Processing API (KSP)
    badge badge badge badge badge badge badge

  • MocKMP - A Kotlin/Multiplatform Kotlin Symbol Processor that generates Mocks & Fakes.
    badge badge badge badge

  • kotlinx-resources - Multiplatform library for reading resources in tests.
    badge badge badge badge badge badge badge badge badge badge

Annotation Processor

  • MpApt - Kotlin Native/JS/JVM Annotation Processor library
    badge badge badge badge badge badge

  • kotlin-native-suspend-function-callback - Kotlin Multiplatform compiler plugin to generate a callback implementation for suspended functions so they are visible from Kotlin Native
    badge badge badge

GUI

  • moko-widgets - Declarative UI and screens management in common code for mobile (android & ios) Kotlin Multiplatform development
    badge badge

  • kgl - This library provides a thin OOP wrapper with DSLs to make programming with vulkan easier.
    badge badge badge badge badge

  • kotlin-libui - Kotlin/Native interop to libui: a portable GUI library
    badge badge badge

  • kotlin-material-ui - Kotlin Wrapper Library of Material-UI
    badge

  • muirwik - Kotlin Wrapper Library of Material-UI
    badge

  • compose-macos-theme - Multiplatform MacOS theme written in Compose UI
    badge badge

  • componentbox - A Kotlin multiplatform library for building dynamic server-driven UI
    badge badge badge badge

  • kontrol - A Kotlin Multiplatform library for creating a debugging menu
    badge badge

Command Line Interface

  • Clikt - Multiplatform command line interface parsing for Kotlin
    badge badge badge badge badge

  • Command_Parser - Multiplatform command parser using kotlinx.coroutines
    badge badge badge badge

  • Mordant - Multiplatform text styling for Kotlin command-line applications
    badge badge badge badge badge

Firebase

  • Firebase Kotlin SDK - Firebase SDK for Kotlin Multiplatform projects (Firebase Authentication, Realtime Database, Cloud Firestore, Cloud Functions, Cloud Messaging and Cloud Storage).
    badge badge badge

Architecture

  • kompass - Kotlin Multiplatform Router for Android and iOS

  • Decompose - Kotlin Multiplatform lifecycle-aware business logic components (aka BLoCs) with routing functionality and pluggable UI (Jetpack Compose, SwiftUI, JS React, etc.), inspired by Badoos RIBs fork of the Uber RIBs framework.
    badge badge badge badge badge badge badge

  • oolong - MVU for Kotlin Multiplatform

  • moko-mvvm - MVVM architecture components for mobile multiplatform with LiveData (iOS and Android)
    badge badge

  • MVIKotlin - MVI framework for Kotlin Multiplatform.
    badge badge badge badge badge badge badge

  • Orbit MVI - MVI framework for Kotlin Multiplatform.
    badge badge

  • ReduxKotlin - Redux implementation for Kotlin (supports multiplatform JVM, native, JS, WASM)
    badge badge badge badge badge badge badge badge

  • ReKamp - Port of ReKotlin to Kotlin Multiplatform, which corresponds to ReKotlin/1.0.4.
    badge badge badge

  • Kaskade - Simplifying UI state management in Kotlin Multiplatform.
    badge badge badge badge

  • Flywheel - A simple and predictable state management library inspired by Redux and a few more. Fully built on top of coroutines using the concept of actors.
    badge badge badge badge badge badge badge badge badge

  • KStateMachine - KStateMachine is a Kotlin DSL library for creating state machines and hierarchical state machines (statecharts).
    badge badge badge

  • Premo — Presentation Model (aka View Model) and Navigation. Focus on writing logic instead of solving common and boring UI related issues: lifecycle, persistence, navigation, etc.
    badge badge badge badge

  • multiplatform-viewmodel — Shared ViewModel in Kotlin Multiplatform
    badge badge badge badge badge

  • Direkt - Kotlin Multiplatform Router for Android, iOS, Js
    badge badge badge

  • compose_bloc - State Management and Navigation Library for Jetpack Compose and Compose Multiplatform.
    badge badge badge badge badge

  • Ballast - Opinionated Application State Management framework for Kotlin Multiplatform

  • Kotlin Bloc - A simple, predictable and composable UI framework for Kotlin Multiplatform
    badge badge badge

  • kmp-viewmodel - Shared ViewModel in Kotlin Multiplatform - A Kotlin Multiplatform library that provides shared MVVM for UI applications. Components are lifecycle-aware on Android.
    badge badge badge badge badge badge badge

Project templates

  • moko-template - Template project of a Mobile (Android & iOS) Kotlin MultiPlatform project with the MOKO libraries and modularized architecture
    badge badge

  • KMMT - KMMT is a Multi-Module KMM based project template designed to simplify the KMM development. It uses a simplified approach that can be shared both in android and iOS easily. This template include network module, persistence module, resource module, analytics module ( with ios native library integration), domain module, presenter module etc.
    badge badge

Docs

Build & Development Tools

Artificial Intelligence

Symbolic AI

  • 2P-Kt - A Kotlin-based, multi-platform, open ecosystem for symbolic artificial intelligence (AI) and logic programming (LP), currently supporting many facilities for LP and a full-fledged, extensible, ISO-standard Prolog solver.
    badge badge badge

Social

tgbotapi

  • tgbotapi - Strongly-typed API wrapper for Telegram Bot API with fully covered API and a lot of additional DSLs on top of base API.

badge badgebadge

Math

Contribute

Welcome contribute! Please read the contribution guidelines first.

More Repositories

1

ExpandableLayout

[Deprecated] An android library that brings the expandable layout with various animation. You can include optional contents and use everywhere.
Java
1,656
star
2

Napier

Logging library for Kotlin Multiplatform
Kotlin
587
star
3

CompoundIconTextView

An android library that is able to set a vector drawable at text view pre-Lollipop.
Java
247
star
4

OkWear

Easily connection between Android wear and Handheld (Mobile device)
Java
124
star
5

ExoPlayerManager

An android library that wraps the ExoPlayer and the IMA Android SDK which plays a video advertisement. This is written in Kotlin.
Kotlin
78
star
6

dagger-hilt-example

This repository is an example of the dagger android hilt plugin using an android view model
Kotlin
59
star
7

mpp-example

This project is a minimum example of Kotlin Multiplatform Project.
Kotlin
32
star
8

DaggerInstantApps

Instant apps sample using dagger2 android support.
Kotlin
32
star
9

flutter-graphql-example

Dart
19
star
10

KotlinNativeSample

KotlinNativeSampleProject, Android, iOS
Swift
16
star
11

multithread-mpp

This is the best architecture of Kotlin Multiplatform Project I think! This project works on background thread using kotlinx.Coroutines.
Kotlin
16
star
12

KotlinMultiplatformAndoridParcelize

Use the Parcelize Annotation of the Kotlin Android Extensions in Kotin Multiplatform projects
Swift
15
star
13

Java2KotlinPractice

Java
13
star
14

flutter-parallax-walkthrough

Dart
5
star
15

git_info_plus

Get git information from within the Flutter application
Dart
4
star
16

MaterialColorPaletteTemplate

This is values of color for Android
4
star
17

gmail-to-calendar

JavaScript
3
star
18

flutter-hierarchical-transitions

This is an example of hierarchical transitions on the flutter app.
Dart
1
star
19

Vim-Commands

convenience commands
1
star
20

dotfiles

my vimrc etc...
Shell
1
star
21

aakira

1
star