A curated list of bitcoin services and tools for software developers
- Utilities
- Blockchain API and Web services
- Wallets API
- Open Source wallets
- Blockchain Explorers
- C++ Libraries
- JavaScript Libraries
- PHP Libraries
- Ruby Libraries
- Python Libraries
- Java Libraries
- Scala Libraries
- .Net Libraries
- Playgrounds
- Blockchain dump
- Full nodes
- Read
- Course
- Additional Resources
- 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.
- block.io
- BlockCypher
- Gem.co
- Insight
- Chain.com
- Coinbase Wallet
- Smartbit
- Cashier-BTC - Self-hosted payment gateway.
- Chainradar API - Blockchain Explorer API for Chainradar.
- One-Time Address A better way to share your Bitcoin address.
- Chain.so
- Blockchain.com
- BlockTrail
- Bitcoin Transaction Explorer
- Blockexplorer.com
- Smartbit
- Bitkit - Real time transaction updates.
- Awesome CryptoCoinJS
- Bitcore Library
- Bitcoinjs-lib
- Cryptocoin
- BlockTrail SDK NodeJS
- bcoin - Javascript bitcoin library for node.js and browsers.
- 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.
Note that you can also use Scala libraries in Java.
- BitcoinJ
- XChange - Library that provides a simple and consistent API for interacting with 50+ Bitcoin currency exchanges.
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.
- NBitcoinComprehensive 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.
- Debug Script Execution
- 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.
- 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.
- Bitcoin-ruby-node - bitcoin node based on bitcoin-ruby-blockchain.
- Fullnode - Javascript implementation of bitcoin.
- 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...
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.