# BTC Explorer Simple, database-free Bitcoin blockchain explorer, via RPC. Built with Node.js, express, bootstrap-v4. This tool is intended to be a simple, self-hosted explorer for the Bitcoin blockchain, driven by RPC calls to your own bitcoind node. This tool is easy to run but lacks features compared to full-fledged (stateful) explorers. I built this tool because I wanted to use it myself. Whatever reasons one might have for running a full node (trustlessness, technical curiosity, etc) it's helpful to appreciate the "fullness" of a node. With this explorer, one can not only explore the blockchain (in the traditional sense of the term "explorer"), but also explore the capabilities of one's own node. A live demo of the tool is available at https://btc-explorer.com # Features * List of recent blocks * Browse blocks by height, in ascending or descending order * View block details * View transaction details, with navigation "backward" via spent transaction outputs * View raw JSON output used to generate most pages * Search to directly navigate to transactions or blocks * Mempool summary, showing unconfirmed transaction counts by fee level * RPC Browser to explore all of the RPC commands available from your node * RPC Terminal to send commands to your node * Currently supports BTC, LTC. Support for any Bitcoin-RPC-protocol-compliant coin can be added easily. # Getting started The below instructions are geared toward BTC, but can be adapted easily to other coins. ## Prerequisites 1. Install and run a full, archiving node - [instructions](https://bitcoin.org/en/full-node). Ensure that your node has full transaction indexing enabled (`txindex=1`) and the RPC server enabled (`server=1`). 2. Synchronize your node with the Bitcoin network. ## Instructions 1. Clone this repo 2. `npm install` to install all required dependencies 3. Optional: Uncomment the "bitcoind" section in [env.js](app/env.js) to automatically connect to the target node. 4. Optional: Change the "coin" value in [env.js](app/env.js). Currently supported values are "BTC" and "LTC". 5. `npm start` to start the local server 6. Navigate to http://127.0.0.1:3002/ 7. Connect using the RPC credentials for your target bitcoin node (if you didn't edit [env.js](app/env.js) in Step 3) # Screenshots
Connect via RPC |
Homepage (list of recent blocks) |
Node Details |
Browse Blocks |
Block Details |
Mempool Summary |
Transaction Details |
Transaction, Raw JSON |
RPC Browser |