/coinwalletoverview

CoinWalletOverview aims to be used on a small device with terminal display capabilities to provide an overview of the funds in your cryptowallet(s).

Primary LanguageC++MIT LicenseMIT

CoinWalletOverview

Overview

cwov1

CoinWalletOverview (CWO) is a program which runs in a command-line. It displays graphs of price histories for selected cryptocurrencies tied to registered crypto-wallets. It also updates the estimated value for your coins in a currency of your choice.

Used Libraries, Third-Party and Language

  • Language: C++
  • Tools:
    • Ninja
    • CMake
  • Libraries and Third-Party:

Supported Cryptos (for now and to be extended on request)

  • Bitcoin Mother of Cryptos
  • Ethereum
  • VeChain
  • more to come on demand...

Build & Install

    git clone https://gitlab.com/nkdzeus/coinwalletoverview
    cd coinwalletoverview

For your default System do:

    mkdir -p build/default
    cd build/default
    cmake ../../ -GNinja
    ninja cwo

If you want to cross-compile CWO and have a working cross-compile toolchain simply branch from above instruction:

    mkdir -p build/xcp
    cd build/xcp
    cmake -DCMAKE_TOOLCHAIN_FILE=../../toolchain-rpi.cmake ../../ -GNinja
    ninja cwo

Now copy resulting binary (cwo) to your rpi and let it run or boot, or however you prefer (:

Usage/Working

First a configuration-file has to be provided. The configuration should be placed in '$HOME/.config/cwo/state.json'. Example template:

{
  "wallets" : [
    {"crypto" : "ETH", "address" : "<your-addr>"},
    {"crypto" : "VET", "address" : "<your-addr>"},
    {"crypto" : "BTC", "address" : "<your-addr>"}

  ],
  "blockcypher" : {
    "token" : "your blockcypher api-key/token"
  },
  "investments" : [
    {"crypto" : "ETH", "amount" : 5000, "currency" : "EUR"},
    {"crypto" : "BTC", "amount" : 0, "currency" : "EUR"},
    {"crypto" : "VET", "amount" : 200, "currency" : "EUR"}
  ],
  "updateinterval" : 5
}

CWO is meant to be used on a Raspberry Pi but is not limited to that. When being run, CWO will create a database in '$HOME/.config/cwo/graph.db'. Each registered wallet will be updated in a frequency of 1 min.

Future

  • Upcoming features:

    • Custom graph.db location via configuration-file
    • More Cryptotypes...
  • General:

    • Better cross-compile guide with every resource necessary

Working on it whenever there is time ;D

Misc

Adaptive in size:

cwov1eachownline

Switch timeintervals:

cwov1graphsingle5min cwov1graphsingle1hour cwov1graphsingle1day

If enough datapoints are gathered and your display is wide enough, you can optionally switch of graph filling:

cwov1graphunfilled