The archive is the store
Outputs, spends, and a transaction index live in ordinary files. There is no UTXO set to keep in RAM.
rbitcoin is a bitcoin full node built around a compact archive — no UTXO set. Outputs, spends, and a structural transaction index live in a custom on-disk format with indexing matched to how bitcoin data is queried. When a block arrives, prevouts come from that archive, not from a mutable coins database. Consensus is rust-native: rust-bitcoin types, libsecp256k1 for crypto, scripts in this tree. The same process can serve Electrum, including silent payment tweaks, plus Esplora and a slice of bitcoin core JSON-RPC.
Mainnet works today. Consensus runs in this tree, not bitcoin core’s engine — but the functional, fuzz, and specification tests give every reason to believe it matches. On a wallet you care about, you may want to keep another node in view anyway.
No UTXO set. No separate indexer. One Linux process validates, stores the archive, and can talk to wallets.
Outputs, spends, and a transaction index live in ordinary files. There is no UTXO set to keep in RAM.
History, unconfirmed, broadcast, fees, and silent payment tweaks. Esplora REST is there too. This is a wallet backend, not a block explorer with a search box.
Types come from rust-bitcoin. ECDSA and Schnorr go through
libsecp256k1. Scripts run in this tree. There is no second opinion
from libbitcoinconsensus.
Chain, mempool, raw transactions, decode helpers, fee estimates, and a block template selector. Cookie or user/pass. No wallet, no stratum, no UTXO scanner. For script history, use Electrum.
Full archival only. The chain grows, so plan on a 1 TB-class disk and don’t wait for a published byte count. If you have an NVMe and a spinning disk, split them.
--datadir-cold for a second volume
Inputs and witness can live on a spinning disk
Skip --datadir-cold and everything lives in one tree.
Among published line-coverage figures for bitcoin full nodes, rbitcoin’s is the
highest. The required GitHub Actions coverage job fails a PR below 90%
LCOV on production files — bitcoin core’s public report does not. Method:
TESTING.md.
Peers use different tools and different denominators. Bitcoin core public LCOV (Marco, 2026-09-05) is ~72% of the whole tree (71.6%; kernel and script closer to ~88–89%; wallet and RPC drag the total) and is report-only. Approximate Coveralls: btcd ~54%; libbitcoin-node ~46%; libbitcoin-system (library, not the node) ~78%. satd / Hornet, electrs, and Fulcrum have no published LCOV %. This is not a claim of more tests than bitcoin core, whose functional suite is larger, and it is not proof of consensus match.
Operators who want to validate, keep a full archive, and serve wallets from the same box. Consensus is rust-native, not bitcoin core’s engine; 71 core functional scripts, Hornet Node rules, and continuous fuzz sit under a ≥90% LCOV PR gate — 91.93% on the last green master coverage job, the highest published line-coverage figure among bitcoin full nodes. You may want another node in view on mainnet until you are satisfied for your use.
Why this node exists — motivation, history, and how it was built.
Grab the GitHub Release, or build musl with Nix. If the node is useful, send some sats.