Browser-based live dashboard for the UNICORN Binance DepthCache Cluster (UBDCC).
Project description
UBDCC Dashboard
Browser-based live dashboard for the UNICORN Binance DepthCache Cluster (UBDCC) — monitor every depth cache in your cluster at a glance, spot out-of-sync caches instantly, and add or remove caches on the fly.
Part of the UNICORN Binance Suite.
Features
- Compact mini-orderbook tiles per depth cache — top-3 asks/bids with quantity bars and spread in bps.
- Continuous, low-overhead polling:
IntersectionObserver+ filter gate means only on-screen, matching tiles hit the cluster. - Status colouring per tile: out-of-sync (
error_id #6000) turns red, other errors yellow with a compact error message. - Add DepthCaches modal with live
exchangeInfosymbol lookup for spot, margin, futures, options (incl. testnets). Shows only actively tradable symbols. Free-text fallback for exchanges without a publicexchangeInfo. - Bulk
× Remove filteredwith two-click confirmation — only active when a filter is set, so you can never accidentally remove every DC. - Per-tile
×remove with two-click confirmation and 3 s auto-disarm. - Disconnect button to stop polling and cut load on the cluster.
- Refresh-rate throttle from
maxdown to2 s. Default2 sis polite to the cluster; crank it up when you need a live feel. - Dark theme, tabular-numeric fonts, no framework, no tracking — a single HTML file served by a minimal stdlib HTTP server.
Authorship & License
Author / Maintainer: Oliver Zehentleitner (https://github.com/oliver-zehentleitner) License: MIT — free for commercial and private use. No paid license, no subscription, no commercial tier.
Installation and Upgrade
pip install -U ubdcc-dashboard
Requires Python 3.9+. No external dependencies — uses only the standard library.
Quick Start
ubdcc-dashboard start
The server binds to 127.0.0.1:8080 (localhost only) by default and opens
the dashboard in your browser. Enter the URL of your UBDCC MGMT node
(typical: http://<cluster-host>:42081) and hit Connect.
CLI options
ubdcc-dashboard start [--host HOST] [--port PORT] [--no-browser]
[--proxy-timeout SECONDS] [--batch-workers N]
| Flag | Default | Description |
|---|---|---|
--host |
127.0.0.1 |
Interface to bind. Localhost only by default — secure. Use --host 0.0.0.0 to expose the dashboard on your network. |
--port |
8080 |
TCP port to listen on. |
--no-browser |
off | Do not auto-open the browser on start. |
--proxy-timeout |
10.0 |
Timeout (seconds) for the CORS proxy's outbound fetches. |
--batch-workers |
32 |
Worker threads used for /proxy_batch fan-out. |
Exposing on the network
ubdcc-dashboard start --host 0.0.0.0 --port 8080
Note: The proxy is unauthenticated. Only expose the dashboard on a trusted network.
How it works
The dashboard is a single index.html (vanilla JS, no framework) served by
a small stdlib HTTP server. The server also acts as a tiny CORS proxy so
the browser can query a remote UBDCC cluster that does not send
Access-Control-Allow-Origin headers.
Under the hood:
GET /proxy?url=…— passes a single GET through.POST /proxy {url, body}— passes a single JSON POST through.POST /proxy_batch {base, requests}— fans out a list of GETs over a thread pool (default 32 workers) for snappy orderbook refreshes.
The unicorn-binance-depth-cache-cluster project is the server side of this
story — the dashboard just paints what the cluster already exposes via its
REST API.
Change Log
https://oliver-zehentleitner.github.io/ubdcc-dashboard/changelog.html
Documentation
Related Articles
Project Homepage
https://github.com/oliver-zehentleitner/ubdcc-dashboard
Wiki
https://github.com/oliver-zehentleitner/ubdcc-dashboard/wiki
Social
Receive Notifications
To receive notifications on available updates you can watch the repository on GitHub, or subscribe to the releases discussion category.
To receive news (like inspection windows/maintenance) about the Binance API's subscribe to their telegram groups:
- https://t.me/binance_api_announcements
- https://t.me/binance_api_english
- https://t.me/Binance_USA
- https://t.me/TRBinanceTR
- https://t.me/BinanceExchange
How to report Bugs or suggest Improvements?
List of planned features — give a 👍 if you need one of them, or suggest a new feature!
Before you report a bug, try the latest release. If the issue still exists, provide the error trace, OS, Python version, browser, and explain how to reproduce the error. A minimal reproduction (commands + cluster setup) is appreciated.
If you don't find an issue related to your topic, please open a new issue!
Contributing
UBDCC Dashboard is an open source project which welcomes contributions which can be anything from simple documentation fixes and reporting dead links to new features. To contribute follow this guide.
Contributors
We ❤ open source!
AI Integration
This project provides a llms.txt file for AI tools (ChatGPT, Claude, Copilot, etc.) with structured usage instructions, CLI reference and architecture notes.
Disclaimer
This project is for informational purposes only. You should not construe this information or any other material as legal, tax, investment, financial or other advice. Nothing contained herein constitutes a solicitation, recommendation, endorsement or offer by us or any third party provider to buy or sell any securities or other financial instruments in this or any other jurisdiction in which such solicitation or offer would be unlawful under the securities laws of such jurisdiction.
If you intend to use real money, use it at your own risk!
Under no circumstances will we be responsible or liable for any claims, damages, losses, expenses, costs or liabilities of any kind, including but not limited to direct or indirect damages for loss of profits.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ubdcc_dashboard-0.1.1.tar.gz.
File metadata
- Download URL: ubdcc_dashboard-0.1.1.tar.gz
- Upload date:
- Size: 25.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6785fb52687622be5c7b5b21bda8b00eb67d639f5c0f6d353b45042c70e38a30
|
|
| MD5 |
3c5674c747c2e297fb6fc85068e7a026
|
|
| BLAKE2b-256 |
a652a1f52e599d3bf586be640e0c15fba5aa0001cf58f128ea7cf680f474f72b
|
Provenance
The following attestation bundles were made for ubdcc_dashboard-0.1.1.tar.gz:
Publisher:
build_wheels.yml on oliver-zehentleitner/ubdcc-dashboard
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ubdcc_dashboard-0.1.1.tar.gz -
Subject digest:
6785fb52687622be5c7b5b21bda8b00eb67d639f5c0f6d353b45042c70e38a30 - Sigstore transparency entry: 1359330604
- Sigstore integration time:
-
Permalink:
oliver-zehentleitner/ubdcc-dashboard@f96ad6aa0ed4c3ceff149746a6d06721b844cc53 -
Branch / Tag:
refs/heads/master - Owner: https://github.com/oliver-zehentleitner
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build_wheels.yml@f96ad6aa0ed4c3ceff149746a6d06721b844cc53 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file ubdcc_dashboard-0.1.1-py3-none-any.whl.
File metadata
- Download URL: ubdcc_dashboard-0.1.1-py3-none-any.whl
- Upload date:
- Size: 21.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
89510cba0db69ab9bbd5595f00fb34d0ad69bbe6e7cc62eb18873bd4a042d9c0
|
|
| MD5 |
0e7e002c8bf61f936a82a1d9ed098815
|
|
| BLAKE2b-256 |
e89b4308b42d6ca8d56bad74881c8b729c5c340c91a0c5d3d732935673af1190
|
Provenance
The following attestation bundles were made for ubdcc_dashboard-0.1.1-py3-none-any.whl:
Publisher:
build_wheels.yml on oliver-zehentleitner/ubdcc-dashboard
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ubdcc_dashboard-0.1.1-py3-none-any.whl -
Subject digest:
89510cba0db69ab9bbd5595f00fb34d0ad69bbe6e7cc62eb18873bd4a042d9c0 - Sigstore transparency entry: 1359330611
- Sigstore integration time:
-
Permalink:
oliver-zehentleitner/ubdcc-dashboard@f96ad6aa0ed4c3ceff149746a6d06721b844cc53 -
Branch / Tag:
refs/heads/master - Owner: https://github.com/oliver-zehentleitner
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build_wheels.yml@f96ad6aa0ed4c3ceff149746a6d06721b844cc53 -
Trigger Event:
workflow_dispatch
-
Statement type: