Claude-skill-registry kotlin-multiplatform
Kotlin Multiplatform - shared code, expect/actual, iOS integration
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/kotlin-multiplatform" ~/.claude/skills/majiayu000-claude-skill-registry-kotlin-multiplatform && rm -rf "$T"
manifest:
skills/data/kotlin-multiplatform/SKILL.mdsource content
Kotlin Multiplatform Skill
Build cross-platform applications with shared Kotlin code.
Topics Covered
Project Setup
kotlin { androidTarget() listOf(iosX64(), iosArm64(), iosSimulatorArm64()).forEach { it.binaries.framework { baseName = "Shared"; isStatic = true } } sourceSets { commonMain.dependencies { implementation("io.ktor:ktor-client-core:2.3.8") } androidMain.dependencies { implementation("io.ktor:ktor-client-okhttp:2.3.8") } iosMain.dependencies { implementation("io.ktor:ktor-client-darwin:2.3.8") } } }
expect/actual
// commonMain expect class SecureStorage { fun get(key: String): String? } // androidMain actual class SecureStorage { actual fun get(key: String) = prefs.getString(key, null) } // iosMain actual class SecureStorage { actual fun get(key: String) = KeychainWrapper.get(key) }
Troubleshooting
| Issue | Resolution |
|---|---|
| "No actual for expect" | Add implementation in platform source set |
| iOS framework not found | Run linkDebugFrameworkIos task |
Usage
Skill("kotlin-multiplatform")