{"id":21133471,"url":"https://github.com/sheitak/blockchain-explorer-install","last_synced_at":"2026-03-16T20:35:16.339Z","repository":{"id":237461608,"uuid":"372524229","full_name":"Sheitak/blockchain-explorer-install","owner":"Sheitak","description":"Blockchain Explorer Installation Tutorial","archived":false,"fork":false,"pushed_at":"2023-04-13T12:15:06.000Z","size":24,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-21T06:26:35.488Z","etag":null,"topics":["blockchain-explorer","blockchain-network","blockchain-service","blockchain-technology"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Sheitak.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-05-31T13:55:49.000Z","updated_at":"2023-04-13T12:11:33.000Z","dependencies_parsed_at":null,"dependency_job_id":"578ef4a8-8a5d-40fc-90e3-f3a482db55ec","html_url":"https://github.com/Sheitak/blockchain-explorer-install","commit_stats":null,"previous_names":["sheitak/blockchain-explorer-install"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sheitak%2Fblockchain-explorer-install","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sheitak%2Fblockchain-explorer-install/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sheitak%2Fblockchain-explorer-install/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sheitak%2Fblockchain-explorer-install/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Sheitak","download_url":"https://codeload.github.com/Sheitak/blockchain-explorer-install/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243577007,"owners_count":20313535,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["blockchain-explorer","blockchain-network","blockchain-service","blockchain-technology"],"created_at":"2024-11-20T06:10:16.968Z","updated_at":"2025-12-29T20:08:39.696Z","avatar_url":"https://github.com/Sheitak.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"Configuration of a Blockchain Explorer\n-\n\n__I thank \u003ca href=\"https://github.com/samqju\"\u003eSamqju\u003c/a\u003e and his collaborators, \u003ca href=\"https://github.com/iquidus/explorer\"\u003eInquidus\u003c/a\u003e, my old StakeShare team, and the \u003ca href=\"https://github.com/bulwark-crypto/bulwark-explorer\"\u003eBulwark\u003c/a\u003e team thanks to whom I am building this new guide. Thanks also to all the contributors of the Blockchain community.__\n\nThis guide installs the exploration of an independent blockchain.\n\n__The name of your cryptocurrency is replaced by \"examplecoin\".__\n\nRequirements\n-\n\n- To follow this guide you need a server or a VPS with at least 4Gb of RAM..\n\n- It is strongly recommended that your server/VPS only hosts the Blockchain explorer and nothing else.\n\n- Configure it with the Linux OS Ubuntu 18.04.\n\n---\n\n#### 1. Ubuntu system update.\n\n\u003e `sudo sh -c 'apt update \u0026\u0026 apt upgrade -y'`\n\n#### 2. Installation required.\n\n\u003e `sudo apt install git \u0026\u0026 htop \u0026\u0026 unzip`\n\nInstallation of Nodejs and npm. First install \u003ca href=\"https://github.com/nvm-sh/nvm\"\u003eNode Version Manager (nvm)\u003c/a\u003e to be sure to get compatible versions.\n\n\u003e `nvm install node`\n\n(supp) Installation of yarn.\n\n\u003e `sudo apt install yarn`\n\n#### 3. List of packages for the compilation of the blockchain.\n\n_Note. Some of these libraries are not essential, however their usefulness varies depending on your cryptocurrency, so it is wise to install them all._\n\n\u003e `sudo apt install build-essential libdb++-dev libqrencode-dev miniupnpc libminiupnpc-dev autoconf pkg-config libtool autotools-dev libqt5gui5 libqt5core5a libqt5dbus5 qttools5-dev qttools5-dev-tools libprotobuf-dev libevent-dev libboost-all-dev libgtk2.0-dev bsdmainutils python3 libboost-system-dev libboost-filesystem-dev libboost-chrono-dev libboost-test-dev libboost-thread-dev libboost-program-options-dev libzmq3-dev libkrb5-dev protobuf-compiler software-properties-common libdb4.8-dev libdb4.8++-dev libssl-dev libssl1.0-dev automake -y`\n\nError : It is possible that the installation of the libraries blocks, because some of them need other installation packages to run. If this happens to you, look at the names of the packages involved in your script, remove them from the command, then run it again.\n\nInstall the removed packages just before point 4, or else, just before the `.autogen` script of point 4. Do it individually following this line pattern :\n\n\u003e `sudo apt install \u003cnom du package\u003e`\n\nBerkeley DB.\n\n\u003e `sudo add-apt-repository ppa:bitcoin/bitcoin`\n\n\u003e `sudo apt update`\n\n#### 4. Compilation and Configuration of the daemon.\n\nDownload the directory of your cryptocurrency.\n\n\u003e `git clone https://github.com/examplecoin/examplecoin-core`\n\nStand inside.\n\n\u003e `cd examplecoin-x.x.x`\n\nRun the daemon build script.\n\n\u003e `./autogen.sh \u0026\u0026 ./configure --with-gui=no --disable-tests --with-unsupported-ssl --with-libressl --with-incompatible-bdb \u0026\u0026 make`\n\n#### 5. Strip ! And RPC configuration.\n\nGo inside the newly generated `.examplecoin` hidden folder, and create the `examplecoin.conf` file following the outline below.\n\n\u003e `nano examplecoin.conf`\n\n```\nrpcuser=examplecoinuser\nrpcpassword=examplecoinpassword\nlisten=1\ndaemon=1\nserver=1\nstaking=0\ntxindex=1\nrpcport=XXXXXX (Use the RPC port of your cryptocurrency here)\n```\n\nSave, then move to the src folder : `cd examplecoin-core/src`\n\nMake a strip. This manipulation will allow you to interact with the daemon wherever you are in the architecture.\n\n\u003e `strip stakeshared stakeshare-cli`\n\nThen,\n\n\u003e `mkdir ~/ssx \u0026\u0026 mv stakeshared stakeshare-cli ~/ssx/`\n\nStart the daemon,\n\n\u003e `~/ssx/stakeshared -daemon`\n\nThese are the three important commands. You can now run them at any time. Start, stop the daemon, the getinfo allows you to see if the blockchain is synchronizing correctly.\n\n```\n~/ssx/stakeshared -daemon\n~/ssx/stakeshare-cli stop\n~/ssx/stakeshare-cli getinfo\n```\n\nIf at this point you notice with the `getinfo` that the number of blocks does not move after a few minutes, then it means that the daemon is not able to index itself. Stop it.\n\nYou should, if your blockchain is important, download a bootstrap (as recent as possible) of the chain to your server/VPS and replace the `peer.dat, chainstate and block` files/folder inside the hidden `.examplecoin` folder.\n\nRestart the daemon.\n\nIf it still doesn't work, after several manipulations and tests, then you probably need to restart this tutorial. The daemon must be synchronized before continuing.\n\n#### 6. Create the user explorer.\n\nEnter the following lines one by one.\n\n\u003e `adduser explorer`\n\n\u003e `usermod -aG sudo explorer`\n\n\u003e `su explorer`\n\n#### 7. Easy installation of explorer.\n\n\u003e `bash \u003c( curl https://raw.githubusercontent.com/bulwark-crypto/bulwark-explorer/master/script/install.sh )`\n\n#### 8. Configuration of your information.\n\nMake sure `config.js` and `config.server.js` match your cryptocurrency information, similar to the `examplecoin.conf` information in point 5.\n\nAlso, `config.js` must have the correct host name specific to your server/VPS. Take note of the port. Recently, CoinMarketCap changed their API, so it is complicated for BlockEx to retrieve data that is no longer on the same model.\n\nUse the CoinGecko API and modify the appropriate line in `config.js`.\n\n```\n  coinMarketCap: {\n\tapi: 'https://api.coingecko.com/api/v3/coins/',\n\tticker: 'examplecoin'\n```\n\n#### 9. Configure MongoDB.\n\n\u003e `mongo`\n\n\u003e `use blockex`\n\nUse the same information as in `config.js`.\n\n\u003e `db.createUser( { user: \"blockexuser\", pwd: \"Explorer!1\", roles: [ \"readWrite\" ] } )`\n\n\u003e `exit`\n\n#### 10. Synchronize all blocks with the Explorer.\n\n\u003e `tail -f /home/explorer/blockex/tmp/block.log`\n\nThis can take quite a long time depending on the size of your blockchain.\n\n#### 11. Crontab.\n\nThe following commands are necessary for BlockEx to update itself continuously. Indeed, the Crontab allows to schedule automated tasks. We will use it to update the explorer so that it is always in agreement with the data of the blockchain.\n\nFirst of all, you have to update the `crontab` file, open it following this path : `/home/explorer/crontab`.\n\nModify it to include the following template.\n\nCheck path node or nodejs for `/usr/bin/nodejs`.\n\nCheck the correct path for `/home/explorer/blockex`.\n\n``` bash\n# /etc/crontab: system-wide crontab\n# Unlike any other crontab you don't have to run the `crontab'\n# command to install the new version when you edit this file\n# and files in /etc/cron.d. These files also have username fields,\n# that none of the other crontabs do.\n\nSHELL=/bin/sh\nPATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin\n\n# m h dom mon dow user  command\n17 *    * * *   root    cd / \u0026\u0026 run-parts --report /etc/cron.hourly\n25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / \u0026\u0026 run-parts --report /etc/cron.daily )\n47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / \u0026\u0026 run-parts --report /etc/cron.weekly )\n52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / \u0026\u0026 run-parts --report /etc/cron.monthly )\n\n*/1 * * * * cd /home/explorer/blockex \u0026\u0026 /usr/bin/nodejs ./cron/masternode.js \u003e\u003e ./tmp/masternode.log 2\u003e\u00261\n*/1 * * * * cd /home/explorer/blockex \u0026\u0026 /usr/bin/nodejs ./cron/peer.js \u003e\u003e ./tmp/peer.log 2\u003e\u00261\n*/1 * * * * cd /home/explorer/blockex \u0026\u0026 /usr/bin/nodejs ./cron/rich.js \u003e\u003e ./tmp/rich.log 2\u003e\u00261\n*/5 * * * * cd /home/explorer/blockex \u0026\u0026 /usr/bin/nodejs ./cron/coin.js \u003e\u003e ./tmp/coin.log 2\u003e\u00261\n0 0 * * * cd /home/explorer/blockex \u0026\u0026 /usr/bin/nodejs ./cron/timeIntervals.js \u003e\u003e ./tmp/timeIntervals.log 2\u003e\u00261\n#\n```\n\n#### 12. Synchronization.\n\nBefore starting the synchronization, go to `/home/explorer/blockex/cron`.\n\nOpen `coin.js` and change the information to match the one below. This allows the CoinGecko API to retrieve the correct existing information since we changed it in point 8.\n\n```\nconst coin = new Coin({\n    cap: market.market_data.total_supply,\n    createdAt: date,\n    blocks: info.blocks,\n    btc: market.market_data.current_price.btc,\n    diff: info.difficulty,\n    mnsOff: masternodes.total - masternodes.stable,\n    mnsOn: masternodes.stable,\n    netHash: nethashps,\n    peers: info.connections,\n    status: 'Online',\n    supply: market.market_data.circulating_supply, // TODO: change to actual count from db.\n    usd: market.market_data.current_price.usd,\n    countCarverAddresses,\n    countCarverMovements\n  });\n```\n\nIt is important that you get the correct json information. If you have any doubts or if `yarn run cron:coin` does not work, be sure to check your part information on the coingecko api and follow the json scheme according to the error indicated by the yarn command.\n\nEnter the following commands.\n\n`yarn run cron:coin` : Will retrieve part information like price and supply.\n\n`yarn run cron:masternode` - Updates the list of masternodes in the database with the most recent information deleting the old information before.\n\n`yarn run cron:peer` - Gathers the list of peers and retrieves geographic IP information.\n\n`yarn run cron:block` - Synchronize blocks and transactions by storing them in the database.\n\n`yarn run cron:rich` - Generates the rich list.\n\n#### 13. Running the Explorer.\n\nCreate the client's web interface using webpack. Run it,\n\n`yarn run build:web`\n\nAPI Start up.\n\n\u003e `yarn run start:api`\n\nStart up in the browser.\n\n\u003e `yarn run start:web`\n\nCongratulations ! Your Explorer is now functional and online at : __{IP-of-your-server}:3000__\n\n#### 14. Test.\n\nPerforms client-side tests.\n\n\u003e `yarn run start:api`\n\nPerforms rpc connection tests, database connection and api endpoints.\n\n\u003e `yarn run start:web`\n\n---\n\n#### 15. Graphic modification.\n\nTo modify the graphical aspect of the explorer, you will find the icons in the `public` folder and the interactions to modify from the front in the `components` or `containers`.\n\n#### 16. Support, Help.\n\nIf you are looking for answers to some problems, you can find me on Discord ; nickname `Sheitak#6192` or with my GitHub.\n\nOr contact the creators of this template to explore in GitHub ; \u003ca href=\"https://github.com/bulwark-crypto/bulwark-explorer\"\u003eBulwark\u003c/a\u003e\n\n---\n\nThank you very much for following this tutorial and I look forward to seeing your explorer available on the web soon.\n\nMade with love by @Sheitak ♥\n\n#### 17. Useful links.\n\n- \u003ca href=\"https://gist.github.com/samqju/b9fc6c007f083e6429387051e24da1c3\"\u003eSamqju Tutorial\u003c/a\u003e\n- \u003ca href=\"https://github.com/iquidus/explorer\"\u003eInquidus\u003c/a\u003e\n- \u003ca href=\"https://www.reddit.com/r/BiblePay/comments/7elm7r/iquidus_block_explorer_guide/\"\u003eBiblePay Inquidus\u003ca\u003e\n- \u003ca href=\"https://github.com/bulwark-crypto/bulwark-explorer\"\u003eBulwark\u003c/a\u003e\n- \u003ca href=\"https://bugsdev.blogspot.com/2018/03/node-and-iquidus-explorer-setup-for.html\"\u003eBugsDevBlog\u003c/a\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsheitak%2Fblockchain-explorer-install","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsheitak%2Fblockchain-explorer-install","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsheitak%2Fblockchain-explorer-install/lists"}