/ README.md
README.md
  1  # Bitcoin Research Kit
  2  
  3  <p align="left">
  4    <a href="https://github.com/bitcoinresearchkit/brk">
  5      <img alt="GitHub Repo stars" src="https://img.shields.io/github/stars/bitcoinresearchkit/brk?style=social">
  6    </a>
  7    <a href="https://github.com/bitcoinresearchkit/brk/blob/main/LICENSE.md">
  8      <img src="https://img.shields.io/crates/l/brk" alt="License" />
  9    </a>
 10    <a href="https://crates.io/crates/brk">
 11      <img src="https://img.shields.io/crates/v/brk" alt="Version" />
 12    </a>
 13    <a href="https://docs.rs/brk">
 14      <img src="https://img.shields.io/docsrs/brk" alt="Documentation" />
 15    </a>
 16    <img src="https://img.shields.io/crates/size/brk" alt="Size" />
 17    <a href="https://deps.rs/crate/brk">
 18      <img src="https://deps.rs/crate/brk/latest/status.svg" alt="Dependency status">
 19    </a>
 20    <a href="https://discord.gg/HaR3wpH3nr">
 21      <img src="https://img.shields.io/discord/1350431684562124850?label=discord" alt="Discord" />
 22    </a>
 23    <a href="https://primal.net/p/nprofile1qqsfw5dacngjlahye34krvgz7u0yghhjgk7gxzl5ptm9v6n2y3sn03sqxu2e6">
 24      <img src="https://img.shields.io/badge/nostr-purple?link=https%3A%2F%2Fprimal.net%2Fp%2Fnprofile1qqsfw5dacngjlahye34krvgz7u0yghhjgk7gxzl5ptm9v6n2y3sn03sqxu2e6" alt="Nostr" />
 25    </a>
 26    <a href="https://bsky.app/profile/bitcoinresearchkit.org">
 27      <img src="https://img.shields.io/badge/bluesky-blue?link=https%3A%2F%2Fbsky.app%2Fprofile%2Fbitcoinresearchkit.org" alt="Bluesky" />
 28    </a>
 29    <a href="https://x.com/brkdotorg">
 30      <img src="https://img.shields.io/badge/x.com-black" alt="X" />
 31    </a>
 32  </p>
 33  
 34  The Bitcoin Research Kit is a high-performance toolchain designed to parse, index, compute, serve and visualize data from a Bitcoin node, enabling users to gain deeper insights into the Bitcoin network.
 35  
 36  In other words it's an alternative to [Glassnode](https://glassnode.com), [mempool.space](https://mempool.space/) (soon) and [electrs](https://github.com/romanz/electrs) (soon) all in one package with a particular focus on simplicity and ease of use.
 37  
 38  The toolkit can be used in various ways to accommodate as many needs as possible:
 39  
 40  - **[Website](https://bitcoinresearchkit.org)** \
 41    Everyone is welcome to visit the official instance and showcase of the suite's capabilities. \
 42    It has a wide range of functionalities including charts, tables and simulations which you can visit for free and without the need for an account. \
 43    Also available at: [kibo.money](https://kibo.money) // [satonomics.xyz](https://satonomics.xyz)
 44  - **[API](https://github.com/bitcoinresearchkit/brk/tree/main/crates/brk_server#endpoints)** \
 45    Researchers and developers are free to use BRK's public API with ![Datasets variant count](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fbitcoinresearchkit.org%2Fapi%2Fvecs%2Fvariant-count&query=%24&style=flat&label=%20&color=white) dataset variants at your disposal. \
 46    Just like the website, it's entirely free, with no authentication or rate-limiting.
 47  - **[CLI](https://crates.io/crates/brk_cli)** \
 48    Node runners are strongly encouraged to try out and self-host their own instance using BRK's command line interface. \
 49    The CLI has multiple cogs available for users to tweak to adapt to all situations with even the possibility for web developers to create their own custom website which could later on be added as an alternative front-end.
 50  - **[Crates](https://crates.io/crates/brk)** \
 51    Rust developers have access to a wide range crates, each built upon one another with its own specific purpose, enabling independent use and offering great flexibility.
 52    PRs are welcome, especially if their goal is to introduce additional datasets.
 53  
 54  The primary goal of this project is to be fully-featured and accessible for everyone, regardless of their background or financial situation - whether that person is an enthusiast, researcher, miner, analyst, or simply curious.
 55  
 56  In contrast, existing alternatives tend to be either [very costly](https://studio.glassnode.com/pricing) or missing essential features, with the vast majority being closed-source and unverifiable, which fundamentally undermines the principles of Bitcoin.
 57  
 58  ## Crates
 59  
 60  - [`brk`](https://crates.io/crates/brk): Wrapper around all other `brk-*` crates
 61  - [`brk_cli`](https://crates.io/crates/brk_cli): A standalone command line interface to interact with the Bitcoin Research Kit
 62  - [`brk_computer`](https://crates.io/crates/brk_computer): A Bitcoin dataset computer, built on top of brk_indexer
 63  - [`brk_core`](https://crates.io/crates/brk_core): The Core (Structs and Errors) of the Bitcoin Research Kit
 64  - [`brk_exit`](https://crates.io/crates/brk_exit): An exit blocker built on top of ctrlc
 65  - [`brk_fetcher`](https://crates.io/crates/brk_fetcher): A Bitcoin price fetcher
 66  - [`brk_indexer`](https://crates.io/crates/brk_indexer): A Bitcoin Core indexer built on top of brk_parser
 67  - [`brk_logger`](https://crates.io/crates/brk_logger): A clean logger used in the Bitcoin Research Kit.
 68  - [`brk_parser`](https://crates.io/crates/brk_parser): A very fast Bitcoin Core block parser and iterator built on top of bitcoin-rust
 69  - [`brk_query`](https://crates.io/crates/brk_query): A library that finds requested datasets.
 70  - [`brk_server`](https://crates.io/crates/brk_server): A server that serves Bitcoin data and swappable front-ends, built on top of `brk_indexer`, `brk_fetcher` and `brk_computer`
 71  - [`brk_state`](https://crates.io/crates/brk_state): Various states used mainly by the computer
 72  - [`brk_store`](https://crates.io/crates/brk_store): A thin wrapper around [`fjall`](https://crates.io/crates/fjall)
 73  - [`brk_vec`](https://crates.io/crates/brk_vec): A push-only, truncable, compressable, saveable Vec
 74  
 75  ## Hosting as a service
 76  
 77  If you'd like to have your own instance hosted for you please contact [hosting@bitcoinresearchkit.org](mailto:hosting@bitcoinresearchkit.org).
 78  
 79  - 2 separate dedicated servers (1 GB/s each) with different ISPs and Cloudflare integration for enhanced performance and optimal availability
 80  - 99.99% SLA
 81  - Configured for speed
 82  - Updates delivered at your convenience
 83  - Direct communication for feature requests and support
 84  - Bitcoin Core or Knots with desired version
 85  - Optional subdomains: `*.bitcoinresearchkit.org`, `*.kibo.money` and `*.satonomics.xyz`
 86  - Logo featured in the Readme if desired
 87  
 88  Pricing: `0.01 BTC / month` *or* `0.1 BTC / year`
 89  
 90  ## Acknowledgments
 91  
 92  Deepest gratitude to the [Open Sats](https://opensats.org/) public charity. Their grant — from December 2024 to the present — has been critical in sustaining this project.
 93  
 94  Heartfelt thanks go out to every donor on [Nostr](https://primal.net/p/npub1jagmm3x39lmwfnrtvxcs9ac7g300y3dusv9lgzhk2e4x5frpxlrqa73v44) and [Geyser.fund](https://geyser.fund/project/brk) whose support has ensured the availability of the [kibo.money](https://kibo.money) public instance.
 95  
 96  ## Donate
 97  
 98  [`bc1q09 8zsm89 m7kgyz e338vf ejhpdt 92ua9p 3peuve`](bitcoin:bc1q098zsm89m7kgyze338vfejhpdt92ua9p3peuve)
 99  
100  [`lnurl1dp68gurn8ghj7ampd3kx2ar0veekzar0wd5xjtnrdakj7tnhv4kxctttdehhwm30d3h82unvwqhkxmmww3jkuar8d35kgetj8yuq363hv4`](lightning:lnurl1dp68gurn8ghj7ampd3kx2ar0veekzar0wd5xjtnrdakj7tnhv4kxctttdehhwm30d3h82unvwqhkxmmww3jkuar8d35kgetj8yuq363hv4)
101  
102  [Geyser Fund](https://geyser.fund/project/brk)