Single-screen dashboard for BP, RPC, and explorer health checks across mainnet/testnet/devnet.
npm install
npm run devThe dashboard reads a server-side JSON file. The default Docker setup mounts it at
/app/config/hosts.json and sets DASHBOARD_CONFIG_PATH accordingly.
{
"defaultNetwork": "mainnet",
"networks": {
"mainnet": {
"defaultExplorer": "phantasma",
"explorers": {
"phantasma": {
"url": "https://explorer.phantasma.info",
"apiUrl": "https://api-explorer.phantasma.info/api/v1"
}
},
"hosts": {
"main-a": {
"title": "Mainnet BP A",
"url": "https://example.org/node/a/",
"role": "Watcher"
}
},
"rpcs": {
"rpc-1": {
"title": "Mainnet RPC 1",
"url": "https://example.org/rpc"
}
},
"pavillions": {
"hub": {
"title": "Pavillion Hub",
"clientUrl": "https://pavillionhub.com",
"apiUrl": "https://pavillionhub.com/api",
"shopUrl": "http://127.0.0.1:22222",
"expectedNetwork": "mainnet"
}
}
},
"testnet": {
"defaultExplorer": "phantasma",
"explorers": {
"phantasma": {
"url": "https://testnet-explorer.phantasma.info",
"apiUrl": "https://api-testnet-explorer.phantasma.info/api/v1"
}
},
"hosts": {},
"rpcs": {},
"pavillions": {}
},
"devnet": {
"defaultExplorer": "phantasma",
"explorers": {
"phantasma": {
"url": "https://devnet-explorer.phantasma.info",
"apiUrl": "https://api-devnet-explorer.phantasma.info/api/v1"
}
},
"hosts": {},
"rpcs": {},
"pavillions": {}
}
}
}Notes:
- BP URLs must already include
/node/<name>/and a trailing slash. - RPC URLs must point to the JSON-RPC endpoint (usually
/rpc). - RPC cards surface a Swagger link by removing the trailing
/rpc. - Explorer cards surface links to both the explorer front-end and the explorer API (using
apiUrlwithout/api/v1). - Each network must include
defaultExplorermatching one of its explorer keys. roleis optional for hosts. If omitted, it defaults toWatcher.pavillionsis optional per network.- Pavillion card checks these endpoints:
clientUrl/build-info.jsonclientUrl/config.jsonapiUrl/healthapiUrl/statusapiUrl/get_phantasma_rpcshopUrl/health(optional, ifshopUrlis configured)
docker compose up --build -dThe default compose exposes the dashboard on port 3003 and mounts ./config/hosts.json into the container at /app/config/hosts.json.
SOUL/KCAL supply is fetched from the apiUrl of the per-network defaultExplorer entry.