Skip to content

gemwalletcom/gem-android

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

πŸ’Ž Gem Wallet - Android

Android Tests License Ask DeepWiki Gem Wallet Discord X (formerly Twitter) Follow Telegram

Gem Wallet is a powerful and secure mobile application designed for Android and iOS. It provides users with a seamless and intuitive experience to manage their digital assets and cryptocurrencies.

The app is developed using Kotlin/Compose. The codebase also includes a Core library implemented in Rust, providing efficient and secure cryptographic operations for enhanced data protection.

πŸ€– Android available on the Google Play Store

πŸ“²οΈ iOS available on the App Store

✨ Features

  • πŸ‘¨β€πŸ‘©β€πŸ‘§β€πŸ‘¦ Open Source & Community Owned with web3 ethos.
  • πŸ—οΈ Self-Custody Exclusive ownership and access to funds.
  • πŸ”‘ Secure and Privacy preserving wallet.
  • πŸ”— Multi-Chain Support: Supports Ethereum, Binance Smart Chain, Polygon, Avalanche, Solana, and more.
  • πŸ”„ Swaps: Exchange cryptocurrencies quickly and easily.
  • πŸ“ˆ Staking: Earn rewards by staking assets.
  • 🌐 WalletConnect: Secure communication with decentralized applications (dApps).
  • 🌍 Fiat On/Off Ramp: Easily convert between cryptocurrencies and traditional currencies.
  • πŸ—ƒοΈ Backup and Recovery: Simple backup and recovery options.
  • πŸ“ˆ Real-Time Market Data: Integrated with real-time price tracking and market data.
  • πŸ”„ Instant Transactions: Fast and efficient transactions with low fees.
  • πŸ”” Customizable Notifications: Set alerts for transactions, price changes, and important events.
  • πŸ›‘οΈ Advanced Security: Encryption and secure key management.

πŸ„β€β™‚οΈ Contributing

See our Contributing Guidelines.

πŸ₯° Community

πŸ™‹ Getting Help

If you want to contribute, you can use our developers telegram to chat with us about further development!

πŸš€ Getting Started

Android Development

Note

We recommend using Apple silicon Macs for development (arm64), if you're using Intel Mac, you need to add x86_64 to targets under cargoNdk in build.gradle.kts.

  1. Download and install latest Android Studio
  2. Install JDK 17, preferably using SDKMAN
  3. Install just by running brew install just if you don't have it already.
  4. Run just bootstrap to install all nessesary tools (Rust / NDK).
  5. Generate a GitHub personal token with read:packages permission and add it to your local.properties file:
gpr.username=<your-github-username>
gpr.token=<your-github-personal-token>

Optionally, you can generate models and kotlin bindgen by running just generate, Gem Android consumes wallet core library as a local module, if you need to update it, ping us or create an issue on here.

πŸ” Security Scanning

We run MobSF mobsfscan to catch insecure patterns in our Kotlin/Java sources.

  • Local usage: Install uv and run uv tool install mobsfscan once. After that, just mobsfscan (internally uv tool run mobsfscan -- --type android --config .mobsf --exit-warning) scans the Android codebase with the repo-wide configuration and fails on WARNING and ERROR findings.
  • CI enforcement: .github/workflows/mobsfscan.yml runs the same command on every push/PR to main, uploads a SARIF report to GitHub code scanning, and fails the workflow if issues remain.

Only suppress detections when you fully understand the riskβ€”ideally fix the code; otherwise, add a targeted // mobsf-ignore: rule_id comment with context.

♻️ Reproducible Release Verification

See reproducible/README.md for the Docker-based verification workflow, prerequisites, and known gaps. You can also grab the latest CI-built APK from the Docker workflow artifact gem-android-apk on GitHub Actions.

πŸ‘¨β€πŸ‘§β€πŸ‘¦ Contributors

We love contributors! Feel free to contribute to this project but please read the Contributing Guidelines first!

🌍 Localization

Join us in making our app accessible worldwide! Contribute to localization efforts by visiting our Lokalise project

βš–οΈ License

Gem Wallet is open-sourced software licensed under the Β© GPL-3.0.