Browse Kotlin Multiplatform libraries

index data from klibs.io
Sort
kotlin-multiplatform-oidc0.16.5
1531 used by

Lightweight implementation of OpenID Connect/OAuth 2.0 supporting Authorization Code Grant Flow, discovery, PKCE, and simple JWT parsing. Includes Android, iOS, desktop support, and OkHttp/Ktor integration.

AndroidJSJVMNativeWasm·kalinjul·Apache License 2.0
Keval2.0.0
151

Evaluates mathematical expressions from strings into `Double` values, supporting customizable binary and unary operators, functions, and constants. Offers default settings and DSL for advanced customization. Handles errors with specific exceptions.

JSJVMNative·notKamui·MIT License
compose-effects0.2.0
1492 used by

Enables efficient side-effect management with APIs like RememberedEffect, reducing unnecessary coroutines and improving state management in complex UI components through Composable function-scoped ViewModels.

AndroidJSJVMNative·skydoves·Apache License 2.0
Calendar1.0.2
147

Highly configurable library for creating calendar pickers with customizable UI. Supports single/multiple selection, range selection, month/year pickers, and horizontal/vertical views.

AndroidJSJVMNative·wojciechosak·Apache License 2.0
ConfettiKit0.8.0
147

Enhance apps with vibrant, customizable confetti animations using a lightweight library. Features include adjustable speed, direction, colors, shapes, and seamless integration with Compose.

AndroidJSJVMNativeWasm·vinceglb·MIT License
caupain1.9.1
146

Keeps Gradle versions catalogs up to date with speed and simplicity, providing update reports without altering dependencies. Offers usage as a command-line tool or Gradle plugin.

JSJVMNative·deezer·MIT License
dikt1.1.0-kotlin-2.0.20
144

Simplifies dependency injection with compile-time validation and faster compilation by generating code for dependency resolution. Features include constructor-based injection, singleton management, and module scoping without runtime file generation.

JSJVMNative·sergeshustoff·MIT License
HtmlConverterCompose1.1.1
1443 used by

Simple API converts HTML to AnnotatedString with styling for UI components, replacing traditional HTML parsers. Supports custom styling, hyperlink handling, and unstyled text conversion. Future goals include inline image display.

JSJVMNativeWasm·cbeyls·Apache License 2.0
Rin0.4.0
1442 used by

Enhances Compose with `rememberRetained{}` for state management within ViewModel. Simplifies UI and foundational component creation. Retains state across configuration changes and back stack navigation.

AndroidJSJVMNativeWasm·takahirom·Apache License 2.0
kotlinx-resources0.15.0
1431 used by

Plugin and library facilitate reading test resources using a unified API. Provides `Resource` class for checking existence, reading text, and reading bytes from designated resource folders.

AndroidJSJVMNativeWasm·goncalossilva·MIT License
kotlin-multiplatform-libsodium0.9.5
1436 used by

Experimental library wraps libsodium C sources and libsodium.js, offering a multiplatform wrapper for cryptographic functions. Emphasizes authenticated encryption, secret streams, and error handling, closely mirroring original libsodium API while adapting to Kotlin standards.

AndroidJSJVMNative·ionspin·Apache License 2.0
ComposeTheme1.3.0
142

Flexible API enables building custom design systems with unique design tokens and properties. Offers default colors, text styles, shapes, and easy theming. Supports extending properties and debugging capabilities.

AndroidJSJVMNativeWasm·composablehorizons·MIT License
kmp-resilient2.0.0
141

Composable DSL for async operations implementing Timeout, Retry (with backoffs), Circuit Breaker, Rate Limiter, Bulkhead, Hedging, in-memory TTL Cache and Fallback, with real-time telemetry stream.

AndroidJSJVMNative·santimattius·Apache License 2.0
orx0.5.0-alpha4
139

Offers a diverse set of data structures, algorithms, and utilities to enhance OPENRNDR, including tools for 2D/3D cameras, color management, shape composition, animation easing, noise generation, and various computational techniques.

JSJVMWasm·openrndr·BSD 2-Clause "Simplified" License
tomlkt0.7.0
1373 used by

Easy-to-use serialization plugin for encoding and decoding TOML 1.0.0 compliant data. Supports various data types, including comments, strings, dates, and arrays. Allows dynamic TOML table construction and custom serialization configurations.

JSJVMNativeWasm·eav-eav-eav·Apache License 2.0
spatial-k0.7.0.16+DIRTY
1378 used by

Set of libraries for working with geospatial data, including GeoJson implementation and a port of Turfjs, featuring a Kotlin DSL for building GeoJson objects.

JSJVMNativeWasm·maplibre·MIT License
RikkaUi0.3.0
137

Beautiful production-ready UI components and theme system, over 40 customizable primitives, optional CLI copies components into source for full ownership and unlimited customization.

AndroidJSJVMNativeWasm·rainxchzed
epic-calendar1.0.8
136

Compose library for displaying customizable epic calendars. Features include basis calendar setup, calendar pagination, date picking with single, multiple, and range selection modes, and drawing date ranges. Offers global configuration capabilities.

AndroidJSJVMNative·epicarchitect·MIT License
kfswatch1.4.0
1351 used by

Monitors file system changes across multiple directories, emitting events such as create, delete, and modify. Allows observing file events using flows, supports multiple platforms, and provides raw event access for debugging.

AndroidJSJVMNativeWasm·irgaly·Other
KmLogging2.1.1
1344 used by

Multiplatform logging library targets Android, iOS, JVM, JS and Wasm, utilizing native logging facilities. Offers high performance, minimal overhead, customizable log levels, and thread-safety without requiring configuration.

AndroidJSJVMNativeWasm·DiamondEdge1·Apache License 2.0
GRPC-Kotlin-Multiplatform2.0.0
133

Implements client-side gRPC with support for parsing proto3 files, generating corresponding code, and suspending RPC calls. Features a DSL for creating proto objects and supports various proto types.

AndroidJSJVMNativeWasm·TimOrtel·Apache License 2.0
krontab2.9.0
1312 used by

Facilitates scheduled task execution at runtime using a flexible, cron-like syntax. Supports configuration via strings or DSL builders, local and timezone-aware scheduling, and conversion to reactive flows.

AndroidJSJVMNativeWasm·InsanusMokrassar·Apache License 2.0
macao-sdk0.7.0
1301 used by

Offers a microframework with customizable navigation components and an application architecture module. Supports app startup, plug-in integration, and manual or Koin-based dependency injection.

AndroidJSJVMNativeWasm·pablichjenkov·The Unlicense
meeseeks1.1.0
130

Meeseeks is a Kotlin Multiplatform library for scheduling and managing background tasks across Android, JVM, native (iOS), and JS (Web). Whether your tasks are simple or complex, for one user or hundreds of millions, Meeseeks can help.

AndroidJSJVMNative·matt-ramotar·Apache License 2.0
elmslie3.0.0
130

Minimalistic reactive library implementing TEA/ELM architecture, enabling scalable and reusable components, single immutable state management, and unidirectional data flow.

JSJVMNativeWasm·vivid-money·Apache License 2.0
invert0.0.15
129

Enhances Gradle projects with dynamic web reports for static analysis, revealing module dependencies and dependents. Supports custom analysis plugins and continuous updates via GitHub Actions.

JSJVM·square·Apache License 2.0
si-units4.2.3
129

Comprehensive library facilitating the use of International System of Units in code, enhancing formula writing, dimensional analysis, and error detection in complex calculations without external dependencies.

JSJVMNative·vsirotin·Apache License 2.0
kotlinx-schema0.5.0
1293 used by

Generate JSON Schemas and LLM function-calling schemas from functions and models—including third-party classes—via compile-time zero-overhead generation or runtime reflection; annotation-aware and OpenAI/Anthropic-compatible.

JSJVMNativeWasm·Kotlin·Apache License 2.0
solivagant0.5.0
128

Enables pragmatic, type-safe navigation with features like ViewModel integration, SavedStateHandle support, lifecycle management, multi-backstack, and custom transitions. Automatically saves and restores navigation stack states.

AndroidJSJVMNativeWasm·hoc081098·Apache License 2.0
kotlinx-uuid0.1.7
1285 used by

Introduces support for universally unique identifiers (UUIDs), offering serialization capabilities and compatibility across various platforms. Integrates seamlessly with existing serialization libraries for enhanced data handling.

JSJVMNativeWasm·hfhbd·Apache License 2.0