Browse Kotlin Multiplatform libraries

index data from klibs.io
Sort
Tagkotlin-compiler-plugin
compose1.5.0-alpha22
6.0k28 used by

Declarative UI toolkit enabling programmatic UI via composable functions, offering animations, Material (including Material 3), foundation building blocks, compiler optimizations, runtime state management, and core UI primitives.

AndroidJSJVMNativeWasm·androidx·Apache License 2.0
compose-stability-analyzer0.10.0
1.6k1 used by

Real-time composable stability analysis with editor gutter icons, hover tooltips, inline parameter hints and code inspections; runtime @TraceRecomposition logging plus Gradle tasks for recomposition tracing and reports.

AndroidJSJVMNativeWasm·skydoves·Apache License 2.0
Poko0.23.1
42428 used by

A compiler plugin simplifies writing and maintaining data model classes for public APIs by auto-generating `toString`, `equals`, and `hashCode` functions, with optional array content-based checks.

JSJVMNativeWasm·drewhamilton·Apache License 2.0
moko-widgets0.2.4
390

Enables declarative UI and application screen management in common code, ensuring compile-time safety and reactive data handling. Facilitates full application implementation from common code, adhering to platform rules.

AndroidNative·icerockdev·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
burst2.13.0
319

Unit testing library facilitates parameterization of tests using enums, specializing test cases for each enum value and combination, enhancing test coverage with minimal code changes.

JSJVMNativeWasm·cashapp·Apache License 2.0
ComposeInvestigator2.1.0-1.0.0.a3
308

Tool designed to trace and report recomposition issues in Composables, tracking changes in arguments and state values without boilerplate. Currently under redevelopment.

JVM·jisungbin·Apache License 2.0
kopy0.24.0+2.4.0
296

Facilitates deep copying and updating of data class properties using `copy` or `invoke` functions. Adds new functions and properties, supports lambda updates, and enhances immutability without reflection.

JSJVMNativeWasm·JavierSegoviaCordoba·Apache License 2.0
confundus1.1.0
270

Enhances type casting by introducing `unsafeCast`, allowing reinterpretation of nullable references as non-nullable without runtime checks, optimizing performance at the expense of type safety.

JSJVM·JakeWharton·Apache License 2.0
dataclassgenerate1.2.0
169

Compiler plugin reducing APK size by optimizing data class methods like `toString`, `equals`, and `hashCode`. Configurable modes control method generation while retaining compatibility with bytecode optimizers.

JVM·facebookincubator·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
injekt0.0.1-dev757
1141 used by

Next-gen dependency injection library offering a streamlined approach to providing and injecting dependencies, supporting multi-injection, scoping, modules, components, function injection, and type distinguishing strategies.

JSJVM·IVIanuu
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
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
tracy0.1.0
73

Tracing, monitoring and evaluating AI features via a unified API that captures structured traces, follows OpenTelemetry Generative AI semantics, auto-instruments popular AI clients, and exports to observability backends.

JVM·JetBrains·Apache License 2.0
kotlin-suspend-transform-compiler-plugin2.4.0-0.14.0
707 used by

Compiler plugin generates platform-compatible functions for suspend functions, allowing seamless integration and usage of asynchronous code in synchronous contexts across different platforms.

JSJVMNativeWasm·ForteScarlet·MIT License
kotlinx-gettext0.7.0
57

Implements Gettext for internationalization, featuring a library for string translation, a compiler plugin for extracting translatable strings, and a Gradle plugin for seamless integration, enhancing i18n workflows.

JSJVM·kropp·Apache License 2.0
Terpal2.3.0-2.0.1.PL
575 used by

Enables capturing string variables before interpolation, enhancing security and flexibility. Implements custom DSLs for safe SQL queries, preventing SQL injection vulnerabilities through typed string interpolation.

JSJVMNativeWasm·exoquery·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
EzHook0.0.2
48

AOP framework enabling method replacement at compile-time through custom hooks. Offers runtime support, original method invocation, and inlining for reduced dependency issues. Supports specific platforms.

AndroidJSJVMNative·XDMrWu·Apache License 2.0
inspekt0.0.4
43

Compile-time reflection enabling inspection of classes, functions, properties and annotations, with top-level declaration support, suspend invocation, JVM-like proxies and dependency reflection.

JSJVMNativeWasm·rnett·Apache License 2.0
kotlin-dynamic-delegation0.4.0-180.1
421 used by

A compiler plugin enabling dynamic class delegation similar to property delegations, which simplifies delegation and allows functions to be 'lazy' with persistent values, enhancing flexibility and reducing boilerplate.

JSJVMNative·Him188·Apache License 2.0
Mockingbird3.3.0
23

Minimalist faking framework focuses on verifying interactions by generating fake implementations for interfaces and abstract classes, promoting better class design without supporting full mocking.

JSJVMNativeWasm·anthonycr·MIT License
aspectk0.2.3
22

Compile-time aspect-oriented weaving via compiler IR transformation, injecting @Aspect/@Before advice with zero runtime overhead; supports suspend, inline, extension, expect/actual functions, inheritance, many-to-many targets, rich JoinPoint metadata.

JSJVMNativeWasm·Mole-Labs·Apache License 2.0
ksrpc1.1.3
152 used by

Enables JSON-like RPCs with simple service declarations, supporting various connection mechanisms. Integrates annotations for service mapping, and provides a flexible environment setup for hosting services.

JSJVMNativeWasm·Monkopedia·Apache License 2.0
koja0.4.11
121 used by

Generates JSON schemas from annotated classes, supporting primitives, arrays, maps, nested objects, and enums. Ensures type-safety with KDoc subset and handles nullable fields. Experimental API.

JSJVMNative·ondrsh·Apache License 2.0
kotlin-lambda-return-inliner0.1.2
9

Enhances lambda performance in inlined functions by optimizing their storage in local variables. Enables struct emulation in code with no extra cost. Currently experimental.

JSJVMNative·kyay10·Apache License 2.0
Introspekt1.6.0
91 used by

Offers a positional code API and introspection framework with features like `SourceLocation`, `FunctionInfo`, `ClassInfo`, and `AnnotationInfo` for enhanced introspection and compile-time evaluation.

AndroidJSJVMNativeWasm·karmakrafts·Apache License 2.0
kotlin-null-defaults0.2.0
8

Enhances interoperability with Java by allowing nulls for default parameters through annotations, automatically substituting default values. Primarily supports legacy Java code, maintaining Kotlin conventions.

JSJVMNative·kyay10·Apache License 2.0
JsNamedArgs0.1.3
8

Enhances API contracts for JavaScript clients by generating JS-friendly functions and class constructors. Enables passing arguments via destructured objects, improving code readability and reducing bugs.

JSJVMNative·PhiloInc·MIT License
Page 1Next →