Current team Slack mirror with full history.
Libbitcoin Time 2026: the development history of the libbitcoin repositories.
Libbitcoin was announced on the Bitcoin forum in July 2011, two and a half years after the genesis block. The plan was to "rewrite bitcoin" as a library anyone could build on, pluggable and configurable at every level, under a lesser AGPL license drafted for the project.
In 2013 the libbitcoin manifesto made the case for why it mattered: a Bitcoin of many implementations has no single point of failure, and no single party controls its standard. The same year brought obelisk, a query server, and sx, a command line toolkit, the ancestors of Bitcoin Server (bs) and Bitcoin Explorer (bx).
From 2014 the code was divided into the six repositories it has today, from system primitives to the server, and versions 2 and 3 followed in 2014 and 2017. Version 4 is the first major release since 2017, the result of a decade of R&D by a small team of dedicated volunteers.
| system | database | network | node | server | explorer | build | website | Total | bitcoind | |
|---|---|---|---|---|---|---|---|---|---|---|
| First commit | 2011 | 2014 | 2011 | 2014 | 2013 | 2013 | 2014 | 2014 | 2009 | |
| Contributors | 63 | 17 | 38 | 19 | 23 | 37 | 10 | 11 | 98 | 821 |
| Commits | 10,395 | 4,789 | 4,152 | 4,317 | 3,464 | 2,745 | 1,693 | 290 | 31,845 | 31,480 |
| Library lines | 109,317 | 35,329 | 50,290 | 14,451 | 32,318 | 34,131 | 275,836 | 154,044 | ||
| Test lines | 121,795 | 28,621 | 44,758 | 9,642 | 25,020 | 7,743 | 237,579 | 89,539 | ||
| Words | 654,760 | 654,760 | 286,710 | |||||||
| Runtime tests | 7,911 | 1,341 | 2,815 | 528 | 1,935 | 679 | 15,209 | 903 | ||
| Compile-time tests | 7,552 | 111 | 279 | 6 | 54 | 0 | 8,002 | 41 | ||
| Python tests | 222 | 222 | 212 | |||||||
| Classes | 394 | 308 | 246 | 86 | 84 | 370 | 1,488 | 648 | ||
| Public methods | 2,795 | 1,480 | 1,427 | 225 | 145 | 2,018 | 8,090 | 3,635 | ||
| Protected methods | 971 | 139 | 377 | 292 | 573 | 2 | 2,354 | 101 | ||
| Private methods | 339 | 86 | 420 | 114 | 151 | 0 | 1,110 | 345 | ||
| Public functions | 1,032 | 69 | 143 | 4 | 76 | 17 | 1,341 | 1,105 |
bitcoind is included for context.
The six libraries and libbitcoin-build at their current master (November 2026). Each commit is counted once, in the repository it first appears in: network shares 3,246 commits of early history with system. Contributors are distinct people, across names and email addresses. The website column is this site and its public discussion forum, and its words are their text. History of the archived repositories (blockchain, protocol, client and consensus) is included only where it was carried into a current repository.
bitcoind is Bitcoin Core at its master (October 2026) with its secp256k1, without its wallet application, its GUI, its other executables or its other embedded dependencies (leveldb, crc32c, minisketch, univalue, ctaes and libmultiprocess). Wallet functionality that bitcoind itself uses, such as addresses, keys, descriptors and PSBT, is included, as is libbitcoin's. Its contributors and commits are those that touch its code or its functional tests, and those of secp256k1 (to August 2026). Its secp256k1 lines exclude 18,235 lines of precomputed tables, and its functions and structs are those of the secp256k1 public headers. Its Python tests are the functional tests, excluding those of the wallet application, and its words are those of the bitcoincore.org website, meeting notes included.
Lines are non-blank lines of C++ in the library (include and
src) and in its tests (test). Library lines exclude 60,969 lines
of data tables in system (word lists, Unicode tables and the embedded GPU kernels). The
server's embedded web interface, which can be compiled out, is excluded, as is bitcoind's
GUI. Runtime
tests are C++ test cases, compile-time tests are
static_assert statements in the tests, and Python tests are the server's
endpoint tests (3,894 lines of Python, not in the test lines). Classes, methods and public functions are counted from the compiler's
view of the public headers: class and struct definitions, their member functions by
access, and free functions.
Copyright © 2011-2026 libbitcoin developers