Browse Kotlin Multiplatform libraries

index data from klibs.io
Sort
Tagcode-generation
room2.8.4
6.0k28 used by

Abstraction layer over SQLite enabling robust database access, compile-time schema export and migrations, annotation-processor tooling, coroutine/RxJava/paging integrations, Gradle plugin for schema management.

JVMNative·androidx·Apache License 2.0
wire6.4.5
4.4k15 used by

Manages and processes Protocol Buffers schemas, facilitating efficient schema handling and API documentation.

JSJVMNativeWasm·square·Apache License 2.0
kotlinpoet2.3.0
4.1k

API for generating `.kt` source files, streamlining the creation of Kotlin code programmatically. Facilitates clean, efficient code generation with a focus on ease of use and flexibility.

JSJVMWasm·square·Apache License 2.0
thrifty3.1.0
544

Efficient implementation of Apache Thrift, reducing method count significantly, ideal for Android development. Features immutable structs, public final fields, customizable code generation, and PII redaction/obfuscation.

JVM·microsoft·Apache License 2.0
cite0.9.0
3692 used by

Compiler plugin embeds metadata about source files directly into the generated code, allowing access to filename, enclosing type, member name, and line number at runtime.

JSJVMNativeWasm·JakeWharton·Apache License 2.0
pbandk0.16.0
2964 used by

Generates and manages code for Protocol Buffers with features like clean data class generation, JSON serialization, oneof handling as sealed classes, and support for proto2 and proto3 syntaxes.

AndroidJSJVMNativeWasm·streem·MIT License
antlr-kotlin1.0.10
2697 used by

Facilitates targeting ANTLR-generated lexers, parsers, listeners, and visitors with a specialized plugin and runtime library. Supports multiplatform execution, extensive setup instructions, and benchmarking capabilities included.

JSJVMNativeWasm·Strumenta·Apache License 2.0
svg-to-compose2.2.1
211

Converts SVG or Android Vector Drawable files into Jetpack Compose Icons, offering command-line and Gradle plugin tools. Features custom parsing for complex vectors and optional optimization.

JSJVMNativeWasm·rafaeltonholo·MIT License
protobufs2.7.25
1681 used by

Protobuf message definitions for a mesh radio network, documented with API reference and prebuilt TypeScript, Rust and cross-language client packages for app and firmware integration.

AndroidJSJVMNativeWasm·meshtastic·GNU General Public License v3.0
protokt1.0.0-beta.12
166

Creates and compiles protocol buffer definitions with a concise builder DSL, supports custom wrapper types, interface implementation, and gRPC code generation. Offers a seamless integration for serialized data handling and high-performance operations.

JSJVMNative·open-toast·Apache License 2.0
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
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
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
ozone0.3.9
123

Compiles AT Protocol schemas into usable classes, provides APIs for the AT Protocol spec usable with services like Bluesky Social, and includes example client apps demonstrating API usage.

JSJVMNative·christiandeange·MIT License
smithy-kotlin1.6.15
1093 used by

Generates code and runtime libraries from Smithy models, supporting various protocols, authentication, serialization, and observability, along with extensive testing and benchmarking modules.

JVMNative·smithy-lang·Apache License 2.0
i18n4k0.11.2
1091 used by

Handles internationalization in programs, offering `Locale` and `LocalizedString` classes, parameterized messages, and code generation for message access. Supports inline translations and optimized message files.

AndroidJSJVMNativeWasm·comahe-de·Apache License 2.0
kotlin-tree-sitter0.25.0
851 used by

Facilitates parsing capabilities by offering bindings to the tree-sitter library, enabling syntax tree generation and providing a plugin for generating language-specific source files. Includes bundled languages.

AndroidJVMNative·tree-sitter·MIT License
parcelize-darwin0.2.4
751 used by

Generates `Parcelable` implementations for Apple targets, enabling serialization/deserialization similar to Android's `kotlin-parcelize`. Supports various data types and custom parcelers, facilitating cross-platform code sharing.

Native·arkivanov
kotlin-fhir1.0.0-beta05
632 used by

Lean, fast HL7 FHIR data-model implementation with minimal generated classes, JSON-only serialization, multi-version support, and a tiny runtime footprint for efficient healthcare data handling.

AndroidJSJVMNativeWasm·ohs-foundation·Apache License 2.0
fakt1.0.0-beta07
55

Generates compile-time type-safe test fakes with zero runtime overhead, no reflection, thread-safe call tracking, smart defaults and compiler-plugin code generation for comprehensive test doubles.

JSJVMNativeWasm·rsicarelli·Apache License 2.0
sweet-spi0.1.3
502 used by

Enables simple service provider interface functionality with automatic service discovery, easy integration via annotations, and support for multiple service declarations. Includes a Gradle plugin and KSP processor for seamless configuration.

JSJVMNativeWasm·whyoleg·Apache License 2.0
wirespec0.20.0-RC.5
46

Facilitates defining typesafe data transfer models and endpoints for services, compiling them into language-specific bindings, and converting from OpenAPI specifications. Offers CLI and IDE extensions.

JSJVMNative·flock-community·Apache License 2.0
airin0.5.2
43

Automates migration of Gradle Android projects to Bazel, generating corresponding Bazel files. Features include advanced dependency handling, configuration overrides, and support for various build features like Jetpack Compose and Hilt.

JVM·Morfly·Apache License 2.0
smartype1.7.1
41

Eliminates data quality bugs by generating statically-typed API clients from JSON schemas, creating type-safe models with auto-complete. Extensible via plugins, compatible across various platforms, and supports multiple environments.

AndroidJSJVMNative·mParticle
TianQu1.0.8
30

Coroutine-driven modern router enabling suspendable cross-module navigation with compile-time annotation scanning, automatic route/service aggregation, type-safe parameter passing, lifecycle-bound ViewModels, service discovery, and advanced transitions.

AndroidJVMNative·peiyunfei·Other
compose-phosphor-icon1.0.0
292 used by

Enables seamless integration of Phosphor Icons into UI projects, offering a script for generating icon paths and supporting multiple platforms including Android, iOS, Desktop, and Web.

AndroidJSJVMNativeWasm·adamglin0·MIT License
yass228.0.1
26

Small library enabling efficient asynchronous peer-to-peer communication with type-safe contracts. Features include unidirectional remoting, Ktor transport adaptors, code generation, and extendable binary serialization.

JSJVMNativeWasm·softappeal·BSD 3-Clause "New" or "Revised" License
KTM1.0.3
26

Implements Mustache templating, enabling document rendering with customizable contexts and auto-generated adapters. Supports dynamic templates and context creation through KSP-generated adapters and custom mappings.

JSJVMNativeWasm·L-Briand·MIT License
IconsaxCompose1.0.1
25

Compose-first, lightweight icon library exposing the complete Iconsax set as strongly-typed, compile-time ImageVector icons in multiple styles; generated via Gradle for zero runtime parsing.

AndroidJVMNative·YohannesTz
ktembed0.1.6
24

Embed static resources into binaries via compile-time Base64 encoding with generated ResourceDirectory, lazy decoding, smart in-memory/disk caching, integrity validation, and configurable optimization strategies.

JSJVMNativeWasm·ktool-dev·MIT License
Page 1Next →