Browse Kotlin Multiplatform libraries

index data from klibs.io
Sort
Paginator10.1.1
105

Powerful, flexible pagination toolkit with bidirectional navigation, arbitrary jumps, bookmarks, caching, element-level CRUD, capacity/incomplete-page handling, reactive snapshot flows, parallel loading and state serialization.

AndroidJSJVMNativeWasm·jamal-wia·MIT License
kotlin-multiplatform-diff1.3.0
1031 used by

Port of java-diff-utils offering diff computation capabilities across multiple platforms. Excludes unified diff and diff-utils-jgit features due to complex dependencies.

JSJVMNativeWasm·petertrr·Apache License 2.0
kotlin-cacheable0.0.3
103

Annotation-based caching library enables seamless caching of function results with `@Cacheable`. Supports parameters for cache size limit and thread-safe execution, ensuring efficient and controlled caching mechanisms.

JSJVMNative·Mori-Atsushi·Apache License 2.0
re.this0.4.3
1031 used by

Coroutine-based Redis client enables efficient interaction with Redis using raw sockets and connection pooling, supporting comprehensive Redis commands, pipelining, transactions, and pub/sub functionalities.

JSJVMNativeWasm·vendelieu·Apache License 2.0
Alert-KMP2.0.0
103

Facilitates native notification displays across Android, iOS, Web, and Desktop using JetBrains Compose. Features customizable notifications, event handling, and local notifications support with a unified API.

AndroidJSJVMNativeWasm·KhubaibKhan4·MIT License
ktmidi0.12.0
1022 used by

Library facilitates MIDI Access API and MIDI data processing, supporting both MIDI 1.0 and MIDI 2.0 protocols. Features include MIDI message handling, Standard MIDI File manipulation, and MIDI player functionality, with platform-specific implementations and MIDI-CI support.

AndroidJSJVMNativeWasm·atsushieno·MIT License
kasechange1.4.1
1001 used by

Converts strings between various case formats including snake_case, camelCase, and PascalCase, supports custom cases, and provides word splitting functionality. Ideal for consistent case formatting across diverse text processing tasks.

AndroidJSJVMNativeWasm·pearxteam·Mozilla Public License 2.0
Arbor3.0.136
99

Logging library experiment with a usage pattern similar to Timber, featuring platform-specific implementations and custom seedlings. Supports automatic log tagging, Kotlin extensions, and seamless migration from Timber.

JSJVMNativeWasm·ToxicBakery·Apache License 2.0
selfie3.1.1
97

Snapshot testing and memoization tool for efficient API call management, featuring zero-config setup, inline or disk snapshots, and automatic garbage collection. Supports multiple facets for comprehensive testing.

JSJVM·diffplug·Apache License 2.0
kottage1.11.0
95

Multiplatform key-value store and local cache storage offering features like schema-less SQLite storage, event observation via Flow, cache expiration strategies (FIFO, LRU), list structures for paging, property delegation, and support for primitive and serializable values.

AndroidJSJVMNative·irgaly·Other
kfsm1.9.0-RC1
95

Implements finite-state machines supporting event-driven transitions, entry/exit actions, default actions, multiple state maps, automatic transitions, typed event parameters, and state externalization. Offers extensive visualization and example projects.

JSJVMNativeWasm·open-jumpco·MIT License
kotlin-jvm-blocking-bridge3.0.0-180.1
941 used by

Generates blocking bridges for calling suspend functions from Java, simplifying integration. Automatically creates non-suspend bridge functions, ensuring minimal effort and high stability for production use.

JSJVMNative·Him188·Apache License 2.0
semver2.1.0
921 used by

Handles Semantic Versioning 2.0.0 specification; supports parsing, comparing, and incrementing version numbers. Includes data class structure for major, minor, patch, pre-release, and build metadata components.

JSJVMNativeWasm·swiftzer·MIT License
fuzzywuzzy-kotlin1.0.0
91

Fuzzy string matching library for selecting the closest matching string from a collection, utilizing various algorithms. Useful in projects requiring approximate string matching.

AndroidJSJVMNative·willowtreeapps·Apache License 2.0
KMPUtils1.7.0
91

Expands standard library with missing utilities, including stateful text input validation, datetime extensions, coroutine enhancements, and more. Simplifies development with drop-in dependency and autocompletion support.

AndroidJSJVMNativeWasm·respawn-llc·Apache License 2.0
kimchi0.7.0
91

A KSP processor for dependency injection that simplifies contributing bindings, modules, and subcomponents across multi-module projects. Supports scope-based components, exclusions, replacements, and can extend DI patterns for custom boilerplate generation.

AndroidJSJVMNativeWasm·r0adkll·Apache License 2.0
sqldelight-androidx-driver0.5.0-alpha.7
911 used by

Enhances SQLDelight with a driver wrapping AndroidX SQLite libraries, simplifying database management via the AndroidxSqliteDriver factory, handling migrations seamlessly.

AndroidJSJVMNativeWasm·eygraber·MIT License
ParticleEmitter1.1.0
91

Physics-driven particle effects with two renderers: layout-based custom particle content and high-performance canvas; directional gravity, edge behaviors (bounce/stick/wrap), blend modes, multi-emitter orchestration.

AndroidJSJVMNativeWasm·PiotrPrus
KMP-ComposeUIViewController2.4.0-1.11.1-4
90

Automatically generates `ComposeUIViewController` and `UIViewControllerRepresentable` implementations, simplifying UI state management for iOS apps using Compose. Reduces boilerplate code and minimizes errors in large projects.

JSJVMNativeWasm·GuilhE·Apache License 2.0
cokoin1.0.0
89

Injection library for Compose, wrapping Koin. Configures dependency injection using `@Composable` functions, supports scoped dependencies, ViewModel integration, and Compose navigation enhancements.

JSJVM·burnoo
AutoLinkText2.0.2
89

Enhances text by making links, emails, and phone numbers clickable. Allows custom matchers, customizable styling, and click listeners. Supports various platforms and offers easy integration and usage examples.

AndroidJSJVMNativeWasm·Calvin-LL·Apache License 2.0
VisualFSM4.1.0
89

Implements an FSM-based MVI pattern with tools for visualizing and analyzing state diagrams. Automatically builds state graphs from source code, simplifying debugging, feature addition, and refactoring.

JSJVMNativeWasm·Kontur-Mobile·MIT License
Penicillin6.3.0
87

A modern Twitter API wrapper supporting various endpoints and features like named parameters, type-safe model classes, and paging APIs handled by Flow, enabling efficient Twitter data interactions.

JSJVM·StarryBlueSky·MIT License
ComposeActionMenu3.1.1
87

Offers an easy-to-use action menu with icons, selectable items, nested submenus, and automatic overflow handling. Supports customizations and provides test tags for each menu item.

AndroidJSJVMNativeWasm·jacobras·MIT License
compose-webview1.9.0
861 used by

Feature-rich WebView wrapper integrating native UI, offering promise-based JSBridge, type-safe serialization, reactive state management, lifecycle handling, request interception, dark mode, and file uploads.

AndroidJSJVMNativeWasm·parkwoocheol·MIT License
monarch0.3.0
85

Flexible abstraction for type-safe feature flags, enabling compile-time safety, observing value changes as a `Flow` or Compose State, and providing testing capabilities with an in-memory manager.

AndroidJSJVMNative·kevincianfarini·Apache License 2.0
acidify1.6.1
85

Core PC NTQQ protocol implementation with Milky-compatible client, media codec, QR matrix generator, prebuilt TypeScript/npm exports, TEA-based login/auth and multimedia tooling.

JSJVMNative·LagrangeDev·GNU General Public License v3.0
kmp-wheel-picker0.3.0
84

Modular, customizable wheel-style picker: supply custom item and window components, style items by position, adjust buffer, animation and scroll friction, plus animated programmatic scrolling.

AndroidJSJVMNativeWasm·software-mansion-labs·MIT License
river1.0.0-alpha18
83

Powerful reactive stream library simplifies building connectors for various enterprise protocols using Flow and coroutines. Provides higher-level abstractions, efficient data processing, and seamless integration with diverse technologies.

AndroidJSJVMNative·River-Kt·MIT License
fleeksoft-io0.0.8
836 used by

Port of JDK's IO classes for cross-platform support, facilitating Java-style IO operations. Offers modules for buffer, charset, URI handling, and seamless integration with kotlinx-io and Okio.

AndroidJSJVMNativeWasm·fleeksoft·Apache License 2.0