This monorepo contains two layers:
- Bitcoin Research Kit (BRK): reusable Rust primitives for reading Bitcoin Core data, RPC, mempool tracking, storage, domain types, and the on-chain price oracle.
- Bitview: the self-hostable application that composes BRK with a typed indexer and analytics plugin graph, query layer, REST server, website, and generated clients.
Together they turn a Bitcoin Core node into a local Bitcoin data platform for chain exploration, mempool data, and on-chain research. The official free hosted instance is bitview.space.
Bitcoin Core ──> BRK reader, RPC, and mempool ──> Bitview plugins
│
v
Query + REST server
│ │ │
v v v
Website Clients MCP
See Architecture for the component and data-flow details.
| Path | Purpose |
|---|---|
crates/brk and crates/brk_* | BRK umbrella crate and reusable Bitcoin primitives |
crates/bitview_plugin_* | Official indexing and analytics plugins |
crates/bitview* | Plugin contract, runtime, composition, query/server stack, daemon, code generation, and Rust clients |
crates/{vecdb,rawdb,byteview,fjall,lsm-tree} | Storage and data infrastructure |
examples/custom_plugin | Runnable external-plugin and custom-composition example |
modules/bitview-client | JavaScript/TypeScript client |
packages/bitview_client | Python client |
website* and experiments | Browser applications and research visualizations |
docs, benches, docker, and scripts | Project documentation, measurements, packaging, and maintenance tooling |
Each publishable crate or client owns its detailed usage documentation. The main README is only the map and common entrypoint.
The hosted website, API, and MCP endpoint require no account or authentication:
- Website
- Interactive API
- OpenAPI
- MCP client endpoint:
https://mcp.bitview.space/ - CLI
- JavaScript
- Python
- Rust
curl https://bitview.space/api/mempool/price
curl https://bitview.space/api/series/countThe series catalog is discovered at runtime rather than documented as a
hard-coded count. Use /api/series/search?q=<concept> to find identifiers.
rustup update && RUSTFLAGS="-C target-cpu=native" cargo install --locked bitviewd
bitviewdThe default composition requires Linux or macOS, a Bitcoin Core node with RPC
and readable blk*.dat files, about 290 GiB for Bitview plus Bitcoin Core
storage and growth headroom, and 16 GB of RAM recommended for a full sync. The
website and API listen on localhost:3110.
Bitview uses sparse files, so logical size is much larger than allocated disk
space. Use du -sh ~/.bitview to measure actual usage.
See the bitviewd guide for installation, configuration,
initial sync, storage, and custom compositions.
Use the umbrella crate for BRK primitives without the full Bitview application:
[dependencies]
brk = { version = "0.11", features = ["reader", "rpc", "types"] }See the brk crate guide for its feature map. For a new
Bitview metric or composition, start with the
custom plugin example and the
bitview_plugin contract.
The repository pins its Rust toolchain in rust-toolchain.toml.
cargo check --workspace
cargo test --workspaceBRK is supported by OpenSats from December 2024 through June 2027.
Discord · X · Issues · Support
bc1pkqvzn3pepug695xtvwmpm0sjd6n9j55v792cwfruzkqzrf2jn47s3hq0ts
