Skip to content

Mine the Moon Treasures using a command line NodeJS application

Notifications You must be signed in to change notification settings

Gameper/moon-miner

 
 

Repository files navigation

Moon - Miner

Solves proof of work to mine supported ERC20 tokens.

Building from Source

Setup (Windows/Linux)

  1. Install NodeJS 8.9
  2. Run 'npm install yarn -g' to install yarn package manager
  3. Clone/download the project
  4. Open a terminal, cd into the project folder and run 'yarn' to install dependencies
  5. Run the command 'npm run build' to build C files with node-gyp
  6. Start the miner with 'node index.js'

Setup (Mac)

  1. Install Homebrew & NodeJS 8.9
  2. Run 'brew install yarn' to install yarn package manager
  3. Clone/download this project
  4. Open a terminal, cd into the project folder and run 'yarn'
  5. Run the command 'npm run build' to build C files with node-gyp
  6. Start the miner with 'node index.js'

Commands

  {commands}
  "help" - Show the help menu

  "account new" - Create a new mining account
  "account list" - List all mining accounts
  "account select 0x####" - Select a primary mining account by address
  "account balance" - List the ether and token balance of your selected account

  "contract list" - List the selected token contract to mine
  "contract select 0x####" - Select a PoW token contract to mine

  "config gasprice #" - Set the gasprice used to submit PoW to the token smartcontract
  "config cpu_threads #" - Set the number of CPU cores to use for mining
  "config web3provider https://----:####" - Set the web3 provider url for submitting ethereum transactions

  "pool mine" - Begin mining into a pool
  "pool list" - List the selected mining pool
  "pool select https://####.com:####" - Select a pool to mine into

  "mine" - Begin mining solo, directly into the smartcontract

Different Part After Setup

Getting Started

  1. Build a new mining account with 'account new'
  2. View the private key with 'account list'
  3. Write down these credentials
  4. Fund the account to send mining transaction
  5. contract select 0x68e82b7a3d99465ff7bd39b8218359febd7cc65e ({moon-miner mining contract address})
  6. config web3provider https://ropsten.infura.io/gmXEVo5luMPUGPqg6mhy:8545
  7. mine

Note that IF SOLO MINING it is necessary to fill the mining account (it is an Ethereum account) with a small amount of ether. Typically 0.005 eth is good enough to get started. The ether is used for gas to make function calls to the token smart contract when your miner finds a solution to the Proof of Work. When the gas is spent that means that you have found a solution! If you were the first to find it, you will be rewarded with 0xbitcoin tokens. (See the block explorer for typical gas prices at the current moment.)

Pool Mining

  • You can mine into a pool with the command 'pool mine'
  • When mining into a pool, your gasprice does not matter and you will pay NO GAS FEES
  • Every pool is different so consult each pool owner. Typically, pools will offer a token withdraw mechanism or automatically send tokens to your address on a periodic basis or when a limit is reached

Vault Datafiles

(requires 'show hidden files and folders')

Stored at:

  • Windows '/Users/{user}/Appdata/Roaming/.0xbitcoin'

  • Mac '/home/{user}/Library/Preferences/.0xbitcoin'

  • Linux '/home/{user}/.0xbitcoin'

Testing

npm run test

Credits

  1. Zegordo (Developed the accelerated CPU Miner)

     ETH address [0x8AE981d92875C88f713600EB7dC4D23FA7E0E621]
    

Tokens that can be mined using Proof of Work:

  1. 0xBitcoin token - https://0xbitcoin.org - https://github.com/0xbitcoin/0xbitcoin-token

About

Mine the Moon Treasures using a command line NodeJS application

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 51.2%
  • Cuda 17.1%
  • C++ 13.6%
  • JavaScript 9.9%
  • Makefile 6.2%
  • Python 1.5%
  • M4 0.5%