All Projects → TENDIGI → Xmrminer

TENDIGI / Xmrminer

Licence: mit
An embeddable Monero miner written in Swift.

Programming Languages

swift
15916 projects

Projects that are alternatives of or similar to Xmrminer

Awesome Privacy On Blockchains
A curated list of privacy on blockchains resources
Stars: ✭ 86 (-1.15%)
Mutual labels:  cryptocurrency, monero
Cpuminer Multi
Multi-algo CPUMiner & Reference Cryptonote Miner (JSON-RPC 2.0)
Stars: ✭ 499 (+473.56%)
Mutual labels:  cryptocurrency, monero
Coin Hive Stratum
use CoinHive's JavaScript miner on any stratum pool
Stars: ✭ 380 (+336.78%)
Mutual labels:  cryptocurrency, monero
Monero Python
A comprehensive Python module for handling Monero cryptocurrency
Stars: ✭ 122 (+40.23%)
Mutual labels:  cryptocurrency, monero
Awesome Monero
Curated list of links of useful resources for the Monero crypto-currency
Stars: ✭ 15 (-82.76%)
Mutual labels:  cryptocurrency, monero
React Coin Hive
Mine cryptocurrency while your users haven't engaged with your content lately
Stars: ✭ 153 (+75.86%)
Mutual labels:  cryptocurrency, monero
Xmr Miner
Web-based Cryptocurrency miner, built with Vue.js
Stars: ✭ 444 (+410.34%)
Mutual labels:  cryptocurrency, monero
Xmrig
RandomX, CryptoNight, AstroBWT and Argon2 CPU/GPU miner
Stars: ✭ 6,372 (+7224.14%)
Mutual labels:  cryptocurrency, monero
Vue Coin Hive
Start mining coins in your Vue projects in 1 second.
Stars: ✭ 14 (-83.91%)
Mutual labels:  cryptocurrency, monero
Monero Testnet Sandbox
Monero (XMR) testnet sandbox with 3 daemons and 3 wallets
Stars: ✭ 12 (-86.21%)
Mutual labels:  cryptocurrency, monero
Kasisto
A Monero Point of Sale payment system
Stars: ✭ 120 (+37.93%)
Mutual labels:  cryptocurrency, monero
Cryptocurrency Dashboard
Crypto Currency Dashboard Using Twitter 🐦 And Coinmarketcap 🚀 API
Stars: ✭ 54 (-37.93%)
Mutual labels:  cryptocurrency, monero
Mithril
Pure Rust Monero Miner
Stars: ✭ 112 (+28.74%)
Mutual labels:  cryptocurrency, monero
Webminerpool
Complete sources for a monero webminer.
Stars: ✭ 175 (+101.15%)
Mutual labels:  cryptocurrency, monero
Cryptocurrency Cli
💰 Cryptocurrency Portfolio On The Command Line 💰
Stars: ✭ 99 (+13.79%)
Mutual labels:  cryptocurrency, monero
Monero
Monero: the secure, private, untraceable cryptocurrency
Stars: ✭ 6,503 (+7374.71%)
Mutual labels:  cryptocurrency, monero
Cnrig
Static CryptoNight CPU miner for Linux + automatic updates
Stars: ✭ 45 (-48.28%)
Mutual labels:  cryptocurrency, monero
Sumoeasyminer
The most easy, intuitive CPU miner for cryptonote-based cryptocurrency
Stars: ✭ 77 (-11.49%)
Mutual labels:  cryptocurrency, monero
Nano Docs
Documentation for the Nano protocol
Stars: ✭ 80 (-8.05%)
Mutual labels:  cryptocurrency
Cated
CATEd - Cryptocurrency Analytics and Trading Engine for Django
Stars: ✭ 84 (-3.45%)
Mutual labels:  cryptocurrency

XMRMiner

XMRMiner is an embeddable Monero miner written in Swift. It can be used to repurpose old iPhones/iPads, or as an alternative to in-app ads as a means for generating revenue. Use it responsibly.

Version

Miner Working

Why Monero?

There are a lot of reasons. More importantly, however, it can be mined profitably on low-end CPUs which makes it perfect for the ARM chips in iPhones and iPads. It's also the currency similar web-based offerings use.

We tested it on a variety of devices. As an example, an iPhone 7 Plus can operate at a hashrate of 50 H/s when the library is compiled with the -Ofast optimization profile. At the time of this writing, that means it will generate approximately $2.37/month according to this calculator.

Example

To run the example project, clone the repo, and run pod install from the Example directory first.

Requirements

To get started, you'll need to set up a Monero wallet and get a Monero address. You can either set up a wallet locally by following a guide like this one, or use an online wallet like MyMonero.

Also, you'll need at least the following:

  • iOS 10.0+
  • Xcode 9+
  • Swift 4+

Installation and Usage

Getting the library

XMRMiner is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod 'XMRMiner'

Integrating the miner into an application

First, import the library:

import XMRMiner

Next, you'll need to instantiate a Miner. If you're just getting started, most of the default parameters should be fine. See Miner.swift for the other parameters that can be passed to the Miner constructor. We did this in AppDelegate.swift.

let miner = Miner(destinationAddress: "<your Monero address>")

You'll then want to set the Miner's delegate, and implement the status method:

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
    miner.delegate = window?.rootViewController as? MinerDelegate
    return true
}

In our app's ViewController.swift:

extension ViewController: MinerDelegate {
    func miner(updatedStats stats: MinerStats) {
        hashrateLabel.text = "\(stats.hashRate) H/s"
        submittedHashesLabel.text = "\(stats.submittedHashes)"
    }
}

Finally, you'll want to configure your app to start/stop the Miner at appropriate times. Again, in AppDelegate.swift:

func applicationWillResignActive(_ application: UIApplication) {
    miner.stop()
}
    
func applicationDidBecomeActive(_ application: UIApplication) {
    do {
        try miner.start()
    }
    catch {
        print("something bad happened")
    }
}

Author

Nick Lee, [email protected]

License / Credits

Portions of this software are subject to additional license restrictions, as they have been ported from the Xmonarch repository. They can be found in the Vendor/crypto folder.

XMRMiner is available under the MIT license.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].