Block explorer
Shackleton is the block explorer that ships with Snowblossom and runs snowblossom-explorer.org. It is a self-contained Java web server that reads everything from a node over gRPC, keeps its own in-memory indexes for speed, and exposes both HTML pages and a JSON API.
Pages
| Path | Content |
|---|---|
/ | Network overview: height, hash rate, difficulty, supply, field status, shard table, latest blocks (infinite scroll) |
/blocks, /blocks?shard=N | Block list merged across shards or per shard, cursor-paged |
/block/<hash>, /block/<shard>/<height> | Header, reward, PoW proofs, imports/exports, transactions with resolved input values |
/tx/<hash> | Transaction details, confirmations, claims/signature types, locks, FBO, names, extra data |
/address/<snow:…> | Balance per shard (confirmed, pending, spendable), history, unspent outputs |
/shards, /shard/N | Shard tree, split readiness ratios, per-shard statistics |
/mining, /pools, /votes | Pools by coinbase remark, miner addresses, SIP vote signalling, profitability calculator, next-field progress |
/stats | Charts over 24 h … 1 year: blocks, transactions, hash rate, difficulty, per shard; snow-field table |
/richlist | Top addresses by balance from a periodic full UTXO walk |
/mempool | Unconfirmed transactions waiting for the next block, with fees and recipients (auto-refreshing) |
/peers | Known peers of the node, versions, TLS, tracked shards |
/search?q= | Block hash, height, shard:height, transaction hash or address |
JSON API
All endpoints return JSON, are free to use and need no key. Amounts are in flakes unless a field is named *_snow. Full, current documentation is served by the explorer itself at /api.
| Endpoint | Description |
|---|---|
/api/status | Node and network status, statistics of every active shard (height, difficulty, hash rate, block time, fees, field activation progress…) |
/api/shards | Shard tree with parents, children, first and last blocks |
/api/block/{hash}, /api/block/{shard}/{height} | Block details and transactions |
/api/blocks?shard=S&from=H&count=N | Recent blocks of a shard, newest first (max 500) |
/api/tx/{hash} | Transaction with resolved input values and confirmation status |
/api/address/{address} | Balances per shard; ?history=1&count=100&offset=0 adds the transaction list, ?utxos=1 the unspent outputs |
/api/richlist?count=N | Top N addresses and supply statistics (max 1000) |
/api/mining | Pools (by coinbase remark), miner addresses and motion votes over recent blocks |
/api/peers | Peers known to the node |
/api/mempool | Unconfirmed transactions as selected for the next block template (full inputs/outputs per transaction) |
/api/history?range=30d | Bucketed statistics per shard; ranges 24h, 7d, 30d, 90d, 1y or days=N&bucket_hours=H |
/api/total_coins, /api/total_coins_json, /api/health_stats, /api/recent_json_graph, /api/block_info_by_height/{shard}/{height} | Legacy endpoints kept for compatibility (circulating supply as text/JSON, per-shard health, graph for the old shard visualisation) |
curl https://snowblossom-explorer.org/api/status
curl https://snowblossom-explorer.org/api/block/0/435000
curl 'https://snowblossom-explorer.org/api/address/snow:2szcnkw6hlzp8fvhmnczermkzx7ffwaxzg9zpmdk?history=1&count=20'
Running your own
Requires a node with tx_index=true and addr_index=true.
# explorer.conf
network=snowblossom
node_uri=grpc://localhost:2338
port=8080
log_config_file=configs/logging.properties
#web_threads=32
#index_depth=300 # recent blocks per shard kept in the in-memory index
#mining_look_back=1000 # blocks scanned for the pools/votes page
#history_days=365 # how far back the statistics charts can go
#richlist_interval_min=45 # full UTXO walk interval
#richlist_cache_file=shackleton-richlist.cache
bazel build :ShackletonExplorer && bazel-bin/ShackletonExplorer explorer.conf
# or: docker run -d --network host -v snowexplore:/data -e snowblossom_node_uri=grpc://localhost:2338 snowblossom/explorer
Put it behind a reverse proxy for TLS (this site uses Apache with ProxyPass to localhost:8080). The explorer keeps a rolling index of recent blocks in memory, refreshes mining and network statistics every minute and the rich-list snapshot every 45 minutes (persisted to richlist_cache_file so restarts are fast); address balances are computed from the snapshot plus the blocks since, so even addresses with tens of thousands of outputs answer quickly. A testnet explorer with a faucet runs at testnet.snowblossom-explorer.org.