All Projects → bulwark-crypto → Bulwark Explorer

bulwark-crypto / Bulwark Explorer

Licence: mit
Block explorer for Bulwark Cryptocurrency

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Bulwark Explorer

Skycoin
Skycoin Core and Wallet
Stars: ✭ 549 (+863.16%)
Mutual labels:  blockchain, cryptocurrency, daemon
Halocoin
Experimental cryptocurrency (blockchain) written in python.
Stars: ✭ 44 (-22.81%)
Mutual labels:  blockchain, cryptocurrency
Cryptoroulette
CryptoRoulette
Stars: ✭ 56 (-1.75%)
Mutual labels:  blockchain, cryptocurrency
Exonum
An extensible open-source framework for creating private/permissioned blockchain applications
Stars: ✭ 1,037 (+1719.3%)
Mutual labels:  blockchain, database
Bitcoinml
Bitcoin data-structures library for OCaml
Stars: ✭ 38 (-33.33%)
Mutual labels:  blockchain, cryptocurrency
Microstellar
An easy-to-use Go Library for the Stellar payment network
Stars: ✭ 41 (-28.07%)
Mutual labels:  blockchain, cryptocurrency
Altcoin Cryptocurrency Generator
AltCoin CryptoCurrency Generator
Stars: ✭ 55 (-3.51%)
Mutual labels:  blockchain, cryptocurrency
Muecore Discontinued
MUE (X11) - DISCONTINUED
Stars: ✭ 21 (-63.16%)
Mutual labels:  blockchain, cryptocurrency
Jiacrontab
简单可信赖的任务管理工具
Stars: ✭ 1,052 (+1745.61%)
Mutual labels:  daemon, crontab
Blockchainage
「区块链技术指北」相关资料。
Stars: ✭ 51 (-10.53%)
Mutual labels:  blockchain, cryptocurrency
Cryptolights
Live visualisation of blockchain transactions for popular cryptocurrencies
Stars: ✭ 54 (-5.26%)
Mutual labels:  blockchain, cryptocurrency
Go
Stellar's public monorepo of go code
Stars: ✭ 979 (+1617.54%)
Mutual labels:  blockchain, cryptocurrency
Lethean Vpn
Lethean Virtual Private Network (VPN)
Stars: ✭ 29 (-49.12%)
Mutual labels:  blockchain, cryptocurrency
Pycoinbin
Python Wrapper for coinbin.org
Stars: ✭ 43 (-24.56%)
Mutual labels:  blockchain, cryptocurrency
Blockscout
Blockchain explorer for Ethereum based network and a tool for inspecting and analyzing EVM based blockchains.
Stars: ✭ 913 (+1501.75%)
Mutual labels:  blockchain, explorer
Sebak
SEBAK, the next BOScoin Blockchain
Stars: ✭ 46 (-19.3%)
Mutual labels:  blockchain, cryptocurrency
Bifrost
A Scala (Scorex 2) client for the Topl blockchain protocol
Stars: ✭ 54 (-5.26%)
Mutual labels:  blockchain, cryptocurrency
Blockchain Papers
区块链相关的有价值的文献
Stars: ✭ 20 (-64.91%)
Mutual labels:  blockchain, cryptocurrency
Ethereumdb
Stars: ✭ 21 (-63.16%)
Mutual labels:  blockchain, database
Javascript Cli
A CLI in JavaScript for the ARK Blockchain.
Stars: ✭ 48 (-15.79%)
Mutual labels:  blockchain, cryptocurrency

Bulwark Logo

Bulwark Explorer · GitHub license Build Status Discord GitHub version

The most advanced blockchain eplorer for masternode, proof-of-stake and proof-of-work chains.

Features:

  • Address-to-address blockchain data storage powered by Bulwark Carver2D Rev3 algorithm
  • World's most advanced Proof Of Stake calculator based on real blockchain rewards data
  • Running address balance powered by Bulwark's "Perfect Ledger" technology
  • Per-block POS, POW, MN rewards breakdown
  • Detailed per-address rewards breakdown and rewards summary
  • Automatic chain rewinding
  • Graceful error recovery (Unreconciliation)

Easy Installation Instructions

  1. SSH into a clean UBUNTU 18.04 VPS with root access
  2. apt-get install git
  3. adduser explorer
  4. usermod -aG sudo explorer
  5. Ensure your coin RPC is running
  6. su explorer
  7. bash <( curl https://raw.githubusercontent.com/bulwark-crypto/bulwark-explorer/master/script/install.sh )

Post-Installation

Check block syncing status with tail -f /home/explorer/blockex/tmp/block.log

You will most likely see Error: connect ECONNREFUSED this is because your RPC username/password/port do not match your coin. Please check your coin .config file (ex: /home/explorer/.bulwark/bulwark.conf)

You will see something like this:

rpcport=52541
rpcuser=someuserhere
rpcpassword=somepasswordhere
daemon=1
txindex=1

Please ensure your /home/explorer/blockex/config.js matches the rpc information of your coin.

Advanced Installation Instructions

Required

This repo assumes git, mongodb, node, yarn, and are installed with configuration done. Please adjust commands to your local environment.

Download links:

https://docs.mongodb.com/manual/administration/install-on-linux/

https://nodejs.org/en/download/package-manager/

https://yarnpkg.com/lang/en/docs/install/

It is also required to have the Bulwark daemon running in the background. It is recommended to set this up before beginning to set up the explorer so that it syncs by the time you need it.

Our geniuses here at BulwarkCorp™ have put together a script to Install Bulwark daemon. Just run bash script/bulwarkd_setup.sh

This will install the latest Bulwark wallet and create a rpc username/password before starting the daemon.

Manual Install

git clone https://github.com/bulwark-crypto/bulwark-explorer.git - copy repo to local folder.

cd blockex - change into project directory.

yarn install - install packages used by the system.

Configure

BlockEx API Configuration

cp config.template.js config.js - setup configuration using template.

Database Configuration

mongo - connect using mongo client.

use blockex - switch to database.

db.createUser( { user: "blockexuser", pwd: "Explorer!1", roles: [ "readWrite" ] } ) - create a user with the values stored in the config.js file from above, meaning they should match.

exit - exit the mongo client.

IMPORTANT: You should not build the frontend using the same config.js file as created above or you WILL LEAK sensitive database information.

BlockEx UI Configuration

On the local development machine, not the server/VPS, run cp config.template.js config.js to create new configuration file that will have the UI information in it.

IMPORTANT: You should have two config.js files, one for the server with the sensitive database connection information, and one that is used by the developer/designer on their local machine to configure and build the UI.

Crontab

The following automated tasks are currently needed for BlockEx to update but before running the tasks please update the cron script /path/to/blockex/script/cron_block.sh for the block with the local /path/to/node.

yarn run cron:coin - will fetch coin related information like price and supply from coinmarketcap.com.

yarn run cron:masternode - updates the masternodes list in the database with the most recent information clearing old information before.

yarn run cron:peer - gather the list of peers and fetch geographical IP information.

yarn run cron:block - will sync blocks and transactions by storing them in the database.

yarn run cron:rich - generate the rich list.

Note: is is recommended to run all the crons before editing the crontab to have the information right away. Follow the order above, start with cron:coin and end with cron:rich.

To setup the crontab please see run crontab -e to edit the crontab and paste the following lines (edit with your local information):

*/1 * * * * cd /path/to/blockex && ./script/cron_block.sh >> ./tmp/block.log 2>&1
*/1 * * * * cd /path/to/blockex && /path/to/node ./cron/masternode.js >> ./tmp/masternode.log 2>&1
*/1 * * * * cd /path/to/blockex && /path/to/node ./cron/peer.js >> ./tmp/peer.log 2>&1
*/1 * * * * cd /path/to/blockex && /path/to/node ./cron/rich.js >> ./tmp/rich.log 2>&1
*/5 * * * * cd /path/to/blockex && /path/to/node ./cron/coin.js >> ./tmp/coin.log 2>&1
0 0 * * * cd /path/to/blockex && /path/to/node ./cron/timeIntervals.js >> ./tmp/timeIntervals.log 2>&1

For crontab config:

  • /path/to/blockex example is /home/explorer/blockex
  • /path/to/node example is /usr/bin/nodejs

Build

At this time only the client web interface needs to be built using webpack and this can be done by running yarn run build:web. This will bundle the application and put it in the /public folder for delivery.

Run

yarn run start:api - will start the api.

yarn run start:web - will start the web, open browser http://localhost:8081.

Test

yarn run test:client - will run the client side tests.

yarn run test:server - will test the rpc connection, database connection, and api endpoints.

Development - Important File Locations

Client - Frontend (react, react-redux)

client/App.jsx - Contains all react routes to components (using react-router-dom)

client/core/Reducers.jsx - Contains all reducers used in redux connect() mapping (using react-redux)

client/core/Actions.jsx - Contains all actions used in redux connect() mapping (using react-redux)

Server - Rest API (node, express, mongo, mongoose)

server/route/api.js - Contains all public rest api endpoint routes

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].