Skip to content

Repository files navigation

GSBE - GoSlimBlockExplorer

A lightweight, self-hosted block explorer for SHA256d cryptocurrency nodes. Browse blocks, view transactions, and monitor mempool activity through a clean web interface — no database, no external dependencies, no CLI commands.

Features

  • Browse recent blocks with height, hash, difficulty, and transaction count
  • View full block details with complete transaction lists
  • Inspect transaction inputs, outputs, values, and addresses
  • Coinbase text decoding (hex to ASCII) — see pool identifiers like "GoSlimStratum"
  • Mempool statistics (transaction count, size, fees)
  • Search by block height or block hash
  • Multi-node support — configure and switch between multiple coin nodes
  • SegWit-aware — displays witness commitments and witness data

Requirements

  • One or more SHA256d cryptocurrency nodes with REST API enabled (Bitcoin, DigiByte, Bitcoin Cash, etc.)
  • Docker (recommended) or Go 1.24+
  • No database required
  • No txindex=1 required
  • Works with pruned nodes

Quick Start

Docker (Recommended)

docker run -d \
--name gsbe \
-p 3007:3007 \
-v ./config:/app/config \
-v ./logs:/app/logs \
ghcr.io/mmfpsolutions/gsbe:latest

Open http://localhost:3007 and add your node connections on the config page.

Docker Compose

services:
gsbe:
image: ghcr.io/mmfpsolutions/gsbe:latestcontainer_name: gsbeports:
- "3007:3007"volumes:
- ./config:/app/config
- ./logs:/app/logsrestart: unless-stopped

Build from Source

git clone https://github.com/mmfpsolutions/gsbe.git
cd gsbe
npm install
npm run build:css
go build -o gsbe ./cmd/server
./gsbe

Local Docker Build

./build-local.sh
docker run -d -p 3007:3007 -v ./config:/app/config -v ./logs:/app/logs gsbe:local

Configuration

GSBE uses a JSON configuration file at config/config.json. A default config is created on first run.

{
"port": 3007,
"title": "Block Explorer",
"nodes": [
{
"id": "dgb_main",
"name": "DigiByte Mainnet",
"symbol": "DGB",
"host": "192.168.1.100",
"port": 14022,
"network": "mainnet",
"rest_enabled": true
}
],
"logging": {
"level": "info",
"logToFile": true,
"logFilePath": "/app/logs/gsbe.log"
}
}

Node REST API

GSBE communicates with blockchain nodes via the REST API (same port as RPC, no authentication required). Ensure your node has REST enabled:

Bitcoin/DigiByte/BCH — add to your node config:

rest=1

Supported Coins

Any SHA256d-based cryptocurrency with a Bitcoin-compatible REST API:

  • Bitcoin (BTC)
  • DigiByte (DGB)
  • Bitcoin Cash (BCH)
  • Bitcoin II (BC2)
  • And other Bitcoin-derived coins

Works on mainnet, testnet, and regtest networks.

Architecture

  • Backend for Frontend — Go server proxies REST calls to configured nodes
  • No database — all data fetched live from nodes
  • Single binary — templates and static assets embedded via go:embed
  • No authentication — open access, designed for local/private network use
  • No auto-polling — manual refresh to avoid excessive node REST calls

API Endpoints

MethodEndpointDescription
GET/healthHealth check
GET/api/v1/statusVersion, uptime, memory
GET/api/v1/nodesList configured nodes
GET/api/v1/{node}/chainBlockchain info
GET/api/v1/{node}/blocks/recent?count=10Recent block headers
GET/api/v1/{node}/block/{hashOrHeight}Full block detail
GET/api/v1/{node}/tx/{txid}?blockhash={hash}Transaction detail
GET/api/v1/{node}/mempoolMempool statistics
GET/api/v1/{node}/search?q={query}Search by height or hash

Tech Stack

  • Go 1.24+
  • chi/v5 HTTP router
  • Tailwind CSS
  • Vanilla JavaScript
  • Docker (Alpine-based, multi-arch: amd64/arm64)

Limitations

  • No transaction search by txid — without txindex=1, transactions can only be viewed from within their block. Navigate to a block first, then click a transaction.
  • Pruned node range — pruned nodes can only serve blocks within their pruning window. Older blocks will show as unavailable.
  • No address balance lookups — GSBE is a block browser, not a full address indexer.

License

See LICENSE for details.

Credits

Built by MMFP Solutions

About

Simple crypto block explorer - works with pruned nodes with no txindex - SHA256d coins. Suports multiple coins in one instance. This is not a full blown block explorer, just a lightweight tool. Very useful for testnet, regtest chains.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Packages

Contributors

Languages