goBlockchainDataAnalysis
blockchain data analysis, written in Go
Not finished - ToDo list
- Backend
- Network Address generation avoiding infinite relation loops
- Sankey Address generation without loops
- Frontend
- After Sankey visualization, go to Network Address visualization and render without Sankey dots
- Both
- Tx/day
- Tx volume
- Block size
- Blockchain size
Install
- Nodejs & NPM https://nodejs.org/ --> to get npm packages for the web
- MongoDB https://www.mongodb.com/
- Faircoin wallet https://download.faircoin.world/, or the Cryptocurrency desired wallet
- goBlockchainDataAnalysis https://github.com/arnaucode/goBlockchainDataAnalysis
Configure
- Wallet /home/user/.faircoin2/faircoin.conf:
rpcuser=usernamerpc
rpcpassword=password
rpcport=3021
rpcworkqueue=2000
server=1
rpcbind=127.0.0.1
rpcallowip=127.0.0.1
- goBlockchainDataAnalysis/config.json:
{
"user": "usernamerpc",
"pass": "password",
"host": "127.0.0.1",
"port": "3021",
"genesisTx": "7c27ade2c28e67ed3077f8f77b8ea6d36d4f5eba04c099be3c9faa9a4a04c046",
"genesisBlock": "beed44fa5e96150d95d56ebd5d2625781825a9407a5215dd7eda723373a0a1d7"
}
Run
- Start MongoDB
sudo service mongod start
- Start wallet
./faircoind -txindex -reindex-chainstate
Wait until the entire blockchain is downloaded.
- Run explorer, to fill the database
./goBlockchainDataAnalysis -explore
3.1. The next runs, once the database have data, can just run:
./goBlockchainDataAnalysis
Webapp will run on 127.0.0.1:8080
- ADDITIONAL - Run the webserver, directly from the /web directory
This can be useful if need to deploy the API server in one machine and the webserver in other.
In the /web directory:
npm start
Webapp will run on 127.0.0.1:8080
Additional info
Some screenshots