Which library do I need?
Kolt provides several packages tailored to different architectural and platform requirements. Use the mapping table below to find the correct module for your project.
Library & Component Decision Matrix
| What are you trying to do? | Recommended Library / Tool | Module / Coordinates |
|---|---|---|
| Manage consistent versions across all Kolt runtime libraries without specifying version numbers per module. | kolt-bom | io.github.appspiriment.kolt:kolt-bom |
| Share pure Kotlin helper extensions, collection operations, or simple formatters in common code. | utils | io.github.appspiriment.kolt:utils |
Log messages from common code that automatically route to Logcat on Android and standard console output on iOS/Desktop. |
logutils | io.github.appspiriment.kolt:logutils |
| Build shared Compose UI screens using pre-configured styling tokens, G2-continuous card shapes, and custom layouts. | compose-kmp | io.github.appspiriment.kolt:compose-kmp |
| Share Compose screens/layouts, bottom navigation bars, permissions handlers, or photo pickers (Android-only). | compose-utils | io.github.appspiriment.kolt:compose |
| Query and track device location coordinates (GPS tracking) across Android, iOS, Desktop, and browser Geolocation API on Web. | location | io.github.appspiriment.kolt:location |
| Show an interactive location picker screen or dialog (autocomplete search, map pin drop, current location, manual entry) in Compose. | location-picker | io.github.appspiriment.kolt:location-picker |
| Check for update availability and trigger immediate/flexible update flows via Play Store APIs (Android-only). | update-utils | io.github.appspiriment.kolt:update-utils |
| Implement standard interactive UI pieces like dialog overlays, password fields, wizards, and dropdown menus. | Components Catalog | Various (reference detail pages for paths) |
| Standardize Hilt setup, Compose compilation options, and publication settings across all Gradle subprojects. | Convention Plugins | build-logic conventions |
Quick Flowchart
Are you styling UI?
├── YES ──► Need custom shapes/buttons? ──► Use compose-kmp
│ ├── Need Android permissions/picker? ─► Use compose-utils
│ └── Need a map/search location picker dialog? ─► Use location-picker
└── NO ───► Need to write logs? ──────────► Use logutils
├───► Need date/string helpers? ────► Use utils
├───► Need device coordinates? ─────► Use location
└───► Need in-app updates? ─────────► Use update-utils