Kotlin logo

Kotlin

Kotlin Tools and Libraries

kotlinx.coroutines

by Kotlin

Featured

13.7k

Enables asynchronous programming with lightweight coroutines, offering structured concurrency, cancellation, and integration with various reactive streams and UI frameworks. Includes testing and debugging utilities.

#concurrency, #asynchronous

JVMKotlin/NativeWasmJS

Apache License 2.0

kotlinx.serialization

by Kotlin

Featured

5.9k

Enables reflectionless serialization for classes by generating visitor code through a compiler plugin, and includes a runtime library supporting various formats like JSON, Protobuf, CBOR, Hocon, and Properties.

#serializer, #json, #data

JVMKotlin/NativeWasmJS

Apache License 2.0

kotlinx-datetime

by Kotlin

Featured

2.8k

Facilitates seamless date and time operations with types like `Instant`, `LocalDateTime`, and `TimeZone`. Emphasizes minimalistic, pragmatic design, supporting ISO 8601 format and clear separation of physical and civil time.

#kotlinx-datetime

JVMKotlin/NativeWasmJS

Apache License 2.0

kotlinx.html

by Kotlin

1.7k

Provides a DSL for building HTML to `Writer`, `Appendable`, or DOM, facilitating web development across various platforms. Enables direct HTML creation and DOM tree construction through intuitive syntax.

#web, #html

JVMKotlin/NativeWasmJS

Apache License 2.0

kotlindl

by Kotlin

1.6k

High-level deep learning API simplifies training, importing, and transfer learning of deep learning models. Utilizes TensorFlow and ONNX Runtime for model operations and offers extensive documentation and tutorials.

#network

Android JVMJVM

Apache License 2.0

kotlinx-io

by Kotlin

1.5k

Offers basic IO primitives with a mutable `Buffer` for efficient data handling, `Source` and `Sink` interfaces for data streams, and experimental filesystem support via `FileSystem` and `Path` classes.

#file

JVMKotlin/NativeWasmJS

Apache License 2.0

kotlinx.collections.immutable

by Kotlin

1.4k

Implements immutable and persistent collection interfaces with efficient, order-preserving options. Offers conversion functions, `+` and `-` operators, and a `mutate` extension for simplified modifications.

#web, #wasm, #native, #language-extensions, #kotlin-native, #data

JVMKotlin/NativeWasmJS

Apache License 2.0

kotlinx-atomicfu

by Kotlin

1.1k

Efficiently manages atomic operations by transforming code for various platforms. Supports atomic values, arrays, user-defined extensions, locks, and tracing operations for debugging, ensuring high performance and idiomatic usage.

#asynchronous

JVMKotlin/NativeWasmJS

Other

kotlinx-rpc

by Kotlin

1.0k

Facilitates asynchronous Remote Procedure Call (RPC) services with simplified integrations, supporting flow-based data streaming. Offers transport-agnostic design, seamless integration with existing solutions, and customizable serialization protocols.

#rpc, #asynchronous

JVMKotlin/NativeWasmJS

Apache License 2.0

kotlinx-cli

by Kotlin

939

Implements a generic command-line parser with declarative syntax for defining commands and parameters, auto-generating help messages, and supporting custom types and subcommands. Suitable for creating flexible and user-friendly command-line interfaces.

#command-line-interface

JVMKotlin/NativeJS

Apache License 2.0

multik

by Kotlin

715

Multidimensional array library offering ndarray creation, mathematical operations, linear algebra, and statistical functions. Supports various backends for performance, including native code via OpenBLAS. Integrates with Jupyter Notebooks.

#science, #math, #data

JVMKotlin/NativeWasmJS

Apache License 2.0

kotlinx-benchmark

by Kotlin

627

Toolkit for running benchmarks on multiplatform code, offering low noise, reliable results, statistical analysis, and detailed performance reports. Supports various target configurations and custom benchmark profiles.

#gradle

JVMKotlin/NativeWasmJS

Apache License 2.0

multiplatform-library-template

by Kotlin

310

Barebones library project for quickly bootstrapping a deployable library to Maven Central. Generates Fibonacci sequences starting from platform-provided numbers with tests for each platform.

#maven, #kotlin-multiplatform-sample, #gradle

Android JVMJVMKotlin/Native

Apache License 2.0

kotlinx-browser

by Kotlin

185

Offers a library for working with browser declarations in WasmJs, intended as a replacement for deprecated browser components. Experimental and subject to change, requiring Kotlin 1.9.23 or newer.

#web

WasmJS

Apache License 2.0

kotlinx-schema

by Kotlin

94

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.

#ksp, #code-generation

JVMKotlin/NativeWasmJS

Apache License 2.0

Survey iconComplete survey to improve klibs.io ↗
Let’s go