en un clic
awesome-kotlin-multiplatform-agent-skills
awesome-kotlin-multiplatform-agent-skills contient 21 skills collectées depuis almasumdev, avec une couverture métier par dépôt et des pages de détail sur le site.
Skills dans ce dépôt
Idiomatic use of `expect`/`actual` declarations in Kotlin Multiplatform, when to prefer interfaces + DI instead, and how to design platform abstractions that age well. Use when you need platform-specific behavior in `commonMain`.
Canonical Kotlin Multiplatform project layout — source set hierarchy (commonMain, androidMain, iosMain, jvmMain, jsMain, wasmJsMain), module graph, and Gradle composite build patterns. Use this when bootstrapping a new KMP repo or restructuring an existing one.
How to split a Kotlin Multiplatform codebase into shared modules (domain, data, ui-shared, feature-*), keep DI boundaries clean across targets, and avoid "one giant shared module" pitfalls. Use when the `shared/` module starts ballooning.
GitHub Actions CI/CD for Kotlin Multiplatform — matrix builds (ubuntu for JVM/Android/JS, macOS for iOS), caching, Maven Central / SPM / CocoaPods publishing. Use when wiring CI or a release pipeline.
Gradle Kotlin DSL patterns for KMP — version catalogs, hierarchical source sets, convention plugins, assembling XCFrameworks and fat frameworks. Use when wiring or refactoring a KMP build.
Building an offline-first repository in KMP with Ktor + SQLDelight, including conflict resolution, background sync, and NetworkBoundResource-style flow. Use when designing features that must work without a connection.
Using `kotlinx.serialization` in a KMP codebase — JSON config, polymorphism, sealed hierarchies, custom serializers, and CBOR/ProtoBuf. Use when defining DTOs or wire formats.
Setting up the Ktor HTTP client in `commonMain` with per-platform engines, auth, interceptors, retries, and logging. Use when implementing networking for a KMP app.
Using SQLDelight 2 for typed SQL in KMP — schema, queries, migrations, coroutines-extensions, and per-platform drivers. Use for any multiplatform local database.
Incrementally extracting an existing Android (Kotlin + Jetpack) codebase into Kotlin Multiplatform `commonMain`, without forcing a big-bang rewrite. Use when introducing KMP into a shipping Android app.
Introducing Kotlin Multiplatform into an existing Swift iOS app — wrapping Swift domain code, packaging the shared framework, and bridging Kotlin `Flow`/suspend to Swift. Use when adding KMP to a shipping iOS app.
Shrinking the Kotlin/Native iOS framework and Android AAR produced by a KMP shared module — exported API trimming, dead-code elimination, static vs dynamic frameworks, and dependency auditing. Use when the iOS app binary is too big.
Performance tuning for Kotlin Multiplatform — coroutines on iOS, the new memory model, cold-start cost of the shared framework, and avoiding common Kotlin/Native footguns. Use when profiling a KMP app that feels slow on iOS.
Testing Compose Multiplatform UI — semantic assertions in commonTest, running UI tests on Android / Desktop / iOS, and screenshot regression strategies. Use when covering shared UI with tests.
Testing strategy for KMP — `commonTest` with `kotlin.test`, `expect`/`actual` test doubles, Turbine for Flow assertions, Ktor `MockEngine`, and in-memory SQLDelight drivers. Use when writing tests for shared code.
Navigation in Compose Multiplatform with Voyager or Decompose, including deep links, back-handling, and nested graphs. Use when designing multi-screen KMP apps.
Sharing UI with Compose Multiplatform 1.7+ across Android, iOS, Desktop (JVM), and Web (wasmJs). Covers module layout, entry points per platform, lifecycle, and when UI-per-platform is still better. Use when building shared screens.
Accessibility in Compose Multiplatform — semantics, focus order, contrast, dynamic type, and the places where Android TalkBack and iOS VoiceOver diverge. Use when building or auditing shared UI.
Animation APIs in Compose Multiplatform (animate*AsState, updateTransition, AnimatedContent, Animatable) and the performance caveats that differ between Android, iOS, and Desktop. Use when adding motion to shared UI.
Internationalization with `compose-resources` — string qualifiers, ICU plurals, RTL layout, per-locale fallbacks, and runtime locale switching. Use when shipping to multiple markets.
Sharing images, strings, fonts, and raw files across Android/iOS/Desktop/Web with the `compose-resources` Gradle plugin. Covers folder layout, qualifier directories, and how platform asset loading still differs. Use when adding shared assets.