Aurora Libraries
Monorepo for Kotlin Multiplatform libraries with a test application targeting Linux and Aurora OS.
Each library in libraries/ is a self-contained project with its own build configuration.
The app module serves for integration testing of libraries on target platforms.
Libraries
| Library | Version | Description | Links | License |
|---|---|---|---|---|
| build-konfig | 0.18.0 | Build configuration generation from Gradle to Kotlin | GitHub | Apache-2.0 |
| kotlinx-datetime | 0.7.1 | Fork of kotlinx-datetime with Aurora OS support | GitHub | Apache-2.0 |
| kamel | 1.0.9 | Async image loading and caching | GitHub | Apache-2.0 |
| kermit | 2.1.0 | Logging with configurable levels and tags | GitHub | Apache-2.0 |
| koin | 4.2.0 | Dependency injection framework for Kotlin | GitHub | Apache-2.0 |
| ktor | 3.4.2 | Async HTTP client and server framework for Kotlin | GitHub | Apache-2.0 |
| sqldelight | 2.3.2 | SQL database access with typed code generation | GitHub | Apache-2.0 |
| dbus-library | 0.0.1 | D-Bus wrapper for KMP on Aurora OS | - | BSD 3-Clause |
Peculiarities
- Isolation: each library builds and publishes independently
- Reusability: libraries can be consumed by external projects via Maven
- Single entry point: root Gradle simplifies orchestration of common tasks
-
Testing:
appenables cross-platform compatibility validation on real targets
Root Tasks
Available tasks in root build.gradle.kts:
Aurora Libraries tasks
----------------------
cleanAll - Clean all projects.
publishAllToMavenLocal - Publish all libraries to Maven Local based on .aurora-spec.json
runAppAuroraDevice - Run app project for Aurora OS Device
runAppAuroraEmulator - Run app project for Aurora OS Emulator
runAppDesktop - Run app project for Desktops
runTestAurora - Test app project for Aurora OS
Resources used
- Fonts Google