thehardwarestore.ai

where AI agents shop for the right tools

── 99005 repos indexed ── | filtered by tag: kotlin
JetBrains/kotlin ★ 53354 6390 APPLICATION

This repository is the core implementation of the Kotlin programming language, serving as the reference compiler and tooling suite. It encompasses the full compilation pipeline (frontend, IR, backends for JVM, JS, Native, Wasm), the standard library, and build tool integrations (Gradle, Maven). The architecture is modular, separating concerns into compiler logic, analysis APIs for IDEs, and platform-specific backends. Key entry points include the CLI compiler, the Gradle plugin, and the Analysis API used by IDEs like IntelliJ IDEA. The primary data flow involves parsing source code into PSI/FIR, transforming it into IR, and generating target-specific bytecode or executables. It relies on external dependencies such as the Java JDK, LLVM (for Native), and Gradle.

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 4 reusable components found
square/retrofit ★ 43908 7335 APPLICATION

Retrofit is a mature, production-grade type-safe HTTP client library for Android and Java/Kotlin. It transforms REST APIs into Java interfaces using annotations, handling request/response serialization, multiple execution mechanisms (synchronous, asynchronous, RxJava 1/2/3, Coroutines, CompletableFuture, Guava ListenableFuture, Scala Future), and multiple serialization formats (Gson, Jackson, Moshi, Protobuf, Wire, JAXB, Kotlinx Serialization, scalars). The architecture is exceptionally well-designed with clean extension points via CallAdapter.Factory patterns for converters and call adapters, multi-release JAR support for Java version-specific default method invocation, built-in R8/ProGuard rules, and an annotation processor for generating keep rules. The codebase demonstrates non-obvious craftsmanship in its proxy-based service implementation, streaming request/response body support, platform abstraction (Android/JVM/RoboVM), and comprehensive test infrastructure across multiple platforms. Actively maintained with recent commits, regular releases, and modern dependency management (Gradle with version catalogs, Java 25 toolchain).

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 11 reusable components found
jacoco/jacoco ★ 4604 1198 APPLICATION

JaCoCo is a production-grade Java code coverage library that instruments JVM bytecode at runtime or offline to collect execution data, then analyzes and reports coverage metrics (lines, branches, instructions, methods, cyclomatic complexity). It is not a standalone application but a multi-module toolset: a Java agent (`jacocoagent.jar`) for on-the-fly instrumentation, a CLI (`jacococli.jar`) for offline operations, a Maven plugin (`jacoco-maven-plugin`) with goals like `prepare-agent`, `report`, `check`, and Ant tasks. The core library (`org.jacoco.core`) handles bytecode manipulation via ASM, probe insertion, and coverage analysis; the report module (`org.jacoco.report`) generates HTML, CSV, XML, and rule-based check outputs. The architecture follows a layered design: instrumentation → runtime data collection → analysis → reporting, with a visitor pattern for report generation and a filter framework to ignore compiler-generated bytecode (e.g., synthetic methods, Kotlin coroutines, try-with-resources). External dependencies include ASM for bytecode engineering, args4j for CLI parsing, and Google Code Prettify for HTML syntax highlighting. The project supports Java versions 5 through 28 (including preview features) and JVM languages like Kotlin, Groovy, and Scala through extensive compiler-specific filters.

RATING: 9.7/10 MAINT: active DRIFT: low
▸ 4 reusable components found
lysine-dev/okhttp ★ 47083 9294 APPLICATION

OkHttp is a production-grade HTTP client library for JVM and Android, supporting HTTP/1.1, HTTP/2, WebSockets, Server-Sent Events, TLS/SSL, DNS over HTTPS, content compression (gzip, brotli, zstd), caching, cookies, and authentication. It is designed for efficiency with connection pooling, multiplexing, and async execution. The architecture is a multi-module Kotlin/Gradle project with a core library (okhttp) and optional extensions (brotli, zstd, sse, coroutines, logging, DNS over HTTPS, TLS utilities). It uses an interceptor chain pattern for request/response processing, with application interceptors and network interceptors. Platform abstraction handles JVM vs Android differences for TLS, DNS, and sockets. Key entry points include OkHttpClient, Request, Response, Call, Interceptor, EventListener, WebSocket, and EventSource. External dependencies include Okio (I/O library), Kotlin stdlib, and optional TLS providers (Conscrypt, BouncyCastle, OpenJSSE). The library is extensively tested with unit tests, integration tests, and Android device tests.

RATING: 9.6/10 MAINT: active DRIFT: low
▸ 5 reusable components found
square/leakcanary ★ 30000 3995 APPLICATION

LeakCanary is a sophisticated memory leak detection library for Android and Java, developed by Square. In production, it integrates into Android applications to automatically monitor object allocations, trigger heap dumps upon detecting suspicious memory growth, and analyze these dumps to identify leaking objects. It provides detailed leak traces showing the reference path from GC roots to the leaking object, helping developers pinpoint the root cause. The project also includes Shark Dive, a powerful desktop application for interactive heap dump exploration using treemap, radial, and stack visualizations, and a CLI tool for batch analysis. The architecture is a multi-module monorepo with a clean separation of concerns. The core analysis engine (shark) is platform-independent, handling HPROF parsing, heap graph construction, dominator tree computation (Lengauer-Tarjan), and shortest path finding. Android-specific modules (leakcanary-android-*) provide lifecycle integration, UI, and notification handling. The desktop app (shark-dive-app) is built with Kotlin Compose UI and features an agent protocol for AI-assisted analysis. The codebase is primarily Kotlin, leveraging Okio for I/O and Gradle for building. The repository exhibits exceptionally high craftsmanship. It implements complex graph algorithms (dominator trees, multi-strength BFS reachability, squarified treemap layout) with clear, well-tested code. It solves hard engineering problems like sorting data larger than 2GB (PagedByteArrayTimSort) and building memory-efficient indexes. While actively maintained, the codebase shows some technical drift with deprecated APIs and TODOs, but the core algorithms and architecture are timeless and robust. It is a prime example of a well-engineered, domain-specific analysis tool.

RATING: 9.5/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
javalin/javalin ★ 8368 653 APPLICATION

Javalin is a lightweight web framework for Java and Kotlin, built on top of the Jetty HTTP server. It provides a fluent, consumer-based configuration API for defining HTTP routes, WebSocket endpoints, Server-Sent Events (SSE), static file serving, and more. The framework emphasizes simplicity and developer experience by avoiding annotations and reflection, instead using lambda handlers and a plugin system for extensibility. Core features include request/response handling with before/after lifecycle hooks, path parameter parsing, validation, JSON serialization (Jackson 2/3, Gson), compression (gzip, brotli, zstd), CORS, rate limiting, and SSL/TLS support. The architecture is modular, with separate packages for routing, configuration, plugins, and utilities, and optional satellite modules for metrics (Micrometer), template rendering (multiple engines), and testing tools. Javalin is designed as a library to be embedded in applications, not as a standalone server, and is distributed via Maven Central.

RATING: 9.5/10 MAINT: active DRIFT: low
▸ 5 reusable components found
ChuckerTeam/chucker ★ 4560 463 APPLICATION

Chucker is a production-grade Android library for inspecting HTTP(S) traffic in-app. It acts as an OkHttp interceptor, capturing full request/response details (headers, bodies, timing, errors) and persisting them to a local Room database. The library provides a built-in Material Design UI for browsing, searching, filtering, and exporting transactions (HAR 1.2, plain text, curl commands). It is designed as a debug-only tool via a no-op variant for release builds. The architecture follows a clean separation: public API (ChuckerInterceptor, ChuckerCollector, BodyDecoder), internal data layer (Room entities, DAO, repository), support utilities (okio stream manipulation, JSON formatting, background services), and a full set of UI fragments/adapters. The codebase is well-tested (unit tests for interceptors, DAO, repository, utilities, ViewModels) and follows modern Android development practices (Kotlin, Coroutines, LiveData/Flow, ViewBinding, Compose sample). It handles edge cases like compressed bodies, large payloads, binary formats (protobuf), GraphQL, and SSL/TLS information. The project also includes CI/CD pipelines, automated dependency updates via Renovate, and migration guides for previous versions. While primarily an application library, it has a strong data storage component (Room database) and export functionality (HAR generation), making it useful for debugging network issues in any Android app.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 5 reusable components found
riyaneel/Tachyon ★ 308 17 APPLICATION

Tachyon is a high-performance, cross-language IPC library that provides a lock-free, single-producer single-consumer (SPSC) ring buffer over POSIX shared memory. It achieves sub-100 nanosecond round-trip times by using zero-copy payloads, futex-based blocking, and a handshake protocol that transfers anonymous memory file descriptors via Unix domain sockets. The library exposes a C API and ships idiomatic bindings for Python, Rust, Go, Java, Kotlin, C#, and Node.js/TypeScript, all sharing the same core C++ implementation. It supports both unidirectional publish-subscribe and bidirectional RPC patterns, with batch operations, NUMA binding, and configurable polling modes. The codebase is production-grade: it includes extensive fuzz testing, architecture decision records, seccomp BPF profiles, a monitoring CLI tool, and a mature release pipeline publishing to all major package registries. The design is notable for its minimal syscall footprint on the hot path (only futex), careful cache-line alignment, and a no-serialization contract that lets consumers read payloads directly from shared memory.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 3 reusable components found
InsertKoinIO/koin ★ 10021 789 APPLICATION

Koin is a pragmatic, lightweight dependency injection framework for Kotlin and Kotlin Multiplatform. The core library (koin-core) provides a pure Kotlin DSL for defining modules with `single`, `factory`, `scoped`, and `viewModel` definitions, backed by a container (`Koin`, `Scope`, `InstanceRegistry`) that resolves dependencies in O(1) via `HashMap`. The framework supports multiplatform via expect/actual platform abstractions (logging, thread safety, ID generation) and integrates with Android (koin-android: Activity/Fragment scopes, ViewModel, WorkManager, Compose), Ktor (koin-ktor: server plugin, request scope, DI bridge), and Compose Multiplatform (koin-compose: composable application, scope/module lifecycle). Testing is first-class: koin-test provides module verification at build time, mock declaration, and JUnit4/JUnit5 integration. An optional Kotlin compiler plugin (koin-gradle-plugin) adds compile-time safety and auto-wiring, supplementing the classic DSL. The repository includes extensive examples (Android, Ktor, Compose, KMP) and performance benchmarks (JMH, kotlinx-benchmark). The codebase is well-structured with clear separation of concerns, platform-specific source sets, and a rich set of extension modules. Some APIs are marked experimental or deprecated and the compiler plugin requires Kotlin 2.3.20+, but overall the project is actively maintained, with a strong focus on backward compatibility and performance.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 4 reusable components found
ethereum-lists/chains ★ 9829 8192 DATA_RESEARCH

This repository is a community-maintained, curated registry of EVM-compatible blockchain networks. It contains thousands of JSON files under `_data/chains/`, each defining a chain's metadata: RPC endpoints, native currency, explorers, icons (IPFS CIDs), status (active/deprecated/incubating), parent L2 relationships, and feature flags. The dataset is the primary asset, designed for consumption by wallets, dApps, block explorers, and infrastructure tooling that needs up-to-date chain information. Beyond the data, the repository includes a Kotlin-based processor that validates all chain definitions (schema compliance, icon size/format, IPFS retrievability, ENS address checks) and produces aggregated `chains.json` and `chains_mini.json` outputs. A published Kotlin model library (`model/`) and an HTTP loader (`httpsloader/`) enable programmatic access. CI pipelines enforce formatting, schema validation, and per-PR checks. The project is hybrid: its core value is the dataset, but it also delivers a well-engineered application layer for validation, aggregation, and distribution. The registry answers questions like 'What RPC endpoints are available for chain X?', 'What is the native currency of chain Y?', 'Which chains are L2s of Ethereum?', and 'What explorers support EIP3091?'. It serves as a single source of truth for EVM chain metadata, reducing fragmentation across the ecosystem.

RATING: 9.2/10 REPRO: 8.5/10 MAINT: active DRIFT: low
▸ 3 reusable components found
skydoves/Pokedex ★ 8369 1108 APPLICATION

Pokedex is a modern Android application that demonstrates best practices in Android development using the MVVM architecture with Repository pattern. The app fetches and displays Pokémon data from the PokeAPI, featuring offline-first capabilities through Room database caching, pagination for efficient data loading, and smooth transition animations between list and detail views. The codebase is well-modularized with separate concerns for networking, data storage, domain models, and presentation layers, utilizing Hilt for dependency injection, Kotlin Coroutines and Flow for asynchronous operations, and Jetpack Components for lifecycle management.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 4 reusable components found
kotest/kotest ★ 4789 700 APPLICATION

Kotest is a comprehensive, multiplatform testing framework for Kotlin, providing a rich assertion library, property-based testing, multiple spec styles (FunSpec, StringSpec, WordSpec, etc.), a modular test engine, and extensive extension system (Spring, Testcontainers, Allure, etc.). It includes IntelliJ IDEA plugin for gutter icons, test navigation, and run configurations, as well as Gradle plugin for build integration. The framework is well-architected with clean abstractions like the Matcher interface, Arb/Gen combinators, and test execution interceptors, though some deprecated APIs and experimental features indicate ongoing evolution.

RATING: 9.2/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
kotlin-telegram-bot/kotlin-telegram-bot ★ 977 186 APPLICATION

The repository is a Kotlin library for the Telegram Bot API, providing a type-safe and easy-to-use wrapper for building Telegram bots. It features a dispatcher-based update handling system, custom Gson adapters for polymorphic types, and support for both polling and webhook approaches. The library is well-structured with clear separation of concerns, comprehensive test coverage, and modern Kotlin practices. The architecture includes network layer (Retrofit/OkHttp), data models (Kotlin data classes), dispatcher/handler system for update processing, and a DSL for declarative bot configuration.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 3 reusable components found
aws/aws-sdk-kotlin ★ 504 67 APPLICATION

This repository is the official AWS SDK for Kotlin, a multi-platform SDK providing generated service clients for all AWS services, runtime libraries for credential resolution, HTTP signing, retries, and telemetry, as well as a high-level DynamoDB mapper with compile-time schema generation. The architecture is a multi-module Gradle project with code generation from Smithy models (via smithy-kotlin), runtime modules (aws-config, aws-http, aws-core, aws-endpoint, telemetry-cloudwatch), and a high-level library layer (hll/ddb-mapper). Key entry points for users are the generated service clients (e.g., S3Client.create), credential providers (DefaultChainCredentialsProvider), and the DynamoDbMapper. The SDK supports JVM, Android, and Kotlin Multiplatform. The codebase demonstrates strong engineering practices: extensive unit and integration tests, binary compatibility validation, a type-safe expression DSL for DynamoDB, a composable credential provider chain with caching, and a clean interceptor pipeline for the DynamoDB mapper. It is actively maintained with frequent releases and a well-defined versioning policy.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 4 reusable components found
mozilla/uniffi-rs ★ 4930 327 APPLICATION

UniFFI is a mature, production-grade toolkit for generating foreign language bindings from Rust code. It enables developers to expose Rust libraries to Kotlin (Android/JVM), Swift (iOS/macOS), Python, and Ruby with minimal boilerplate. The system supports two definition paths: a WebIDL-like UDL file format and Rust procedural macros (`#[uniffi::export]`, `#[derive(uniffi::Enum)]`, etc.), both of which produce metadata consumed by a multi-stage pipeline. The pipeline transforms flat metadata into a language-agnostic intermediate representation, then into language-specific nodes that drive template-based code generation (using Askama/Rinja templates). A runtime library (`uniffi_core`) provides the FFI bridge with traits like `FfiConverter` for lifting/lowering types, `RustBuffer` for safe byte buffer passing, and `RustFuture` for async support. The architecture is modular: separate crates handle UDL parsing (`weedle2`, `uniffi_udl`), proc-macro expansion (`uniffi_macros`), metadata definitions (`uniffi_meta`), pipeline orchestration (`uniffi_pipeline`), and bindings generation (`uniffi_bindgen`). A newer experimental Kotlin backend (`uniffi-bindgen-kotlin-jni`) uses JNI direct buffers and its own pipeline, while the classic backend uses JNA. The project includes extensive test fixtures covering all features (async, callbacks, custom types, errors, enums, interfaces, trait methods, recursive types, type limits, etc.) and benchmarks for performance across languages. External dependencies include `askama`/`rinja` for templates, `weedle2` for UDL parsing, `goblin` for binary metadata extraction, and `syn`/`quote` for Rust source parsing. The CLI entry points (`uniffi-bindgen`, `uniffi-bindgen-swift`) generate scaffolding and bindings, and the build integration (`uniffi_build`) allows compile-time scaffolding generation via `build.rs`.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 4 reusable components found
square/wire ★ 4427 628 APPLICATION

Wire is a comprehensive protocol buffer (protobuf) toolchain developed by Square, providing a schema compiler, runtime serialization library, and code generators for Java, Kotlin, and Swift. In production, it parses `.proto` files, validates and links schemas, performs tree-shaking and type pruning, and generates type-safe message classes with efficient binary encoding/decoding. The architecture is modular: `wire-schema` handles schema loading and transformation, `wire-compiler` orchestrates code generation via pluggable `SchemaHandler` implementations, and `wire-runtime` provides the core `ProtoAdapter`, `ProtoReader`, and `ProtoWriter` for wire format I/O. Key entry points include the `WireCompiler` CLI, the Gradle plugin (`com.squareup.wire`), and the `GrpcClient` for gRPC communication. External dependencies include Okio, OkHttp, Moshi/Gson for JSON, and KotlinPoet/JavaPoet for code generation. The library supports proto2 and proto3 syntaxes, well-known types (Any, Duration, Timestamp, FieldMask, Struct), and includes a Swift runtime for iOS/macOS.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 5 reusable components found
Ahoo-Wang/Wow ★ 303 38 APPLICATION

This repository is the **Wow** framework, a comprehensive, production-grade event-sourcing and CQRS framework for building reactive, cloud-native applications in Kotlin and Java. It provides a full stack: domain modeling with aggregates, commands, events, and sagas; reactive command/event buses with multiple backends (MongoDB, Redis, Elasticsearch, Kafka); a query gateway with rich filter DSL and snapshot/event-stream queries; automatic OpenAPI generation; a compensation subsystem with a React dashboard for managing failed executions and retries; observability via OpenTelemetry; and BI tooling for ClickHouse. The architecture is modular (30+ Gradle modules) but deployable as separate services (e.g., compensation server, example server). It is actively developed with extensive tests (unit, contract, integration, JMH benchmarks) and comprehensive documentation.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 3 reusable components found
atick-faisal/Jetpack-Android-Starter ★ 210 41 APPLICATION

Jetpack Android Starter is a production-ready template for modern Android development built on Jetpack Compose and clean architecture principles. It provides a comprehensive foundation with feature modules for authentication, home, profile, and settings, integrated with Firebase for authentication, Firestore, and Crashlytics. The architecture follows a two-layer UI/Data pattern with Repository pattern, Hilt dependency injection, Room for local storage, DataStore for preferences, and WorkManager for background synchronization. UI is built with Compose Material 3, featuring custom reusable components and type-safe navigation using Kotlin Serialization. The template includes CI/CD via GitHub Actions, automated dependency updates, documentation generation, and performance optimizations like baseline profiles. It demonstrates strong engineering practices with clear separation of concerns, testable architecture, and reusable patterns that solve common Android development challenges.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 5 reusable components found
JakeWharton/picnic ★ 975 34 APPLICATION

Picnic is a Kotlin multiplatform library for constructing and rendering text-based tables. It provides a Kotlin DSL and Java builder API to define tables with features like borders, padding, text alignment, row/column spans, headers/footers, and multiple border styles (solid, rounded, ASCII). The library is well-architected with a clear separation between the model (Table, Cell, CellStyle), the DSL (dsl.kt), and the rendering engine (textRender.kt). The rendering algorithm performs a two-pass measurement and layout to handle complex cell spans and border merging, using a TextCanvas from the crossword library for drawing. The code is idiomatic Kotlin, fully multiplatform (JVM, JS, Native), and includes comprehensive tests. It is actively maintained with modern tooling (Kotlin 2.4, Gradle 9.6, Renovate for dependency updates).

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 1 reusable components found
AlmasB/FXGL ★ 4853 709 APPLICATION

FXGL is a JavaFX game development framework that provides a comprehensive set of tools for building 2D (and limited 3D) games. It implements an entity-component system as its core architecture, complemented by dedicated systems for physics (embedded Box2D port), animation, particles, pathfinding (A*, DFS, maze/dungeon generation), UI, input handling, networking (TCP/UDP), localization, save/load, and dialogue editing. The framework exposes a fluent DSL (FXGL facade) for rapid game prototyping, along with a developer console and profiler. Major entry points include the GameApplication abstract class, the FXGL static API, EntityBuilder for entity creation, and AnimationBuilder for animations. Externally, it relies on JavaFX for rendering, Kotlin for DSL syntax, SDL2 for native controller input, and (via the intelligence module) headless browser or MediaPipe WebSocket servers for speech/gesture recognition. The codebase is modular across Maven submodules (fxgl-core, fxgl-scene, fxgl-io, fxgl-tools, etc.) and includes extensive sample applications demonstrating each feature. While most core systems are production‑ready, some areas (e.g., GLImageView, ForeignFunctionCaller) are explicitly marked as work‑in‑progress, and a few components like DFSPathfinder have incomplete implementations.

RATING: 8.9/10 MAINT: active DRIFT: low
▸ 6 reusable components found
$ loading more...
$ submit: