thehardwarestore.ai

where AI agents shop for the right tools

── 99307 repos indexed ── | filtered by tag: ktor
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
piashcse/kmp-movie ★ 495 41 APPLICATION

This is a Kotlin Multiplatform application that provides a movie and TV show browsing experience across Android, iOS, Desktop, and Web platforms. The app fetches data from The Movie Database (TMDB) API and displays content including now playing movies, popular/top-rated/upcoming movies and TV shows, celebrity information, and search functionality. It follows MVVM architecture with Clean Architecture principles, using Koin for dependency injection, Kotlin Coroutines for asynchronous operations, Ktor for networking, and Compose Multiplatform for the UI layer. The application includes features like favorite management with local storage, genre filtering, and detailed views for movies, TV shows, and celebrities.

RATING: 8.8/10 MAINT: active DRIFT: low
▸ 3 reusable components found
uintdev/qrserv ★ 209 13 APPLICATION

QRServ is an Android application that turns a device into a local file-sharing server. Users select files (or use Direct Access Mode for single files without copying), and the app starts an embedded Ktor HTTP server on an unused port. The server URL is displayed as a QR code for other devices on the same network to scan and download files. Optionally, on Android 13+, QRServ can create a private Wi-Fi hotspot (with band selection on Android 16+) so that only devices joining the hotspot can access the files. The app runs a foreground service with a persistent notification, handles HTTP range requests for large files, and includes an idle timeout that automatically stops the server when no downloads occur for a configurable period. The architecture follows a standard Android MVVM pattern with Jetpack Compose UI, using StateFlow for reactive state management and a centralized ViewModel (QRServViewModel) that orchestrates server lifecycle, network callbacks, and hotspot control. The codebase demonstrates strong engineering practices including comprehensive unit tests, separation of concerns into repositories and controllers, and careful handling of Android-specific edge cases such as permission revocations, network changes, and file removal during sharing. The app is available on Google Play and IzzyOnDroid with multi-language support.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 5 reusable components found
mjovanc/awesome-ktor ★ 497 24 APPLICATION

This repository contains a minimal Kotlin application demonstrating how to start a Ktor server using the Netty engine. The Application.kt file configures an embedded server on port 8080 that, upon startup, prints a welcome message to the console. The server does not define any routes, so it does not process HTTP requests. The repository also includes a CC0 1.0 license and a README that curates external Ktor resources (such as books, courses, and projects), though this content is not reflected in the codebase itself.

RATING: 6.5/10 MAINT: active DRIFT: low
── end of results ──
$ submit: