A curated list of bitcoin services and tools for software developers
List of content
- Blockchain API and Web services
- Wallets API
- Open Source wallets
- Blockchain Explorers
- C++ Libraries
- PHP Libraries
- Ruby Libraries
- Python Libraries
- Java Libraries
- Scala Libraries
- .Net Libraries
- Blockchain dump
- Full nodes
- Additional Resources
- Nigiri - CLI to quickly fire up a a Bitcoin regtest box along with Electrs and Esplora. Includes faucet and push commands.
- Nigiri in Travis - Travis template for adding Nigiri to your Travis (or Github Action) pipeline.
- hal - Bitcoin CLI swiss-army-knife (based on rust-bitcoin).
- BitKey - Live USB for airgapped transactions and Bitcoin swiss army knife.
- Pycoin - Python-based Bitcoin and alt-coin utility library.
- bx - Bitcoin Command Line Tool.
- txwatcher - A little Python utility that lets you monitor Bitcoin addresses through Blockchain Websocket API and perform custom callbacks.
- hellobitcoin - A collection of simple programs which can generate bitcoin wallets, create and sign transactions, and send transactions over the bitcoin network.
- Mining visualization
- HD Wallet Scanner - Find all used addresses in your Bitcoin HD wallets bypassing gap limits.
- LibreSelery - Automated Bitcoin distribution to your project contributors and dependencies integrated into GitHub Actions.
Blockchain API and Web services
- Esplora - Self-hosted blockchain explorer.
- Coinbase Wallet
- Cashier-BTC - Self-hosted payment gateway.
- Chainradar API - Blockchain Explorer API for Chainradar.
- One-Time Address A better way to share your Bitcoin address.
Market Data API
- CoinMetrics.io JSON REST API (free as well as paid) with access to market data. Also CSV data file download available.
- Messari.io JSON REST API (free as well as paid) with access to market data, news, metrics, profile, etc.
Open Source Wallets
- Blockstream.info - Blockchain explorer with API (mainnet, testnet and Liquid).
- Bitcoin Transaction Explorer
- Bitkit - Real time transaction updates.
- Awesome CryptoCoinJS
- Bitcore Library
- BlockTrail SDK NodeJS
- BlockTrail SDK Python
- btctxstore - Simple library to store/retrieve information in bitcoin transactions using OP_RETURN.
- pybitcointools - Python library for Bitcoin signatures and transactions from Vitalik Buterin. Project discontinued.
- pycoin - Python library for Bitcoin keys, signatures, transactions. Includes full VM implementation and tools for manipulating keys (ku) and transactions (tx).
- bitcoin_tools - Python library for building and analyzing transactions and scripts (both standard and custom). Comes along with a UTXO set analysis tool. Includes several examples and exhaustive documentation.
- oogway - A secure Bitcoin utility library for Python.
Note that you can also use Scala libraries in Java.
Note that you can also use Java libraries in Scala.
- Bitcoin-S - Scala/JVM toolkit for Bitcoin applications, includes Bitcoin data structures, transaction signing, strongly typed
bitcoind/Eclair RPC clients, and more.
- NBitcoin - Comprehensive Bitcoin library for the .NET framework.
- BitcoinLib - The most complete, up-to-date, battle-tested .net Library and RPC Wrapper for Bitcoin and Altcoins in C#.
- QBitNinja - An Open Source and powerful blockchain API.
- Script Playground
- Bitcoin IDE - Bitcoin Script for dummies.
- Script Debugger
- Bitcore Playground
- Mnemonic Code generator
- blockchain-demo - A web-based demonstration of blockchain concepts.
- Bitcoin Script Debugger - Visualize Bitcoin script execution for real transactions.
- Bitauth IDE – An interactive development environment for Bitcoin contracts.
- WebBTC - These are postgres database dumps of the bitcoin-ruby-blockchain database generated by webbtc.com.
- BitcoinDatabaseGenerator - A high performance data transfer tool that can be used to copy data from Bitcoin Core blockchain files to a SQL Server database.
- Blockparser+SQL - Fast, quick and dirty bitcoin blockchain parser.
- BitcoinABE - Abe: block browser for Bitcoin and similar currencies.
- NBitcoin.Indexer - Scalable and fault-tolerant block chain indexer for Azure cloud platform.
- Blockchain2Graph - Graph Database Builder.
- Chaingraph – A multi-node blockchain indexer and GraphQL API.
- btcd - Go-based full node since 2013.
- Bitcoin-ruby-node - bitcoin node based on bitcoin-ruby-blockchain.
- Bitcore Node - bitcoind linked to node.js by BitPay.
- Bitcore - Formerly just a Nodejs library, now a full node.
- A Gentle Introduction to Bitcoin Core Development
- Mastering Bitcoin
- Grokking Bitcoin - An in-depth technical book with rich illustrations.
- Bitcoin Stackexchange
- Elliptic Curve Cryptography A Gentle Introduction.
- Bitcoin Programming with BitcoinJS and Bitcoin Core CLI.
- Bitcoin Protocol Development Curriculum - Chaincode Labs.
- Lightning Network Protocol Development Curriculum - Chaincode Labs.
- btcinformation.org / Developer Documentation - Find useful resources, guides and reference material for developers.
- @lopp / Bitcoin Developers - Software developers who have experience working on Bitcoin implementations or applications.
- @lopp / Lightning Developers - Software developers with experience working on LN implementations / applications.
- Practical Bitcoin Info - Google Sheets.
- A brief history of Bitcoin development...
- bitcoin-resources.com Meta-list of Bitcoin resources, from books, articles, to podcasts.
- Jameson Lopp Bitcoin Resource List Very detailed curated Bitcoin resource list and meta-list by J. Lopp
- River Learn A collection of educational resources to learn about Bitcoin basics, investing, technology, and more.
Inspired by the awesome list thing. Created by BlockchainU fellows.
To the extent possible under law, Igor Barinov has waived all copyright and related or neighboring rights to this work.
Contribute to this list: https://github.com/igorbarinov/awesome-bitcoin