Welcome to the Epsilon SDK documentation. Epsilon SDK is a suite of Kotlin Multiplatform (KMP) libraries designed to provide essential building blocks for modern mobile and cross-platform development. It helps reduce boilerplate and ensures consistency across different SDK projects.
If you are new to Epsilon SDK, start with the Integration Guide and then review the individual module pages for the libraries you need.
Epsilon SDK is built using modern Kotlin standards and industry-leading libraries:
The SDK is divided into several specialized modules:
| Module | Description | Supported Platforms |
|---|---|---|
| epsilon-core | Core utilities for Context, binary data, and pagination. | Android, iOS, JVM |
| epsilon-networking | Ktor-based networking with structured error resolution. | Android, iOS, JVM, JS |
| epsilon-licensing | CALM API licensing management. | Android, iOS, JVM, JS |
| epsilon-integrity-check | Device integrity via Play Integrity (Android) and App Attest (iOS). | Android, iOS, JVM, JS |
| epsilon-string | Multiplatform resources (strings, colors) and Compose support. | Android, iOS, JVM |
| epsilon-datastore | Persistent key-value storage using Jetpack DataStore. | Android, iOS, JVM |
| epsilon-formatter | Data and date formatting utilities (Platform-specific implementation). | Android, iOS, JVM |
| epsilon-immutable | Kotlinx Immutable Collections wrappers. | Android, iOS, JVM |
To use Epsilon SDK in your project, ensure mavenCentral() is in your repositories and add the desired dependencies to your build.gradle.kts:
repositories {
mavenCentral()
}
dependencies {
// Example: Adding the core and networking modules
implementation("ag.sportradar.mobile.epsilon:epsilon-core:<version>")
implementation("ag.sportradar.mobile.epsilon:epsilon-networking:<version>")
}For detailed setup instructions, including iOS export configuration, see the Integration Guide.