# 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 (database-backed) 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, supporting the network, etc) it's helpful to appreciate the "fullness" of your node. With this explorer, you can not only explore the blockchain (in the traditional sense of the term "explorer"), but also explore the capabilities of your 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 |