A modern Kotlin library that embeds Monero's wallet2 inside a sandboxed Android Service and exposes an idiomatic, asynchronous API for mobile apps.
- Kotlin-native API: Asynchronous by design, using
suspend
functions andFlow
. - Sandboxed native code: All C++ runs in a zero-privilege, isolated process.
- Pluggable storage: Bring your own persistence layer (files, DB, cloud) via the
StorageProvider
interface. - Custom HTTP stack: Inject any networking code (plain, Tor, I2P, QUIC, …) to talk to Monero remote nodes.
- Client-side load-balancing: Automatic node selection for faster sync & fail-over.
- Tiny library (~6.5 MB AAR): LTO, dead-code elimination, and static vendored deps keep the footprint small.
- Jetpack-Compose demo wallet: Full sample app following Google's official architecture guidelines.
The SDK is available on Maven Central:
dependencies {
implementation("im.molly:monero-wallet-sdk:<latest-version>")
}
Make sure mavenCentral()
is in your repositories block.
To use snapshot versions:
repositories {
maven {
name = "Central Portal Snapshots"
url = uri("https://central.sonatype.com/repository/maven-snapshots/")
content {
includeModule("im.molly", "monero-wallet-sdk")
}
}
}
dependencies {
implementation("im.molly:monero-wallet-sdk:<snapshot-version>")
}
Replace <latest-version>
or <snapshot-version>
with the version you want to use.
A fully functional demo wallet is included in demo/android
, implemented using Jetpack Compose
and following Android's modern app architecture best practices.
To try it out:
- Clone the repository with submodules:
git clone --recursive https://github.com/mollyim/monero-wallet-sdk
- Open the root project directory in Android Studio (Meerkat or later).
- Select the demo run configuration and press Run.
The demo app showcases wallet creation, sync, transaction sending, and more.
- Android 8.0 (API 26+)
- Kotlin 2.1.0
- Android Gradle Plugin 8.1.0+
Feature | Status |
---|---|
Wallet management (create/open) | ✅ Done |
Balance, history, sync | ✅ Done |
Send XMR | ✅ Done |
Seraphis migration support | 🔜 Planned |
- Funded by the Monero Community Crowdfunding System (CCS).
This project is licensed under the GNU General Public License v3.0.