Kite Config Modules Extension
Where your projects live, inside kiteConfig { modules { ... } }.
kiteConfig {
modules {
shared = ":shared"
androidApps(":androidApp")
}
}Most builds never open this block. KiteConfig finds the shared KMP project and the Android app by itself, so a standard template repo configures nothing here.
Auto-detection fails closed. When two projects apply Kotlin Multiplatform and a shared-scoped feature such as buildConfig needs one, or two projects are Android applications, the build stops and names the candidates instead of guessing. One line here ends the ambiguity for good.
What each selector controls
| Property | Selects | Detected when you say nothing |
|---|---|---|
| shared | where generated commonMain source lands | the sole project applying Kotlin Multiplatform |
| androidApps | which apps receive identity, versions, and logo output | the sole Android application project |
| desktopApps | which desktop apps receive identity, versions, and installer icons | the sole Compose Desktop application project |
| androidAppDirectory | where launcher resources are written | the selected application's own directory |
| composeResources | where locale discovery reads | the shared project's commonMain/composeResources |
Detection reports rather than guesses. Zero or several candidates fails with the list of what it found and the one line that settles it.
See also
for what composeResources feeds.
for the feature that most often needs shared.
Properties
Directory of the Android app module on disk.
Exact Android application project paths, absolute, such as ":androidApp". These receive app identity, versions, display name, locale filters, and logo output.
Compose resources directory that locale discovery reads.
Exact Compose Desktop application project paths, absolute, such as ":desktopApp". These receive app identity, versions, packaging names, and installer icons.
Functions
Adds one or more application paths to androidApps.
Adds one or more desktop application paths to desktopApps.