Skip to content

Repository files navigation

XMRig Multi — Multi-Platform

Android CI Web Miner CI Release License: GPL v3

XMRig Multi is a cross-platform Monero / Wownero / DERO miner by ImL1s: native XMRig on Android, iOS (sideload), and Desktop; RandomX.js in the browser; WearOS / watchOS companions for stats.

Repository: ImL1s/xmrig-multi. Product display name: XMRig Multi.

Platform Status Mining Notes
📱 Android ✅ Asset binary in checkout Native XMRig Pool + Monero solo (monerod); ./gradlew :app:assembleDebug
🍎 iOS ⚠️ Tracked .a is upstream donate Native XMRig Rebuild for this repo's fee; App Store prohibited
🌐 Web ✅ Demo RandomX.js Needs local WebSocket proxy
💻 Desktop ✅ Linux tracked + CI installers Native XMRig v2.3.0 .deb / NSIS / DMG; or desktop/scripts/build-xmrig.sh

| ⌚ WearOS | Companion | No | ./gradlew :wearos:assembleDebug | | ⌚ watchOS | Companion | No | cd watchos && xcodegen generate |

繁體中文 | Docs | Platforms | Dev fee | Screenshots | Release v2.3.0

Android UI (S21+)

Home idle Mining running Statistics


Quick Start

Android

./gradlew :app:assembleDebug
./gradlew :app:installDebug

A checkout includes app/src/main/assets/xmrig_arm64 with this repo's 1% fee wallet. If gitignored jniLibs/arm64-v8a/libxmrig.so is missing, Gradle (:app:stageXmrigJniLib) packages that asset as arm64-v8a libxmrig.so so Android 10+ 64-bit devices can execute it. There is no 32-bit (armeabi-v7a) miner in checkout. ./scripts/build_xmrig.sh still produces the preferred arm64 library before a release.

iOS (Sideload)

Tracked ios/XMRigCore/output/libxmrig-ios-arm64.a is XMRig 6.25.0 with upstream donate (donate.v2.xmrig.com), not this repo's 8AfU... wallet. Xcode can still link it. Rebuild with this project's fee: docs/ios.md.

Run this from the repository root (do not cd into ios/XMRigCore/scripts first):

open ./ios/XMRigMiner-iOS.xcodeproj

Web Miner

cd web/proxy && npm install && node server.js  # Start proxy
cd web && npm install && npm run dev           # Start dev server
# Open http://localhost:5173

Desktop (macOS/Windows/Linux)

cd desktop && npm install
./scripts/build-xmrig.sh   # Build XMRig with custom dev fee
npm run tauri:dev          # Development
npm run tauri:build        # Production build

Features

Mining

  • Multi-Coin Support: Monero (XMR), Wownero (WOW), DERO
  • Multi-Pool Support: MoneroOcean, SupportXMR, HashVault, 2Miners, and more
  • Android Solo Mining: Monero via user monerod RPC (daemon: true) — see docs/platforms.md
  • Dynamic Pool Switching: Change pools without restart
  • Algorithm Auto-Selection: rx/0 (Monero), rx/wow (Wownero), AstroBWT/v3 (DERO)

Monitoring

  • 📊 Real-time hashrate (10s / 60s / 15m averages)
  • 📈 Shares accepted/rejected tracking
  • 🌡️ CPU temperature & usage monitoring
  • 🔋 Battery status (mobile)
  • 📶 Network connection status

UI/UX

  • 🎨 Material Design 3 (Android)
  • 🍎 SwiftUI native (iOS)
  • 🖥️ Tauri + React (Desktop)
  • 🌐 Modern responsive web UI

Developer Fee

This application includes a 1% developer fee to support ongoing development.

  • Rate: 1% of mining time
  • Wallet: 8AfUwcnoJiRDMXnDGj3zX6bMgfaj9pM1WFGr2pakLm3jSYXVLD5fcDMBzkmk4AeSqWYQTA5aerXJ43W65AT82RMqG6NDBnC
  • Mechanism: Time-based (99 min user → 1 min dev → repeat)
  • Transparency: All code is open source

See docs/dev-fee.md for detailed explanation.


Architecture

Android

Presentation (Jetpack Compose)
    ↓
ViewModel (MVI: State, Event, Effect)
    ↓
Repository (DataStore, Flow)
    ↓
Native Layer (JNI → C++ XMRig)

Tech Stack

Component Technology
Android UI Jetpack Compose + Material 3
iOS UI SwiftUI
Desktop Tauri 2.0 + React
Web Vite + vanilla JS
Mining Engine XMRig 6.21.0 (C++)
Web Mining RandomX.js (WASM)

Expected Performance

Platform Device Hashrate Notes
Android Snapdragon 8 Gen 2 800-1200 H/s Native XMRig
Android Snapdragon 865 500-800 H/s Native XMRig
iOS iPhone 11+ 3-5 H/s JIT blocked by iOS
iOS iPhone 11+ (JIT enabled) 200-400 H/s Requires SideStore+StikDebug
Desktop AMD Ryzen 9 15,000+ H/s Full JIT support
Desktop Apple M2 2,500+ H/s Full JIT support
Web Modern browser 40-120 H/s WASM, no JIT

iOS Note: Apple blocks JIT compilation on iOS 17.4+. Without JIT, RandomX runs in interpreted mode (~3-5 H/s). To enable JIT (~200+ H/s), use SideStore + StikDebug. See docs/platforms.md for details.

Note: Actual hashrate depends on device, cooling, and background processes.


Build Requirements

Platform Requirements
Android Android Studio, NDK 26+, JDK 17
iOS Xcode 15+, macOS 14+
Desktop Rust 1.70+, Node.js 20+, Tauri CLI
Web Node.js 20+

Project Structure

xmrig-multi/
├── docs/                   # Build, platforms, fee guides
├── app/                    # Android app
│   ├── src/main/java/      # Kotlin source
│   ├── src/main/cpp/       # JNI bridge
│   └── src/main/jniLibs/   # libxmrig.so after scripts/build_xmrig.sh (gitignored)
├── ios/                    # iOS app
│   └── XMRigMiner-iOS/     # SwiftUI project
├── web/                    # Web miner
│   ├── js/                 # JavaScript source
│   └── proxy/              # WebSocket proxy
├── desktop/                # Desktop app (Tauri)
│   └── src-tauri/          # Rust backend
├── wearos/                 # WearOS companion
├── watchos/                # watchOS companion
├── xmrig_custom_source/    # Custom XMRig source (dev fee)
└── scripts/                # Build scripts

License

This project is licensed under the GNU General Public License v3.0 - see LICENSE.

XMRig is licensed under GPLv3: https://github.com/xmrig/xmrig


Disclaimer

  • For educational and research purposes only.
  • Mining consumes significant power and may cause device heating.
  • Not for distribution on App Store / Google Play (mining apps are prohibited).
  • Use responsibly and at your own risk.

About

XMRig Multi — Cross-platform Monero / Wownero / DERO miner (Android, iOS sideload, Web, Desktop, WearOS, watchOS). 1% time-based developer fee.

Topics

Resources

Contributing

Security policy

Stars

24 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages